<?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>21527</bug_id>
          
          <creation_ts>2008-10-10 12:00:54 -0700</creation_ts>
          <short_desc>Make CSS scrollbars support :hover and :active</short_desc>
          <delta_ts>2008-10-10 12:33: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>CSS</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.5</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="Dave Hyatt">hyatt</reporter>
          <assigned_to name="Dave Hyatt">hyatt</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>94899</commentid>
    <comment_count>0</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2008-10-10 12:00:54 -0700</bug_when>
    <thetext>Make scrollbars support :hover and :active</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>94900</commentid>
    <comment_count>1</comment_count>
      <attachid>24269</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2008-10-10 12:01:16 -0700</bug_when>
    <thetext>Created attachment 24269
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>94902</commentid>
    <comment_count>2</comment_count>
      <attachid>24269</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-10-10 12:17:13 -0700</bug_when>
    <thetext>Comment on attachment 24269
Patch

Can you comment on the changes to :not handling in the ChangeLog?

 2394         case CSSSelector::PseudoHover: {
 2395             ScrollbarPart hoveredPart = scrollbar-&gt;hoveredPart();
 2396             if (part == ScrollbarBGPart)
 2397                 return hoveredPart != NoPart;
 2398             if (part == TrackBGPart)
 2399                 return hoveredPart == BackTrackPart || hoveredPart == ForwardTrackPart || hoveredPart == ThumbPart;
 2400             return part == hoveredPart;
 2401         }
 2402         case CSSSelector::PseudoActive: {
 2403             ScrollbarPart pressedPart = scrollbar-&gt;pressedPart();
 2404             if (part == ScrollbarBGPart)
 2405                 return pressedPart != NoPart;
 2406             if (part == TrackBGPart)
 2407                 return pressedPart == BackTrackPart || pressedPart == ForwardTrackPart || pressedPart == ThumbPart;
 2408             return part == pressedPart;
 2409         }

