<?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>152357</bug_id>
          
          <creation_ts>2015-12-16 14:48:05 -0800</creation_ts>
          <short_desc>Simplify isOverlayScrollbar() logic</short_desc>
          <delta_ts>2015-12-16 16:20:09 -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>New Bugs</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="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>bdakin</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1149757</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2015-12-16 14:48:05 -0800</bug_when>
    <thetext>Simplify isOverlayScrollbar() logic</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1149758</commentid>
    <comment_count>1</comment_count>
      <attachid>267493</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2015-12-16 14:49:52 -0800</bug_when>
    <thetext>Created attachment 267493
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1149786</commentid>
    <comment_count>2</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2015-12-16 15:42:06 -0800</bug_when>
    <thetext>https://trac.webkit.org/r194184</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1149807</commentid>
    <comment_count>3</comment_count>
      <attachid>267493</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-12-16 16:20:09 -0800</bug_when>
    <thetext>Comment on attachment 267493
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=267493&amp;action=review

&gt; Source/WebCore/platform/ScrollableArea.cpp:523
&gt; +    return IntSize(
&gt; +        verticalScrollbar() ? verticalScrollbar()-&gt;occupiedWidth() : 0,
&gt; +        horizontalScrollbar() ? horizontalScrollbar()-&gt;occupiedHeight() : 0);

Here’s how I would write this:

    return {
        verticalScrollbar() ? verticalScrollbar()-&gt;occupiedWidth() : 0,
        horizontalScrollbar() ? horizontalScrollbar()-&gt;occupiedHeight() : 0
    };

I like reducing the number of times we have to utter the type name IntSize, and I also like the formatting better with the braces.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>267493</attachid>
            <date>2015-12-16 14:49:52 -0800</date>
            <delta_ts>2015-12-16 15:21:47 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-152357-20151216144915.patch</filename>
            <type>text/plain</type>
            <size>17720</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk0MTI4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjE5YWFlYzkyMzIzM2Rl
