<?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>30027</bug_id>
          
          <creation_ts>2009-10-02 13:23:20 -0700</creation_ts>
          <short_desc>[V8] Disconnect event listeners on navigation.</short_desc>
          <delta_ts>2009-10-02 15:41:09 -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>WebCore Misc.</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>0</everconfirmed>
          <reporter name="Vitaly Repeshko">vitalyr</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dglazkov</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>151964</commentid>
    <comment_count>0</comment_count>
    <who name="Vitaly Repeshko">vitalyr</who>
    <bug_when>2009-10-02 13:23:20 -0700</bug_when>
    <thetext>[V8] Disconnect event listeners on navigation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151968</commentid>
    <comment_count>1</comment_count>
      <attachid>40544</attachid>
    <who name="Vitaly Repeshko">vitalyr</who>
    <bug_when>2009-10-02 14:10:22 -0700</bug_when>
    <thetext>Created attachment 40544
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151985</commentid>
    <comment_count>2</comment_count>
      <attachid>40544</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-10-02 15:11:20 -0700</bug_when>
    <thetext>Comment on attachment 40544
patch

r=me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>152002</commentid>
    <comment_count>3</comment_count>
      <attachid>40544</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-10-02 15:41:06 -0700</bug_when>
    <thetext>Comment on attachment 40544
patch

Clearing flags on attachment: 40544

Committed r49050: &lt;http://trac.webkit.org/changeset/49050&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>152003</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-10-02 15:41:09 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>40544</attachid>
            <date>2009-10-02 14:10:22 -0700</date>
            <delta_ts>2009-10-02 15:41:06 -0700</delta_ts>
            <desc>patch</desc>
            <filename>listeners_guard.patch</filename>
            <type>text/plain</type>
            <size>21243</size>
            <attacher name="Vitaly Repeshko">vitalyr</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
