<?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>163480</bug_id>
          
          <creation_ts>2016-10-14 20:16:20 -0700</creation_ts>
          <short_desc>CounterNode::resetRenderers is so inefficient.</short_desc>
          <delta_ts>2016-10-15 07:27:16 -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>Layout and Rendering</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1240548</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2016-10-14 20:16:20 -0700</bug_when>
    <thetext>It calls into RenderCounter::invalidate() which in turn calls back to the CounterNode to remove the renderer.
    while (m_rootRenderer)
        m_rootRenderer-&gt;invalidate(); // This makes m_rootRenderer point to the next renderer if any since it disconnects the m_rootRenderer from this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1240550</commentid>
    <comment_count>1</comment_count>
      <attachid>291702</attachid>
    <who name="alan">zalan</who>
    <bug_when>2016-10-14 20:36:49 -0700</bug_when>
    <thetext>Created attachment 291702
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1240599</commentid>
    <comment_count>2</comment_count>
      <attachid>291702</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-10-15 07:27:12 -0700</bug_when>
    <thetext>Comment on attachment 291702
Patch

Clearing flags on attachment: 291702

Committed r207374: &lt;http://trac.webkit.org/changeset/207374&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1240600</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-10-15 07:27:16 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>291702</attachid>
            <date>2016-10-14 20:36:49 -0700</date>
            <delta_ts>2016-10-15 07:27:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-163480-20161014203320.patch</filename>
            <type>text/plain</type>
            <size>15715</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA3MjIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzM0YWFjNTEwOWYwZjhh