YWMxMGM0ZmUxNjkyZDIxZGFiZmIwMTA5OS4uNjg1MTQ5NGQ3YmU1ZGViNzQ0Mjk3YTYyNDhjNDVj
Y2ZiZTM5NjkxMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDE1LTEyLTE2ICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIFNpbXBsaWZ5IGlz
T3ZlcmxheVNjcm9sbGJhcigpIGxvZ2ljCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xNTIzNTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBSZXBsYWNlIGNvZGUgdGhhdCBjaGVja3MgZm9yIGlzT3ZlcmxheVNj
cm9sbGJhcigpIGV4cGxpY2l0bHkgd2l0aCBjYWxscyB0byBuZXcKKyAgICAgICAgb2NjdXBpZWRX
aWR0aCgpL29jY3VwaWVkSGVpZ2h0KCkgZnVuY3Rpb25zIG9uIFNjcm9sbGJhciwgd2hpY2ggZG8g
dGhlIG92ZXJsYXkKKyAgICAgICAgc2Nyb2xsYmFyIGNoZWNrIGludGVybmFsbHkuCisgICAgICAg
IAorICAgICAgICBBZGQgU2Nyb2xsYWJsZUFyZWE6OnNjcm9sbGJhckludHJ1c2lvbigpIHdoaWNo
IHJldHVybnMgYW4gSW50U2l6ZSB3aXRoIHRoZSBvY2N1cGllZFdpZHRoCisgICAgICAgIGFuZCBv
Y2N1cGllZEhlaWdodCBvZiBhbnkgc2Nyb2xsYmFycywgYW5kIHVzZSBpdCBpbiBhIGZldyBwbGFj
ZXMuCisKKyAgICAgICAgKiBwYWdlL0ZyYW1lVmlldy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpG
cmFtZVZpZXc6OmF1dG9TaXplSWZFbmFibGVkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9TY3JvbGxW
aWV3LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OnVuc2NhbGVkVmlzaWJsZUNv
bnRlbnRTaXplSW5jbHVkaW5nT2JzY3VyZWRBcmVhKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9s
bFZpZXc6OmNhbGN1bGF0ZU92ZXJoYW5nQXJlYXNGb3JQYWludGluZyk6CisgICAgICAgICogcGxh
dGZvcm0vU2Nyb2xsYWJsZUFyZWEuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsYWJsZUFy
ZWE6OnNjcm9sbGJhckludHJ1c2lvbik6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxhYmxlQXJl
YTo6dmlzaWJsZUNvbnRlbnRSZWN0SW50ZXJuYWwpOgorICAgICAgICAqIHBsYXRmb3JtL1Njcm9s
bGFibGVBcmVhLmg6CisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xsYmFyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlNjcm9sbGJhcjo6b2NjdXBpZWRXaWR0aCk6CisgICAgICAgIChXZWJDb3JlOjpT
Y3JvbGxiYXI6Om9jY3VwaWVkSGVpZ2h0KToKKyAgICAgICAgKiBwbGF0Zm9ybS9TY3JvbGxiYXIu
aDoKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyTGF5ZXI6OnZpc2libGVDb250ZW50UmVjdEludGVybmFsKToKKyAgICAgICAgKiBy
ZW5kZXJpbmcvUmVuZGVyTGlzdEJveC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMaXN0
Qm94Ojp2ZXJ0aWNhbFNjcm9sbGJhcldpZHRoKToKKwogMjAxNS0xMi0xNSAgVGltIEhvcnRvbiAg
PHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KIAogICAgICAgICBbTWFjXSBHZXN0dXJlIEV2ZW50
cyBzaG91bGQgbm90IGhhdmUgbmVnYXRpdmUgc2NhbGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCAwNWJhNDY0N2Jh
MjBiMDQyOTM3OWYxNGYzZDM0Y2NjMWVjNzMwZDc0Li42YzQ1ZDYyNWNjOGZiN2U0MGRmNDQwODVl
OThkZjM3OWM0YWVhYTQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysr
IGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTUtMTItMTYg
IFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CisKKyAgICAgICAgU2ltcGxp
ZnkgaXNPdmVybGF5U2Nyb2xsYmFyKCkgbG9naWMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MjM1NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFJlcGxhY2UgY29kZSB0aGF0IGNoZWNrcyBmb3IgaXNPdmVy
bGF5U2Nyb2xsYmFyKCkgZXhwbGljaXRseSB3aXRoIGNhbGxzIHRvIG5ldworICAgICAgICBvY2N1
cGllZFdpZHRoKCkvb2NjdXBpZWRIZWlnaHQoKSBmdW5jdGlvbnMgb24gU2Nyb2xsYmFyLCB3aGlj
aCBkbyB0aGUgb3ZlcmxheQorICAgICAgICBzY3JvbGxiYXIgY2hlY2sgaW50ZXJuYWxseS4KKyAg
ICAgICAgCisgICAgICAgIEFkZCBTY3JvbGxhYmxlQXJlYTo6c2Nyb2xsYmFySW50cnVzaW9uKCkg
d2hpY2ggcmV0dXJucyBhbiBJbnRTaXplIHdpdGggdGhlIG9jY3VwaWVkV2lkdGgKKyAgICAgICAg
YW5kIG9jY3VwaWVkSGVpZ2h0IG9mIGFueSBzY3JvbGxiYXJzLCBhbmQgdXNlIGl0IGluIGEgZmV3
IHBsYWNlcy4KKworICAgICAgICAqIFdlYlByb2Nlc3MvUGx1Z2lucy9QREYvRGVwcmVjYXRlZFBE
RlBsdWdpbi5tbToKKyAgICAgICAgKFdlYktpdDo6UERGUGx1Z2luOjp1cGRhdGVTY3JvbGxiYXJz
KToKKyAgICAgICAgKFdlYktpdDo6UERGUGx1Z2luOjptYXhpbXVtU2Nyb2xsUG9zaXRpb24pOgor
CiAyMDE1LTEyLTE1ICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgogCiAg
ICAgICAgIFtNYWNdIEdlc3R1cmUgRXZlbnRzIHNob3VsZCBub3QgaGF2ZSBuZWdhdGl2ZSBzY2Fs
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCmluZGV4IDEzODcxMjE4NmM3MzE0NWM5ZDAzYTMw
MzI5OWI4MGJmZmEzMDNlM2MuLjcyZGU5ZDQyMmE3N2E0YzI5MWFmZGZhN2ZkM2NkOGI4MWFlNzUy
MGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKQEAgLTMyNjIsOCArMzI2Miw3IEBAIHZv
aWQgRnJhbWVWaWV3OjphdXRvU2l6ZUlmRW5hYmxlZCgpCiAgICAgICAgICAgICBSZWZQdHI8U2Ny
b2xsYmFyPiBsb2NhbEhvcml6b250YWxTY3JvbGxiYXIgPSBob3Jpem9udGFsU2Nyb2xsYmFyKCk7
CiAgICAgICAgICAgICBpZiAoIWxvY2FsSG9yaXpvbnRhbFNjcm9sbGJhcikKICAgICAgICAgICAg
ICAgICBsb2NhbEhvcml6b250YWxTY3JvbGxiYXIgPSBjcmVhdGVTY3JvbGxiYXIoSG9yaXpvbnRh
bFNjcm9sbGJhcik7Ci0gICAgICAgICAgICBpZiAoIWxvY2FsSG9yaXpvbnRhbFNjcm9sbGJhci0+
aXNPdmVybGF5U2Nyb2xsYmFyKCkpCi0gICAgICAgICAgICAgICAgbmV3U2l6ZS5zZXRIZWlnaHQo
bmV3U2l6ZS5oZWlnaHQoKSArIGxvY2FsSG9yaXpvbnRhbFNjcm9sbGJhci0+aGVpZ2h0KCkpOwor
ICAgICAgICAgICAgbmV3U2l6ZS5leHBhbmQoMCwgbG9jYWxIb3Jpem9udGFsU2Nyb2xsYmFyLT5v
Y2N1cGllZEhlaWdodCgpKTsKIAogICAgICAgICAgICAgLy8gRG9uJ3QgYm90aGVyIGNoZWNraW5n
IGZvciBhIHZlcnRpY2FsIHNjcm9sbGJhciBiZWNhdXNlIHRoZSB3aWR0aCBpcyBhdAogICAgICAg
ICAgICAgLy8gYWxyZWFkeSBncmVhdGVyIHRoZSBtYXhpbXVtLgpAQCAtMzI3MSw4ICszMjcwLDcg
QEAgdm9pZCBGcmFtZVZpZXc6OmF1dG9TaXplSWZFbmFibGVkKCkKICAgICAgICAgICAgIFJlZlB0
cjxTY3JvbGxiYXI+IGxvY2FsVmVydGljYWxTY3JvbGxiYXIgPSB2ZXJ0aWNhbFNjcm9sbGJhcigp
OwogICAgICAgICAgICAgaWYgKCFsb2NhbFZlcnRpY2FsU2Nyb2xsYmFyKQogICAgICAgICAgICAg
ICAgIGxvY2FsVmVydGljYWxTY3JvbGxiYXIgPSBjcmVhdGVTY3JvbGxiYXIoVmVydGljYWxTY3Jv
bGxiYXIpOwotICAgICAgICAgICAgaWYgKCFsb2NhbFZlcnRpY2FsU2Nyb2xsYmFyLT5pc092ZXJs
YXlTY3JvbGxiYXIoKSkKLSAgICAgICAgICAgICAgICBuZXdTaXplLnNldFdpZHRoKG5ld1NpemUu
d2lkdGgoKSArIGxvY2FsVmVydGljYWxTY3JvbGxiYXItPndpZHRoKCkpOworICAgICAgICAgICAg
bmV3U2l6ZS5leHBhbmQobG9jYWxWZXJ0aWNhbFNjcm9sbGJhci0+b2NjdXBpZWRXaWR0aCgpLCAw
KTsKIAogICAgICAgICAgICAgLy8gRG9uJ3QgYm90aGVyIGNoZWNraW5nIGZvciBhIGhvcml6b250
YWwgc2Nyb2xsYmFyIGJlY2F1c2UgdGhlIGhlaWdodCBpcwogICAgICAgICAgICAgLy8gYWxyZWFk
eSBncmVhdGVyIHRoZSBtYXhpbXVtLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vU2Nyb2xsVmlldy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNw
cAppbmRleCBkZGVkZTY1MWQ4ZDg0NTE3MWM2YjIwMGU2ZGM2NjFhYjQ3OGY5OTQwLi40Njc4Nzcz
NTI3ZGY0NzNmNmZkYmZiZDY1NmY2YmZjOThlNTBiNzkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9TY3JvbGxWaWV3LmNwcApAQCAtMjc1LDE3ICsyNzUsMTEgQEAgSW50U2l6ZSBTY3JvbGxWaWV3
Ojp1bnNjYWxlZFZpc2libGVDb250ZW50U2l6ZUluY2x1ZGluZ09ic2N1cmVkQXJlYShWaXNpYmxl
Q29udGUKICAgICAgICAgcmV0dXJuIG1fZml4ZWRWaXNpYmxlQ29udGVudFJlY3Quc2l6ZSgpOwog
I2VuZGlmCiAKLSAgICBpbnQgdmVydGljYWxTY3JvbGxiYXJXaWR0aCA9IDA7Ci0gICAgaW50IGhv
cml6b250YWxTY3JvbGxiYXJIZWlnaHQgPSAwOwotCi0gICAgaWYgKHNjcm9sbGJhckluY2x1c2lv
biA9PSBFeGNsdWRlU2Nyb2xsYmFycykgewotICAgICAgICBpZiAoU2Nyb2xsYmFyKiB2ZXJ0aWNh
bEJhciA9IHZlcnRpY2FsU2Nyb2xsYmFyKCkpCi0gICAgICAgICAgICB2ZXJ0aWNhbFNjcm9sbGJh
cldpZHRoID0gIXZlcnRpY2FsQmFyLT5pc092ZXJsYXlTY3JvbGxiYXIoKSA/IHZlcnRpY2FsQmFy
LT53aWR0aCgpIDogMDsKLSAgICAgICAgaWYgKFNjcm9sbGJhciogaG9yaXpvbnRhbEJhciA9IGhv
cml6b250YWxTY3JvbGxiYXIoKSkKLSAgICAgICAgICAgIGhvcml6b250YWxTY3JvbGxiYXJIZWln
aHQgPSAhaG9yaXpvbnRhbEJhci0+aXNPdmVybGF5U2Nyb2xsYmFyKCkgPyBob3Jpem9udGFsQmFy
LT5oZWlnaHQoKSA6IDA7Ci0gICAgfQorICAgIEludFNpemUgc2Nyb2xsYmFyU3BhY2U7CisgICAg
aWYgKHNjcm9sbGJhckluY2x1c2lvbiA9PSBFeGNsdWRlU2Nyb2xsYmFycykKKyAgICAgICAgc2Ny
b2xsYmFyU3BhY2UgPSBzY3JvbGxiYXJJbnRydXNpb24oKTsKIAotICAgIHJldHVybiBJbnRTaXpl
KHdpZHRoKCkgLSB2ZXJ0aWNhbFNjcm9sbGJhcldpZHRoLCBoZWlnaHQoKSAtIGhvcml6b250YWxT
Y3JvbGxiYXJIZWlnaHQpLmV4cGFuZGVkVG8oSW50U2l6ZSgpKTsKKyAgICByZXR1cm4gSW50U2l6
ZSh3aWR0aCgpIC0gc2Nyb2xsYmFyU3BhY2Uud2lkdGgoKSwgaGVpZ2h0KCkgLSBzY3JvbGxiYXJT
cGFjZS5oZWlnaHQoKSkuZXhwYW5kZWRUbyhJbnRTaXplKCkpOwogfQogICAgIAogSW50U2l6ZSBT
Y3JvbGxWaWV3Ojp1bnNjYWxlZFVub2JzY3VyZWRWaXNpYmxlQ29udGVudFNpemUoVmlzaWJsZUNv
bnRlbnRSZWN0SW5jbHVkZXNTY3JvbGxiYXJzIHNjcm9sbGJhckluY2x1c2lvbikgY29uc3QKQEAg
LTEyNDcsMjggKzEyNDEsMjUgQEAgdm9pZCBTY3JvbGxWaWV3OjpwYWludChHcmFwaGljc0NvbnRl
eHQmIGNvbnRleHQsIGNvbnN0IEludFJlY3QmIHJlY3QpCiAKIHZvaWQgU2Nyb2xsVmlldzo6Y2Fs
Y3VsYXRlT3ZlcmhhbmdBcmVhc0ZvclBhaW50aW5nKEludFJlY3QmIGhvcml6b250YWxPdmVyaGFu
Z1JlY3QsIEludFJlY3QmIHZlcnRpY2FsT3ZlcmhhbmdSZWN0KQogewotICAgIGludCB2ZXJ0aWNh
bFNjcm9sbGJhcldpZHRoID0gKHZlcnRpY2FsU2Nyb2xsYmFyKCkgJiYgIXZlcnRpY2FsU2Nyb2xs
YmFyKCktPmlzT3ZlcmxheVNjcm9sbGJhcigpKQotICAgICAgICA/IHZlcnRpY2FsU2Nyb2xsYmFy
KCktPndpZHRoKCkgOiAwOwotICAgIGludCBob3Jpem9udGFsU2Nyb2xsYmFySGVpZ2h0ID0gKGhv
cml6b250YWxTY3JvbGxiYXIoKSAmJiAhaG9yaXpvbnRhbFNjcm9sbGJhcigpLT5pc092ZXJsYXlT
Y3JvbGxiYXIoKSkKLSAgICAgICAgPyBob3Jpem9udGFsU2Nyb2xsYmFyKCktPmhlaWdodCgpIDog
MDsKKyAgICBJbnRTaXplIHNjcm9sbGJhclNwYWNlID0gc2Nyb2xsYmFySW50cnVzaW9uKCk7CiAK
ICAgICBpbnQgcGh5c2ljYWxTY3JvbGxZID0gc2Nyb2xsUG9zaXRpb24oKS55KCkgKyBzY3JvbGxP
cmlnaW4oKS55KCk7CiAgICAgaWYgKHBoeXNpY2FsU2Nyb2xsWSA8IDApIHsKICAgICAgICAgaG9y
aXpvbnRhbE92ZXJoYW5nUmVjdCA9IGZyYW1lUmVjdCgpOwogICAgICAgICBob3Jpem9udGFsT3Zl
cmhhbmdSZWN0LnNldEhlaWdodCgtcGh5c2ljYWxTY3JvbGxZKTsKLSAgICAgICAgaG9yaXpvbnRh
bE92ZXJoYW5nUmVjdC5zZXRXaWR0aChob3Jpem9udGFsT3ZlcmhhbmdSZWN0LndpZHRoKCkgLSB2
ZXJ0aWNhbFNjcm9sbGJhcldpZHRoKTsKKyAgICAgICAgaG9yaXpvbnRhbE92ZXJoYW5nUmVjdC5z
ZXRXaWR0aChob3Jpem9udGFsT3ZlcmhhbmdSZWN0LndpZHRoKCkgLSBzY3JvbGxiYXJTcGFjZS53
aWR0aCgpKTsKICAgICB9IGVsc2UgaWYgKHRvdGFsQ29udGVudHNTaXplKCkuaGVpZ2h0KCkgJiYg
cGh5c2ljYWxTY3JvbGxZID4gdG90YWxDb250ZW50c1NpemUoKS5oZWlnaHQoKSAtIHZpc2libGVI
ZWlnaHQoKSkgewogICAgICAgICBpbnQgaGVpZ2h0ID0gcGh5c2ljYWxTY3JvbGxZIC0gKHRvdGFs
Q29udGVudHNTaXplKCkuaGVpZ2h0KCkgLSB2aXNpYmxlSGVpZ2h0KCkpOwogICAgICAgICBob3Jp
em9udGFsT3ZlcmhhbmdSZWN0ID0gZnJhbWVSZWN0KCk7Ci0gICAgICAgIGhvcml6b250YWxPdmVy
aGFuZ1JlY3Quc2V0WShmcmFtZVJlY3QoKS5tYXhZKCkgLSBoZWlnaHQgLSBob3Jpem9udGFsU2Ny
b2xsYmFySGVpZ2h0KTsKKyAgICAgICAgaG9yaXpvbnRhbE92ZXJoYW5nUmVjdC5zZXRZKGZyYW1l
UmVjdCgpLm1heFkoKSAtIGhlaWdodCAtIHNjcm9sbGJhclNwYWNlLmhlaWdodCgpKTsKICAgICAg
ICAgaG9yaXpvbnRhbE92ZXJoYW5nUmVjdC5zZXRIZWlnaHQoaGVpZ2h0KTsKLSAgICAgICAgaG9y
aXpvbnRhbE92ZXJoYW5nUmVjdC5zZXRXaWR0aChob3Jpem9udGFsT3ZlcmhhbmdSZWN0LndpZHRo
KCkgLSB2ZXJ0aWNhbFNjcm9sbGJhcldpZHRoKTsKKyAgICAgICAgaG9yaXpvbnRhbE92ZXJoYW5n
UmVjdC5zZXRXaWR0aChob3Jpem9udGFsT3ZlcmhhbmdSZWN0LndpZHRoKCkgLSBzY3JvbGxiYXJT
cGFjZS53aWR0aCgpKTsKICAgICB9CiAKICAgICBpbnQgcGh5c2ljYWxTY3JvbGxYID0gc2Nyb2xs
UG9zaXRpb24oKS54KCkgKyBzY3JvbGxPcmlnaW4oKS54KCk7CiAgICAgaWYgKHBoeXNpY2FsU2Ny
b2xsWCA8IDApIHsKICAgICAgICAgdmVydGljYWxPdmVyaGFuZ1JlY3Quc2V0V2lkdGgoLXBoeXNp
Y2FsU2Nyb2xsWCk7Ci0gICAgICAgIHZlcnRpY2FsT3ZlcmhhbmdSZWN0LnNldEhlaWdodChmcmFt
ZVJlY3QoKS5oZWlnaHQoKSAtIGhvcml6b250YWxPdmVyaGFuZ1JlY3QuaGVpZ2h0KCkgLSBob3Jp
em9udGFsU2Nyb2xsYmFySGVpZ2h0KTsKKyAgICAgICAgdmVydGljYWxPdmVyaGFuZ1JlY3Quc2V0
SGVpZ2h0KGZyYW1lUmVjdCgpLmhlaWdodCgpIC0gaG9yaXpvbnRhbE92ZXJoYW5nUmVjdC5oZWln
aHQoKSAtIHNjcm9sbGJhclNwYWNlLmhlaWdodCgpKTsKICAgICAgICAgdmVydGljYWxPdmVyaGFu
Z1JlY3Quc2V0WChmcmFtZVJlY3QoKS54KCkpOwogICAgICAgICBpZiAoaG9yaXpvbnRhbE92ZXJo
YW5nUmVjdC55KCkgPT0gZnJhbWVSZWN0KCkueSgpKQogICAgICAgICAgICAgdmVydGljYWxPdmVy
aGFuZ1JlY3Quc2V0WShmcmFtZVJlY3QoKS55KCkgKyBob3Jpem9udGFsT3ZlcmhhbmdSZWN0Lmhl
aWdodCgpKTsKQEAgLTEyNzcsOCArMTI2OCw4IEBAIHZvaWQgU2Nyb2xsVmlldzo6Y2FsY3VsYXRl
T3ZlcmhhbmdBcmVhc0ZvclBhaW50aW5nKEludFJlY3QmIGhvcml6b250YWxPdmVyaGFuZ1JlCiAg
ICAgfSBlbHNlIGlmIChjb250ZW50c1dpZHRoKCkgJiYgcGh5c2ljYWxTY3JvbGxYID4gY29udGVu
dHNXaWR0aCgpIC0gdmlzaWJsZVdpZHRoKCkpIHsKICAgICAgICAgaW50IHdpZHRoID0gcGh5c2lj
YWxTY3JvbGxYIC0gKGNvbnRlbnRzV2lkdGgoKSAtIHZpc2libGVXaWR0aCgpKTsKICAgICAgICAg
dmVydGljYWxPdmVyaGFuZ1JlY3Quc2V0V2lkdGgod2lkdGgpOwotICAgICAgICB2ZXJ0aWNhbE92
ZXJoYW5nUmVjdC5zZXRIZWlnaHQoZnJhbWVSZWN0KCkuaGVpZ2h0KCkgLSBob3Jpem9udGFsT3Zl
cmhhbmdSZWN0LmhlaWdodCgpIC0gaG9yaXpvbnRhbFNjcm9sbGJhckhlaWdodCk7Ci0gICAgICAg
IHZlcnRpY2FsT3ZlcmhhbmdSZWN0LnNldFgoZnJhbWVSZWN0KCkubWF4WCgpIC0gd2lkdGggLSB2
ZXJ0aWNhbFNjcm9sbGJhcldpZHRoKTsKKyAgICAgICAgdmVydGljYWxPdmVyaGFuZ1JlY3Quc2V0
SGVpZ2h0KGZyYW1lUmVjdCgpLmhlaWdodCgpIC0gaG9yaXpvbnRhbE92ZXJoYW5nUmVjdC5oZWln
aHQoKSAtIHNjcm9sbGJhclNwYWNlLmhlaWdodCgpKTsKKyAgICAgICAgdmVydGljYWxPdmVyaGFu
Z1JlY3Quc2V0WChmcmFtZVJlY3QoKS5tYXhYKCkgLSB3aWR0aCAtIHNjcm9sbGJhclNwYWNlLndp
ZHRoKCkpOwogICAgICAgICBpZiAoaG9yaXpvbnRhbE92ZXJoYW5nUmVjdC55KCkgPT0gZnJhbWVS
ZWN0KCkueSgpKQogICAgICAgICAgICAgdmVydGljYWxPdmVyaGFuZ1JlY3Quc2V0WShmcmFtZVJl
Y3QoKS55KCkgKyBob3Jpem9udGFsT3ZlcmhhbmdSZWN0LmhlaWdodCgpKTsKICAgICAgICAgZWxz
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsYWJsZUFyZWEuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsYWJsZUFyZWEuY3BwCmluZGV4IGZiNTQw
ZDVmOTY2ZmE1YzhjZTIyMzRlZjk0NDA1ZDhjM2MyNGY3ZWMuLjNiY2MyNWRjODU2MGY1NjVjNTA3
MTE4ZTk3ODkzNDIzYjhkYzBmMmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L1Njcm9sbGFibGVBcmVhLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxh
YmxlQXJlYS5jcHAKQEAgLTUxNiw2ICs1MTYsMTMgQEAgYm9vbCBTY3JvbGxhYmxlQXJlYTo6aXNQ
aW5uZWRWZXJ0aWNhbGx5SW5EaXJlY3Rpb24oaW50IHZlcnRpY2FsU2Nyb2xsRGVsdGEpIGNvbnMK
IH0KICNlbmRpZiAvLyBQTEFURk9STShJT1MpCiAKK0ludFNpemUgU2Nyb2xsYWJsZUFyZWE6OnNj
cm9sbGJhckludHJ1c2lvbigpIGNvbnN0Cit7CisgICAgcmV0dXJuIEludFNpemUoCisgICAgICAg
IHZlcnRpY2FsU2Nyb2xsYmFyKCkgPyB2ZXJ0aWNhbFNjcm9sbGJhcigpLT5vY2N1cGllZFdpZHRo
KCkgOiAwLAorICAgICAgICBob3Jpem9udGFsU2Nyb2xsYmFyKCkgPyBob3Jpem9udGFsU2Nyb2xs
YmFyKCktPm9jY3VwaWVkSGVpZ2h0KCkgOiAwKTsKK30KKwogSW50UG9pbnQgU2Nyb2xsYWJsZUFy
ZWE6OnNjcm9sbFBvc2l0aW9uKCkgY29uc3QKIHsKICAgICBpbnQgeCA9IGhvcml6b250YWxTY3Jv
bGxiYXIoKSA/IGhvcml6b250YWxTY3JvbGxiYXIoKS0+dmFsdWUoKSA6IDA7CkBAIC01ODIsOSAr
NTg5LDkgQEAgSW50UmVjdCBTY3JvbGxhYmxlQXJlYTo6dmlzaWJsZUNvbnRlbnRSZWN0SW50ZXJu
YWwoVmlzaWJsZUNvbnRlbnRSZWN0SW5jbHVkZXNTY3IKIAogICAgIGlmIChzY3JvbGxiYXJJbmNs
dXNpb24gPT0gSW5jbHVkZVNjcm9sbGJhcnMpIHsKICAgICAgICAgaWYgKFNjcm9sbGJhciogdmVy
dGljYWxCYXIgPSB2ZXJ0aWNhbFNjcm9sbGJhcigpKQotICAgICAgICAgICAgdmVydGljYWxTY3Jv
bGxiYXJXaWR0aCA9ICF2ZXJ0aWNhbEJhci0+aXNPdmVybGF5U2Nyb2xsYmFyKCkgPyB2ZXJ0aWNh
bEJhci0+d2lkdGgoKSA6IDA7CisgICAgICAgICAgICB2ZXJ0aWNhbFNjcm9sbGJhcldpZHRoID0g
dmVydGljYWxCYXItPm9jY3VwaWVkV2lkdGgoKTsKICAgICAgICAgaWYgKFNjcm9sbGJhciogaG9y
aXpvbnRhbEJhciA9IGhvcml6b250YWxTY3JvbGxiYXIoKSkKLSAgICAgICAgICAgIGhvcml6b250
YWxTY3JvbGxiYXJIZWlnaHQgPSAhaG9yaXpvbnRhbEJhci0+aXNPdmVybGF5U2Nyb2xsYmFyKCkg
PyBob3Jpem9udGFsQmFyLT5oZWlnaHQoKSA6IDA7CisgICAgICAgICAgICBob3Jpem9udGFsU2Ny
b2xsYmFySGVpZ2h0ID0gaG9yaXpvbnRhbEJhci0+b2NjdXBpZWRIZWlnaHQoKTsKICAgICB9CiAK
ICAgICByZXR1cm4gSW50UmVjdChzY3JvbGxQb3NpdGlvbigpLngoKSwKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbGFibGVBcmVhLmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9TY3JvbGxhYmxlQXJlYS5oCmluZGV4IGY4ZWJlZWY5NGNmYmZiYjIyNzcwMjgyMjkx
ZjE0Y2JmNzJjZDRkNjYuLmJlMjBiNjQ4ZTY1Y2U3ZmQzYWQwMWQ4NjA5MTczMDZmMzc1MzQ5M2Yg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbGFibGVBcmVhLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsYWJsZUFyZWEuaApAQCAtMTczLDYgKzE3
Myw4IEBAIHB1YmxpYzoKICAgICB7CiAgICAgICAgIHJldHVybiBzY3JvbGxiYXItPldpZGdldDo6
Y29udmVydEZyb21Db250YWluaW5nVmlldyhwYXJlbnRQb2ludCk7CiAgICAgfQorICAgIAorICAg
IFdFQkNPUkVfRVhQT1JUIEludFNpemUgc2Nyb2xsYmFySW50cnVzaW9uKCkgY29uc3Q7CiAKICAg
ICB2aXJ0dWFsIFNjcm9sbGJhciogaG9yaXpvbnRhbFNjcm9sbGJhcigpIGNvbnN0IHsgcmV0dXJu
IDA7IH0KICAgICB2aXJ0dWFsIFNjcm9sbGJhciogdmVydGljYWxTY3JvbGxiYXIoKSBjb25zdCB7
IHJldHVybiAwOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxi
YXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsYmFyLmNwcAppbmRleCBiMzQx
NGI3MGQwOTI2ZmVlODJhNDFkMjRmNTQyNDc3MGM3ZWNmYTE2Li5jNDk4NDU3ZjBiODJjYjg3YWU5
ZWRkM2E3ZTQxNjJmZDAyZGU4YjliIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9TY3JvbGxiYXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbGJhci5j
cHAKQEAgLTk3LDYgKzk3LDE2IEBAIFNjcm9sbGJhcjo6flNjcm9sbGJhcigpCiAgICAgdGhlbWUo
KS51bnJlZ2lzdGVyU2Nyb2xsYmFyKCp0aGlzKTsKIH0KIAoraW50IFNjcm9sbGJhcjo6b2NjdXBp
ZWRXaWR0aCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIGlzT3ZlcmxheVNjcm9sbGJhcigpID8gMCA6
IHdpZHRoKCk7Cit9CisKK2ludCBTY3JvbGxiYXI6Om9jY3VwaWVkSGVpZ2h0KCkgY29uc3QKK3sK
KyAgICByZXR1cm4gaXNPdmVybGF5U2Nyb2xsYmFyKCkgPyAwIDogaGVpZ2h0KCk7Cit9CisKIHZv
aWQgU2Nyb2xsYmFyOjpvZmZzZXREaWRDaGFuZ2UoKQogewogICAgIGZsb2F0IHBvc2l0aW9uID0g
c3RhdGljX2Nhc3Q8ZmxvYXQ+KG1fc2Nyb2xsYWJsZUFyZWEuc2Nyb2xsUG9zaXRpb24odGhpcykp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsYmFyLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxiYXIuaAppbmRleCBlMjRhMjA3YTc0ZWQ1MWE1YWE0
ZTlkMjkxYTA1ZTM5MGY5MzQ1MWU3Li44MjQyNTEwMzViZGRlNDE5MjA5Yjc3YmE5YzBmNjQ4YTk5
OGMwYTgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxiYXIuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxiYXIuaApAQCAtNjksNiArNjksOSBA
QCBwdWJsaWM6CiAgICAgaW50IHRvdGFsU2l6ZSgpIGNvbnN0IHsgcmV0dXJuIG1fdG90YWxTaXpl
OyB9CiAgICAgaW50IG1heGltdW0oKSBjb25zdCB7IHJldHVybiBtX3RvdGFsU2l6ZSAtIG1fdmlz
aWJsZVNpemU7IH0KICAgICBTY3JvbGxiYXJDb250cm9sU2l6ZSBjb250cm9sU2l6ZSgpIGNvbnN0
IHsgcmV0dXJuIG1fY29udHJvbFNpemU7IH0KKyAgICAKKyAgICBpbnQgb2NjdXBpZWRXaWR0aCgp
IGNvbnN0OworICAgIGludCBvY2N1cGllZEhlaWdodCgpIGNvbnN0OwogCiAgICAgaW50IGxpbmVT
dGVwKCkgY29uc3QgeyByZXR1cm4gbV9saW5lU3RlcDsgfQogICAgIGludCBwYWdlU3RlcCgpIGNv
bnN0IHsgcmV0dXJuIG1fcGFnZVN0ZXA7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJMYXllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
TGF5ZXIuY3BwCmluZGV4IDI3OWJjYzAzOWE0Y2IxYjU3YzdlMTJiNWU3NWU0NTE3ZTJlYjkxMzUu
LmYzMDUyN2E1NWVlZTUxNDBkY2YwOTQzMzhkMTBmZjEyY2NlZjYwMzggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcApAQCAtMjc0NywxNCArMjc0NywxMSBAQCBJbnRQ
b2ludCBSZW5kZXJMYXllcjo6bWF4aW11bVNjcm9sbFBvc2l0aW9uKCkgY29uc3QKIAogSW50UmVj
dCBSZW5kZXJMYXllcjo6dmlzaWJsZUNvbnRlbnRSZWN0SW50ZXJuYWwoVmlzaWJsZUNvbnRlbnRS
ZWN0SW5jbHVkZXNTY3JvbGxiYXJzIHNjcm9sbGJhckluY2x1c2lvbiwgVmlzaWJsZUNvbnRlbnRS
ZWN0QmVoYXZpb3IpIGNvbnN0CiB7Ci0gICAgaW50IHZlcnRpY2FsU2Nyb2xsYmFyV2lkdGggPSAw
OwotICAgIGludCBob3Jpem9udGFsU2Nyb2xsYmFySGVpZ2h0ID0gMDsKLSAgICBpZiAoc2hvd3NP
dmVyZmxvd0NvbnRyb2xzKCkgJiYgc2Nyb2xsYmFySW5jbHVzaW9uID09IEluY2x1ZGVTY3JvbGxi
YXJzKSB7Ci0gICAgICAgIHZlcnRpY2FsU2Nyb2xsYmFyV2lkdGggPSAodmVydGljYWxTY3JvbGxi
YXIoKSAmJiAhdmVydGljYWxTY3JvbGxiYXIoKS0+aXNPdmVybGF5U2Nyb2xsYmFyKCkpID8gdmVy
dGljYWxTY3JvbGxiYXIoKS0+d2lkdGgoKSA6IDA7Ci0gICAgICAgIGhvcml6b250YWxTY3JvbGxi
YXJIZWlnaHQgPSAoaG9yaXpvbnRhbFNjcm9sbGJhcigpICYmICFob3Jpem9udGFsU2Nyb2xsYmFy
KCktPmlzT3ZlcmxheVNjcm9sbGJhcigpKSA/IGhvcml6b250YWxTY3JvbGxiYXIoKS0+aGVpZ2h0
KCkgOiAwOwotICAgIH0KKyAgICBJbnRTaXplIHNjcm9sbGJhclNwYWNlOworICAgIGlmIChzaG93
c092ZXJmbG93Q29udHJvbHMoKSAmJiBzY3JvbGxiYXJJbmNsdXNpb24gPT0gSW5jbHVkZVNjcm9s
bGJhcnMpCisgICAgICAgIHNjcm9sbGJhclNwYWNlID0gc2Nyb2xsYmFySW50cnVzaW9uKCk7CiAg
ICAgCi0gICAgcmV0dXJuIEludFJlY3Qoc2Nyb2xsUG9zaXRpb24oKSwgSW50U2l6ZShzdGQ6Om1h
eCgwLCBtX2xheWVyU2l6ZS53aWR0aCgpIC0gdmVydGljYWxTY3JvbGxiYXJXaWR0aCksIHN0ZDo6
bWF4KDAsIG1fbGF5ZXJTaXplLmhlaWdodCgpIC0gaG9yaXpvbnRhbFNjcm9sbGJhckhlaWdodCkp
KTsKKyAgICByZXR1cm4gSW50UmVjdChzY3JvbGxQb3NpdGlvbigpLCBJbnRTaXplKHN0ZDo6bWF4
KDAsIG1fbGF5ZXJTaXplLndpZHRoKCkgLSBzY3JvbGxiYXJTcGFjZS53aWR0aCgpKSwgc3RkOjpt
YXgoMCwgbV9sYXllclNpemUuaGVpZ2h0KCkgLSBzY3JvbGxiYXJTcGFjZS5oZWlnaHQoKSkpKTsK
IH0KIAogSW50U2l6ZSBSZW5kZXJMYXllcjo6b3ZlcmhhbmdBbW91bnQoKSBjb25zdApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxpc3RCb3guY3BwIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxpc3RCb3guY3BwCmluZGV4IDhhYzQ4MTBkYTEzODhh
ZDUxMTllNTg4NzgyMzk1YTgxYzdlZjkyMDIuLmUwMzM3ZjQ0MDM5MzNiMzdlYzhkYTQxNjBmN2Fl
NzY2Njk0NDg5ZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJM
aXN0Qm94LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGlzdEJveC5j
cHAKQEAgLTYzMCw3ICs2MzAsNyBAQCBMYXlvdXRVbml0IFJlbmRlckxpc3RCb3g6Oml0ZW1IZWln
aHQoKSBjb25zdAogCiBpbnQgUmVuZGVyTGlzdEJveDo6dmVydGljYWxTY3JvbGxiYXJXaWR0aCgp
IGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fdkJhciAmJiAhbV92QmFyLT5pc092ZXJsYXlTY3JvbGxi
YXIoKSA/IG1fdkJhci0+d2lkdGgoKSA6IDA7CisgICAgcmV0dXJuIG1fdkJhciA/IG1fdkJhci0+
b2NjdXBpZWRXaWR0aCgpIDogMDsKIH0KIAogLy8gRklYTUU6IFdlIGlnbm9yZSBwYWRkaW5nIGlu
IHRoZSB2ZXJ0aWNhbCBkaXJlY3Rpb24gYXMgZmFyIGFzIHRoZXNlIHZhbHVlcyBhcmUgY29uY2Vy
bmVkLCBzaW5jZSB0aGF0J3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
UGx1Z2lucy9QREYvRGVwcmVjYXRlZFBERlBsdWdpbi5tbSBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvUGx1Z2lucy9QREYvRGVwcmVjYXRlZFBERlBsdWdpbi5tbQppbmRleCAzZjFjYmNkN2E4
NmUxNmE1MzI2YTM0Y2RhOTIyNmE0Y2UxZThhNDI1Li4xMDRiN2Q3MWI3ZTU0YzAzMzZiN2E2Zjc4
YTAyYTNkODZlYjhmMGNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1Bs
dWdpbnMvUERGL0RlcHJlY2F0ZWRQREZQbHVnaW4ubW0KKysrIGIvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9QbHVnaW5zL1BERi9EZXByZWNhdGVkUERGUGx1Z2luLm1tCkBAIC01ODcsMTQgKzU4
NywxMyBAQCB2b2lkIFBERlBsdWdpbjo6dXBkYXRlU2Nyb2xsYmFycygpCiAgICAgfSBlbHNlIGlm
IChtX3NpemUuaGVpZ2h0KCkgPCBtX3BkZkRvY3VtZW50U2l6ZS5oZWlnaHQoKSkKICAgICAgICAg
bV92ZXJ0aWNhbFNjcm9sbGJhciA9IGNyZWF0ZVNjcm9sbGJhcihWZXJ0aWNhbFNjcm9sbGJhcik7
CiAKLSAgICBpbnQgaG9yaXpvbnRhbFNjcm9sbGJhckhlaWdodCA9IChtX2hvcml6b250YWxTY3Jv
bGxiYXIgJiYgIW1faG9yaXpvbnRhbFNjcm9sbGJhci0+aXNPdmVybGF5U2Nyb2xsYmFyKCkpID8g
bV9ob3Jpem9udGFsU2Nyb2xsYmFyLT5oZWlnaHQoKSA6IDA7Ci0gICAgaW50IHZlcnRpY2FsU2Ny
b2xsYmFyV2lkdGggPSAobV92ZXJ0aWNhbFNjcm9sbGJhciAmJiAhbV92ZXJ0aWNhbFNjcm9sbGJh
ci0+aXNPdmVybGF5U2Nyb2xsYmFyKCkpID8gbV92ZXJ0aWNhbFNjcm9sbGJhci0+d2lkdGgoKSA6
IDA7CisgICAgSW50U2l6ZSBzY3JvbGxiYXJTcGFjZSA9IHNjcm9sbGJhckludHJ1c2lvbigpOwog
CiAgICAgaW50IHBhZ2VTdGVwID0gbV9wYWdlQm94ZXMuaXNFbXB0eSgpID8gMCA6IG1fcGFnZUJv
eGVzWzBdLmhlaWdodCgpOwogCiAgICAgaWYgKG1faG9yaXpvbnRhbFNjcm9sbGJhcikgewogICAg
ICAgICBtX2hvcml6b250YWxTY3JvbGxiYXItPnNldFN0ZXBzKFNjcm9sbGJhcjo6cGl4ZWxzUGVy
TGluZVN0ZXAoKSwgcGFnZVN0ZXApOwotICAgICAgICBtX2hvcml6b250YWxTY3JvbGxiYXItPnNl
dFByb3BvcnRpb24obV9zaXplLndpZHRoKCkgLSB2ZXJ0aWNhbFNjcm9sbGJhcldpZHRoLCBtX3Bk
ZkRvY3VtZW50U2l6ZS53aWR0aCgpKTsKKyAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsYmFyLT5z
ZXRQcm9wb3J0aW9uKG1fc2l6ZS53aWR0aCgpIC0gc2Nyb2xsYmFyU3BhY2Uud2lkdGgoKSwgbV9w
ZGZEb2N1bWVudFNpemUud2lkdGgoKSk7CiAgICAgICAgIEludFJlY3Qgc2Nyb2xsYmFyUmVjdChw
bHVnaW5WaWV3KCktPngoKSwgcGx1Z2luVmlldygpLT55KCkgKyBtX3NpemUuaGVpZ2h0KCkgLSBt
X2hvcml6b250YWxTY3JvbGxiYXItPmhlaWdodCgpLCBtX3NpemUud2lkdGgoKSwgbV9ob3Jpem9u
dGFsU2Nyb2xsYmFyLT5oZWlnaHQoKSk7CiAgICAgICAgIGlmIChtX3ZlcnRpY2FsU2Nyb2xsYmFy
KQogICAgICAgICAgICAgc2Nyb2xsYmFyUmVjdC5jb250cmFjdChtX3ZlcnRpY2FsU2Nyb2xsYmFy
LT53aWR0aCgpLCAwKTsKQEAgLTYwMiw3ICs2MDEsNyBAQCB2b2lkIFBERlBsdWdpbjo6dXBkYXRl
U2Nyb2xsYmFycygpCiAgICAgfQogICAgIGlmIChtX3ZlcnRpY2FsU2Nyb2xsYmFyKSB7CiAgICAg
ICAgIG1fdmVydGljYWxTY3JvbGxiYXItPnNldFN0ZXBzKFNjcm9sbGJhcjo6cGl4ZWxzUGVyTGlu
ZVN0ZXAoKSwgcGFnZVN0ZXApOwotICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsYmFyLT5zZXRQcm9w
b3J0aW9uKG1fc2l6ZS5oZWlnaHQoKSAtIGhvcml6b250YWxTY3JvbGxiYXJIZWlnaHQsIG1fcGRm
RG9jdW1lbnRTaXplLmhlaWdodCgpKTsKKyAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbGJhci0+c2V0
UHJvcG9ydGlvbihtX3NpemUuaGVpZ2h0KCkgLSBzY3JvbGxiYXJTcGFjZS5oZWlnaHQoKSwgbV9w
ZGZEb2N1bWVudFNpemUuaGVpZ2h0KCkpOwogICAgICAgICBJbnRSZWN0IHNjcm9sbGJhclJlY3Qo
SW50UmVjdChwbHVnaW5WaWV3KCktPngoKSArIG1fc2l6ZS53aWR0aCgpIC0gbV92ZXJ0aWNhbFNj
cm9sbGJhci0+d2lkdGgoKSwgcGx1Z2luVmlldygpLT55KCksIG1fdmVydGljYWxTY3JvbGxiYXIt
PndpZHRoKCksIG1fc2l6ZS5oZWlnaHQoKSkpOwogICAgICAgICBpZiAobV9ob3Jpem9udGFsU2Ny
b2xsYmFyKQogICAgICAgICAgICAgc2Nyb2xsYmFyUmVjdC5jb250cmFjdCgwLCBtX2hvcml6b250
YWxTY3JvbGxiYXItPmhlaWdodCgpKTsKQEAgLTc5NiwxMCArNzk1LDkgQEAgSW50UG9pbnQgUERG
UGx1Z2luOjptaW5pbXVtU2Nyb2xsUG9zaXRpb24oKSBjb25zdAogCiBJbnRQb2ludCBQREZQbHVn
aW46Om1heGltdW1TY3JvbGxQb3NpdGlvbigpIGNvbnN0CiB7Ci0gICAgaW50IGhvcml6b250YWxT
Y3JvbGxiYXJIZWlnaHQgPSAobV9ob3Jpem9udGFsU2Nyb2xsYmFyICYmICFtX2hvcml6b250YWxT
Y3JvbGxiYXItPmlzT3ZlcmxheVNjcm9sbGJhcigpKSA/IG1faG9yaXpvbnRhbFNjcm9sbGJhci0+
aGVpZ2h0KCkgOiAwOwotICAgIGludCB2ZXJ0aWNhbFNjcm9sbGJhcldpZHRoID0gKG1fdmVydGlj
YWxTY3JvbGxiYXIgJiYgIW1fdmVydGljYWxTY3JvbGxiYXItPmlzT3ZlcmxheVNjcm9sbGJhcigp
KSA/IG1fdmVydGljYWxTY3JvbGxiYXItPndpZHRoKCkgOiAwOworICAgIEludFNpemUgc2Nyb2xs
YmFyU3BhY2UgPSBzY3JvbGxiYXJJbnRydXNpb24oKTsKIAotICAgIEludFBvaW50IG1heGltdW1P
ZmZzZXQobV9wZGZEb2N1bWVudFNpemUud2lkdGgoKSAtIG1fc2l6ZS53aWR0aCgpICsgdmVydGlj
YWxTY3JvbGxiYXJXaWR0aCwgbV9wZGZEb2N1bWVudFNpemUuaGVpZ2h0KCkgLSBtX3NpemUuaGVp
Z2h0KCkgKyBob3Jpem9udGFsU2Nyb2xsYmFySGVpZ2h0KTsKKyAgICBJbnRQb2ludCBtYXhpbXVt
T2Zmc2V0KG1fcGRmRG9jdW1lbnRTaXplLndpZHRoKCkgLSBtX3NpemUud2lkdGgoKSArIHNjcm9s
bGJhclNwYWNlLndpZHRoKCksIG1fcGRmRG9jdW1lbnRTaXplLmhlaWdodCgpIC0gbV9zaXplLmhl
aWdodCgpICsgc2Nyb2xsYmFyU3BhY2UuaGVpZ2h0KCkpOwogICAgIG1heGltdW1PZmZzZXQuY2xh
bXBOZWdhdGl2ZVRvWmVybygpOwogICAgIHJldHVybiBtYXhpbXVtT2Zmc2V0OwogfQo=
</data>
<flag name="review"
          id="292528"
          type_id="1"
          status="+"
          setter="bdakin"
    />
          </attachment>
      

    </bug>

</bugzilla>