MDEzMDMwNi4uYzdkOWFhNiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0OSBAQAorMjAwOS0xMC0wMiAgVml0YWx5IFJlcGVz
aGtvICA8dml0YWx5ckBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgW1Y4XSBEaXNjb25uZWN0IGV2ZW50IGxpc3RlbmVycyBvbiBu
YXZpZ2F0aW9uLgorICAgICAgICBGaXhlcyBodHRwOi8vY3JidWcuY29tLzIzNTk3LgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzAwMjcKKworICAgICAg
ICBBZGRlZCBWOExpc3RlbmVyR3VhcmQgdGhhdCBpcyBzaGFyZWQgYnkgbGlzdGVuZXJzIGFuZCBw
cm94eS4gT24KKyAgICAgICAgbmF2aWdhdGlvbiBwcm94eSBzZXRzIGEgZmxhZyBpbiB0aGUgZ3Vh
cmQgdHVybmluZyBvZmYgbGlzdGVuZXJzLgorCisgICAgICAgICogYmluZGluZ3MvdjgvVjhBYnN0
cmFjdEV2ZW50TGlzdGVuZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VjhBYnN0cmFjdEV2ZW50
TGlzdGVuZXI6OlY4QWJzdHJhY3RFdmVudExpc3RlbmVyKToKKyAgICAgICAgKiBiaW5kaW5ncy92
OC9WOEFic3RyYWN0RXZlbnRMaXN0ZW5lci5oOgorICAgICAgICAoV2ViQ29yZTo6VjhMaXN0ZW5l
ckd1YXJkOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6VjhMaXN0ZW5lckd1YXJkOjppc0Rp
c2Nvbm5lY3RlZCk6CisgICAgICAgIChXZWJDb3JlOjpWOExpc3RlbmVyR3VhcmQ6OmRpc2Nvbm5l
Y3RMaXN0ZW5lcnMpOgorICAgICAgICAoV2ViQ29yZTo6VjhMaXN0ZW5lckd1YXJkOjpWOExpc3Rl
bmVyR3VhcmQpOgorICAgICAgICAoV2ViQ29yZTo6VjhBYnN0cmFjdEV2ZW50TGlzdGVuZXI6OmRp
c2Nvbm5lY3RlZCk6CisgICAgICAgICogYmluZGluZ3MvdjgvVjhET01XcmFwcGVyLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlY4RE9NV3JhcHBlcjo6Z2V0RXZlbnRMaXN0ZW5lcik6CisgICAgICAg
ICogYmluZGluZ3MvdjgvVjhFdmVudExpc3RlbmVyTGlzdC5oOgorICAgICAgICAoV2ViQ29yZTo6
VjhFdmVudExpc3RlbmVyTGlzdDo6ZmluZE9yQ3JlYXRlV3JhcHBlcik6CisgICAgICAgICogYmlu
ZGluZ3MvdjgvVjhMYXp5RXZlbnRMaXN0ZW5lci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOExh
enlFdmVudExpc3RlbmVyOjpWOExhenlFdmVudExpc3RlbmVyKToKKyAgICAgICAgKiBiaW5kaW5n
cy92OC9WOFByb3h5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlY4UHJveHk6OlY4UHJveHkpOgor
ICAgICAgICAoV2ViQ29yZTo6VjhQcm94eTo6ZGlzY29ubmVjdEZyYW1lKToKKyAgICAgICAgKFdl
YkNvcmU6OlY4UHJveHk6OmRpc2Nvbm5lY3RFdmVudExpc3RlbmVycyk6CisgICAgICAgIChXZWJD
b3JlOjpWOFByb3h5OjpjbGVhckZvck5hdmlnYXRpb24pOgorICAgICAgICAqIGJpbmRpbmdzL3Y4
L1Y4UHJveHkuaDoKKyAgICAgICAgKFdlYkNvcmU6OlY4UHJveHk6Omxpc3RlbmVyR3VhcmQpOgor
ICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4V29ya2VyQ29udGV4dEV2ZW50TGlzdGVuZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6VjhXb3JrZXJDb250ZXh0RXZlbnRMaXN0ZW5lcjo6VjhXb3JrZXJD
b250ZXh0RXZlbnRMaXN0ZW5lcik6CisgICAgICAgICogYmluZGluZ3MvdjgvVjhXb3JrZXJDb250
ZXh0RXZlbnRMaXN0ZW5lci5oOgorICAgICAgICAoV2ViQ29yZTo6VjhXb3JrZXJDb250ZXh0RXZl
bnRMaXN0ZW5lcjo6Y3JlYXRlKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9Xb3JrZXJDb250ZXh0
RXhlY3V0aW9uUHJveHkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyQ29udGV4dEV4ZWN1
dGlvblByb3h5OjpXb3JrZXJDb250ZXh0RXhlY3V0aW9uUHJveHkpOgorICAgICAgICAoV2ViQ29y
ZTo6V29ya2VyQ29udGV4dEV4ZWN1dGlvblByb3h5OjpkaXNwb3NlKToKKyAgICAgICAgKFdlYkNv
cmU6OldvcmtlckNvbnRleHRFeGVjdXRpb25Qcm94eTo6ZmluZE9yQ3JlYXRlRXZlbnRMaXN0ZW5l
cik6CisgICAgICAgICogYmluZGluZ3MvdjgvV29ya2VyQ29udGV4dEV4ZWN1dGlvblByb3h5Lmg6
CisgICAgICAgICogYmluZGluZ3MvdjgvY3VzdG9tL1Y4Q3VzdG9tRXZlbnRMaXN0ZW5lci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpWOEV2ZW50TGlzdGVuZXI6OlY4RXZlbnRMaXN0ZW5lcik6Cisg
ICAgICAgICogYmluZGluZ3MvdjgvY3VzdG9tL1Y4Q3VzdG9tRXZlbnRMaXN0ZW5lci5oOgorICAg
ICAgICAoV2ViQ29yZTo6VjhFdmVudExpc3RlbmVyOjpjcmVhdGUpOgorCiAyMDA5LTEwLTAxICBB
ZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFy
aW4gQWRsZXIuCmRpZmYgLS1naXQgYS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QWJzdHJhY3RFdmVu
dExpc3RlbmVyLmNwcCBiL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhBYnN0cmFjdEV2ZW50TGlzdGVu
ZXIuY3BwCmluZGV4IDMzODU3OTEuLjEyYTJjZDkgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGlu
Z3MvdjgvVjhBYnN0cmFjdEV2ZW50TGlzdGVuZXIuY3BwCisrKyBiL1dlYkNvcmUvYmluZGluZ3Mv
djgvVjhBYnN0cmFjdEV2ZW50TGlzdGVuZXIuY3BwCkBAIC0zOCw2ICszOCw3IEBACiAjaW5jbHVk
ZSAiVG9rZW5pemVyLmgiCiAjaW5jbHVkZSAiVjhCaW5kaW5nLmgiCiAjaW5jbHVkZSAiVjhFdmVu
dExpc3RlbmVyTGlzdC5oIgorI2luY2x1ZGUgIlY4UHJveHkuaCIKICNpbmNsdWRlICJWOFV0aWxp
dGllcy5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC00OCwxMSArNDksMTIgQEAgc3RhdGlj
IHZvaWQgd2Vha0V2ZW50TGlzdGVuZXJDYWxsYmFjayh2ODo6UGVyc2lzdGVudDx2ODo6VmFsdWU+
LCB2b2lkKiBwYXJhbWV0ZXIKICAgICBsaXN0ZW5lci0+ZGlzcG9zZUxpc3RlbmVyT2JqZWN0KCk7
CiB9CiAKLVY4QWJzdHJhY3RFdmVudExpc3RlbmVyOjpWOEFic3RyYWN0RXZlbnRMaXN0ZW5lcihG
cmFtZSogZnJhbWUsIGJvb2wgaXNBdHRyaWJ1dGUpCitWOEFic3RyYWN0RXZlbnRMaXN0ZW5lcjo6
VjhBYnN0cmFjdEV2ZW50TGlzdGVuZXIoRnJhbWUqIGZyYW1lLCBQYXNzUmVmUHRyPFY4TGlzdGVu
ZXJHdWFyZD4gZ3VhcmQsIGJvb2wgaXNBdHRyaWJ1dGUpCiAgICAgOiBFdmVudExpc3RlbmVyKEpT
RXZlbnRMaXN0ZW5lclR5cGUpCiAgICAgLCBtX2lzV2Vhayh0cnVlKQogICAgICwgbV9pc0F0dHJp
YnV0ZShpc0F0dHJpYnV0ZSkKICAgICAsIG1fZnJhbWUoZnJhbWUpCisgICAgLCBtX2d1YXJkKGd1
YXJkKQogICAgICwgbV9saW5lTnVtYmVyKDApCiAgICAgLCBtX2NvbHVtbk51bWJlcigwKQogewpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEFic3RyYWN0RXZlbnRMaXN0ZW5lci5o
IGIvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEFic3RyYWN0RXZlbnRMaXN0ZW5lci5oCmluZGV4IGY2
ZTU4ZTIuLmM3NzM2YmUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhBYnN0cmFj
dEV2ZW50TGlzdGVuZXIuaAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QWJzdHJhY3RFdmVu
dExpc3RlbmVyLmgKQEAgLTMzLDEzICszMywzOSBAQAogCiAjaW5jbHVkZSAiRXZlbnRMaXN0ZW5l
ci5oIgogI2luY2x1ZGUgIk93bkhhbmRsZS5oIgotI2luY2x1ZGUgIlY4UHJveHkuaCIKKyNpbmNs
dWRlICJTaGFyZWRQZXJzaXN0ZW50LmgiCiAjaW5jbHVkZSA8djguaD4KKyNpbmNsdWRlIDx3dGYv
UGFzc1JlZlB0ci5oPgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogICAgIGNsYXNzIEV2ZW50OwogICAgIGNsYXNzIEZyYW1lOworICAgIGNsYXNz
IFY4UHJveHk7CisKKyAgICAvLyBTaGFyZWQgYnkgbGlzdGVuZXIgb2JqZWN0cyBhbmQgVjhQcm94
eSBzbyB0aGF0IFY4UHJveHkgY2FuCisgICAgLy8gc2lsZW5jZSBsaXN0ZW5lcnMgd2hlbiBuZWVk
ZWQuCisgICAgY2xhc3MgVjhMaXN0ZW5lckd1YXJkIDogcHVibGljIFJlZkNvdW50ZWQ8VjhMaXN0
ZW5lckd1YXJkPiB7CisgICAgICBwdWJsaWM6CisgICAgICAgIHN0YXRpYyBQYXNzUmVmUHRyPFY4
TGlzdGVuZXJHdWFyZD4gY3JlYXRlKCkKKyAgICAgICAgeworICAgICAgICAgICAgcmV0dXJuIGFk
b3B0UmVmKG5ldyBWOExpc3RlbmVyR3VhcmQpOworICAgICAgICB9CisKKyAgICAgICAgYm9vbCBp
c0Rpc2Nvbm5lY3RlZCgpIGNvbnN0IHsgcmV0dXJuIG1fZGlzY29ubmVjdGVkOyB9CisKKyAgICAg
ICAgdm9pZCBkaXNjb25uZWN0TGlzdGVuZXJzKCkKKyAgICAgICAgeworICAgICAgICAgICAgbV9k
aXNjb25uZWN0ZWQgPSB0cnVlOworICAgICAgICB9CisKKyAgICAgIHByaXZhdGU6CisgICAgICAg
IFY4TGlzdGVuZXJHdWFyZCgpCisgICAgICAgICAgICA6IG1fZGlzY29ubmVjdGVkKGZhbHNlKSB7
IH0KKworICAgICAgICBib29sIG1fZGlzY29ubmVjdGVkOworICAgIH07CiAKICAgICAvLyBUaGVy
ZSBhcmUgdHdvIGtpbmRzIG9mIGV2ZW50IGxpc3RlbmVyczogSFRNTCBvciBub24tSE1UTC4gb25s
b2FkLAogICAgIC8vIG9uZm9jdXMsIGV0YyAoYXR0cmlidXRlcykgYXJlIGFsd2F5cyBIVE1MIGV2
ZW50IGhhbmRsZXIgdHlwZTsgRXZlbnQKQEAgLTk5LDEwICsxMjUsMTAgQEAgbmFtZXNwYWNlIFdl
YkNvcmUgewogICAgICAgICAvLyBEZXRhY2ggdGhlIGxpc3RlbmVyIGZyb20gaXRzIG93bmVyIGZy
YW1lLgogICAgICAgICB2b2lkIGRpc2Nvbm5lY3RGcmFtZSgpIHsgbV9mcmFtZSA9IDA7IH0KIAot
ICAgICAgICB2aXJ0dWFsIGJvb2wgZGlzY29ubmVjdGVkKCkgY29uc3QgeyByZXR1cm4gIW1fZnJh
bWU7IH0KKyAgICAgICAgdmlydHVhbCBib29sIGRpc2Nvbm5lY3RlZCgpIGNvbnN0IHsgcmV0dXJu
IG1fZ3VhcmQgJiYgbV9ndWFyZC0+aXNEaXNjb25uZWN0ZWQoKTsgfQogCiAgICAgcHJvdGVjdGVk
OgotICAgICAgICBWOEFic3RyYWN0RXZlbnRMaXN0ZW5lcihGcmFtZSosIGJvb2wgaXNBdHRyaWJ1
dGUpOworICAgICAgICBWOEFic3RyYWN0RXZlbnRMaXN0ZW5lcihGcmFtZSosIFBhc3NSZWZQdHI8
VjhMaXN0ZW5lckd1YXJkPiwgYm9vbCBpc0F0dHJpYnV0ZSk7CiAKICAgICAgICAgdmlydHVhbCB2
b2lkIHByZXBhcmVMaXN0ZW5lck9iamVjdCgpIHsgfQogCkBAIC0xMzQsNiArMTYwLDcgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogICAgICAgICAvLyBGSVhNRTogdGhpcyBjb3VsZCBob2xkIG1fZnJh
bWUgbGl2ZSB1bnRpbCB0aGUgZXZlbnQgbGlzdGVuZXIgaXMgZGVsZXRlZC4KICAgICAgICAgRnJh
bWUqIG1fZnJhbWU7CiAgICAgICAgIFJlZlB0cjxTaGFyZWRQZXJzaXN0ZW50PHY4OjpDb250ZXh0
PiA+IG1fY29udGV4dDsKKyAgICAgICAgUmVmUHRyPFY4TGlzdGVuZXJHdWFyZD4gbV9ndWFyZDsK
IAogICAgICAgICAvLyBQb3NpdGlvbiBpbiB0aGUgSFRNTCBzb3VyY2UgZm9yIEhUTUwgZXZlbnQg
bGlzdGVuZXJzLgogICAgICAgICBpbnQgbV9saW5lTnVtYmVyOwpkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9iaW5kaW5ncy92OC9WOERPTVdyYXBwZXIuY3BwIGIvV2ViQ29yZS9iaW5kaW5ncy92OC9WOERP
TVdyYXBwZXIuY3BwCmluZGV4IGFjMzY0NDQuLjEzOWU2ZWMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
YmluZGluZ3MvdjgvVjhET01XcmFwcGVyLmNwcAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4
RE9NV3JhcHBlci5jcHAKQEAgLTEzOTgsNyArMTM5OCw3IEBAIFBhc3NSZWZQdHI8RXZlbnRMaXN0
ZW5lcj4gVjhET01XcmFwcGVyOjpnZXRFdmVudExpc3RlbmVyKE5vZGUqIG5vZGUsIHY4OjpMb2Nh
bDx2CiAgICAgICAgIHByb3h5ID0gVjhQcm94eTo6cmV0cmlldmUoVjhQcm94eTo6cmV0cmlldmVG
cmFtZUZvckVudGVyZWRDb250ZXh0KCkpOwogCiAgICAgaWYgKHByb3h5KQotICAgICAgICByZXR1
cm4gKGxvb2t1cCA9PSBMaXN0ZW5lckZpbmRPbmx5KSA/IFY4RXZlbnRMaXN0ZW5lckxpc3Q6OmZp
bmRXcmFwcGVyKHZhbHVlLCBpc0F0dHJpYnV0ZSkgOiBWOEV2ZW50TGlzdGVuZXJMaXN0OjpmaW5k
T3JDcmVhdGVXcmFwcGVyPFY4RXZlbnRMaXN0ZW5lcj4ocHJveHktPmZyYW1lKCksIHZhbHVlLCBp
c0F0dHJpYnV0ZSk7CisgICAgICAgIHJldHVybiAobG9va3VwID09IExpc3RlbmVyRmluZE9ubHkp
ID8gVjhFdmVudExpc3RlbmVyTGlzdDo6ZmluZFdyYXBwZXIodmFsdWUsIGlzQXR0cmlidXRlKSA6
IFY4RXZlbnRMaXN0ZW5lckxpc3Q6OmZpbmRPckNyZWF0ZVdyYXBwZXI8VjhFdmVudExpc3RlbmVy
Pihwcm94eS0+ZnJhbWUoKSwgcHJveHktPmxpc3RlbmVyR3VhcmQoKSwgdmFsdWUsIGlzQXR0cmli
dXRlKTsKIAogICAgIHJldHVybiAwOwogfQpAQCAtMTQxOCw3ICsxNDE4LDcgQEAgUGFzc1JlZlB0
cjxFdmVudExpc3RlbmVyPiBWOERPTVdyYXBwZXI6OmdldEV2ZW50TGlzdGVuZXIoQWJzdHJhY3RX
b3JrZXIqIHdvcmtlciwKIAogICAgIFY4UHJveHkqIHByb3h5ID0gVjhQcm94eTo6cmV0cmlldmUo
d29ya2VyLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCkpOwogICAgIGlmIChwcm94eSkKLSAgICAg
ICAgcmV0dXJuIChsb29rdXAgPT0gTGlzdGVuZXJGaW5kT25seSkgPyBWOEV2ZW50TGlzdGVuZXJM
aXN0OjpmaW5kV3JhcHBlcih2YWx1ZSwgaXNBdHRyaWJ1dGUpIDogVjhFdmVudExpc3RlbmVyTGlz
dDo6ZmluZE9yQ3JlYXRlV3JhcHBlcjxWOEV2ZW50TGlzdGVuZXI+KHByb3h5LT5mcmFtZSgpLCB2
YWx1ZSwgaXNBdHRyaWJ1dGUpOworICAgICAgICByZXR1cm4gKGxvb2t1cCA9PSBMaXN0ZW5lckZp
bmRPbmx5KSA/IFY4RXZlbnRMaXN0ZW5lckxpc3Q6OmZpbmRXcmFwcGVyKHZhbHVlLCBpc0F0dHJp
YnV0ZSkgOiBWOEV2ZW50TGlzdGVuZXJMaXN0OjpmaW5kT3JDcmVhdGVXcmFwcGVyPFY4RXZlbnRM
aXN0ZW5lcj4ocHJveHktPmZyYW1lKCksIHByb3h5LT5saXN0ZW5lckd1YXJkKCksIHZhbHVlLCBp
c0F0dHJpYnV0ZSk7CiAKICAgICByZXR1cm4gMDsKIH0KQEAgLTE0MzQsNyArMTQzNCw3IEBAIFBh
c3NSZWZQdHI8RXZlbnRMaXN0ZW5lcj4gVjhET01XcmFwcGVyOjpnZXRFdmVudExpc3RlbmVyKE5v
dGlmaWNhdGlvbiogbm90aWZpY2F0CiAKICAgICBWOFByb3h5KiBwcm94eSA9IFY4UHJveHk6OnJl
dHJpZXZlKG5vdGlmaWNhdGlvbi0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKTsKICAgICBpZiAo
cHJveHkpCi0gICAgICAgIHJldHVybiAobG9va3VwID09IExpc3RlbmVyRmluZE9ubHkpID8gVjhF
dmVudExpc3RlbmVyTGlzdDo6ZmluZFdyYXBwZXIodmFsdWUsIGlzQXR0cmlidXRlKSA6IFY4RXZl
bnRMaXN0ZW5lckxpc3Q6OmZpbmRPckNyZWF0ZVdyYXBwZXI8VjhFdmVudExpc3RlbmVyPihwcm94
eS0+ZnJhbWUoKSwgdmFsdWUsIGlzQXR0cmlidXRlKTsKKyAgICAgICAgcmV0dXJuIChsb29rdXAg
PT0gTGlzdGVuZXJGaW5kT25seSkgPyBWOEV2ZW50TGlzdGVuZXJMaXN0OjpmaW5kV3JhcHBlcih2
YWx1ZSwgaXNBdHRyaWJ1dGUpIDogVjhFdmVudExpc3RlbmVyTGlzdDo6ZmluZE9yQ3JlYXRlV3Jh
cHBlcjxWOEV2ZW50TGlzdGVuZXI+KHByb3h5LT5mcmFtZSgpLCBwcm94eS0+bGlzdGVuZXJHdWFy
ZCgpLCB2YWx1ZSwgaXNBdHRyaWJ1dGUpOwogCiAgICAgcmV0dXJuIDA7CiB9CkBAIC0xNDU4LDcg
KzE0NTgsNyBAQCBQYXNzUmVmUHRyPEV2ZW50TGlzdGVuZXI+IFY4RE9NV3JhcHBlcjo6Z2V0RXZl
bnRMaXN0ZW5lcihFdmVudFRhcmdldCogZXZlbnRUYXJnZQogewogICAgIFY4UHJveHkqIHByb3h5
ID0gVjhQcm94eTo6cmV0cmlldmUoZXZlbnRUYXJnZXQtPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQo
KSk7CiAgICAgaWYgKHByb3h5KQotICAgICAgICByZXR1cm4gKGxvb2t1cCA9PSBMaXN0ZW5lckZp
bmRPbmx5KSA/IFY4RXZlbnRMaXN0ZW5lckxpc3Q6OmZpbmRXcmFwcGVyKHZhbHVlLCBpc0F0dHJp
YnV0ZSkgOiBWOEV2ZW50TGlzdGVuZXJMaXN0OjpmaW5kT3JDcmVhdGVXcmFwcGVyPFY4RXZlbnRM
aXN0ZW5lcj4ocHJveHktPmZyYW1lKCksIHZhbHVlLCBpc0F0dHJpYnV0ZSk7CisgICAgICAgIHJl
dHVybiAobG9va3VwID09IExpc3RlbmVyRmluZE9ubHkpID8gVjhFdmVudExpc3RlbmVyTGlzdDo6
ZmluZFdyYXBwZXIodmFsdWUsIGlzQXR0cmlidXRlKSA6IFY4RXZlbnRMaXN0ZW5lckxpc3Q6OmZp
bmRPckNyZWF0ZVdyYXBwZXI8VjhFdmVudExpc3RlbmVyPihwcm94eS0+ZnJhbWUoKSwgcHJveHkt
Pmxpc3RlbmVyR3VhcmQoKSwgdmFsdWUsIGlzQXR0cmlidXRlKTsKIAogI2lmIEVOQUJMRShXT1JL
RVJTKQogICAgIFdvcmtlckNvbnRleHRFeGVjdXRpb25Qcm94eSogd29ya2VyQ29udGV4dFByb3h5
ID0gV29ya2VyQ29udGV4dEV4ZWN1dGlvblByb3h5OjpyZXRyaWV2ZSgpOwpAQCAtMTQ3Miw3ICsx
NDcyLDcgQEAgUGFzc1JlZlB0cjxFdmVudExpc3RlbmVyPiBWOERPTVdyYXBwZXI6OmdldEV2ZW50
TGlzdGVuZXIoRXZlbnRUYXJnZXQqIGV2ZW50VGFyZ2UKIFBhc3NSZWZQdHI8RXZlbnRMaXN0ZW5l
cj4gVjhET01XcmFwcGVyOjpnZXRFdmVudExpc3RlbmVyKFY4UHJveHkqIHByb3h5LCB2ODo6TG9j
YWw8djg6OlZhbHVlPiB2YWx1ZSwgYm9vbCBpc0F0dHJpYnV0ZSwgTGlzdGVuZXJMb29rdXBUeXBl
IGxvb2t1cCkKIHsKICAgICBpZiAocHJveHkpCi0gICAgICAgIHJldHVybiAobG9va3VwID09IExp
c3RlbmVyRmluZE9ubHkpID8gVjhFdmVudExpc3RlbmVyTGlzdDo6ZmluZFdyYXBwZXIodmFsdWUs
IGlzQXR0cmlidXRlKSA6IFY4RXZlbnRMaXN0ZW5lckxpc3Q6OmZpbmRPckNyZWF0ZVdyYXBwZXI8
VjhFdmVudExpc3RlbmVyPihwcm94eS0+ZnJhbWUoKSwgdmFsdWUsIGlzQXR0cmlidXRlKTsKKyAg
ICAgICAgcmV0dXJuIChsb29rdXAgPT0gTGlzdGVuZXJGaW5kT25seSkgPyBWOEV2ZW50TGlzdGVu
ZXJMaXN0OjpmaW5kV3JhcHBlcih2YWx1ZSwgaXNBdHRyaWJ1dGUpIDogVjhFdmVudExpc3RlbmVy
TGlzdDo6ZmluZE9yQ3JlYXRlV3JhcHBlcjxWOEV2ZW50TGlzdGVuZXI+KHByb3h5LT5mcmFtZSgp
LCBwcm94eS0+bGlzdGVuZXJHdWFyZCgpLCB2YWx1ZSwgaXNBdHRyaWJ1dGUpOwogCiAgICAgcmV0
dXJuIDA7CiB9CmRpZmYgLS1naXQgYS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4RXZlbnRMaXN0ZW5l
ckxpc3QuaCBiL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhFdmVudExpc3RlbmVyTGlzdC5oCmluZGV4
IGE4NjNlZDkuLjUwNmU1ZGMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhFdmVu
dExpc3RlbmVyTGlzdC5oCisrKyBiL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhFdmVudExpc3RlbmVy
TGlzdC5oCkBAIC01NSw3ICs1NSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgfQog
CiAgICAgICAgIHRlbXBsYXRlPHR5cGVuYW1lIFdyYXBwZXJUeXBlLCB0eXBlbmFtZSBDb250ZXh0
VHlwZT4KLSAgICAgICAgc3RhdGljIFBhc3NSZWZQdHI8VjhFdmVudExpc3RlbmVyPiBmaW5kT3JD
cmVhdGVXcmFwcGVyKENvbnRleHRUeXBlKiwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4sIGJvb2wgaXNB
dHRyaWJ1dGUpOworICAgICAgICBzdGF0aWMgUGFzc1JlZlB0cjxWOEV2ZW50TGlzdGVuZXI+IGZp
bmRPckNyZWF0ZVdyYXBwZXIoQ29udGV4dFR5cGUqLCBQYXNzUmVmUHRyPFY4TGlzdGVuZXJHdWFy
ZD4sIHY4OjpMb2NhbDx2ODo6VmFsdWU+LCBib29sIGlzQXR0cmlidXRlKTsKIAogICAgICAgICBz
dGF0aWMgdm9pZCBjbGVhcldyYXBwZXIodjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBsaXN0ZW5lck9i
amVjdCwgYm9vbCBpc0F0dHJpYnV0ZSkKICAgICAgICAgewpAQCAtODEsNyArODEsNyBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAgICAgfTsKIAogICAgIHRlbXBsYXRlPHR5cGVuYW1lIFdyYXBwZXJU
eXBlLCB0eXBlbmFtZSBDb250ZXh0VHlwZT4KLSAgICBQYXNzUmVmUHRyPFY4RXZlbnRMaXN0ZW5l
cj4gVjhFdmVudExpc3RlbmVyTGlzdDo6ZmluZE9yQ3JlYXRlV3JhcHBlcihDb250ZXh0VHlwZSog
Y29udGV4dCwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGJvb2wgaXNBdHRyaWJ1dGUpCisg
ICAgUGFzc1JlZlB0cjxWOEV2ZW50TGlzdGVuZXI+IFY4RXZlbnRMaXN0ZW5lckxpc3Q6OmZpbmRP
ckNyZWF0ZVdyYXBwZXIoQ29udGV4dFR5cGUqIGNvbnRleHQsIFBhc3NSZWZQdHI8VjhMaXN0ZW5l
ckd1YXJkPiBndWFyZCwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGJvb2wgaXNBdHRyaWJ1
dGUpCiAgICAgewogICAgICAgICBBU1NFUlQodjg6OkNvbnRleHQ6OkluQ29udGV4dCgpKTsKICAg
ICAgICAgaWYgKCF2YWx1ZS0+SXNPYmplY3QoKSkKQEAgLTk0LDcgKzk0LDcgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogICAgICAgICBpZiAod3JhcHBlcikKICAgICAgICAgICAgIHJldHVybiB3cmFw
cGVyOwogCi0gICAgICAgIFBhc3NSZWZQdHI8VjhFdmVudExpc3RlbmVyPiB3cmFwcGVyUHRyID0g
V3JhcHBlclR5cGU6OmNyZWF0ZShjb250ZXh0LCBvYmplY3QsIGlzQXR0cmlidXRlKTsKKyAgICAg
ICAgUGFzc1JlZlB0cjxWOEV2ZW50TGlzdGVuZXI+IHdyYXBwZXJQdHIgPSBXcmFwcGVyVHlwZTo6
Y3JlYXRlKGNvbnRleHQsIGd1YXJkLCBvYmplY3QsIGlzQXR0cmlidXRlKTsKICAgICAgICAgaWYg
KHdyYXBwZXJQdHIpCiAgICAgICAgICAgICBvYmplY3QtPlNldEhpZGRlblZhbHVlKHdyYXBwZXJQ
cm9wZXJ0eSwgdjg6OkV4dGVybmFsOjpXcmFwKHdyYXBwZXJQdHIuZ2V0KCkpKTsKIApkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9iaW5kaW5ncy92OC9WOExhenlFdmVudExpc3RlbmVyLmNwcCBiL1dlYkNv
cmUvYmluZGluZ3MvdjgvVjhMYXp5RXZlbnRMaXN0ZW5lci5jcHAKaW5kZXggNDZmNTY0OS4uMTIw
OTU3YSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy92OC9WOExhenlFdmVudExpc3RlbmVy
LmNwcAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4TGF6eUV2ZW50TGlzdGVuZXIuY3BwCkBA
IC0zOCw3ICszOCw3IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFY4TGF6eUV2ZW50TGlzdGVu
ZXI6OlY4TGF6eUV2ZW50TGlzdGVuZXIoRnJhbWUqIGZyYW1lLCBjb25zdCBTdHJpbmcmIGNvZGUs
IGNvbnN0IFN0cmluZyYgZnVuY3Rpb25OYW1lLCBib29sIGlzU1ZHRXZlbnQpCi0gICAgOiBWOEFi
c3RyYWN0RXZlbnRMaXN0ZW5lcihmcmFtZSwgdHJ1ZSkKKyAgICA6IFY4QWJzdHJhY3RFdmVudExp
c3RlbmVyKGZyYW1lLCAwLCB0cnVlKQogICAgICwgbV9jb2RlKGNvZGUpCiAgICAgLCBtX2Z1bmN0
aW9uTmFtZShmdW5jdGlvbk5hbWUpCiAgICAgLCBtX2lzU1ZHRXZlbnQoaXNTVkdFdmVudCkKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQcm94eS5jcHAgYi9XZWJDb3JlL2JpbmRp
bmdzL3Y4L1Y4UHJveHkuY3BwCmluZGV4IDJhNmRkNjIuLjc0MmFiNDggMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvYmluZGluZ3MvdjgvVjhQcm94eS5jcHAKKysrIGIvV2ViQ29yZS9iaW5kaW5ncy92OC9W
OFByb3h5LmNwcApAQCAtMjExLDYgKzIxMSwxNCBAQCBzdGF0aWMgdm9pZCByZXBvcnRGYXRhbEVy
cm9ySW5WOChjb25zdCBjaGFyKiBsb2NhdGlvbiwgY29uc3QgY2hhciogbWVzc2FnZSkKICAgICBo
YW5kbGVGYXRhbEVycm9ySW5WOCgpOwogfQogCitWOFByb3h5OjpWOFByb3h5KEZyYW1lKiBmcmFt
ZSkKKyAgICA6IG1fZnJhbWUoZnJhbWUpLAorICAgICAgbV9jb250ZXh0KFNoYXJlZFBlcnNpc3Rl
bnQ8djg6OkNvbnRleHQ+OjpjcmVhdGUoKSksCisgICAgICBtX2xpc3RlbmVyR3VhcmQoVjhMaXN0
ZW5lckd1YXJkOjpjcmVhdGUoKSksCisgICAgICBtX2lubGluZUNvZGUoZmFsc2UpLAorICAgICAg
bV90aW1lckNhbGxiYWNrKGZhbHNlKSwKKyAgICAgIG1fcmVjdXJzaW9uKDApIHsgfQorCiBWOFBy
b3h5Ojp+VjhQcm94eSgpCiB7CiAgICAgY2xlYXJGb3JDbG9zZSgpOwpAQCAtNTUwLDYgKzU1OCw3
IEBAIFY4UHJveHkqIFY4UHJveHk6OnJldHJpZXZlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNv
bnRleHQpCiAKIHZvaWQgVjhQcm94eTo6ZGlzY29ubmVjdEZyYW1lKCkKIHsKKyAgICBkaXNjb25u
ZWN0RXZlbnRMaXN0ZW5lcnMoKTsKIH0KIAogYm9vbCBWOFByb3h5Ojppc0VuYWJsZWQoKQpAQCAt
NjgzLDYgKzY5MiwxMiBAQCB2b2lkIFY4UHJveHk6OnJlbGVhc2VTdG9yYWdlTXV0ZXgoKQogICAg
ICAgICBwYWdlLT5ncm91cCgpLmxvY2FsU3RvcmFnZSgpLT51bmxvY2soKTsKIH0KIAordm9pZCBW
OFByb3h5OjpkaXNjb25uZWN0RXZlbnRMaXN0ZW5lcnMoKQoreworICAgIG1fbGlzdGVuZXJHdWFy
ZC0+ZGlzY29ubmVjdExpc3RlbmVycygpOworICAgIG1fbGlzdGVuZXJHdWFyZCA9IFY4TGlzdGVu
ZXJHdWFyZDo6Y3JlYXRlKCk7Cit9CisKIHZvaWQgVjhQcm94eTo6Y2xlYXJGb3JDbG9zZSgpCiB7
CiAgICAgaWYgKCFjb250ZXh0KCkuSXNFbXB0eSgpKSB7CkBAIC02OTUsNiArNzEwLDcgQEAgdm9p
ZCBWOFByb3h5OjpjbGVhckZvckNsb3NlKCkKIAogdm9pZCBWOFByb3h5OjpjbGVhckZvck5hdmln
YXRpb24oKQogeworICAgIGRpc2Nvbm5lY3RFdmVudExpc3RlbmVycygpOwogICAgIGlmICghY29u
dGV4dCgpLklzRW1wdHkoKSkgewogICAgICAgICB2ODo6SGFuZGxlU2NvcGUgaGFuZGxlOwogICAg
ICAgICBjbGVhckRvY3VtZW50V3JhcHBlcigpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5n
cy92OC9WOFByb3h5LmggYi9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4UHJveHkuaAppbmRleCBmMTRh
OTAzLi4wNGMxMTNlIDEwMDY0NAotLS0gYS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4UHJveHkuaAor
KysgYi9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4UHJveHkuaApAQCAtMzUsNiArMzUsNyBAQAogI2lu
Y2x1ZGUgIlNjcmlwdFNvdXJjZUNvZGUuaCIgLy8gZm9yIFdlYkNvcmU6OlNjcmlwdFNvdXJjZUNv
ZGUKICNpbmNsdWRlICJTZWN1cml0eU9yaWdpbi5oIiAvLyBmb3IgV2ViQ29yZTo6U2VjdXJpdHlP
cmlnaW4KICNpbmNsdWRlICJTaGFyZWRQZXJzaXN0ZW50LmgiCisjaW5jbHVkZSAiVjhBYnN0cmFj
dEV2ZW50TGlzdGVuZXIuaCIKICNpbmNsdWRlICJWOERPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJW
OEdDQ29udHJvbGxlci5oIgogI2luY2x1ZGUgIlY4SW5kZXguaCIKQEAgLTU3LDcgKzU4LDYgQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogICAgIGNsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CiAg
ICAgY2xhc3MgU3RyaW5nOwogICAgIGNsYXNzIFY4RXZlbnRMaXN0ZW5lcjsKLSAgICBjbGFzcyBW
OE9iamVjdEV2ZW50TGlzdGVuZXI7CiAKICAgICAvLyBGSVhNRTogdXNlIHN0YW5kYXJkIGxvZ2dp
bmcgZmFjaWxpdGllcyBpbiBXZWJDb3JlLgogICAgIHZvaWQgbG9nSW5mbyhGcmFtZSosIGNvbnN0
IFN0cmluZyYgbWVzc2FnZSwgY29uc3QgU3RyaW5nJiB1cmwpOwpAQCAtMTE2LDEyICsxMTYsNyBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgICAgICBHZW5lcmFsRXJyb3IKICAgICAgICAg
fTsKIAotICAgICAgICBleHBsaWNpdCBWOFByb3h5KEZyYW1lKiBmcmFtZSkKLSAgICAgICAgICAg
IDogbV9mcmFtZShmcmFtZSksCi0gICAgICAgICAgICAgIG1fY29udGV4dChTaGFyZWRQZXJzaXN0
ZW50PHY4OjpDb250ZXh0Pjo6Y3JlYXRlKCkpLAotICAgICAgICAgICAgICBtX2lubGluZUNvZGUo
ZmFsc2UpLAotICAgICAgICAgICAgICBtX3RpbWVyQ2FsbGJhY2soZmFsc2UpLAotICAgICAgICAg
ICAgICBtX3JlY3Vyc2lvbigwKSB7IH0KKyAgICAgICAgZXhwbGljaXQgVjhQcm94eShGcmFtZSop
OwogCiAgICAgICAgIH5WOFByb3h5KCk7CiAKQEAgLTMwMiw2ICsyOTcsMTEgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogICAgICAgICAgICAgcmV0dXJuIG1fY29udGV4dDsKICAgICAgICAgfQogCisg
ICAgICAgIFBhc3NSZWZQdHI8VjhMaXN0ZW5lckd1YXJkPiBsaXN0ZW5lckd1YXJkKCkKKyAgICAg
ICAgeworICAgICAgICAgICAgcmV0dXJuIG1fbGlzdGVuZXJHdWFyZDsKKyAgICAgICAgfQorCiAg
ICAgICAgIGJvb2wgc2V0Q29udGV4dERlYnVnSWQoaW50IGlkKTsKICAgICAgICAgc3RhdGljIGlu
dCBjb250ZXh0RGVidWdJZCh2ODo6SGFuZGxlPHY4OjpDb250ZXh0Pik7CiAKQEAgLTM0Nyw2ICsz
NDcsOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIC8vIHRoZSBzdG9yYWdlIG11dGV4
LgogICAgICAgICB2b2lkIHJlbGVhc2VTdG9yYWdlTXV0ZXgoKTsKIAorICAgICAgICB2b2lkIGRp
c2Nvbm5lY3RFdmVudExpc3RlbmVycygpOworCiAgICAgICAgIHN0YXRpYyBib29sIGNhbkFjY2Vz
c1ByaXZhdGUoRE9NV2luZG93Kik7CiAKICAgICAgICAgc3RhdGljIGNvbnN0IGNoYXIqIHJhbmdl
RXhjZXB0aW9uTmFtZShpbnQgZXhjZXB0aW9uQ29kZSk7CkBAIC0zODEsNiArMzgzLDggQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogCiAgICAgICAgIFJlZlB0cjxTaGFyZWRQZXJzaXN0ZW50PHY4OjpD
b250ZXh0PiA+IG1fY29udGV4dDsKIAorICAgICAgICBSZWZQdHI8VjhMaXN0ZW5lckd1YXJkPiBt
X2xpc3RlbmVyR3VhcmQ7CisKICAgICAgICAgLy8gRm9yIGVhY2ggcG9zc2libGUgdHlwZSBvZiB3
cmFwcGVyLCB3ZSBrZWVwIGEgYm9pbGVycGxhdGUgb2JqZWN0LgogICAgICAgICAvLyBUaGUgYm9p
bGVycGxhdGUgaXMgdXNlZCB0byBjcmVhdGUgYWRkaXRpb25hbCB3cmFwcGVycyBvZiB0aGUgc2Ft
ZQogICAgICAgICAvLyB0eXBlLiAgV2Uga2VlcCBhIHNpbmdsZSBwZXJzaXN0ZW50IGhhbmRsZSB0
byBhbiBhcnJheSBvZiB0aGUKZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhXb3Jr
ZXJDb250ZXh0RXZlbnRMaXN0ZW5lci5jcHAgYi9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4V29ya2Vy
Q29udGV4dEV2ZW50TGlzdGVuZXIuY3BwCmluZGV4IDZmYTc4NjkuLjcwZGY4ODUgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhXb3JrZXJDb250ZXh0RXZlbnRMaXN0ZW5lci5jcHAK
KysrIGIvV2ViQ29yZS9iaW5kaW5ncy92OC9WOFdvcmtlckNvbnRleHRFdmVudExpc3RlbmVyLmNw
cApAQCAtNDAsOCArNDAsOCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLVY4V29ya2VyQ29u
dGV4dEV2ZW50TGlzdGVuZXI6OlY4V29ya2VyQ29udGV4dEV2ZW50TGlzdGVuZXIoV29ya2VyQ29u
dGV4dEV4ZWN1dGlvblByb3h5KiBwcm94eSwgdjg6OkxvY2FsPHY4OjpPYmplY3Q+IGxpc3RlbmVy
LCBib29sIGlzSW5saW5lKQotICAgIDogVjhFdmVudExpc3RlbmVyKDAsIGxpc3RlbmVyLCBpc0lu
bGluZSkKK1Y4V29ya2VyQ29udGV4dEV2ZW50TGlzdGVuZXI6OlY4V29ya2VyQ29udGV4dEV2ZW50
TGlzdGVuZXIoV29ya2VyQ29udGV4dEV4ZWN1dGlvblByb3h5KiBwcm94eSwgUGFzc1JlZlB0cjxW
OExpc3RlbmVyR3VhcmQ+IGd1YXJkLCB2ODo6TG9jYWw8djg6Ok9iamVjdD4gbGlzdGVuZXIsIGJv
b2wgaXNJbmxpbmUpCisgICAgOiBWOEV2ZW50TGlzdGVuZXIoMCwgZ3VhcmQsIGxpc3RlbmVyLCBp
c0lubGluZSkKICAgICAsIG1fcHJveHkocHJveHkpCiB7CiB9CmRpZmYgLS1naXQgYS9XZWJDb3Jl
L2JpbmRpbmdzL3Y4L1Y4V29ya2VyQ29udGV4dEV2ZW50TGlzdGVuZXIuaCBiL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvVjhXb3JrZXJDb250ZXh0RXZlbnRMaXN0ZW5lci5oCmluZGV4IGQ0NDg2MDEuLjM3
NTI1MzMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhXb3JrZXJDb250ZXh0RXZl
bnRMaXN0ZW5lci5oCisrKyBiL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhXb3JrZXJDb250ZXh0RXZl
bnRMaXN0ZW5lci5oCkBAIC00NCwyMCArNDQsMTkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAg
ICAgY2xhc3MgVjhXb3JrZXJDb250ZXh0RXZlbnRMaXN0ZW5lciA6IHB1YmxpYyBWOEV2ZW50TGlz
dGVuZXIgewogICAgIHB1YmxpYzoKLSAgICAgICAgc3RhdGljIFBhc3NSZWZQdHI8VjhXb3JrZXJD
b250ZXh0RXZlbnRMaXN0ZW5lcj4gY3JlYXRlKFdvcmtlckNvbnRleHRFeGVjdXRpb25Qcm94eSog
cHJveHksIHY4OjpMb2NhbDx2ODo6T2JqZWN0PiBsaXN0ZW5lciwgYm9vbCBpc0lubGluZSkKKyAg
ICAgICAgc3RhdGljIFBhc3NSZWZQdHI8VjhXb3JrZXJDb250ZXh0RXZlbnRMaXN0ZW5lcj4gY3Jl
YXRlKFdvcmtlckNvbnRleHRFeGVjdXRpb25Qcm94eSogcHJveHksIFBhc3NSZWZQdHI8VjhMaXN0
ZW5lckd1YXJkPiBndWFyZCwgdjg6OkxvY2FsPHY4OjpPYmplY3Q+IGxpc3RlbmVyLCBib29sIGlz
SW5saW5lKQogICAgICAgICB7Ci0gICAgICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IFY4V29y
a2VyQ29udGV4dEV2ZW50TGlzdGVuZXIocHJveHksIGxpc3RlbmVyLCBpc0lubGluZSkpOworICAg
ICAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBWOFdvcmtlckNvbnRleHRFdmVudExpc3RlbmVy
KHByb3h5LCBndWFyZCwgbGlzdGVuZXIsIGlzSW5saW5lKSk7CiAgICAgICAgIH0KLSAgICAgICAg
VjhXb3JrZXJDb250ZXh0RXZlbnRMaXN0ZW5lcihXb3JrZXJDb250ZXh0RXhlY3V0aW9uUHJveHkq
LCB2ODo6TG9jYWw8djg6Ok9iamVjdD4gbGlzdGVuZXIsIGJvb2wgaXNJbmxpbmUpOwogCiAgICAg
ICAgIHZpcnR1YWwgdm9pZCBoYW5kbGVFdmVudChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgRXZl
bnQqKTsKICAgICAgICAgdmlydHVhbCBib29sIHJlcG9ydEVycm9yKGNvbnN0IFN0cmluZyYgbWVz
c2FnZSwgY29uc3QgU3RyaW5nJiB1cmwsIGludCBsaW5lTnVtYmVyKTsKLSAgICAgICAgdmlydHVh
bCBib29sIGRpc2Nvbm5lY3RlZCgpIGNvbnN0IHsgcmV0dXJuICFtX3Byb3h5OyB9CiAKICAgICAg
ICAgV29ya2VyQ29udGV4dEV4ZWN1dGlvblByb3h5KiBwcm94eSgpIGNvbnN0IHsgcmV0dXJuIG1f
cHJveHk7IH0KLSAgICAgICAgdm9pZCBkaXNjb25uZWN0KCkgeyBtX3Byb3h5ID0gMDsgfQogCiAg
ICAgcHJpdmF0ZToKKyAgICAgICAgVjhXb3JrZXJDb250ZXh0RXZlbnRMaXN0ZW5lcihXb3JrZXJD
b250ZXh0RXhlY3V0aW9uUHJveHkqLCBQYXNzUmVmUHRyPFY4TGlzdGVuZXJHdWFyZD4sIHY4OjpM
b2NhbDx2ODo6T2JqZWN0PiBsaXN0ZW5lciwgYm9vbCBpc0lubGluZSk7CisKICAgICAgICAgdmly
dHVhbCB2ODo6TG9jYWw8djg6OlZhbHVlPiBjYWxsTGlzdGVuZXJGdW5jdGlvbih2ODo6SGFuZGxl
PHY4OjpWYWx1ZT4ganNFdmVudCwgRXZlbnQqKTsKICAgICAgICAgdjg6OkxvY2FsPHY4OjpPYmpl
Y3Q+IGdldFJlY2VpdmVyT2JqZWN0KEV2ZW50Kik7CiAgICAgICAgIFdvcmtlckNvbnRleHRFeGVj
dXRpb25Qcm94eSogbV9wcm94eTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvdjgvV29y
a2VyQ29udGV4dEV4ZWN1dGlvblByb3h5LmNwcCBiL1dlYkNvcmUvYmluZGluZ3MvdjgvV29ya2Vy
Q29udGV4dEV4ZWN1dGlvblByb3h5LmNwcAppbmRleCA2OGQ5MzhlLi4zN2M2NWNkIDEwMDY0NAot
LS0gYS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1dvcmtlckNvbnRleHRFeGVjdXRpb25Qcm94eS5jcHAK
KysrIGIvV2ViQ29yZS9iaW5kaW5ncy92OC9Xb3JrZXJDb250ZXh0RXhlY3V0aW9uUHJveHkuY3Bw
CkBAIC03MCw2ICs3MCw3IEBAIHN0YXRpYyB2b2lkIHJlcG9ydEZhdGFsRXJyb3JJblY4KGNvbnN0
IGNoYXIqIGxvY2F0aW9uLCBjb25zdCBjaGFyKiBtZXNzYWdlKQogV29ya2VyQ29udGV4dEV4ZWN1
dGlvblByb3h5OjpXb3JrZXJDb250ZXh0RXhlY3V0aW9uUHJveHkoV29ya2VyQ29udGV4dCogd29y
a2VyQ29udGV4dCkKICAgICA6IG1fd29ya2VyQ29udGV4dCh3b3JrZXJDb250ZXh0KQogICAgICwg
bV9yZWN1cnNpb24oMCkKKyAgICAsIG1fbGlzdGVuZXJHdWFyZChWOExpc3RlbmVyR3VhcmQ6OmNy
ZWF0ZSgpKQogewogICAgIGluaXRWOElmTmVlZGVkKCk7CiB9CkBAIC04MSw2ICs4Miw4IEBAIFdv
cmtlckNvbnRleHRFeGVjdXRpb25Qcm94eTo6fldvcmtlckNvbnRleHRFeGVjdXRpb25Qcm94eSgp
CiAKIHZvaWQgV29ya2VyQ29udGV4dEV4ZWN1dGlvblByb3h5OjpkaXNwb3NlKCkKIHsKKyAgICBt
X2xpc3RlbmVyR3VhcmQtPmRpc2Nvbm5lY3RMaXN0ZW5lcnMoKTsKKwogICAgIC8vIERldGFjaCBh
bGwgZXZlbnRzIGZyb20gdGhlaXIgSlMgd3JhcHBlcnMuCiAgICAgZm9yIChzaXplX3QgZXZlbnRJ
bmRleCA9IDA7IGV2ZW50SW5kZXggPCBtX2V2ZW50cy5zaXplKCk7ICsrZXZlbnRJbmRleCkgewog
ICAgICAgICBFdmVudCogZXZlbnQgPSBtX2V2ZW50c1tldmVudEluZGV4XTsKQEAgLTM5Niw3ICsz
OTksNyBAQCB2ODo6TG9jYWw8djg6OlZhbHVlPiBXb3JrZXJDb250ZXh0RXhlY3V0aW9uUHJveHk6
OnJ1blNjcmlwdCh2ODo6SGFuZGxlPHY4OjpTY3JpcAogCiBQYXNzUmVmUHRyPFY4RXZlbnRMaXN0
ZW5lcj4gV29ya2VyQ29udGV4dEV4ZWN1dGlvblByb3h5OjpmaW5kT3JDcmVhdGVFdmVudExpc3Rl
bmVyKHY4OjpMb2NhbDx2ODo6VmFsdWU+IG9iamVjdCwgYm9vbCBpc0lubGluZSwgYm9vbCBmaW5k
T25seSkKIHsKLSAgICByZXR1cm4gZmluZE9ubHkgPyBWOEV2ZW50TGlzdGVuZXJMaXN0OjpmaW5k
V3JhcHBlcihvYmplY3QsIGlzSW5saW5lKSA6IFY4RXZlbnRMaXN0ZW5lckxpc3Q6OmZpbmRPckNy
ZWF0ZVdyYXBwZXI8VjhXb3JrZXJDb250ZXh0RXZlbnRMaXN0ZW5lcj4odGhpcywgb2JqZWN0LCBp
c0lubGluZSk7CisgICAgcmV0dXJuIGZpbmRPbmx5ID8gVjhFdmVudExpc3RlbmVyTGlzdDo6Zmlu
ZFdyYXBwZXIob2JqZWN0LCBpc0lubGluZSkgOiBWOEV2ZW50TGlzdGVuZXJMaXN0OjpmaW5kT3JD
cmVhdGVXcmFwcGVyPFY4V29ya2VyQ29udGV4dEV2ZW50TGlzdGVuZXI+KHRoaXMsIG1fbGlzdGVu
ZXJHdWFyZCwgb2JqZWN0LCBpc0lubGluZSk7CiB9CiAKIHZvaWQgV29ya2VyQ29udGV4dEV4ZWN1
dGlvblByb3h5Ojp0cmFja0V2ZW50KEV2ZW50KiBldmVudCkKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
YmluZGluZ3MvdjgvV29ya2VyQ29udGV4dEV4ZWN1dGlvblByb3h5LmggYi9XZWJDb3JlL2JpbmRp
bmdzL3Y4L1dvcmtlckNvbnRleHRFeGVjdXRpb25Qcm94eS5oCmluZGV4IDExZjE1ZDYuLmEwODM5
NWMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3MvdjgvV29ya2VyQ29udGV4dEV4ZWN1dGlv
blByb3h5LmgKKysrIGIvV2ViQ29yZS9iaW5kaW5ncy92OC9Xb3JrZXJDb250ZXh0RXhlY3V0aW9u
UHJveHkuaApAQCAtMTEwLDYgKzExMCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAg
V29ya2VyQ29udGV4dCogbV93b3JrZXJDb250ZXh0OwogICAgICAgICB2ODo6UGVyc2lzdGVudDx2
ODo6Q29udGV4dD4gbV9jb250ZXh0OwogICAgICAgICBpbnQgbV9yZWN1cnNpb247CisgICAgICAg
IFJlZlB0cjxWOExpc3RlbmVyR3VhcmQ+IG1fbGlzdGVuZXJHdWFyZDsKIAogICAgICAgICBWZWN0
b3I8RXZlbnQqPiBtX2V2ZW50czsKICAgICB9OwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5n
cy92OC9jdXN0b20vVjhDdXN0b21FdmVudExpc3RlbmVyLmNwcCBiL1dlYkNvcmUvYmluZGluZ3Mv
djgvY3VzdG9tL1Y4Q3VzdG9tRXZlbnRMaXN0ZW5lci5jcHAKaW5kZXggNmE0ZWRlMi4uOTFhYmVj
ZCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhDdXN0b21FdmVudExp
c3RlbmVyLmNwcAorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEN1c3RvbUV2ZW50
TGlzdGVuZXIuY3BwCkBAIC0zNSw4ICszNSw4IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAot
VjhFdmVudExpc3RlbmVyOjpWOEV2ZW50TGlzdGVuZXIoRnJhbWUqIGZyYW1lLCB2ODo6TG9jYWw8
djg6Ok9iamVjdD4gbGlzdGVuZXIsIGJvb2wgaXNBdHRyaWJ1dGUpCi0gICAgOiBWOEFic3RyYWN0
RXZlbnRMaXN0ZW5lcihmcmFtZSwgaXNBdHRyaWJ1dGUpCitWOEV2ZW50TGlzdGVuZXI6OlY4RXZl
bnRMaXN0ZW5lcihGcmFtZSogZnJhbWUsIFBhc3NSZWZQdHI8VjhMaXN0ZW5lckd1YXJkPiBndWFy
ZCwgdjg6OkxvY2FsPHY4OjpPYmplY3Q+IGxpc3RlbmVyLCBib29sIGlzQXR0cmlidXRlKQorICAg
IDogVjhBYnN0cmFjdEV2ZW50TGlzdGVuZXIoZnJhbWUsIGd1YXJkLCBpc0F0dHJpYnV0ZSkKIHsK
ICAgICBzZXRMaXN0ZW5lck9iamVjdChsaXN0ZW5lcik7CiB9CmRpZmYgLS1naXQgYS9XZWJDb3Jl
L2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEN1c3RvbUV2ZW50TGlzdGVuZXIuaCBiL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvY3VzdG9tL1Y4Q3VzdG9tRXZlbnRMaXN0ZW5lci5oCmluZGV4IDNmOTc5MGMuLmUz
NGYyNGYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4Q3VzdG9tRXZl
bnRMaXN0ZW5lci5oCisrKyBiL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4Q3VzdG9tRXZl
bnRMaXN0ZW5lci5oCkBAIC00NCwxMyArNDQsMTMgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAg
IC8vIHRoYXQgY2FuIGhhbmRsZSB0aGUgZXZlbnQuCiAgICAgY2xhc3MgVjhFdmVudExpc3RlbmVy
IDogcHVibGljIFY4QWJzdHJhY3RFdmVudExpc3RlbmVyIHsKICAgICBwdWJsaWM6Ci0gICAgICAg
IHN0YXRpYyBQYXNzUmVmUHRyPFY4RXZlbnRMaXN0ZW5lcj4gY3JlYXRlKEZyYW1lKiBmcmFtZSwg
djg6OkxvY2FsPHY4OjpPYmplY3Q+IGxpc3RlbmVyLCBib29sIGlzQXR0cmlidXRlKQorICAgICAg
ICBzdGF0aWMgUGFzc1JlZlB0cjxWOEV2ZW50TGlzdGVuZXI+IGNyZWF0ZShGcmFtZSogZnJhbWUs
IFBhc3NSZWZQdHI8VjhMaXN0ZW5lckd1YXJkPiBndWFyZCwgdjg6OkxvY2FsPHY4OjpPYmplY3Q+
IGxpc3RlbmVyLCBib29sIGlzQXR0cmlidXRlKQogICAgICAgICB7Ci0gICAgICAgICAgICByZXR1
cm4gYWRvcHRSZWYobmV3IFY4RXZlbnRMaXN0ZW5lcihmcmFtZSwgbGlzdGVuZXIsIGlzQXR0cmli
dXRlKSk7CisgICAgICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IFY4RXZlbnRMaXN0ZW5lcihm
cmFtZSwgZ3VhcmQsIGxpc3RlbmVyLCBpc0F0dHJpYnV0ZSkpOwogICAgICAgICB9CiAKICAgICBw
cm90ZWN0ZWQ6Ci0gICAgICAgIFY4RXZlbnRMaXN0ZW5lcihGcmFtZSosIHY4OjpMb2NhbDx2ODo6
T2JqZWN0PiBsaXN0ZW5lciwgYm9vbCBpc0F0dHJpYnV0ZSk7CisgICAgICAgIFY4RXZlbnRMaXN0
ZW5lcihGcmFtZSosIFBhc3NSZWZQdHI8VjhMaXN0ZW5lckd1YXJkPiwgdjg6OkxvY2FsPHY4OjpP
YmplY3Q+IGxpc3RlbmVyLCBib29sIGlzQXR0cmlidXRlKTsKIAogICAgICAgICB2ODo6TG9jYWw8
djg6OkZ1bmN0aW9uPiBnZXRMaXN0ZW5lckZ1bmN0aW9uKCk7CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>