Maybe it&apos;s worth putting this code into a function so we don&apos;t have to duplicate it?

 99 void RenderScrollbar::setPressedPart(ScrollbarPart part)
 100 {
 101     ScrollbarPart oldPart = m_pressedPart;

Should we check part != m_pressedPart before continuing?

r=me if you land a manual test with it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>94903</commentid>
    <comment_count>3</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2008-10-10 12:33:09 -0700</bug_when>
    <thetext>Fixed in r37486.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>24269</attachid>
            <date>2008-10-10 12:01:16 -0700</date>
            <delta_ts>2008-10-10 12:17:13 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>15750</size>
            <attacher name="Dave Hyatt">hyatt</attacher>
            
              <data encoding="base64">SW5kZXg6IENoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBDaGFuZ2VMb2cJKHJldmlzaW9uIDM3NDg1
KQorKysgQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzAgQEAKKzIwMDgtMTAt
MTAgIERhdmlkIEh5YXR0ICA8aHlhdHRAYXBwbGUuY29tPgorCisgICAgICAgIE1ha2UgQ1NTIHNj
cm9sbGJhcnMgc3VwcG9ydCA6bm90LCA6aG92ZXIgYW5kIDphY3RpdmUuCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBjc3MvQ1NTU3R5bGVTZWxlY3Rv
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NTdHlsZVNlbGVjdG9yOjpTZWxlY3RvckNoZWNr
ZXI6OmNoZWNrT25lU2VsZWN0b3IpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTU3R5bGVTZWxlY3Rv
cjo6U2VsZWN0b3JDaGVja2VyOjpjaGVja1Njcm9sbGJhclBzZXVkb0NsYXNzKToKKyAgICAgICAg
KiBwbGF0Zm9ybS9TY3JvbGxiYXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsYmFyOjph
dXRvc2Nyb2xsUHJlc3NlZFBhcnQpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsYmFyOjpzdGFy
dFRpbWVySWZOZWVkZWQpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsYmFyOjpzZXRIb3ZlcmVk
UGFydCk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxiYXI6OnNldFByZXNzZWRQYXJ0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlNjcm9sbGJhcjo6bW91c2VNb3ZlZCk6CisgICAgICAgIChXZWJDb3Jl
OjpTY3JvbGxiYXI6Om1vdXNlRXhpdGVkKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGJhcjo6
bW91c2VVcCk6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxiYXI6Om1vdXNlRG93bik6CisgICAg
ICAgICogcGxhdGZvcm0vU2Nyb2xsYmFyLmg6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclNj
cm9sbGJhci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTY3JvbGxiYXI6OnNldEhvdmVy
ZWRQYXJ0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclNjcm9sbGJhcjo6c2V0UHJlc3NlZFBh
cnQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU2Nyb2xsYmFyOjp1cGRhdGVTY3JvbGxiYXJQ
YXJ0cyk6CisgICAgICAgIChXZWJDb3JlOjpwc2V1ZG9Gb3JTY3JvbGxiYXJQYXJ0KToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlclNjcm9sbGJhcjo6dXBkYXRlU2Nyb2xsYmFyUGFydCk6CisgICAg
ICAgICogcmVuZGVyaW5nL1JlbmRlclNjcm9sbGJhci5oOgorCiAyMDA4LTEwLTEwICBDaHJpcyBN
YXJyaW4gIDxjbWFycmluQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYW4gQmVy
bnN0ZWluLgpJbmRleDogY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGNz
cy9DU1NTdHlsZVNlbGVjdG9yLmNwcAkocmV2aXNpb24gMzc0ODIpCisrKyBjc3MvQ1NTU3R5bGVT
ZWxlY3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE4MzcsMTMgKzE4MzcsMjUgQEAgYm9vbCBD
U1NTdHlsZVNlbGVjdG9yOjpTZWxlY3RvckNoZWNrZXI6OgogICAgICAgICAgICAgYnJlYWs7CiAg
ICAgICAgIH0KICAgICB9CisgICAgCiAgICAgaWYgKHNlbC0+bV9tYXRjaCA9PSBDU1NTZWxlY3Rv
cjo6UHNldWRvQ2xhc3MpIHsKLSAgICAgICAgCi0gICAgICAgIC8vIENTUyBzY3JvbGxiYXJzIG1h
dGNoIGEgc3BlY2lmaWMgc3Vic2V0IG9mIHBzZXVkbyBjbGFzc2VzLCBhbmQgdGhleSBoYXZlIHNw
ZWNpYWxpemVkIHJ1bGVzIGZvciBlYWNoCi0gICAgICAgIC8vIChzaW5jZSB0aGVyZSBhcmUgbm8g
ZWxlbWVudHMgaW52b2x2ZWQpLgotICAgICAgICBpZiAoUmVuZGVyU2Nyb2xsYmFyOjpzY3JvbGxi
YXJGb3JTdHlsZVJlc29sdmUoKSAmJiBkeW5hbWljUHNldWRvICE9IFJlbmRlclN0eWxlOjpOT1BT
RVVETykKKyAgICAgICAgLy8gSGFuZGxlIDpub3QgdXAgZnJvbnQuCisgICAgICAgIGlmIChzZWwt
PnBzZXVkb1R5cGUoKSA9PSBDU1NTZWxlY3Rvcjo6UHNldWRvTm90KSB7CisgICAgICAgICAgICAv
LyBjaGVjayB0aGUgc2ltcGxlIHNlbGVjdG9yCisgICAgICAgICAgICBmb3IgKENTU1NlbGVjdG9y
KiBzdWJTZWwgPSBzZWwtPm1fc2ltcGxlU2VsZWN0b3I7IHN1YlNlbDsgc3ViU2VsID0gc3ViU2Vs
LT5tX3RhZ0hpc3RvcnkpIHsKKyAgICAgICAgICAgICAgICAvLyA6bm90IGNhbm5vdCBuZXN0LiBJ
IGRvbid0IHJlYWxseSBrbm93IHdoeSB0aGlzIGlzIGEKKyAgICAgICAgICAgICAgICAvLyByZXN0
cmljdGlvbiBpbiBDU1MzLCBidXQgaXQgaXMsIHNvIGxldCdzIGhvbm9yIGl0LgorICAgICAgICAg
ICAgICAgIGlmIChzdWJTZWwtPm1fc2ltcGxlU2VsZWN0b3IpCisgICAgICAgICAgICAgICAgICAg
IGJyZWFrOworICAgICAgICAgICAgICAgIGlmICghY2hlY2tPbmVTZWxlY3RvcihzdWJTZWwsIGUs
IHNlbGVjdG9yQXR0cnMsIGR5bmFtaWNQc2V1ZG8sIGlzQW5jZXN0b3IsIHRydWUsIGVsZW1lbnRT
dHlsZSwgZWxlbWVudFBhcmVudFN0eWxlKSkKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRy
dWU7CisgICAgICAgICAgICB9CisgICAgICAgIH0gZWxzZSBpZiAoUmVuZGVyU2Nyb2xsYmFyOjpz
Y3JvbGxiYXJGb3JTdHlsZVJlc29sdmUoKSAmJiBkeW5hbWljUHNldWRvICE9IFJlbmRlclN0eWxl
OjpOT1BTRVVETykgeworICAgICAgICAgICAgLy8gQ1NTIHNjcm9sbGJhcnMgbWF0Y2ggYSBzcGVj
aWZpYyBzdWJzZXQgb2YgcHNldWRvIGNsYXNzZXMsIGFuZCB0aGV5IGhhdmUgc3BlY2lhbGl6ZWQg
cnVsZXMgZm9yIGVhY2gKKyAgICAgICAgICAgIC8vIChzaW5jZSB0aGVyZSBhcmUgbm8gZWxlbWVu
dHMgaW52b2x2ZWQpLgogICAgICAgICAgICAgcmV0dXJuIGNoZWNrU2Nyb2xsYmFyUHNldWRvQ2xh
c3Moc2VsLCBkeW5hbWljUHNldWRvKTsKLSAgICAgICAgCisgICAgICAgIH0KKwogICAgICAgICAv
LyBOb3JtYWwgZWxlbWVudCBwc2V1ZG8gY2xhc3MgY2hlY2tpbmcuCiAgICAgICAgIHN3aXRjaCAo
c2VsLT5wc2V1ZG9UeXBlKCkpIHsKICAgICAgICAgICAgIC8vIFBzZXVkbyBjbGFzc2VzOgpAQCAt
MjI2MiwxOCArMjI3NCw2IEBAIGJvb2wgQ1NTU3R5bGVTZWxlY3Rvcjo6U2VsZWN0b3JDaGVja2Vy
OjoKICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgcmV0dXJuIHRy
dWU7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBjYXNlIENTU1NlbGVjdG9yOjpQc2V1ZG9O
b3Q6IHsKLSAgICAgICAgICAgICAgICAvLyBjaGVjayB0aGUgc2ltcGxlIHNlbGVjdG9yCi0gICAg
ICAgICAgICAgICAgZm9yIChDU1NTZWxlY3Rvciogc3ViU2VsID0gc2VsLT5tX3NpbXBsZVNlbGVj
dG9yOyBzdWJTZWw7IHN1YlNlbCA9IHN1YlNlbC0+bV90YWdIaXN0b3J5KSB7Ci0gICAgICAgICAg
ICAgICAgICAgIC8vIDpub3QgY2Fubm90IG5lc3QuIEkgZG9uJ3QgcmVhbGx5IGtub3cgd2h5IHRo
aXMgaXMgYQotICAgICAgICAgICAgICAgICAgICAvLyByZXN0cmljdGlvbiBpbiBDU1MzLCBidXQg
aXQgaXMsIHNvIGxldCdzIGhvbm91ciBpdC4KLSAgICAgICAgICAgICAgICAgICAgaWYgKHN1YlNl
bC0+bV9zaW1wbGVTZWxlY3RvcikKLSAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAg
ICAgICAgICAgICAgICAgICBpZiAoIWNoZWNrT25lU2VsZWN0b3Ioc3ViU2VsLCBlLCBzZWxlY3Rv
ckF0dHJzLCBkeW5hbWljUHNldWRvLCBpc0FuY2VzdG9yLCB0cnVlLCBlbGVtZW50U3R5bGUsIGVs
ZW1lbnRQYXJlbnRTdHlsZSkpCi0gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsK
LSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICB9
CiAgICAgICAgICAgICBjYXNlIENTU1NlbGVjdG9yOjpQc2V1ZG9Vbmtub3duOgogICAgICAgICAg
ICAgY2FzZSBDU1NTZWxlY3Rvcjo6UHNldWRvTm90UGFyc2VkOgogICAgICAgICAgICAgZGVmYXVs
dDoKQEAgLTIzOTEsNiArMjM5MSwyMiBAQCBib29sIENTU1N0eWxlU2VsZWN0b3I6OlNlbGVjdG9y
Q2hlY2tlcjo6CiAgICAgICAgICAgICByZXR1cm4gc2Nyb2xsYmFyLT5lbmFibGVkKCk7CiAgICAg
ICAgIGNhc2UgQ1NTU2VsZWN0b3I6OlBzZXVkb0Rpc2FibGVkOgogICAgICAgICAgICAgcmV0dXJu
ICFzY3JvbGxiYXItPmVuYWJsZWQoKTsKKyAgICAgICAgY2FzZSBDU1NTZWxlY3Rvcjo6UHNldWRv
SG92ZXI6IHsKKyAgICAgICAgICAgIFNjcm9sbGJhclBhcnQgaG92ZXJlZFBhcnQgPSBzY3JvbGxi
YXItPmhvdmVyZWRQYXJ0KCk7CisgICAgICAgICAgICBpZiAocGFydCA9PSBTY3JvbGxiYXJCR1Bh
cnQpCisgICAgICAgICAgICAgICAgcmV0dXJuIGhvdmVyZWRQYXJ0ICE9IE5vUGFydDsKKyAgICAg
ICAgICAgIGlmIChwYXJ0ID09IFRyYWNrQkdQYXJ0KQorICAgICAgICAgICAgICAgIHJldHVybiBo
b3ZlcmVkUGFydCA9PSBCYWNrVHJhY2tQYXJ0IHx8IGhvdmVyZWRQYXJ0ID09IEZvcndhcmRUcmFj
a1BhcnQgfHwgaG92ZXJlZFBhcnQgPT0gVGh1bWJQYXJ0OworICAgICAgICAgICAgcmV0dXJuIHBh
cnQgPT0gaG92ZXJlZFBhcnQ7CisgICAgICAgIH0KKyAgICAgICAgY2FzZSBDU1NTZWxlY3Rvcjo6
UHNldWRvQWN0aXZlOiB7CisgICAgICAgICAgICBTY3JvbGxiYXJQYXJ0IHByZXNzZWRQYXJ0ID0g
c2Nyb2xsYmFyLT5wcmVzc2VkUGFydCgpOworICAgICAgICAgICAgaWYgKHBhcnQgPT0gU2Nyb2xs
YmFyQkdQYXJ0KQorICAgICAgICAgICAgICAgIHJldHVybiBwcmVzc2VkUGFydCAhPSBOb1BhcnQ7
CisgICAgICAgICAgICBpZiAocGFydCA9PSBUcmFja0JHUGFydCkKKyAgICAgICAgICAgICAgICBy
ZXR1cm4gcHJlc3NlZFBhcnQgPT0gQmFja1RyYWNrUGFydCB8fCBwcmVzc2VkUGFydCA9PSBGb3J3
YXJkVHJhY2tQYXJ0IHx8IHByZXNzZWRQYXJ0ID09IFRodW1iUGFydDsKKyAgICAgICAgICAgIHJl
dHVybiBwYXJ0ID09IHByZXNzZWRQYXJ0OworICAgICAgICB9CiAgICAgICAgIGNhc2UgQ1NTU2Vs
ZWN0b3I6OlBzZXVkb0hvcml6b250YWw6CiAgICAgICAgICAgICByZXR1cm4gc2Nyb2xsYmFyLT5v
cmllbnRhdGlvbigpID09IEhvcml6b250YWxTY3JvbGxiYXI7CiAgICAgICAgIGNhc2UgQ1NTU2Vs
ZWN0b3I6OlBzZXVkb1ZlcnRpY2FsOgpJbmRleDogcGxhdGZvcm0vU2Nyb2xsYmFyLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBwbGF0Zm9ybS9TY3JvbGxiYXIuY3BwCShyZXZpc2lvbiAzNzQ3NSkKKysrIHBs
YXRmb3JtL1Njcm9sbGJhci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIwMCw3ICsyMDAsNyBAQCB2
b2lkIFNjcm9sbGJhcjo6YXV0b3Njcm9sbFByZXNzZWRQYXJ0KGRvCiAgICAgLy8gSGFuZGxlIHRo
ZSB0cmFjay4KICAgICBpZiAoKG1fcHJlc3NlZFBhcnQgPT0gQmFja1RyYWNrUGFydCB8fCBtX3By
ZXNzZWRQYXJ0ID09IEZvcndhcmRUcmFja1BhcnQpICYmIHRodW1iVW5kZXJNb3VzZSh0aGlzKSkg
ewogICAgICAgICB0aGVtZSgpLT5pbnZhbGlkYXRlUGFydCh0aGlzLCBtX3ByZXNzZWRQYXJ0KTsK
LSAgICAgICAgbV9ob3ZlcmVkUGFydCA9IFRodW1iUGFydDsKKyAgICAgICAgc2V0SG92ZXJlZFBh
cnQoVGh1bWJQYXJ0KTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIApAQCAtMjE5LDcgKzIxOSw3
IEBAIHZvaWQgU2Nyb2xsYmFyOjpzdGFydFRpbWVySWZOZWVkZWQoZG91YmwKICAgICAvLyB3aXRo
IHVzLgogICAgIGlmICgobV9wcmVzc2VkUGFydCA9PSBCYWNrVHJhY2tQYXJ0IHx8IG1fcHJlc3Nl
ZFBhcnQgPT0gRm9yd2FyZFRyYWNrUGFydCkgJiYgdGh1bWJVbmRlck1vdXNlKHRoaXMpKSB7CiAg
ICAgICAgIHRoZW1lKCktPmludmFsaWRhdGVQYXJ0KHRoaXMsIG1fcHJlc3NlZFBhcnQpOwotICAg
ICAgICBtX2hvdmVyZWRQYXJ0ID0gVGh1bWJQYXJ0OworICAgICAgICBzZXRIb3ZlcmVkUGFydChU
aHVtYlBhcnQpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCkBAIC0yODAsNiArMjgwLDI5IEBA
IHZvaWQgU2Nyb2xsYmFyOjptb3ZlVGh1bWIoaW50IHBvcykKICAgICB9CiB9CiAKK3ZvaWQgU2Ny
b2xsYmFyOjpzZXRIb3ZlcmVkUGFydChTY3JvbGxiYXJQYXJ0IHBhcnQpCit7CisgICAgaWYgKHBh
cnQgPT0gbV9ob3ZlcmVkUGFydCkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKChtX2hvdmVy
ZWRQYXJ0ID09IE5vUGFydCB8fCBwYXJ0ID09IE5vUGFydCkgJiYgdGhlbWUoKS0+aW52YWxpZGF0
ZU9uTW91c2VFbnRlckV4aXQoKSkKKyAgICAgICAgaW52YWxpZGF0ZSgpOyAgLy8gSnVzdCBpbnZh
bGlkYXRlIHRoZSB3aG9sZSBzY3JvbGxiYXIsIHNpbmNlIHRoZSBidXR0b25zIGF0IGVpdGhlciBl
bmQgY2hhbmdlIGFueXdheS4KKyAgICBlbHNlIGlmIChtX3ByZXNzZWRQYXJ0ID09IE5vUGFydCkg
eworICAgICAgICB0aGVtZSgpLT5pbnZhbGlkYXRlUGFydCh0aGlzLCBwYXJ0KTsKKyAgICAgICAg
dGhlbWUoKS0+aW52YWxpZGF0ZVBhcnQodGhpcywgbV9ob3ZlcmVkUGFydCk7CisgICAgfQorICAg
IG1faG92ZXJlZFBhcnQgPSBwYXJ0OworfQorCit2b2lkIFNjcm9sbGJhcjo6c2V0UHJlc3NlZFBh
cnQoU2Nyb2xsYmFyUGFydCBwYXJ0KQoreworICAgIGlmIChtX3ByZXNzZWRQYXJ0ICE9IE5vUGFy
dCkKKyAgICAgICAgdGhlbWUoKS0+aW52YWxpZGF0ZVBhcnQodGhpcywgbV9wcmVzc2VkUGFydCk7
CisgICAgbV9wcmVzc2VkUGFydCA9IHBhcnQ7CisgICAgaWYgKG1fcHJlc3NlZFBhcnQgIT0gTm9Q
YXJ0KQorICAgICAgICB0aGVtZSgpLT5pbnZhbGlkYXRlUGFydCh0aGlzLCBtX3ByZXNzZWRQYXJ0
KTsKK30KKwogYm9vbCBTY3JvbGxiYXI6Om1vdXNlTW92ZWQoY29uc3QgUGxhdGZvcm1Nb3VzZUV2
ZW50JiBldnQpCiB7CiAgICAgaWYgKG1fcHJlc3NlZFBhcnQgPT0gVGh1bWJQYXJ0KSB7CkBAIC0y
OTQsOSArMzE3LDYgQEAgYm9vbCBTY3JvbGxiYXI6Om1vdXNlTW92ZWQoY29uc3QgUGxhdGZvcgog
CiAgICAgU2Nyb2xsYmFyUGFydCBwYXJ0ID0gdGhlbWUoKS0+aGl0VGVzdCh0aGlzLCBldnQpOyAg
ICAKICAgICBpZiAocGFydCAhPSBtX2hvdmVyZWRQYXJ0KSB7Ci0gICAgICAgIGlmIChtX2hvdmVy
ZWRQYXJ0ID09IE5vUGFydCAmJiB0aGVtZSgpLT5pbnZhbGlkYXRlT25Nb3VzZUVudGVyRXhpdCgp
KQotICAgICAgICAgICAgaW52YWxpZGF0ZSgpOyAgLy8gSnVzdCBpbnZhbGlkYXRlIHRoZSB3aG9s
ZSBzY3JvbGxiYXIsIHNpbmNlIHRoZSBidXR0b25zIGF0IGVpdGhlciBlbmQgY2hhbmdlIGFueXdh
eS4KLQogICAgICAgICBpZiAobV9wcmVzc2VkUGFydCAhPSBOb1BhcnQpIHsKICAgICAgICAgICAg
IGlmIChwYXJ0ID09IG1fcHJlc3NlZFBhcnQpIHsKICAgICAgICAgICAgICAgICAvLyBUaGUgbW91
c2UgaXMgbW92aW5nIGJhY2sgb3ZlciB0aGUgcHJlc3NlZCBwYXJ0LiAgV2UKQEAgLTMwOSwxMSAr
MzI5LDkgQEAgYm9vbCBTY3JvbGxiYXI6Om1vdXNlTW92ZWQoY29uc3QgUGxhdGZvcgogICAgICAg
ICAgICAgICAgIHN0b3BUaW1lcklmTmVlZGVkKCk7CiAgICAgICAgICAgICAgICAgdGhlbWUoKS0+
aW52YWxpZGF0ZVBhcnQodGhpcywgbV9wcmVzc2VkUGFydCk7CiAgICAgICAgICAgICB9Ci0gICAg
ICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICB0aGVtZSgpLT5pbnZhbGlkYXRlUGFydCh0aGlzLCBw
YXJ0KTsKLSAgICAgICAgICAgIHRoZW1lKCktPmludmFsaWRhdGVQYXJ0KHRoaXMsIG1faG92ZXJl
ZFBhcnQpOwotICAgICAgICB9Ci0gICAgICAgIG1faG92ZXJlZFBhcnQgPSBwYXJ0OworICAgICAg
ICB9IAorICAgICAgICAKKyAgICAgICAgc2V0SG92ZXJlZFBhcnQocGFydCk7CiAgICAgfSAKIAog
ICAgIHJldHVybiB0cnVlOwpAQCAtMzIxLDE4ICszMzksMTMgQEAgYm9vbCBTY3JvbGxiYXI6Om1v
dXNlTW92ZWQoY29uc3QgUGxhdGZvcgogCiBib29sIFNjcm9sbGJhcjo6bW91c2VFeGl0ZWQoKQog
ewotICAgIGlmICh0aGVtZSgpLT5pbnZhbGlkYXRlT25Nb3VzZUVudGVyRXhpdCgpKQotICAgICAg
ICBpbnZhbGlkYXRlKCk7IC8vIEp1c3QgaW52YWxpZGF0ZSB0aGUgd2hvbGUgc2Nyb2xsYmFyLCBz
aW5jZSB0aGUgYnV0dG9ucyBhdCBlaXRoZXIgZW5kIGNoYW5nZSBhbnl3YXkuCi0gICAgZWxzZQot
ICAgICAgICB0aGVtZSgpLT5pbnZhbGlkYXRlUGFydCh0aGlzLCBtX2hvdmVyZWRQYXJ0KTsKLSAg
ICBtX2hvdmVyZWRQYXJ0ID0gTm9QYXJ0OworICAgIHNldEhvdmVyZWRQYXJ0KE5vUGFydCk7CiAg
ICAgcmV0dXJuIHRydWU7CiB9CiAKIGJvb2wgU2Nyb2xsYmFyOjptb3VzZVVwKCkKIHsKLSAgICB0
aGVtZSgpLT5pbnZhbGlkYXRlUGFydCh0aGlzLCBtX3ByZXNzZWRQYXJ0KTsKLSAgICBtX3ByZXNz
ZWRQYXJ0ID0gTm9QYXJ0OworICAgIHNldFByZXNzZWRQYXJ0KE5vUGFydCk7CiAgICAgbV9wcmVz
c2VkUG9zID0gMDsKICAgICBzdG9wVGltZXJJZk5lZWRlZCgpOwogCkBAIC0zNDgsMTEgKzM2MSwx
MiBAQCBib29sIFNjcm9sbGJhcjo6bW91c2VEb3duKGNvbnN0IFBsYXRmb3JtCiAgICAgaWYgKGV2
dC5idXR0b24oKSA9PSBSaWdodEJ1dHRvbikKICAgICAgICAgcmV0dXJuIHRydWU7IC8vIEZJWE1F
OiBIYW5kbGVkIGFzIGNvbnRleHQgbWVudSBieSBRdCByaWdodCBub3cuICBTaG91bGQganVzdCBh
dm9pZCBldmVuIGNhbGxpbmcgdGhpcyBtZXRob2Qgb24gYSByaWdodCBjbGljayB0aG91Z2guCiAK
LSAgICBtX3ByZXNzZWRQYXJ0ID0gdGhlbWUoKS0+aGl0VGVzdCh0aGlzLCBldnQpOworICAgIHNl
dFByZXNzZWRQYXJ0KHRoZW1lKCktPmhpdFRlc3QodGhpcywgZXZ0KSk7CiAgICAgaW50IHByZXNz
ZWRQb3MgPSAob3JpZW50YXRpb24oKSA9PSBIb3Jpem9udGFsU2Nyb2xsYmFyID8gY29udmVydEZy
b21Db250YWluaW5nV2luZG93KGV2dC5wb3MoKSkueCgpIDogY29udmVydEZyb21Db250YWluaW5n
V2luZG93KGV2dC5wb3MoKSkueSgpKTsKICAgICAKICAgICBpZiAodGhlbWUoKS0+c2hvdWxkQ2Vu
dGVyT25UaHVtYih0aGlzLCBldnQpKSB7Ci0gICAgICAgIG1faG92ZXJlZFBhcnQgPSBtX3ByZXNz
ZWRQYXJ0ID0gVGh1bWJQYXJ0OworICAgICAgICBzZXRIb3ZlcmVkUGFydChUaHVtYlBhcnQpOwor
ICAgICAgICBzZXRQcmVzc2VkUGFydChUaHVtYlBhcnQpOwogICAgICAgICBpbnQgdGh1bWJMZW4g
PSB0aGVtZSgpLT50aHVtYkxlbmd0aCh0aGlzKTsKICAgICAgICAgaW50IGRlc2lyZWRQb3MgPSBw
cmVzc2VkUG9zIC0gdGh1bWJMZW4gLyAyOwogICAgICAgICAvLyBTZXQgdGhlIHByZXNzZWQgcG9z
aXRpb24gdG8gdGhlIHRvcCBvZiB0aGUgdGh1bWIgc28gdGhhdCB3aGVuIHdlIGRvIHRoZSBtb3Zl
LCB0aGUgZGVsdGEKQEAgLTM2NCw3ICszNzgsNiBAQCBib29sIFNjcm9sbGJhcjo6bW91c2VEb3du
KGNvbnN0IFBsYXRmb3JtCiAgICAgCiAgICAgbV9wcmVzc2VkUG9zID0gcHJlc3NlZFBvczsKIAot
ICAgIHRoZW1lKCktPmludmFsaWRhdGVQYXJ0KHRoaXMsIG1fcHJlc3NlZFBhcnQpOwogICAgIGF1
dG9zY3JvbGxQcmVzc2VkUGFydCh0aGVtZSgpLT5pbml0aWFsQXV0b3Njcm9sbFRpbWVyRGVsYXko
KSk7CiAgICAgcmV0dXJuIHRydWU7CiB9CkluZGV4OiBwbGF0Zm9ybS9TY3JvbGxiYXIuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBwbGF0Zm9ybS9TY3JvbGxiYXIuaAkocmV2aXNpb24gMzc0NzUpCisrKyBwbGF0
Zm9ybS9TY3JvbGxiYXIuaAkod29ya2luZyBjb3B5KQpAQCAtNzUsNiArNzUsOCBAQCBwdWJsaWM6
CiAgICAgCiAgICAgU2Nyb2xsYmFyUGFydCBwcmVzc2VkUGFydCgpIGNvbnN0IHsgcmV0dXJuIG1f
cHJlc3NlZFBhcnQ7IH0KICAgICBTY3JvbGxiYXJQYXJ0IGhvdmVyZWRQYXJ0KCkgY29uc3QgeyBy
ZXR1cm4gbV9ob3ZlcmVkUGFydDsgfQorICAgIHZpcnR1YWwgdm9pZCBzZXRIb3ZlcmVkUGFydChT
Y3JvbGxiYXJQYXJ0KTsKKyAgICB2aXJ0dWFsIHZvaWQgc2V0UHJlc3NlZFBhcnQoU2Nyb2xsYmFy
UGFydCk7CiAKICAgICB2b2lkIHNldFN0ZXBzKGludCBsaW5lU3RlcCwgaW50IHBhZ2VTdGVwLCBp
bnQgcGl4ZWxzUGVyU3RlcCA9IDEpOwogICAgIGJvb2wgc2V0VmFsdWUoaW50KTsKSW5kZXg6IHJl
bmRlcmluZy9SZW5kZXJTY3JvbGxiYXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHJlbmRlcmluZy9SZW5k
ZXJTY3JvbGxiYXIuY3BwCShyZXZpc2lvbiAzNzQ3NSkKKysrIHJlbmRlcmluZy9SZW5kZXJTY3Jv
bGxiYXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03MSw2ICs3MSw1MiBAQCB2b2lkIFJlbmRlclNj
cm9sbGJhcjo6cGFpbnQoR3JhcGhpY3NDb250CiAgICAgU2Nyb2xsYmFyOjpwYWludChjb250ZXh0
LCBkYW1hZ2VSZWN0KTsKIH0KIAordm9pZCBSZW5kZXJTY3JvbGxiYXI6OnNldEhvdmVyZWRQYXJ0
KFNjcm9sbGJhclBhcnQgcGFydCkKK3sKKyAgICBpZiAocGFydCA9PSBtX2hvdmVyZWRQYXJ0KQor
ICAgICAgICByZXR1cm47CisKKyAgICBTY3JvbGxiYXJQYXJ0IG9sZFBhcnQgPSBtX2hvdmVyZWRQ
YXJ0OworICAgIFNjcm9sbGJhcjo6c2V0SG92ZXJlZFBhcnQocGFydCk7CisKKyAgICB1cGRhdGVT
Y3JvbGxiYXJQYXJ0KG9sZFBhcnQpOworICAgIHVwZGF0ZVNjcm9sbGJhclBhcnQobV9ob3ZlcmVk
UGFydCk7CisKKyAgICAvLyBBbHdheXMgdXBkYXRlIHRoZSBob3ZlciBzdGF0ZSBvZiB0aGUgc2Ny
b2xsYmFyIGFuZCB0cmFjayBiZyBpZiB0aGV5IGFyZSBhZmZlY3RlZCBieSA6aG92ZXIgcnVsZXMu
CisgICAgUmVuZGVyU2Nyb2xsYmFyUGFydCogc2Nyb2xsYmFyUGFydCA9IG1fcGFydHMuZ2V0KFNj
cm9sbGJhckJHUGFydCk7CisgICAgaWYgKHNjcm9sbGJhclBhcnQpIHsKKyAgICAgICAgdXBkYXRl
U2Nyb2xsYmFyUGFydChTY3JvbGxiYXJCR1BhcnQpOworICAgICAgICBpbnZhbGlkYXRlKCk7Cisg
ICAgfQorICAgIFJlbmRlclNjcm9sbGJhclBhcnQqIHRyYWNrUGFydCA9IG1fcGFydHMuZ2V0KFRy
YWNrQkdQYXJ0KTsKKyAgICBpZiAodHJhY2tQYXJ0KSB7CisgICAgICAgIHVwZGF0ZVNjcm9sbGJh
clBhcnQoVHJhY2tCR1BhcnQpOworICAgICAgICBpbnZhbGlkYXRlKCk7CisgICAgfQorICAgIG1f
aG92ZXJlZFBhcnQgPSBwYXJ0OworfQorCit2b2lkIFJlbmRlclNjcm9sbGJhcjo6c2V0UHJlc3Nl
ZFBhcnQoU2Nyb2xsYmFyUGFydCBwYXJ0KQoreworICAgIFNjcm9sbGJhclBhcnQgb2xkUGFydCA9
IG1fcHJlc3NlZFBhcnQ7CisgICAgU2Nyb2xsYmFyOjpzZXRQcmVzc2VkUGFydChwYXJ0KTsKKyAg
ICAKKyAgICB1cGRhdGVTY3JvbGxiYXJQYXJ0KG9sZFBhcnQpOworICAgIHVwZGF0ZVNjcm9sbGJh
clBhcnQocGFydCk7CisgICAgCisgICAgLy8gQWx3YXlzIHVwZGF0ZSB0aGUgYWN0aXZlIHN0YXRl
IG9mIHRoZSBzY3JvbGxiYXIgYW5kIHRyYWNrIGJnIGlmIHRoZXkgYXJlIGFmZmVjdGVkIGJ5IDph
Y3RpdmUgcnVsZXMuCisgICAgUmVuZGVyU2Nyb2xsYmFyUGFydCogc2Nyb2xsYmFyUGFydCA9IG1f
cGFydHMuZ2V0KFNjcm9sbGJhckJHUGFydCk7CisgICAgaWYgKHNjcm9sbGJhclBhcnQpIHsKKyAg
ICAgICAgdXBkYXRlU2Nyb2xsYmFyUGFydChTY3JvbGxiYXJCR1BhcnQpOworICAgICAgICBpbnZh
bGlkYXRlKCk7CisgICAgfQorICAgIFJlbmRlclNjcm9sbGJhclBhcnQqIHRyYWNrUGFydCA9IG1f
cGFydHMuZ2V0KFRyYWNrQkdQYXJ0KTsKKyAgICBpZiAodHJhY2tQYXJ0KSB7CisgICAgICAgIHVw
ZGF0ZVNjcm9sbGJhclBhcnQoVHJhY2tCR1BhcnQpOworICAgICAgICBpbnZhbGlkYXRlKCk7Cisg
ICAgfQorfQorCiBzdGF0aWMgU2Nyb2xsYmFyUGFydCBzX3N0eWxlUmVzb2x2ZVBhcnQ7CiBzdGF0
aWMgUmVuZGVyU2Nyb2xsYmFyKiBzX3N0eWxlUmVzb2x2ZVNjcm9sbGJhcjsKIApAQCAtOTYsMTUg
KzE0MiwxNSBAQCBSZW5kZXJTdHlsZSogUmVuZGVyU2Nyb2xsYmFyOjpnZXRTY3JvbGxiCiAKIHZv
aWQgUmVuZGVyU2Nyb2xsYmFyOjp1cGRhdGVTY3JvbGxiYXJQYXJ0cyhSZW5kZXJTdHlsZSogc2Ny
b2xsYmFyU3R5bGUsIGJvb2wgZGVzdHJveSkKIHsKLSAgICB1cGRhdGVTY3JvbGxiYXJQYXJ0KFNj
cm9sbGJhckJHUGFydCwgUmVuZGVyU3R5bGU6OlNDUk9MTEJBUiwgc2Nyb2xsYmFyU3R5bGUsIGRl
c3Ryb3kpOwotICAgIHVwZGF0ZVNjcm9sbGJhclBhcnQoQmFja0J1dHRvblN0YXJ0UGFydCwgUmVu
ZGVyU3R5bGU6OlNDUk9MTEJBUl9CVVRUT04sIDAsIGRlc3Ryb3kpOwotICAgIHVwZGF0ZVNjcm9s
bGJhclBhcnQoRm9yd2FyZEJ1dHRvblN0YXJ0UGFydCwgUmVuZGVyU3R5bGU6OlNDUk9MTEJBUl9C
VVRUT04sIDAsIGRlc3Ryb3kpOwotICAgIHVwZGF0ZVNjcm9sbGJhclBhcnQoQmFja1RyYWNrUGFy
dCwgUmVuZGVyU3R5bGU6OlNDUk9MTEJBUl9UUkFDS19QSUVDRSwgMCwgZGVzdHJveSk7Ci0gICAg
dXBkYXRlU2Nyb2xsYmFyUGFydChUaHVtYlBhcnQsIFJlbmRlclN0eWxlOjpTQ1JPTExCQVJfVEhV
TUIsIDAsIGRlc3Ryb3kpOwotICAgIHVwZGF0ZVNjcm9sbGJhclBhcnQoRm9yd2FyZFRyYWNrUGFy
dCwgUmVuZGVyU3R5bGU6OlNDUk9MTEJBUl9UUkFDS19QSUVDRSwgMCwgZGVzdHJveSk7Ci0gICAg
dXBkYXRlU2Nyb2xsYmFyUGFydChCYWNrQnV0dG9uRW5kUGFydCwgUmVuZGVyU3R5bGU6OlNDUk9M
TEJBUl9CVVRUT04sIDAsIGRlc3Ryb3kpOwotICAgIHVwZGF0ZVNjcm9sbGJhclBhcnQoRm9yd2Fy
ZEJ1dHRvbkVuZFBhcnQsIFJlbmRlclN0eWxlOjpTQ1JPTExCQVJfQlVUVE9OLCAwLCBkZXN0cm95
KTsKLSAgICB1cGRhdGVTY3JvbGxiYXJQYXJ0KFRyYWNrQkdQYXJ0LCBSZW5kZXJTdHlsZTo6U0NS
T0xMQkFSX1RSQUNLLCAwLCBkZXN0cm95KTsKKyAgICB1cGRhdGVTY3JvbGxiYXJQYXJ0KFNjcm9s
bGJhckJHUGFydCwgc2Nyb2xsYmFyU3R5bGUsIGRlc3Ryb3kpOworICAgIHVwZGF0ZVNjcm9sbGJh
clBhcnQoQmFja0J1dHRvblN0YXJ0UGFydCwgMCwgZGVzdHJveSk7CisgICAgdXBkYXRlU2Nyb2xs
YmFyUGFydChGb3J3YXJkQnV0dG9uU3RhcnRQYXJ0LCAwLCBkZXN0cm95KTsKKyAgICB1cGRhdGVT
Y3JvbGxiYXJQYXJ0KEJhY2tUcmFja1BhcnQsIDAsIGRlc3Ryb3kpOworICAgIHVwZGF0ZVNjcm9s
bGJhclBhcnQoVGh1bWJQYXJ0LCAwLCBkZXN0cm95KTsKKyAgICB1cGRhdGVTY3JvbGxiYXJQYXJ0
KEZvcndhcmRUcmFja1BhcnQsIDAsIGRlc3Ryb3kpOworICAgIHVwZGF0ZVNjcm9sbGJhclBhcnQo
QmFja0J1dHRvbkVuZFBhcnQsIDAsIGRlc3Ryb3kpOworICAgIHVwZGF0ZVNjcm9sbGJhclBhcnQo
Rm9yd2FyZEJ1dHRvbkVuZFBhcnQsIDAsIGRlc3Ryb3kpOworICAgIHVwZGF0ZVNjcm9sbGJhclBh
cnQoVHJhY2tCR1BhcnQsIDAsIGRlc3Ryb3kpOwogICAgIAogICAgIGlmIChkZXN0cm95KQogICAg
ICAgICByZXR1cm47CkBAIC0xMjUsMTAgKzE3MSwzMyBAQCB2b2lkIFJlbmRlclNjcm9sbGJhcjo6
dXBkYXRlU2Nyb2xsYmFyUGFyCiAgICAgfQogfQogCi12b2lkIFJlbmRlclNjcm9sbGJhcjo6dXBk
YXRlU2Nyb2xsYmFyUGFydChTY3JvbGxiYXJQYXJ0IHBhcnRUeXBlLCBSZW5kZXJTdHlsZTo6UHNl
dWRvSWQgcHNldWRvSWQsIFJlbmRlclN0eWxlKiBwYXJ0U3R5bGUsIGJvb2wgZGVzdHJveSkKK3N0
YXRpYyBSZW5kZXJTdHlsZTo6UHNldWRvSWQgcHNldWRvRm9yU2Nyb2xsYmFyUGFydChTY3JvbGxi
YXJQYXJ0IHBhcnQpCiB7CisgICAgc3dpdGNoIChwYXJ0KSB7CisgICAgICAgIGNhc2UgQmFja0J1
dHRvblN0YXJ0UGFydDoKKyAgICAgICAgY2FzZSBGb3J3YXJkQnV0dG9uU3RhcnRQYXJ0OgorICAg
ICAgICBjYXNlIEJhY2tCdXR0b25FbmRQYXJ0OgorICAgICAgICBjYXNlIEZvcndhcmRCdXR0b25F
bmRQYXJ0OgorICAgICAgICAgICAgcmV0dXJuIFJlbmRlclN0eWxlOjpTQ1JPTExCQVJfQlVUVE9O
OworICAgICAgICBjYXNlIEJhY2tUcmFja1BhcnQ6CisgICAgICAgIGNhc2UgRm9yd2FyZFRyYWNr
UGFydDoKKyAgICAgICAgICAgIHJldHVybiBSZW5kZXJTdHlsZTo6U0NST0xMQkFSX1RSQUNLX1BJ
RUNFOworICAgICAgICBjYXNlIFRodW1iUGFydDoKKyAgICAgICAgICAgIHJldHVybiBSZW5kZXJT
dHlsZTo6U0NST0xMQkFSX1RIVU1COworICAgICAgICBjYXNlIFRyYWNrQkdQYXJ0OgorICAgICAg
ICAgICAgcmV0dXJuIFJlbmRlclN0eWxlOjpTQ1JPTExCQVJfVFJBQ0s7CisgICAgICAgIGRlZmF1
bHQ6CisgICAgICAgICAgICByZXR1cm4gUmVuZGVyU3R5bGU6OlNDUk9MTEJBUjsKKyAgICB9Cit9
CisKK3ZvaWQgUmVuZGVyU2Nyb2xsYmFyOjp1cGRhdGVTY3JvbGxiYXJQYXJ0KFNjcm9sbGJhclBh
cnQgcGFydFR5cGUsIFJlbmRlclN0eWxlKiBwYXJ0U3R5bGUsIGJvb2wgZGVzdHJveSkKK3sKKyAg
ICBpZiAocGFydFR5cGUgPT0gTm9QYXJ0KQorICAgICAgICByZXR1cm47CisKICAgICBpZiAoIXBh
cnRTdHlsZSAmJiAhZGVzdHJveSkKLSAgICAgICAgcGFydFN0eWxlID0gZ2V0U2Nyb2xsYmFyUHNl
dWRvU3R5bGUocGFydFR5cGUsIHBzZXVkb0lkKTsKKyAgICAgICAgcGFydFN0eWxlID0gZ2V0U2Ny
b2xsYmFyUHNldWRvU3R5bGUocGFydFR5cGUsIHBzZXVkb0ZvclNjcm9sbGJhclBhcnQocGFydFR5
cGUpKTsKICAgICAKICAgICBib29sIG5lZWRSZW5kZXJlciA9ICFkZXN0cm95ICYmIHBhcnRTdHls
ZSAmJiBwYXJ0U3R5bGUtPmRpc3BsYXkoKSAhPSBOT05FICYmIHBhcnRTdHlsZS0+dmlzaWJpbGl0
eSgpID09IFZJU0lCTEU7CiAgICAgCkluZGV4OiByZW5kZXJpbmcvUmVuZGVyU2Nyb2xsYmFyLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gcmVuZGVyaW5nL1JlbmRlclNjcm9sbGJhci5oCShyZXZpc2lvbiAzNzQ3
NSkKKysrIHJlbmRlcmluZy9SZW5kZXJTY3JvbGxiYXIuaAkod29ya2luZyBjb3B5KQpAQCAtNTAs
NiArNTAsOSBAQCBwdWJsaWM6CiAKICAgICB2aXJ0dWFsIHZvaWQgcGFpbnQoR3JhcGhpY3NDb250
ZXh0KiwgY29uc3QgSW50UmVjdCYgZGFtYWdlUmVjdCk7CiAKKyAgICB2aXJ0dWFsIHZvaWQgc2V0
SG92ZXJlZFBhcnQoU2Nyb2xsYmFyUGFydCk7CisgICAgdmlydHVhbCB2b2lkIHNldFByZXNzZWRQ
YXJ0KFNjcm9sbGJhclBhcnQpOworCiAgICAgdm9pZCB1cGRhdGVTY3JvbGxiYXJQYXJ0cyhSZW5k
ZXJTdHlsZSogPSAwLCBib29sIGRlc3Ryb3kgPSBmYWxzZSk7CiAKICAgICBzdGF0aWMgU2Nyb2xs
YmFyUGFydCBwYXJ0Rm9yU3R5bGVSZXNvbHZlKCk7CkBAIC02Nyw3ICs3MCw3IEBAIHB1YmxpYzoK
IAogcHJpdmF0ZToKICAgICBSZW5kZXJTdHlsZSogZ2V0U2Nyb2xsYmFyUHNldWRvU3R5bGUoU2Ny
b2xsYmFyUGFydCwgUmVuZGVyU3R5bGU6OlBzZXVkb0lkKTsKLSAgICB2b2lkIHVwZGF0ZVNjcm9s
bGJhclBhcnQoU2Nyb2xsYmFyUGFydCwgUmVuZGVyU3R5bGU6OlBzZXVkb0lkLCBSZW5kZXJTdHls
ZSosIGJvb2wgZGVzdHJveSk7CisgICAgdm9pZCB1cGRhdGVTY3JvbGxiYXJQYXJ0KFNjcm9sbGJh
clBhcnQsIFJlbmRlclN0eWxlKiA9IDAsIGJvb2wgZGVzdHJveSA9IGZhbHNlKTsKIAogICAgIFJl
bmRlck9iamVjdCogbV9vd25lcjsKICAgICBIYXNoTWFwPHVuc2lnbmVkLCBSZW5kZXJTY3JvbGxi
YXJQYXJ0Kj4gbV9wYXJ0czsK
</data>
<flag name="review"
          id="11048"
          type_id="1"
          status="+"
          setter="aroben"
    />
          </attachment>
      

    </bug>

</bugzilla>