ZWFiNDc4YmQ2MWVkZTVlOTZkYTQ0MmJjMi4uMmY1ODdkMDQzYzk0NThlMjYwMThkZTc5OWI2ODVi
YTMzOWZjYTQ0NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM2IEBACisyMDE2LTEwLTE0ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgQ291bnRlck5vZGU6OnJlc2V0
UmVuZGVyZXJzIGlzIHNvIGluZWZmaWNpZW50LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYzNDgwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgQ291bnRlck5vZGU6OnJlc2V0UmVuZGVyZXJzKCkgcmVtb3Zl
cyBhbGwgdGhlIGFzc29jaWF0ZWQgcmVuZGVyZXJzIGZyb20gdGhpcyBDb3VudGVyTm9kZQorICAg
ICAgICBhbmQgc2V0cyB0aGUgZGlydHkgYml0IG9uIHRoZW0uCisgICAgICAgIFRoaXMgcGF0Y2gg
ZG9lcyBhbGwgdGhhdCBpbiBhIGxvb3AsIGluc3RlYWQgb2YgdHJhdmVyc2luZyB0aGUgbGlua2Vk
IHRyZWUgb24gZWFjaCByZW1vdmFsLgorCisgICAgICAgIE5vIGNoYW5nZSBpbiBmdW5jdGlvbmFs
aXR5LgorCisgICAgICAgICogcmVuZGVyaW5nL0NvdW50ZXJOb2RlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNvdW50ZXJOb2RlOjpDb3VudGVyTm9kZSk6CisgICAgICAgIChXZWJDb3JlOjpDb3Vu
dGVyTm9kZTo6fkNvdW50ZXJOb2RlKToKKyAgICAgICAgKFdlYkNvcmU6OkNvdW50ZXJOb2RlOjpu
ZXh0SW5QcmVPcmRlckFmdGVyQ2hpbGRyZW4pOgorICAgICAgICAoV2ViQ29yZTo6Q291bnRlck5v
ZGU6Omxhc3REZXNjZW5kYW50KToKKyAgICAgICAgKFdlYkNvcmU6OkNvdW50ZXJOb2RlOjphZGRS
ZW5kZXJlcik6IFRoZXNlIGFzc2VydGlvbnMgZG8gbm90IHNlZW0gc3VwZXIgdXNlZnVsLgorICAg
ICAgICAoV2ViQ29yZTo6Q291bnRlck5vZGU6OnJlbW92ZVJlbmRlcmVyKToKKyAgICAgICAgKFdl
YkNvcmU6OkNvdW50ZXJOb2RlOjpyZXNldFJlbmRlcmVycyk6CisgICAgICAgIChXZWJDb3JlOjpD
b3VudGVyTm9kZTo6aW5zZXJ0QWZ0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6Q291bnRlck5vZGU6
OnJlbW92ZUNoaWxkKToKKyAgICAgICAgKiByZW5kZXJpbmcvQ291bnRlck5vZGUuaDoKKyAgICAg
ICAgKiByZW5kZXJpbmcvUmVuZGVyQ291bnRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjptYWtl
Q291bnRlck5vZGUpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQ291bnRlcjo6UmVuZGVyQ291
bnRlcik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJDb3VudGVyOjp+UmVuZGVyQ291bnRlcik6
CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJDb3VudGVyOjpvcmlnaW5hbFRleHQpOgorICAgICAg
ICAoV2ViQ29yZTo6dXBkYXRlQ291bnRlcnMpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQ291
bnRlcjo6aW52YWxpZGF0ZSk6IERlbGV0ZWQuCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckNv
dW50ZXIuaDoKKwogMjAxNi0xMC0xMiAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNv
bT4KIAogICAgICAgICBbV2ViR0xdIFJldmlzZSB2ZXJ0ZXggYXJyYXkgYXR0cmlidXRlIGNoZWNr
cyB0byBhY2NvdW50IGZvciBsYXp5IG1lbW9yeSBhbGxvY2F0aW9uLgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0NvdW50ZXJOb2RlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9Db3VudGVyTm9kZS5jcHAKaW5kZXggMzI2YWM5OGI5NjNjZDUwMmU0ZjhkMmJlYzg1
NGVhYzgzNjI5YjU3Yy4uMTdhZGI1MGU0MGU3OGY5YzExODNjYTJmZjlhMDlmYjI3YjM4NWFjNSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0NvdW50ZXJOb2RlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvQ291bnRlck5vZGUuY3BwCkBAIC0zMywxMiArMzMs
NiBAQCBDb3VudGVyTm9kZTo6Q291bnRlck5vZGUoUmVuZGVyRWxlbWVudCYgb3duZXIsIGJvb2wg
aGFzUmVzZXRUeXBlLCBpbnQgdmFsdWUpCiAgICAgLCBtX3ZhbHVlKHZhbHVlKQogICAgICwgbV9j
b3VudEluUGFyZW50KDApCiAgICAgLCBtX293bmVyKG93bmVyKQotICAgICwgbV9yb290UmVuZGVy
ZXIoMCkKLSAgICAsIG1fcGFyZW50KDApCi0gICAgLCBtX3ByZXZpb3VzU2libGluZygwKQotICAg
ICwgbV9uZXh0U2libGluZygwKQotICAgICwgbV9maXJzdENoaWxkKDApCi0gICAgLCBtX2xhc3RD
aGlsZCgwKQogewogfQogCkBAIC00Nyw4ICs0MSw4IEBAIENvdW50ZXJOb2RlOjp+Q291bnRlck5v
ZGUoKQogICAgIC8vIElkZWFsbHkgdGhpcyB3b3VsZCBiZSBhbiBhc3NlcnQgYW5kIHRoaXMgd291
bGQgbmV2ZXIgYmUgcmVhY2hlZC4gSW4gcmVhbGl0eSB0aGlzIGhhcHBlbnMgYSBsb3QKICAgICAv
LyBzbyB3ZSBuZWVkIHRvIGhhbmRsZSB0aGVzZSBjYXNlcy4gVGhlIG5vZGUgaXMgc3RpbGwgY29u
bmVjdGVkIHRvIHRoZSB0cmVlIHNvIHdlIG5lZWQgdG8gZGV0YWNoIGl0LgogICAgIGlmIChtX3Bh
cmVudCB8fCBtX3ByZXZpb3VzU2libGluZyB8fCBtX25leHRTaWJsaW5nIHx8IG1fZmlyc3RDaGls
ZCB8fCBtX2xhc3RDaGlsZCkgewotICAgICAgICBDb3VudGVyTm9kZSogb2xkUGFyZW50ID0gMDsK
LSAgICAgICAgQ291bnRlck5vZGUqIG9sZFByZXZpb3VzU2libGluZyA9IDA7CisgICAgICAgIENv
dW50ZXJOb2RlKiBvbGRQYXJlbnQgPSBudWxscHRyOworICAgICAgICBDb3VudGVyTm9kZSogb2xk
UHJldmlvdXNTaWJsaW5nID0gbnVsbHB0cjsKICAgICAgICAgLy8gSW5zdGVhZCBvZiBjYWxsaW5n
IHJlbW92ZUNoaWxkKCkgd2UgZG8gdGhpcyBzYWZlbHkgYXMgdGhlIHRyZWUgaXMgbGlrZWx5IGJy
b2tlbiBpZiB3ZSBnZXQgaGVyZS4KICAgICAgICAgaWYgKG1fcGFyZW50KSB7CiAgICAgICAgICAg
ICBpZiAobV9wYXJlbnQtPm1fZmlyc3RDaGlsZCA9PSB0aGlzKQpAQCAtNTYsMjQgKzUwLDI0IEBA
IENvdW50ZXJOb2RlOjp+Q291bnRlck5vZGUoKQogICAgICAgICAgICAgaWYgKG1fcGFyZW50LT5t
X2xhc3RDaGlsZCA9PSB0aGlzKQogICAgICAgICAgICAgICAgIG1fcGFyZW50LT5tX2xhc3RDaGls
ZCA9IG1fcHJldmlvdXNTaWJsaW5nOwogICAgICAgICAgICAgb2xkUGFyZW50ID0gbV9wYXJlbnQ7
Ci0gICAgICAgICAgICBtX3BhcmVudCA9IDA7CisgICAgICAgICAgICBtX3BhcmVudCA9IG51bGxw
dHI7CiAgICAgICAgIH0KICAgICAgICAgaWYgKG1fcHJldmlvdXNTaWJsaW5nKSB7CiAgICAgICAg
ICAgICBpZiAobV9wcmV2aW91c1NpYmxpbmctPm1fbmV4dFNpYmxpbmcgPT0gdGhpcykKICAgICAg
ICAgICAgICAgICBtX3ByZXZpb3VzU2libGluZy0+bV9uZXh0U2libGluZyA9IG1fbmV4dFNpYmxp
bmc7CiAgICAgICAgICAgICBvbGRQcmV2aW91c1NpYmxpbmcgPSBtX3ByZXZpb3VzU2libGluZzsK
LSAgICAgICAgICAgIG1fcHJldmlvdXNTaWJsaW5nID0gMDsKKyAgICAgICAgICAgIG1fcHJldmlv
dXNTaWJsaW5nID0gbnVsbHB0cjsKICAgICAgICAgfQogICAgICAgICBpZiAobV9uZXh0U2libGlu
ZykgewogICAgICAgICAgICAgaWYgKG1fbmV4dFNpYmxpbmctPm1fcHJldmlvdXNTaWJsaW5nID09
IHRoaXMpCiAgICAgICAgICAgICAgICAgbV9uZXh0U2libGluZy0+bV9wcmV2aW91c1NpYmxpbmcg
PSBvbGRQcmV2aW91c1NpYmxpbmc7Ci0gICAgICAgICAgICBtX25leHRTaWJsaW5nID0gMDsKKyAg
ICAgICAgICAgIG1fbmV4dFNpYmxpbmcgPSBudWxscHRyOwogICAgICAgICB9CiAgICAgICAgIGlm
IChtX2ZpcnN0Q2hpbGQpIHsKICAgICAgICAgICAgIC8vIFRoZSBub2RlJ3MgY2hpbGRyZW4gYXJl
IHJlcGFyZW50ZWQgdG8gdGhlIG9sZCBwYXJlbnQuCiAgICAgICAgICAgICBmb3IgKENvdW50ZXJO
b2RlKiBjaGlsZCA9IG1fZmlyc3RDaGlsZDsgY2hpbGQ7ICkgewogICAgICAgICAgICAgICAgIENv
dW50ZXJOb2RlKiBuZXh0Q2hpbGQgPSBjaGlsZC0+bV9uZXh0U2libGluZzsKLSAgICAgICAgICAg
ICAgICBDb3VudGVyTm9kZSogbmV4dFNpYmxpbmcgPSAwOworICAgICAgICAgICAgICAgIENvdW50
ZXJOb2RlKiBuZXh0U2libGluZyA9IG51bGxwdHI7CiAgICAgICAgICAgICAgICAgY2hpbGQtPm1f
cGFyZW50ID0gb2xkUGFyZW50OwogICAgICAgICAgICAgICAgIGlmIChvbGRQcmV2aW91c1NpYmxp
bmcpIHsKICAgICAgICAgICAgICAgICAgICAgbmV4dFNpYmxpbmcgPSBvbGRQcmV2aW91c1NpYmxp
bmctPm1fbmV4dFNpYmxpbmc7CkBAIC05OCwxNCArOTIsMTQgQEAgUmVmPENvdW50ZXJOb2RlPiBD
b3VudGVyTm9kZTo6Y3JlYXRlKFJlbmRlckVsZW1lbnQmIG93bmVyLCBib29sIGhhc1Jlc2V0VHlw
ZSwgaW4KIENvdW50ZXJOb2RlKiBDb3VudGVyTm9kZTo6bmV4dEluUHJlT3JkZXJBZnRlckNoaWxk
cmVuKGNvbnN0IENvdW50ZXJOb2RlKiBzdGF5V2l0aGluKSBjb25zdAogewogICAgIGlmICh0aGlz
ID09IHN0YXlXaXRoaW4pCi0gICAgICAgIHJldHVybiAwOworICAgICAgICByZXR1cm4gbnVsbHB0
cjsKIAogICAgIGNvbnN0IENvdW50ZXJOb2RlKiBjdXJyZW50ID0gdGhpczsKICAgICBDb3VudGVy
Tm9kZSogbmV4dDsKICAgICB3aGlsZSAoIShuZXh0ID0gY3VycmVudC0+bV9uZXh0U2libGluZykp
IHsKICAgICAgICAgY3VycmVudCA9IGN1cnJlbnQtPm1fcGFyZW50OwogICAgICAgICBpZiAoIWN1
cnJlbnQgfHwgY3VycmVudCA9PSBzdGF5V2l0aGluKQotICAgICAgICAgICAgcmV0dXJuIDA7Cisg
ICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICB9CiAgICAgcmV0dXJuIG5leHQ7CiB9CkBA
IC0xMjIsNyArMTE2LDcgQEAgQ291bnRlck5vZGUqIENvdW50ZXJOb2RlOjpsYXN0RGVzY2VuZGFu
dCgpIGNvbnN0CiB7CiAgICAgQ291bnRlck5vZGUqIGxhc3QgPSBtX2xhc3RDaGlsZDsKICAgICBp
ZiAoIWxhc3QpCi0gICAgICAgIHJldHVybiAwOworICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAog
ICAgIHdoaWxlIChDb3VudGVyTm9kZSogbGFzdENoaWxkID0gbGFzdC0+bV9sYXN0Q2hpbGQpCiAg
ICAgICAgIGxhc3QgPSBsYXN0Q2hpbGQ7CkBAIC0xNTEsNjQgKzE0NSw0OSBAQCBpbnQgQ291bnRl
ck5vZGU6OmNvbXB1dGVDb3VudEluUGFyZW50KCkgY29uc3QKICAgICByZXR1cm4gbV9wYXJlbnQt
Pm1fdmFsdWUgKyBpbmNyZW1lbnQ7CiB9CiAKLXZvaWQgQ291bnRlck5vZGU6OmFkZFJlbmRlcmVy
KFJlbmRlckNvdW50ZXIqIHZhbHVlKQordm9pZCBDb3VudGVyTm9kZTo6YWRkUmVuZGVyZXIoUmVu
ZGVyQ291bnRlciYgcmVuZGVyZXIpCiB7Ci0gICAgaWYgKCF2YWx1ZSkgewotICAgICAgICBBU1NF
UlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KLSAgICBpZiAodmFsdWUt
Pm1fY291bnRlck5vZGUpIHsKLSAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgICAg
IHZhbHVlLT5tX2NvdW50ZXJOb2RlLT5yZW1vdmVSZW5kZXJlcih2YWx1ZSk7Ci0gICAgfQotICAg
IEFTU0VSVCghdmFsdWUtPm1fbmV4dEZvclNhbWVDb3VudGVyKTsKLSAgICBmb3IgKFJlbmRlckNv
dW50ZXIqIGl0ZXJhdG9yID0gbV9yb290UmVuZGVyZXI7aXRlcmF0b3I7IGl0ZXJhdG9yID0gaXRl
cmF0b3ItPm1fbmV4dEZvclNhbWVDb3VudGVyKSB7Ci0gICAgICAgIGlmIChpdGVyYXRvciA9PSB2
YWx1ZSkgewotICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgICAgICAgICBy
ZXR1cm47Ci0gICAgICAgIH0KLSAgICB9Ci0gICAgdmFsdWUtPm1fbmV4dEZvclNhbWVDb3VudGVy
ID0gbV9yb290UmVuZGVyZXI7Ci0gICAgbV9yb290UmVuZGVyZXIgPSB2YWx1ZTsKLSAgICBpZiAo
dmFsdWUtPm1fY291bnRlck5vZGUgIT0gdGhpcykgewotICAgICAgICBpZiAodmFsdWUtPm1fY291
bnRlck5vZGUpIHsKLSAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgICAgICAg
ICAgdmFsdWUtPm1fY291bnRlck5vZGUtPnJlbW92ZVJlbmRlcmVyKHZhbHVlKTsKLSAgICAgICAg
fQotICAgICAgICB2YWx1ZS0+bV9jb3VudGVyTm9kZSA9IHRoaXM7Ci0gICAgfQorICAgIEFTU0VS
VCghcmVuZGVyZXIubV9jb3VudGVyTm9kZSk7CisgICAgQVNTRVJUKCFyZW5kZXJlci5tX25leHRG
b3JTYW1lQ291bnRlcik7CisgICAgcmVuZGVyZXIubV9uZXh0Rm9yU2FtZUNvdW50ZXIgPSBtX3Jv
b3RSZW5kZXJlcjsKKyAgICBtX3Jvb3RSZW5kZXJlciA9ICZyZW5kZXJlcjsKKyAgICByZW5kZXJl
ci5tX2NvdW50ZXJOb2RlID0gdGhpczsKIH0KIAotdm9pZCBDb3VudGVyTm9kZTo6cmVtb3ZlUmVu
ZGVyZXIoUmVuZGVyQ291bnRlciogdmFsdWUpCit2b2lkIENvdW50ZXJOb2RlOjpyZW1vdmVSZW5k
ZXJlcihSZW5kZXJDb3VudGVyJiByZW5kZXJlcikKIHsKLSAgICBpZiAoIXZhbHVlKSB7Ci0gICAg
ICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIEFTU0VSVChyZW5kZXJlci5tX2NvdW50ZXJO
b2RlICYmIHJlbmRlcmVyLm1fY291bnRlck5vZGUgPT0gdGhpcyk7CisgICAgUmVuZGVyQ291bnRl
ciogcHJldmlvdXMgPSBudWxscHRyOworICAgIGZvciAoYXV0byogY3VycmVudCA9IG1fcm9vdFJl
bmRlcmVyOyBjdXJyZW50OyBwcmV2aW91cyA9IGN1cnJlbnQsIGN1cnJlbnQgPSBjdXJyZW50LT5t
X25leHRGb3JTYW1lQ291bnRlcikgeworICAgICAgICBpZiAoY3VycmVudCAhPSAmcmVuZGVyZXIp
CisgICAgICAgICAgICBjb250aW51ZTsKKworICAgICAgICBpZiAocHJldmlvdXMpCisgICAgICAg
ICAgICBwcmV2aW91cy0+bV9uZXh0Rm9yU2FtZUNvdW50ZXIgPSByZW5kZXJlci5tX25leHRGb3JT
YW1lQ291bnRlcjsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgbV9yb290UmVuZGVyZXIgPSBy
ZW5kZXJlci5tX25leHRGb3JTYW1lQ291bnRlcjsKKyAgICAgICAgcmVuZGVyZXIubV9uZXh0Rm9y
U2FtZUNvdW50ZXIgPSBudWxscHRyOworICAgICAgICByZW5kZXJlci5tX2NvdW50ZXJOb2RlID0g
bnVsbHB0cjsKICAgICAgICAgcmV0dXJuOwogICAgIH0KLSAgICBpZiAodmFsdWUtPm1fY291bnRl
ck5vZGUgJiYgdmFsdWUtPm1fY291bnRlck5vZGUgIT0gdGhpcykgewotICAgICAgICBBU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKLSAgICAgICAgdmFsdWUtPm1fY291bnRlck5vZGUtPnJlbW92ZVJlbmRl
cmVyKHZhbHVlKTsKLSAgICB9Ci0gICAgUmVuZGVyQ291bnRlciogcHJldmlvdXMgPSAwOwotICAg
IGZvciAoUmVuZGVyQ291bnRlciogaXRlcmF0b3IgPSBtX3Jvb3RSZW5kZXJlcjtpdGVyYXRvcjsg
aXRlcmF0b3IgPSBpdGVyYXRvci0+bV9uZXh0Rm9yU2FtZUNvdW50ZXIpIHsKLSAgICAgICAgaWYg
KGl0ZXJhdG9yID09IHZhbHVlKSB7Ci0gICAgICAgICAgICBpZiAocHJldmlvdXMpCi0gICAgICAg
ICAgICAgICAgcHJldmlvdXMtPm1fbmV4dEZvclNhbWVDb3VudGVyID0gdmFsdWUtPm1fbmV4dEZv
clNhbWVDb3VudGVyOwotICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIG1fcm9vdFJl
bmRlcmVyID0gdmFsdWUtPm1fbmV4dEZvclNhbWVDb3VudGVyOwotICAgICAgICAgICAgdmFsdWUt
Pm1fbmV4dEZvclNhbWVDb3VudGVyID0gMDsKLSAgICAgICAgICAgIHZhbHVlLT5tX2NvdW50ZXJO
b2RlID0gMDsKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgfQotICAgICAgICBwcmV2aW91
cyA9IGl0ZXJhdG9yOwotICAgIH0KICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKIH0KIAogdm9p
ZCBDb3VudGVyTm9kZTo6cmVzZXRSZW5kZXJlcnMoKQogewotICAgIHdoaWxlIChtX3Jvb3RSZW5k
ZXJlcikKLSAgICAgICAgbV9yb290UmVuZGVyZXItPmludmFsaWRhdGUoKTsgLy8gVGhpcyBtYWtl
cyBtX3Jvb3RSZW5kZXJlciBwb2ludCB0byB0aGUgbmV4dCByZW5kZXJlciBpZiBhbnkgc2luY2Ug
aXQgZGlzY29ubmVjdHMgdGhlIG1fcm9vdFJlbmRlcmVyIGZyb20gdGhpcy4KKyAgICBpZiAoIW1f
cm9vdFJlbmRlcmVyKQorICAgICAgICByZXR1cm47CisgICAgYm9vbCBza2lwTGF5b3V0QW5kUGVy
ZldpZHRoc1JlY2FsYyA9IG1fcm9vdFJlbmRlcmVyLT5kb2N1bWVudEJlaW5nRGVzdHJveWVkKCk7
CisgICAgYXV0byogY3VycmVudCA9IG1fcm9vdFJlbmRlcmVyOworICAgIHdoaWxlIChjdXJyZW50
KSB7CisgICAgICAgIGlmICghc2tpcExheW91dEFuZFBlcmZXaWR0aHNSZWNhbGMpCisgICAgICAg
ICAgICBjdXJyZW50LT5zZXROZWVkc0xheW91dEFuZFByZWZXaWR0aHNSZWNhbGMoKTsKKyAgICAg
ICAgYXV0byogbmV4dCA9IGN1cnJlbnQtPm1fbmV4dEZvclNhbWVDb3VudGVyOworICAgICAgICBj
dXJyZW50LT5tX25leHRGb3JTYW1lQ291bnRlciA9IG51bGxwdHI7CisgICAgICAgIGN1cnJlbnQt
Pm1fY291bnRlck5vZGUgPSBudWxscHRyOworICAgICAgICBjdXJyZW50ID0gbmV4dDsKKyAgICB9
CisgICAgbV9yb290UmVuZGVyZXIgPSBudWxscHRyOwogfQogCiB2b2lkIENvdW50ZXJOb2RlOjpy
ZXNldFRoaXNBbmREZXNjZW5kYW50c1JlbmRlcmVycygpCkBAIC0zMTIsOCArMjkxLDggQEAgdm9p
ZCBDb3VudGVyTm9kZTo6aW5zZXJ0QWZ0ZXIoQ291bnRlck5vZGUqIG5ld0NoaWxkLCBDb3VudGVy
Tm9kZSogcmVmQ2hpbGQsIGNvbnMKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQog
ICAgIH0KLSAgICBuZXdDaGlsZC0+bV9maXJzdENoaWxkID0gMDsKLSAgICBuZXdDaGlsZC0+bV9s
YXN0Q2hpbGQgPSAwOworICAgIG5ld0NoaWxkLT5tX2ZpcnN0Q2hpbGQgPSBudWxscHRyOworICAg
IG5ld0NoaWxkLT5tX2xhc3RDaGlsZCA9IG51bGxwdHI7CiAgICAgbmV3Q2hpbGQtPm1fY291bnRJ
blBhcmVudCA9IG5ld0NoaWxkLT5jb21wdXRlQ291bnRJblBhcmVudCgpOwogICAgIG5ld0NoaWxk
LT5yZXNldFJlbmRlcmVycygpOwogICAgIGZpcnN0LT5yZWNvdW50KCk7CkBAIC0zMjgsOSArMzA3
LDkgQEAgdm9pZCBDb3VudGVyTm9kZTo6cmVtb3ZlQ2hpbGQoQ291bnRlck5vZGUqIG9sZENoaWxk
KQogICAgIENvdW50ZXJOb2RlKiBuZXh0ID0gb2xkQ2hpbGQtPm1fbmV4dFNpYmxpbmc7CiAgICAg
Q291bnRlck5vZGUqIHByZXZpb3VzID0gb2xkQ2hpbGQtPm1fcHJldmlvdXNTaWJsaW5nOwogCi0g
ICAgb2xkQ2hpbGQtPm1fbmV4dFNpYmxpbmcgPSAwOwotICAgIG9sZENoaWxkLT5tX3ByZXZpb3Vz
U2libGluZyA9IDA7Ci0gICAgb2xkQ2hpbGQtPm1fcGFyZW50ID0gMDsKKyAgICBvbGRDaGlsZC0+
bV9uZXh0U2libGluZyA9IG51bGxwdHI7CisgICAgb2xkQ2hpbGQtPm1fcHJldmlvdXNTaWJsaW5n
ID0gbnVsbHB0cjsKKyAgICBvbGRDaGlsZC0+bV9wYXJlbnQgPSBudWxscHRyOwogCiAgICAgaWYg
KHByZXZpb3VzKSAKICAgICAgICAgcHJldmlvdXMtPm1fbmV4dFNpYmxpbmcgPSBuZXh0OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0NvdW50ZXJOb2RlLmggYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvQ291bnRlck5vZGUuaAppbmRleCAwM2Q5ZTNkZDY2YzY5YTAwY2Zm
ODE0NDMxZmQzZDRmMmZjOTE5ZTBjLi4yNDYyODY5ZTIzOWNiYTgwYzJlMGRhMjBlMzBmZmYxZDJl
ODFjOGM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvQ291bnRlck5vZGUu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvQ291bnRlck5vZGUuaApAQCAtNDksOCAr
NDksOCBAQCBwdWJsaWM6CiAgICAgaW50IHZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV92YWx1ZTsg
fQogICAgIGludCBjb3VudEluUGFyZW50KCkgY29uc3QgeyByZXR1cm4gbV9jb3VudEluUGFyZW50
OyB9CiAgICAgUmVuZGVyRWxlbWVudCYgb3duZXIoKSBjb25zdCB7IHJldHVybiBtX293bmVyOyB9
Ci0gICAgdm9pZCBhZGRSZW5kZXJlcihSZW5kZXJDb3VudGVyKik7Ci0gICAgdm9pZCByZW1vdmVS
ZW5kZXJlcihSZW5kZXJDb3VudGVyKik7CisgICAgdm9pZCBhZGRSZW5kZXJlcihSZW5kZXJDb3Vu
dGVyJik7CisgICAgdm9pZCByZW1vdmVSZW5kZXJlcihSZW5kZXJDb3VudGVyJik7CiAKICAgICAv
LyBJbnZhbGlkYXRlcyB0aGUgdGV4dCBpbiB0aGUgcmVuZGVyZXJzIG9mIHRoaXMgY291bnRlciwg
aWYgYW55LgogICAgIHZvaWQgcmVzZXRSZW5kZXJlcnMoKTsKQEAgLTYyLDggKzYyLDggQEAgcHVi
bGljOgogICAgIENvdW50ZXJOb2RlKiBsYXN0Q2hpbGQoKSBjb25zdCB7IHJldHVybiBtX2xhc3RD
aGlsZDsgfQogICAgIENvdW50ZXJOb2RlKiBsYXN0RGVzY2VuZGFudCgpIGNvbnN0OwogICAgIENv
dW50ZXJOb2RlKiBwcmV2aW91c0luUHJlT3JkZXIoKSBjb25zdDsKLSAgICBDb3VudGVyTm9kZSog
bmV4dEluUHJlT3JkZXIoY29uc3QgQ291bnRlck5vZGUqIHN0YXlXaXRoaW4gPSAwKSBjb25zdDsK
LSAgICBDb3VudGVyTm9kZSogbmV4dEluUHJlT3JkZXJBZnRlckNoaWxkcmVuKGNvbnN0IENvdW50
ZXJOb2RlKiBzdGF5V2l0aGluID0gMCkgY29uc3Q7CisgICAgQ291bnRlck5vZGUqIG5leHRJblBy
ZU9yZGVyKGNvbnN0IENvdW50ZXJOb2RlKiBzdGF5V2l0aGluID0gbnVsbHB0cikgY29uc3Q7Cisg
ICAgQ291bnRlck5vZGUqIG5leHRJblByZU9yZGVyQWZ0ZXJDaGlsZHJlbihjb25zdCBDb3VudGVy
Tm9kZSogc3RheVdpdGhpbiA9IG51bGxwdHIpIGNvbnN0OwogCiAgICAgdm9pZCBpbnNlcnRBZnRl
cihDb3VudGVyTm9kZSogbmV3Q2hpbGQsIENvdW50ZXJOb2RlKiBiZWZvcmVDaGlsZCwgY29uc3Qg
QXRvbWljU3RyaW5nJiBpZGVudGlmaWVyKTsKIApAQCAtODIsMTMgKzgyLDEzIEBAIHByaXZhdGU6
CiAgICAgaW50IG1fdmFsdWU7CiAgICAgaW50IG1fY291bnRJblBhcmVudDsKICAgICBSZW5kZXJF
bGVtZW50JiBtX293bmVyOwotICAgIFJlbmRlckNvdW50ZXIqIG1fcm9vdFJlbmRlcmVyOworICAg
IFJlbmRlckNvdW50ZXIqIG1fcm9vdFJlbmRlcmVyIHsgbnVsbHB0ciB9OwogCi0gICAgQ291bnRl
ck5vZGUqIG1fcGFyZW50OwotICAgIENvdW50ZXJOb2RlKiBtX3ByZXZpb3VzU2libGluZzsKLSAg
ICBDb3VudGVyTm9kZSogbV9uZXh0U2libGluZzsKLSAgICBDb3VudGVyTm9kZSogbV9maXJzdENo
aWxkOwotICAgIENvdW50ZXJOb2RlKiBtX2xhc3RDaGlsZDsKKyAgICBDb3VudGVyTm9kZSogbV9w
YXJlbnQgeyBudWxscHRyIH07CisgICAgQ291bnRlck5vZGUqIG1fcHJldmlvdXNTaWJsaW5nIHsg
bnVsbHB0ciB9OworICAgIENvdW50ZXJOb2RlKiBtX25leHRTaWJsaW5nIHsgbnVsbHB0ciB9Owor
ICAgIENvdW50ZXJOb2RlKiBtX2ZpcnN0Q2hpbGQgeyBudWxscHRyIH07CisgICAgQ291bnRlck5v
ZGUqIG1fbGFzdENoaWxkIHsgbnVsbHB0ciB9OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckNvdW50ZXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckNvdW50ZXIuY3BwCmluZGV4IDQwM2Nh
N2U3M2RhZTdiZGRiMGE4NjFhNmFlODc0MGZmZmM5YzUzZDIuLmNhNTZlN2JjNTEyNTA5MmU3ZWEw
N2IzOTUyZGM2ZDc3ZDgxZTU0MjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJDb3VudGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
Q291bnRlci5jcHAKQEAgLTMwNCw4ICszMDQsOCBAQCBzdGF0aWMgQ291bnRlck5vZGUqIG1ha2VD
b3VudGVyTm9kZShSZW5kZXJFbGVtZW50JiByZW5kZXJlciwgY29uc3QgQXRvbWljU3RyaW5nJgog
ICAgIGlmICghcGxhbkNvdW50ZXIocmVuZGVyZXIsIGlkZW50aWZpZXIsIGlzUmVzZXQsIHZhbHVl
KSAmJiAhYWx3YXlzQ3JlYXRlQ291bnRlcikKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKLSAg
ICBSZWZQdHI8Q291bnRlck5vZGU+IG5ld1BhcmVudCA9IDA7Ci0gICAgUmVmUHRyPENvdW50ZXJO
b2RlPiBuZXdQcmV2aW91c1NpYmxpbmcgPSAwOworICAgIFJlZlB0cjxDb3VudGVyTm9kZT4gbmV3
UGFyZW50OworICAgIFJlZlB0cjxDb3VudGVyTm9kZT4gbmV3UHJldmlvdXNTaWJsaW5nOwogICAg
IFJlZlB0cjxDb3VudGVyTm9kZT4gbmV3Tm9kZSA9IENvdW50ZXJOb2RlOjpjcmVhdGUocmVuZGVy
ZXIsIGlzUmVzZXQsIHZhbHVlKTsKICAgICBpZiAoZmluZFBsYWNlRm9yQ291bnRlcihyZW5kZXJl
ciwgaWRlbnRpZmllciwgaXNSZXNldCwgbmV3UGFyZW50LCBuZXdQcmV2aW91c1NpYmxpbmcpKQog
ICAgICAgICBuZXdQYXJlbnQtPmluc2VydEFmdGVyKG5ld05vZGUuZ2V0KCksIG5ld1ByZXZpb3Vz
U2libGluZy5nZXQoKSwgaWRlbnRpZmllcik7CkBAIC0zNDUsOCArMzQ1LDYgQEAgc3RhdGljIENv
dW50ZXJOb2RlKiBtYWtlQ291bnRlck5vZGUoUmVuZGVyRWxlbWVudCYgcmVuZGVyZXIsIGNvbnN0
IEF0b21pY1N0cmluZyYKIFJlbmRlckNvdW50ZXI6OlJlbmRlckNvdW50ZXIoRG9jdW1lbnQmIGRv
Y3VtZW50LCBjb25zdCBDb3VudGVyQ29udGVudCYgY291bnRlcikKICAgICA6IFJlbmRlclRleHQo
ZG9jdW1lbnQsIGVtcHR5U3RyaW5nKCkpCiAgICAgLCBtX2NvdW50ZXIoY291bnRlcikKLSAgICAs
IG1fY291bnRlck5vZGUobnVsbHB0cikKLSAgICAsIG1fbmV4dEZvclNhbWVDb3VudGVyKDApCiB7
CiAgICAgdmlldygpLmFkZFJlbmRlckNvdW50ZXIoKTsKIH0KQEAgLTM1Niw3ICszNTQsNyBAQCBS
ZW5kZXJDb3VudGVyOjp+UmVuZGVyQ291bnRlcigpCiAgICAgdmlldygpLnJlbW92ZVJlbmRlckNv
dW50ZXIoKTsKIAogICAgIGlmIChtX2NvdW50ZXJOb2RlKSB7Ci0gICAgICAgIG1fY291bnRlck5v
ZGUtPnJlbW92ZVJlbmRlcmVyKHRoaXMpOworICAgICAgICBtX2NvdW50ZXJOb2RlLT5yZW1vdmVS
ZW5kZXJlcigqdGhpcyk7CiAgICAgICAgIEFTU0VSVCghbV9jb3VudGVyTm9kZSk7CiAgICAgfQog
fQpAQCAtMzg1LDcgKzM4Myw3IEBAIFN0cmluZyBSZW5kZXJDb3VudGVyOjpvcmlnaW5hbFRleHQo
KSBjb25zdAogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgYmVmb3JlQWZ0ZXJD
b250YWluZXIgPSBiZWZvcmVBZnRlckNvbnRhaW5lci0+cGFyZW50KCk7CiAgICAgICAgIH0KLSAg
ICAgICAgbWFrZUNvdW50ZXJOb2RlKCpiZWZvcmVBZnRlckNvbnRhaW5lciwgbV9jb3VudGVyLmlk
ZW50aWZpZXIoKSwgdHJ1ZSktPmFkZFJlbmRlcmVyKGNvbnN0X2Nhc3Q8UmVuZGVyQ291bnRlcio+
KHRoaXMpKTsKKyAgICAgICAgbWFrZUNvdW50ZXJOb2RlKCpiZWZvcmVBZnRlckNvbnRhaW5lciwg
bV9jb3VudGVyLmlkZW50aWZpZXIoKSwgdHJ1ZSktPmFkZFJlbmRlcmVyKGNvbnN0X2Nhc3Q8UmVu
ZGVyQ291bnRlciY+KCp0aGlzKSk7CiAgICAgICAgIEFTU0VSVChtX2NvdW50ZXJOb2RlKTsKICAg
ICB9CiAgICAgQ291bnRlck5vZGUqIGNoaWxkID0gbV9jb3VudGVyTm9kZTsKQEAgLTQyNywxNSAr
NDI1LDYgQEAgdm9pZCBSZW5kZXJDb3VudGVyOjpjb21wdXRlUHJlZmVycmVkTG9naWNhbFdpZHRo
cyhmbG9hdCBsZWFkKQogICAgIFJlbmRlclRleHQ6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lk
dGhzKGxlYWQpOwogfQogCi12b2lkIFJlbmRlckNvdW50ZXI6OmludmFsaWRhdGUoKQotewotICAg
IG1fY291bnRlck5vZGUtPnJlbW92ZVJlbmRlcmVyKHRoaXMpOwotICAgIEFTU0VSVCghbV9jb3Vu
dGVyTm9kZSk7Ci0gICAgaWYgKGRvY3VtZW50QmVpbmdEZXN0cm95ZWQoKSkKLSAgICAgICAgcmV0
dXJuOwotICAgIHNldE5lZWRzTGF5b3V0QW5kUHJlZldpZHRoc1JlY2FsYygpOwotfQotCiBzdGF0
aWMgdm9pZCBkZXN0cm95Q291bnRlck5vZGVXaXRob3V0TWFwUmVtb3ZhbChjb25zdCBBdG9taWNT
dHJpbmcmIGlkZW50aWZpZXIsIENvdW50ZXJOb2RlKiBub2RlKQogewogICAgIENvdW50ZXJOb2Rl
KiBwcmV2aW91czsKQEAgLTUyMiw4ICs1MTEsOCBAQCBzdGF0aWMgdm9pZCB1cGRhdGVDb3VudGVy
cyhSZW5kZXJFbGVtZW50JiByZW5kZXJlcikKICAgICAgICAgICAgIG1ha2VDb3VudGVyTm9kZShy
ZW5kZXJlciwgaXQtPmtleSwgZmFsc2UpOwogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAg
IH0KLSAgICAgICAgUmVmUHRyPENvdW50ZXJOb2RlPiBuZXdQYXJlbnQgPSAwOwotICAgICAgICBS
ZWZQdHI8Q291bnRlck5vZGU+IG5ld1ByZXZpb3VzU2libGluZyA9IDA7CisgICAgICAgIFJlZlB0
cjxDb3VudGVyTm9kZT4gbmV3UGFyZW50OworICAgICAgICBSZWZQdHI8Q291bnRlck5vZGU+IG5l
d1ByZXZpb3VzU2libGluZzsKICAgICAgICAgCiAgICAgICAgIGZpbmRQbGFjZUZvckNvdW50ZXIo
cmVuZGVyZXIsIGl0LT5rZXksIG5vZGUtPmhhc1Jlc2V0VHlwZSgpLCBuZXdQYXJlbnQsIG5ld1By
ZXZpb3VzU2libGluZyk7CiAgICAgICAgIGlmIChub2RlICE9IGNvdW50ZXJNYXAtPmdldChpdC0+
a2V5KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJDb3VudGVy
LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQ291bnRlci5oCmluZGV4IDhmYTIz
MzJlMjk5MzRjMGIzMDY3MTg0NTZiY2M0OWY4NzYwNWRjYzcuLjMxNWYxYjU0NGRmZTUzNmY0MmFk
YjAxMDkxN2E2ZmM1MTZmM2I4NjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJDb3VudGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckNv
dW50ZXIuaApAQCAtNDksMTMgKzQ5LDkgQEAgcHJpdmF0ZToKICAgICAKICAgICB2b2lkIGNvbXB1
dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKGZsb2F0IGxlYWRXaWR0aCkgb3ZlcnJpZGU7CiAKLSAg
ICAvLyBSZW1vdmVzIHRoZSByZWZlcmVuY2UgdG8gdGhlIENvdW50ZXJOb2RlIGFzc29jaWF0ZWQg
d2l0aCB0aGlzIHJlbmRlcmVyLgotICAgIC8vIFRoaXMgaXMgdXNlZCB0byBjYXVzZSBhIGNvdW50
ZXIgZGlzcGxheSB1cGRhdGUgd2hlbiB0aGUgQ291bnRlck5vZGUgdHJlZSBjaGFuZ2VzLgotICAg
IHZvaWQgaW52YWxpZGF0ZSgpOwotCiAgICAgQ291bnRlckNvbnRlbnQgbV9jb3VudGVyOwotICAg
IENvdW50ZXJOb2RlKiBtX2NvdW50ZXJOb2RlOwotICAgIFJlbmRlckNvdW50ZXIqIG1fbmV4dEZv
clNhbWVDb3VudGVyOworICAgIENvdW50ZXJOb2RlKiBtX2NvdW50ZXJOb2RlIHsgbnVsbHB0ciB9
OworICAgIFJlbmRlckNvdW50ZXIqIG1fbmV4dEZvclNhbWVDb3VudGVyIHsgbnVsbHB0ciB9Owog
ICAgIGZyaWVuZCBjbGFzcyBDb3VudGVyTm9kZTsKIH07CiAKQEAgLTY1LDcgKzYxLDcgQEAgU1BF
Q0lBTElaRV9UWVBFX1RSQUlUU19SRU5ERVJfT0JKRUNUKFJlbmRlckNvdW50ZXIsIGlzQ291bnRl
cigpKQogCiAjaWYgRU5BQkxFKFRSRUVfREVCVUdHSU5HKQogLy8gT3V0c2lkZSB0aGUgV2ViQ29y
ZSBuYW1lc3BhY2UgZm9yIGVhc2Ugb2YgaW52b2NhdGlvbiBmcm9tIGdkYi4KLXZvaWQgc2hvd0Nv
dW50ZXJSZW5kZXJlclRyZWUoY29uc3QgV2ViQ29yZTo6UmVuZGVyT2JqZWN0KiwgY29uc3QgY2hh
ciogY291bnRlck5hbWUgPSAwKTsKK3ZvaWQgc2hvd0NvdW50ZXJSZW5kZXJlclRyZWUoY29uc3Qg
V2ViQ29yZTo6UmVuZGVyT2JqZWN0KiwgY29uc3QgY2hhciogY291bnRlck5hbWUgPSBudWxscHRy
KTsKICNlbmRpZgogCiAjZW5kaWYgLy8gUmVuZGVyQ291bnRlcl9oCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>