<?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>127949</bug_id>
          
          <creation_ts>2014-01-30 14:07:50 -0800</creation_ts>
          <short_desc>Subpixel rendering: Change BorderData&apos;s width from unsigned to float to enable subpixel border painting.</short_desc>
          <delta_ts>2014-01-30 19:47:34 -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>Layout and Rendering</component>
          <version>528+ (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>
          
          <blocked>127524</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>dstockwell</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>973991</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2014-01-30 14:07:50 -0800</bug_when>
    <thetext>SSIA</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>973992</commentid>
    <comment_count>1</comment_count>
      <attachid>222732</attachid>
    <who name="alan">zalan</who>
    <bug_when>2014-01-30 14:12:02 -0800</bug_when>
    <thetext>Created attachment 222732
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>974030</commentid>
    <comment_count>2</comment_count>
      <attachid>222732</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-01-30 14:54:13 -0800</bug_when>
    <thetext>Comment on attachment 222732
Patch

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

r=me

&gt; Source/WebCore/rendering/style/BorderValue.h:89
&gt; -    unsigned m_isAuto : 1; // OutlineIsAuto
&gt; +    unsigned m_isAuto : 27; // OutlineIsAuto

You can leave this alone.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>974186</commentid>
    <comment_count>3</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2014-01-30 19:47:34 -0800</bug_when>
    <thetext>Committed r163152: &lt;http://trac.webkit.org/changeset/163152&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>222732</attachid>
            <date>2014-01-30 14:12:02 -0800</date>
            <delta_ts>2014-01-30 14:54:12 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-127949-20140130141202.patch</filename>
            <type>text/plain</type>
            <size>17999</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYzMTAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmU1OTg2NWIyMDIxNjFk
OTM1NWUzMDgyMGUxOTdkMmEwYzAxYTFjNy4uZWMxOTA0MzhkOGI4MGU3MWU5YThmZDYyMGI1M2Fk
NmQ3ZjdlMWU5YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDE0LTAxLTMwICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgU3VicGl4ZWwgcmVuZGVyaW5n
OiBDaGFuZ2UgQm9yZGVyRGF0YSdzIHdpZHRoIGZyb20gdW5zaWduZWQgdG8gZmxvYXQgdG8gZW5h
YmxlIHN1YnBpeGVsIGJvcmRlciBwYWludGluZy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNzk0OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIENvdmVyZWQgYnkgZXhpc3RpbmcgdGVzdHMuIE5vIGNoYW5n
ZSBpbiBmdW5jdGlvbmFsaXR5LgorCisgICAgICAgICogY3NzL0RlcHJlY2F0ZWRTdHlsZUJ1aWxk
ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RGVwcmVjYXRlZFN0eWxlQnVpbGRlcjo6RGVwcmVj
YXRlZFN0eWxlQnVpbGRlcik6CisgICAgICAgICogcGFnZS9hbmltYXRpb24vQ1NTUHJvcGVydHlB
bmltYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJvcGVydHlBbmltYXRpb25XcmFw
cGVyTWFwOjpDU1NQcm9wZXJ0eUFuaW1hdGlvbldyYXBwZXJNYXApOgorICAgICAgICAqIHJlbmRl
cmluZy9SZW5kZXJUYWJsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUYWJsZTo6Y2Fs
Y0JvcmRlclN0YXJ0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRhYmxlOjpjYWxjQm9yZGVy
RW5kKToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvQm9yZGVyVmFsdWUuaDoKKyAgICAgICAg
KFdlYkNvcmU6OkJvcmRlclZhbHVlOjpCb3JkZXJWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpC
b3JkZXJWYWx1ZTo6d2lkdGgpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHls
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6Ym9yZGVyQmVmb3JlV2lkdGgp
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OmJvcmRlckFmdGVyV2lkdGgpOgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OmJvcmRlclN0YXJ0V2lkdGgpOgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVyU3R5bGU6OmJvcmRlckVuZFdpZHRoKToKKyAgICAgICAgKiByZW5kZXJp
bmcvc3R5bGUvUmVuZGVyU3R5bGUuaDoKKwogMjAxNC0wMS0zMCAgSmVyIE5vYmxlICA8amVyLm5v
YmxlQGFwcGxlLmNvbT4KIAogICAgICAgICBbTWVkaWFDb250cm9sc11baU9TXSBGaXggYSBjb3Vw
bGUgb2YgVUkgYnVncyBpbiB0aGUgaU9TIE1lZGlhIENvbnRyb2xzCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvRGVwcmVjYXRlZFN0eWxlQnVpbGRlci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvRGVwcmVjYXRlZFN0eWxlQnVpbGRlci5jcHAKaW5kZXggY2UyZmUzYzI1MDlmYzM4NmMw
OTU5MTNiNDRjN2E2MGNjODVkMDYxYS4uZDg4Y2U4YTk0NTliNmM0ODBkZjFhZDg3ZjNhMThlYTNm
ZjBmZmMyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRTdHlsZUJ1
aWxkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9EZXByZWNhdGVkU3R5bGVCdWlsZGVy
LmNwcApAQCAtMjM1Miw3ICsyMzUyLDcgQEAgRGVwcmVjYXRlZFN0eWxlQnVpbGRlcjo6RGVwcmVj
YXRlZFN0eWxlQnVpbGRlcigpCiAgICAgc2V0UHJvcGVydHlIYW5kbGVyKENTU1Byb3BlcnR5Qm9y
ZGVyQm90dG9tTGVmdFJhZGl1cywgQXBwbHlQcm9wZXJ0eUJvcmRlclJhZGl1czwmUmVuZGVyU3R5
bGU6OmJvcmRlckJvdHRvbUxlZnRSYWRpdXMsICZSZW5kZXJTdHlsZTo6c2V0Qm9yZGVyQm90dG9t
TGVmdFJhZGl1cywgJlJlbmRlclN0eWxlOjppbml0aWFsQm9yZGVyUmFkaXVzPjo6Y3JlYXRlSGFu
ZGxlcigpKTsKICAgICBzZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJvcGVydHlCb3JkZXJCb3R0b21S
aWdodFJhZGl1cywgQXBwbHlQcm9wZXJ0eUJvcmRlclJhZGl1czwmUmVuZGVyU3R5bGU6OmJvcmRl
ckJvdHRvbVJpZ2h0UmFkaXVzLCAmUmVuZGVyU3R5bGU6OnNldEJvcmRlckJvdHRvbVJpZ2h0UmFk
aXVzLCAmUmVuZGVyU3R5bGU6OmluaXRpYWxCb3JkZXJSYWRpdXM+OjpjcmVhdGVIYW5kbGVyKCkp
OwogICAgIHNldFByb3BlcnR5SGFuZGxlcihDU1NQcm9wZXJ0eUJvcmRlckJvdHRvbVN0eWxlLCBB
cHBseVByb3BlcnR5RGVmYXVsdDxFQm9yZGVyU3R5bGUsICZSZW5kZXJTdHlsZTo6Ym9yZGVyQm90
dG9tU3R5bGUsIEVCb3JkZXJTdHlsZSwgJlJlbmRlclN0eWxlOjpzZXRCb3JkZXJCb3R0b21TdHls
ZSwgRUJvcmRlclN0eWxlLCAmUmVuZGVyU3R5bGU6OmluaXRpYWxCb3JkZXJTdHlsZT46OmNyZWF0
ZUhhbmRsZXIoKSk7Ci0gICAgc2V0UHJvcGVydHlIYW5kbGVyKENTU1Byb3BlcnR5Qm9yZGVyQm90
dG9tV2lkdGgsIEFwcGx5UHJvcGVydHlDb21wdXRlTGVuZ3RoPHVuc2lnbmVkLCAmUmVuZGVyU3R5
bGU6OmJvcmRlckJvdHRvbVdpZHRoLCAmUmVuZGVyU3R5bGU6OnNldEJvcmRlckJvdHRvbVdpZHRo
LCAmUmVuZGVyU3R5bGU6OmluaXRpYWxCb3JkZXJXaWR0aCwgTm9ybWFsRGlzYWJsZWQsIFRoaWNr
bmVzc0VuYWJsZWQ+OjpjcmVhdGVIYW5kbGVyKCkpOworICAgIHNldFByb3BlcnR5SGFuZGxlcihD
U1NQcm9wZXJ0eUJvcmRlckJvdHRvbVdpZHRoLCBBcHBseVByb3BlcnR5Q29tcHV0ZUxlbmd0aDxm
bG9hdCwgJlJlbmRlclN0eWxlOjpib3JkZXJCb3R0b21XaWR0aCwgJlJlbmRlclN0eWxlOjpzZXRC
b3JkZXJCb3R0b21XaWR0aCwgJlJlbmRlclN0eWxlOjppbml0aWFsQm9yZGVyV2lkdGgsIE5vcm1h
bERpc2FibGVkLCBUaGlja25lc3NFbmFibGVkPjo6Y3JlYXRlSGFuZGxlcigpKTsKICAgICBzZXRQ
cm9wZXJ0eUhhbmRsZXIoQ1NTUHJvcGVydHlCb3JkZXJDb2xsYXBzZSwgQXBwbHlQcm9wZXJ0eURl
ZmF1bHQ8RUJvcmRlckNvbGxhcHNlLCAmUmVuZGVyU3R5bGU6OmJvcmRlckNvbGxhcHNlLCBFQm9y
ZGVyQ29sbGFwc2UsICZSZW5kZXJTdHlsZTo6c2V0Qm9yZGVyQ29sbGFwc2UsIEVCb3JkZXJDb2xs
YXBzZSwgJlJlbmRlclN0eWxlOjppbml0aWFsQm9yZGVyQ29sbGFwc2U+OjpjcmVhdGVIYW5kbGVy
KCkpOwogICAgIHNldFByb3BlcnR5SGFuZGxlcihDU1NQcm9wZXJ0eUJvcmRlckltYWdlT3V0c2V0
LCBBcHBseVByb3BlcnR5Qm9yZGVySW1hZ2VNb2RpZmllcjxCb3JkZXJJbWFnZSwgT3V0c2V0Pjo6
Y3JlYXRlSGFuZGxlcigpKTsKICAgICBzZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJvcGVydHlCb3Jk
ZXJJbWFnZVJlcGVhdCwgQXBwbHlQcm9wZXJ0eUJvcmRlckltYWdlTW9kaWZpZXI8Qm9yZGVySW1h
Z2UsIFJlcGVhdD46OmNyZWF0ZUhhbmRsZXIoKSk7CkBAIC0yMzYxLDE1ICsyMzYxLDE1IEBAIERl
cHJlY2F0ZWRTdHlsZUJ1aWxkZXI6OkRlcHJlY2F0ZWRTdHlsZUJ1aWxkZXIoKQogICAgIHNldFBy
b3BlcnR5SGFuZGxlcihDU1NQcm9wZXJ0eUJvcmRlckltYWdlV2lkdGgsIEFwcGx5UHJvcGVydHlC
b3JkZXJJbWFnZU1vZGlmaWVyPEJvcmRlckltYWdlLCBXaWR0aD46OmNyZWF0ZUhhbmRsZXIoKSk7
CiAgICAgc2V0UHJvcGVydHlIYW5kbGVyKENTU1Byb3BlcnR5Qm9yZGVyTGVmdENvbG9yLCBBcHBs
eVByb3BlcnR5Q29sb3I8Tm9Jbmhlcml0RnJvbVBhcmVudCwgJlJlbmRlclN0eWxlOjpib3JkZXJM
ZWZ0Q29sb3IsICZSZW5kZXJTdHlsZTo6c2V0Qm9yZGVyTGVmdENvbG9yLCAmUmVuZGVyU3R5bGU6
OnNldFZpc2l0ZWRMaW5rQm9yZGVyTGVmdENvbG9yLCAmUmVuZGVyU3R5bGU6OmNvbG9yPjo6Y3Jl
YXRlSGFuZGxlcigpKTsKICAgICBzZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJvcGVydHlCb3JkZXJM
ZWZ0U3R5bGUsIEFwcGx5UHJvcGVydHlEZWZhdWx0PEVCb3JkZXJTdHlsZSwgJlJlbmRlclN0eWxl
Ojpib3JkZXJMZWZ0U3R5bGUsIEVCb3JkZXJTdHlsZSwgJlJlbmRlclN0eWxlOjpzZXRCb3JkZXJM
ZWZ0U3R5bGUsIEVCb3JkZXJTdHlsZSwgJlJlbmRlclN0eWxlOjppbml0aWFsQm9yZGVyU3R5bGU+
OjpjcmVhdGVIYW5kbGVyKCkpOwotICAgIHNldFByb3BlcnR5SGFuZGxlcihDU1NQcm9wZXJ0eUJv
cmRlckxlZnRXaWR0aCwgQXBwbHlQcm9wZXJ0eUNvbXB1dGVMZW5ndGg8dW5zaWduZWQsICZSZW5k
ZXJTdHlsZTo6Ym9yZGVyTGVmdFdpZHRoLCAmUmVuZGVyU3R5bGU6OnNldEJvcmRlckxlZnRXaWR0
aCwgJlJlbmRlclN0eWxlOjppbml0aWFsQm9yZGVyV2lkdGgsIE5vcm1hbERpc2FibGVkLCBUaGlj
a25lc3NFbmFibGVkPjo6Y3JlYXRlSGFuZGxlcigpKTsKKyAgICBzZXRQcm9wZXJ0eUhhbmRsZXIo
Q1NTUHJvcGVydHlCb3JkZXJMZWZ0V2lkdGgsIEFwcGx5UHJvcGVydHlDb21wdXRlTGVuZ3RoPGZs
b2F0LCAmUmVuZGVyU3R5bGU6OmJvcmRlckxlZnRXaWR0aCwgJlJlbmRlclN0eWxlOjpzZXRCb3Jk
ZXJMZWZ0V2lkdGgsICZSZW5kZXJTdHlsZTo6aW5pdGlhbEJvcmRlcldpZHRoLCBOb3JtYWxEaXNh
YmxlZCwgVGhpY2tuZXNzRW5hYmxlZD46OmNyZWF0ZUhhbmRsZXIoKSk7CiAgICAgc2V0UHJvcGVy
dHlIYW5kbGVyKENTU1Byb3BlcnR5Qm9yZGVyUmlnaHRDb2xvciwgQXBwbHlQcm9wZXJ0eUNvbG9y
PE5vSW5oZXJpdEZyb21QYXJlbnQsICZSZW5kZXJTdHlsZTo6Ym9yZGVyUmlnaHRDb2xvciwgJlJl
bmRlclN0eWxlOjpzZXRCb3JkZXJSaWdodENvbG9yLCAmUmVuZGVyU3R5bGU6OnNldFZpc2l0ZWRM
aW5rQm9yZGVyUmlnaHRDb2xvciwgJlJlbmRlclN0eWxlOjpjb2xvcj46OmNyZWF0ZUhhbmRsZXIo
KSk7CiAgICAgc2V0UHJvcGVydHlIYW5kbGVyKENTU1Byb3BlcnR5Qm9yZGVyUmlnaHRTdHlsZSwg
QXBwbHlQcm9wZXJ0eURlZmF1bHQ8RUJvcmRlclN0eWxlLCAmUmVuZGVyU3R5bGU6OmJvcmRlclJp
Z2h0U3R5bGUsIEVCb3JkZXJTdHlsZSwgJlJlbmRlclN0eWxlOjpzZXRCb3JkZXJSaWdodFN0eWxl
LCBFQm9yZGVyU3R5bGUsICZSZW5kZXJTdHlsZTo6aW5pdGlhbEJvcmRlclN0eWxlPjo6Y3JlYXRl
SGFuZGxlcigpKTsKLSAgICBzZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJvcGVydHlCb3JkZXJSaWdo
dFdpZHRoLCBBcHBseVByb3BlcnR5Q29tcHV0ZUxlbmd0aDx1bnNpZ25lZCwgJlJlbmRlclN0eWxl
Ojpib3JkZXJSaWdodFdpZHRoLCAmUmVuZGVyU3R5bGU6OnNldEJvcmRlclJpZ2h0V2lkdGgsICZS
ZW5kZXJTdHlsZTo6aW5pdGlhbEJvcmRlcldpZHRoLCBOb3JtYWxEaXNhYmxlZCwgVGhpY2tuZXNz
RW5hYmxlZD46OmNyZWF0ZUhhbmRsZXIoKSk7CisgICAgc2V0UHJvcGVydHlIYW5kbGVyKENTU1By
b3BlcnR5Qm9yZGVyUmlnaHRXaWR0aCwgQXBwbHlQcm9wZXJ0eUNvbXB1dGVMZW5ndGg8ZmxvYXQs
ICZSZW5kZXJTdHlsZTo6Ym9yZGVyUmlnaHRXaWR0aCwgJlJlbmRlclN0eWxlOjpzZXRCb3JkZXJS
aWdodFdpZHRoLCAmUmVuZGVyU3R5bGU6OmluaXRpYWxCb3JkZXJXaWR0aCwgTm9ybWFsRGlzYWJs
ZWQsIFRoaWNrbmVzc0VuYWJsZWQ+OjpjcmVhdGVIYW5kbGVyKCkpOwogICAgIHNldFByb3BlcnR5
SGFuZGxlcihDU1NQcm9wZXJ0eUJvcmRlclRvcENvbG9yLCBBcHBseVByb3BlcnR5Q29sb3I8Tm9J
bmhlcml0RnJvbVBhcmVudCwgJlJlbmRlclN0eWxlOjpib3JkZXJUb3BDb2xvciwgJlJlbmRlclN0
eWxlOjpzZXRCb3JkZXJUb3BDb2xvciwgJlJlbmRlclN0eWxlOjpzZXRWaXNpdGVkTGlua0JvcmRl
clRvcENvbG9yLCAmUmVuZGVyU3R5bGU6OmNvbG9yPjo6Y3JlYXRlSGFuZGxlcigpKTsKICAgICBz
ZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJvcGVydHlCb3JkZXJUb3BMZWZ0UmFkaXVzLCBBcHBseVBy
b3BlcnR5Qm9yZGVyUmFkaXVzPCZSZW5kZXJTdHlsZTo6Ym9yZGVyVG9wTGVmdFJhZGl1cywgJlJl
bmRlclN0eWxlOjpzZXRCb3JkZXJUb3BMZWZ0UmFkaXVzLCAmUmVuZGVyU3R5bGU6OmluaXRpYWxC
b3JkZXJSYWRpdXM+OjpjcmVhdGVIYW5kbGVyKCkpOwogICAgIHNldFByb3BlcnR5SGFuZGxlcihD
U1NQcm9wZXJ0eUJvcmRlclRvcFJpZ2h0UmFkaXVzLCBBcHBseVByb3BlcnR5Qm9yZGVyUmFkaXVz
PCZSZW5kZXJTdHlsZTo6Ym9yZGVyVG9wUmlnaHRSYWRpdXMsICZSZW5kZXJTdHlsZTo6c2V0Qm9y
ZGVyVG9wUmlnaHRSYWRpdXMsICZSZW5kZXJTdHlsZTo6aW5pdGlhbEJvcmRlclJhZGl1cz46OmNy
ZWF0ZUhhbmRsZXIoKSk7CiAgICAgc2V0UHJvcGVydHlIYW5kbGVyKENTU1Byb3BlcnR5Qm9yZGVy
VG9wU3R5bGUsIEFwcGx5UHJvcGVydHlEZWZhdWx0PEVCb3JkZXJTdHlsZSwgJlJlbmRlclN0eWxl
Ojpib3JkZXJUb3BTdHlsZSwgRUJvcmRlclN0eWxlLCAmUmVuZGVyU3R5bGU6OnNldEJvcmRlclRv
cFN0eWxlLCBFQm9yZGVyU3R5bGUsICZSZW5kZXJTdHlsZTo6aW5pdGlhbEJvcmRlclN0eWxlPjo6
Y3JlYXRlSGFuZGxlcigpKTsKLSAgICBzZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJvcGVydHlCb3Jk
ZXJUb3BXaWR0aCwgQXBwbHlQcm9wZXJ0eUNvbXB1dGVMZW5ndGg8dW5zaWduZWQsICZSZW5kZXJT
dHlsZTo6Ym9yZGVyVG9wV2lkdGgsICZSZW5kZXJTdHlsZTo6c2V0Qm9yZGVyVG9wV2lkdGgsICZS
ZW5kZXJTdHlsZTo6aW5pdGlhbEJvcmRlcldpZHRoLCBOb3JtYWxEaXNhYmxlZCwgVGhpY2tuZXNz
RW5hYmxlZD46OmNyZWF0ZUhhbmRsZXIoKSk7CisgICAgc2V0UHJvcGVydHlIYW5kbGVyKENTU1By
b3BlcnR5Qm9yZGVyVG9wV2lkdGgsIEFwcGx5UHJvcGVydHlDb21wdXRlTGVuZ3RoPGZsb2F0LCAm
UmVuZGVyU3R5bGU6OmJvcmRlclRvcFdpZHRoLCAmUmVuZGVyU3R5bGU6OnNldEJvcmRlclRvcFdp
ZHRoLCAmUmVuZGVyU3R5bGU6OmluaXRpYWxCb3JkZXJXaWR0aCwgTm9ybWFsRGlzYWJsZWQsIFRo
aWNrbmVzc0VuYWJsZWQ+OjpjcmVhdGVIYW5kbGVyKCkpOwogICAgIHNldFByb3BlcnR5SGFuZGxl
cihDU1NQcm9wZXJ0eUJvdHRvbSwgQXBwbHlQcm9wZXJ0eUxlbmd0aDwmUmVuZGVyU3R5bGU6OmJv
dHRvbSwgJlJlbmRlclN0eWxlOjpzZXRCb3R0b20sICZSZW5kZXJTdHlsZTo6aW5pdGlhbE9mZnNl
dCwgQXV0b0VuYWJsZWQ+OjpjcmVhdGVIYW5kbGVyKCkpOwogICAgIHNldFByb3BlcnR5SGFuZGxl
cihDU1NQcm9wZXJ0eUJveFNpemluZywgQXBwbHlQcm9wZXJ0eURlZmF1bHQ8RUJveFNpemluZywg
JlJlbmRlclN0eWxlOjpib3hTaXppbmcsIEVCb3hTaXppbmcsICZSZW5kZXJTdHlsZTo6c2V0Qm94
U2l6aW5nLCBFQm94U2l6aW5nLCAmUmVuZGVyU3R5bGU6OmluaXRpYWxCb3hTaXppbmc+OjpjcmVh
dGVIYW5kbGVyKCkpOwogICAgIHNldFByb3BlcnR5SGFuZGxlcihDU1NQcm9wZXJ0eUNhcHRpb25T
aWRlLCBBcHBseVByb3BlcnR5RGVmYXVsdDxFQ2FwdGlvblNpZGUsICZSZW5kZXJTdHlsZTo6Y2Fw
dGlvblNpZGUsIEVDYXB0aW9uU2lkZSwgJlJlbmRlclN0eWxlOjpzZXRDYXB0aW9uU2lkZSwgRUNh
cHRpb25TaWRlLCAmUmVuZGVyU3R5bGU6OmluaXRpYWxDYXB0aW9uU2lkZT46OmNyZWF0ZUhhbmRs
ZXIoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9DU1NQcm9w
ZXJ0eUFuaW1hdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9DU1NQcm9w
ZXJ0eUFuaW1hdGlvbi5jcHAKaW5kZXggY2ZiMzIwZmI5ZDc1MzIwM2QxODllZjhlYTZlM2MxYzZi
NWM4NjY1Yy4uMGU1ODk0MWQ2ZjJmYjM2MGI5OWM1ZWE3YzVhOGUzYjYxOWRlNjg0YyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9hbmltYXRpb24vQ1NTUHJvcGVydHlBbmltYXRpb24u
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvYW5pbWF0aW9uL0NTU1Byb3BlcnR5QW5pbWF0
aW9uLmNwcApAQCAtMTE1MCwxMCArMTE1MCwxMCBAQCBDU1NQcm9wZXJ0eUFuaW1hdGlvbldyYXBw
ZXJNYXA6OkNTU1Byb3BlcnR5QW5pbWF0aW9uV3JhcHBlck1hcCgpCiAKICAgICAgICAgbmV3IFBy
b3BlcnR5V3JhcHBlckZsZXgoKSwKIAotICAgICAgICBuZXcgUHJvcGVydHlXcmFwcGVyPHVuc2ln
bmVkPihDU1NQcm9wZXJ0eUJvcmRlckxlZnRXaWR0aCwgJlJlbmRlclN0eWxlOjpib3JkZXJMZWZ0
V2lkdGgsICZSZW5kZXJTdHlsZTo6c2V0Qm9yZGVyTGVmdFdpZHRoKSwKLSAgICAgICAgbmV3IFBy
b3BlcnR5V3JhcHBlcjx1bnNpZ25lZD4oQ1NTUHJvcGVydHlCb3JkZXJSaWdodFdpZHRoLCAmUmVu
ZGVyU3R5bGU6OmJvcmRlclJpZ2h0V2lkdGgsICZSZW5kZXJTdHlsZTo6c2V0Qm9yZGVyUmlnaHRX
aWR0aCksCi0gICAgICAgIG5ldyBQcm9wZXJ0eVdyYXBwZXI8dW5zaWduZWQ+KENTU1Byb3BlcnR5
Qm9yZGVyVG9wV2lkdGgsICZSZW5kZXJTdHlsZTo6Ym9yZGVyVG9wV2lkdGgsICZSZW5kZXJTdHls
ZTo6c2V0Qm9yZGVyVG9wV2lkdGgpLAotICAgICAgICBuZXcgUHJvcGVydHlXcmFwcGVyPHVuc2ln
bmVkPihDU1NQcm9wZXJ0eUJvcmRlckJvdHRvbVdpZHRoLCAmUmVuZGVyU3R5bGU6OmJvcmRlckJv
dHRvbVdpZHRoLCAmUmVuZGVyU3R5bGU6OnNldEJvcmRlckJvdHRvbVdpZHRoKSwKKyAgICAgICAg
bmV3IFByb3BlcnR5V3JhcHBlcjxmbG9hdD4oQ1NTUHJvcGVydHlCb3JkZXJMZWZ0V2lkdGgsICZS
ZW5kZXJTdHlsZTo6Ym9yZGVyTGVmdFdpZHRoLCAmUmVuZGVyU3R5bGU6OnNldEJvcmRlckxlZnRX
aWR0aCksCisgICAgICAgIG5ldyBQcm9wZXJ0eVdyYXBwZXI8ZmxvYXQ+KENTU1Byb3BlcnR5Qm9y
ZGVyUmlnaHRXaWR0aCwgJlJlbmRlclN0eWxlOjpib3JkZXJSaWdodFdpZHRoLCAmUmVuZGVyU3R5
bGU6OnNldEJvcmRlclJpZ2h0V2lkdGgpLAorICAgICAgICBuZXcgUHJvcGVydHlXcmFwcGVyPGZs
b2F0PihDU1NQcm9wZXJ0eUJvcmRlclRvcFdpZHRoLCAmUmVuZGVyU3R5bGU6OmJvcmRlclRvcFdp
ZHRoLCAmUmVuZGVyU3R5bGU6OnNldEJvcmRlclRvcFdpZHRoKSwKKyAgICAgICAgbmV3IFByb3Bl
cnR5V3JhcHBlcjxmbG9hdD4oQ1NTUHJvcGVydHlCb3JkZXJCb3R0b21XaWR0aCwgJlJlbmRlclN0
eWxlOjpib3JkZXJCb3R0b21XaWR0aCwgJlJlbmRlclN0eWxlOjpzZXRCb3JkZXJCb3R0b21XaWR0
aCksCiAgICAgICAgIG5ldyBMZW5ndGhQcm9wZXJ0eVdyYXBwZXI8TGVuZ3RoPihDU1NQcm9wZXJ0
eU1hcmdpbkxlZnQsICZSZW5kZXJTdHlsZTo6bWFyZ2luTGVmdCwgJlJlbmRlclN0eWxlOjpzZXRN
YXJnaW5MZWZ0KSwKICAgICAgICAgbmV3IExlbmd0aFByb3BlcnR5V3JhcHBlcjxMZW5ndGg+KENT
U1Byb3BlcnR5TWFyZ2luUmlnaHQsICZSZW5kZXJTdHlsZTo6bWFyZ2luUmlnaHQsICZSZW5kZXJT
dHlsZTo6c2V0TWFyZ2luUmlnaHQpLAogICAgICAgICBuZXcgTGVuZ3RoUHJvcGVydHlXcmFwcGVy
PExlbmd0aD4oQ1NTUHJvcGVydHlNYXJnaW5Ub3AsICZSZW5kZXJTdHlsZTo6bWFyZ2luVG9wLCAm
UmVuZGVyU3R5bGU6OnNldE1hcmdpblRvcCksCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyVGFibGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
clRhYmxlLmNwcAppbmRleCA1OWI4NDNmMTg5OTZlOGI5N2YxMTViYTkwMWJlOTcwOTQ0NjAwNTIz
Li4zOTNlNmI2NjI0YTE4NGFhNWFlNjNiM2ZiNjUzODZlZjgwNGMwYTYxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGFibGUuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJUYWJsZS5jcHAKQEAgLTk2MSw3ICs5NjEsNyBAQCBpbnQgUmVu
ZGVyVGFibGU6OmNhbGNCb3JkZXJTdGFydCgpIGNvbnN0CiAgICAgaWYgKCFudW1FZmZDb2xzKCkp
CiAgICAgICAgIHJldHVybiAwOwogCi0gICAgdW5zaWduZWQgYm9yZGVyV2lkdGggPSAwOworICAg
IGZsb2F0IGJvcmRlcldpZHRoID0gMDsKIAogICAgIGNvbnN0IEJvcmRlclZhbHVlJiB0YWJsZVN0
YXJ0Qm9yZGVyID0gc3R5bGUoKS5ib3JkZXJTdGFydCgpOwogICAgIGlmICh0YWJsZVN0YXJ0Qm9y
ZGVyLnN0eWxlKCkgPT0gQkhJRERFTikKQEAgLTEwMTUsNyArMTAxNSw3IEBAIGludCBSZW5kZXJU
YWJsZTo6Y2FsY0JvcmRlckVuZCgpIGNvbnN0CiAgICAgaWYgKCFudW1FZmZDb2xzKCkpCiAgICAg
ICAgIHJldHVybiAwOwogCi0gICAgdW5zaWduZWQgYm9yZGVyV2lkdGggPSAwOworICAgIGZsb2F0
IGJvcmRlcldpZHRoID0gMDsKIAogICAgIGNvbnN0IEJvcmRlclZhbHVlJiB0YWJsZUVuZEJvcmRl
ciA9IHN0eWxlKCkuYm9yZGVyRW5kKCk7CiAgICAgaWYgKHRhYmxlRW5kQm9yZGVyLnN0eWxlKCkg
PT0gQkhJRERFTikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9C
b3JkZXJWYWx1ZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0JvcmRlclZhbHVl
LmgKaW5kZXggYzhmNjUxMmM1MDhmYTNmZWU3MDA0ZjJmYzhmMjE5YTk2NmFhMjM3NS4uMzE5MTk4
NTMzNzIzOWZlMmU3ODg2OWQwZGI4ZDJkM2Q2MDVlMWQzOCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N0eWxlL0JvcmRlclZhbHVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL0JvcmRlclZhbHVlLmgKQEAgLTM0LDkgKzM0LDkgQEAgY2xhc3MgQm9y
ZGVyVmFsdWUgewogZnJpZW5kIGNsYXNzIFJlbmRlclN0eWxlOwogcHVibGljOgogICAgIEJvcmRl
clZhbHVlKCkKLSAgICAgICAgOiBtX2NvbG9yKDApCisgICAgICAgIDogbV93aWR0aCgzKQorICAg
ICAgICAsIG1fY29sb3IoMCkKICAgICAgICAgLCBtX2NvbG9ySXNWYWxpZChmYWxzZSkKLSAgICAg
ICAgLCBtX3dpZHRoKDMpCiAgICAgICAgICwgbV9zdHlsZShCTk9ORSkKICAgICAgICAgLCBtX2lz
QXV0byhBVVRPX09GRikKICAgICB7CkBAIC03NSwxOCArNzUsMTggQEAgcHVibGljOgogCiAgICAg
Q29sb3IgY29sb3IoKSBjb25zdCB7IHJldHVybiBDb2xvcihtX2NvbG9yLCBtX2NvbG9ySXNWYWxp
ZCk7IH0KIAotICAgIHVuc2lnbmVkIHdpZHRoKCkgY29uc3QgeyByZXR1cm4gbV93aWR0aDsgfQor
ICAgIGZsb2F0IHdpZHRoKCkgY29uc3QgeyByZXR1cm4gbV93aWR0aDsgfQogICAgIEVCb3JkZXJT
dHlsZSBzdHlsZSgpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PEVCb3JkZXJTdHlsZT4obV9z
dHlsZSk7IH0KIAogcHJvdGVjdGVkOgorICAgIGZsb2F0IG1fd2lkdGg7CiAgICAgUkdCQTMyIG1f
Y29sb3I7CiAgICAgdW5zaWduZWQgbV9jb2xvcklzVmFsaWQgOiAxOwogCi0gICAgdW5zaWduZWQg
bV93aWR0aCA6IDI2OwogICAgIHVuc2lnbmVkIG1fc3R5bGUgOiA0OyAvLyBFQm9yZGVyU3R5bGUK
IAogICAgIC8vIFRoaXMgaXMgb25seSB1c2VkIGJ5IE91dGxpbmVWYWx1ZSBidXQgbW92ZWQgaGVy
ZSB0byBrZWVwIHRoZSBiaXRzIHBhY2tlZC4KLSAgICB1bnNpZ25lZCBtX2lzQXV0byA6IDE7IC8v
IE91dGxpbmVJc0F1dG8KKyAgICB1bnNpZ25lZCBtX2lzQXV0byA6IDI3OyAvLyBPdXRsaW5lSXNB
dXRvCiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAppbmRleCAxOTViYzM1MWRkZDhlZmM2OTU5MzI3
YWQxOGNmYzFmZDUzMTEyNWFkLi5iYjIwYTA1ZjU2Y2RkNTMwNzJjY2E1YjRiNGMzMDhhZTU0MWUw
ODViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5
bGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5j
cHAKQEAgLTU0LDggKzU0LDkgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogc3RydWN0IFNhbWVT
aXplQXNCb3JkZXJWYWx1ZSB7CisgICAgZmxvYXQgbV93aWR0aDsKICAgICBSR0JBMzIgbV9jb2xv
cjsKLSAgICB1bnNpZ25lZCBtX3dpZHRoOworICAgIGludCBtX3Jlc3RCaXRzOwogfTsKIAogQ09N
UElMRV9BU1NFUlQoc2l6ZW9mKEJvcmRlclZhbHVlKSA9PSBzaXplb2YoU2FtZVNpemVBc0JvcmRl
clZhbHVlKSwgQm9yZGVyVmFsdWVfc2hvdWxkX25vdF9ncm93KTsKQEAgLTE2ODIsNyArMTY4Myw3
IEBAIGNvbnN0IEJvcmRlclZhbHVlJiBSZW5kZXJTdHlsZTo6Ym9yZGVyRW5kKCkgY29uc3QKICAg
ICByZXR1cm4gaXNMZWZ0VG9SaWdodERpcmVjdGlvbigpID8gYm9yZGVyQm90dG9tKCkgOiBib3Jk
ZXJUb3AoKTsKIH0KIAotdW5zaWduZWQgc2hvcnQgUmVuZGVyU3R5bGU6OmJvcmRlckJlZm9yZVdp
ZHRoKCkgY29uc3QKK2Zsb2F0IFJlbmRlclN0eWxlOjpib3JkZXJCZWZvcmVXaWR0aCgpIGNvbnN0
CiB7CiAgICAgc3dpdGNoICh3cml0aW5nTW9kZSgpKSB7CiAgICAgY2FzZSBUb3BUb0JvdHRvbVdy
aXRpbmdNb2RlOgpAQCAtMTY5OCw3ICsxNjk5LDcgQEAgdW5zaWduZWQgc2hvcnQgUmVuZGVyU3R5
bGU6OmJvcmRlckJlZm9yZVdpZHRoKCkgY29uc3QKICAgICByZXR1cm4gYm9yZGVyVG9wV2lkdGgo
KTsKIH0KIAotdW5zaWduZWQgc2hvcnQgUmVuZGVyU3R5bGU6OmJvcmRlckFmdGVyV2lkdGgoKSBj
b25zdAorZmxvYXQgUmVuZGVyU3R5bGU6OmJvcmRlckFmdGVyV2lkdGgoKSBjb25zdAogewogICAg
IHN3aXRjaCAod3JpdGluZ01vZGUoKSkgewogICAgIGNhc2UgVG9wVG9Cb3R0b21Xcml0aW5nTW9k
ZToKQEAgLTE3MTQsMTQgKzE3MTUsMTQgQEAgdW5zaWduZWQgc2hvcnQgUmVuZGVyU3R5bGU6OmJv
cmRlckFmdGVyV2lkdGgoKSBjb25zdAogICAgIHJldHVybiBib3JkZXJCb3R0b21XaWR0aCgpOwog
fQogCi11bnNpZ25lZCBzaG9ydCBSZW5kZXJTdHlsZTo6Ym9yZGVyU3RhcnRXaWR0aCgpIGNvbnN0
CitmbG9hdCBSZW5kZXJTdHlsZTo6Ym9yZGVyU3RhcnRXaWR0aCgpIGNvbnN0CiB7CiAgICAgaWYg
KGlzSG9yaXpvbnRhbFdyaXRpbmdNb2RlKCkpCiAgICAgICAgIHJldHVybiBpc0xlZnRUb1JpZ2h0
RGlyZWN0aW9uKCkgPyBib3JkZXJMZWZ0V2lkdGgoKSA6IGJvcmRlclJpZ2h0V2lkdGgoKTsKICAg
ICByZXR1cm4gaXNMZWZ0VG9SaWdodERpcmVjdGlvbigpID8gYm9yZGVyVG9wV2lkdGgoKSA6IGJv
cmRlckJvdHRvbVdpZHRoKCk7CiB9CiAKLXVuc2lnbmVkIHNob3J0IFJlbmRlclN0eWxlOjpib3Jk
ZXJFbmRXaWR0aCgpIGNvbnN0CitmbG9hdCBSZW5kZXJTdHlsZTo6Ym9yZGVyRW5kV2lkdGgoKSBj
b25zdAogewogICAgIGlmIChpc0hvcml6b250YWxXcml0aW5nTW9kZSgpKQogICAgICAgICByZXR1
cm4gaXNMZWZ0VG9SaWdodERpcmVjdGlvbigpID8gYm9yZGVyUmlnaHRXaWR0aCgpIDogYm9yZGVy
TGVmdFdpZHRoKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUv
UmVuZGVyU3R5bGUuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHls
ZS5oCmluZGV4IDlkYjczZjNlZTU0MzAxYjY2OTQ1NWExMjVhMmI4ZDA2YzRjMzYzYzEuLjUzZTc3
NjA3ZjdlMTU5OTM5MDQ0ZDYyMzQyYjg1YjQ3Y2YzMDY2YzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCkBAIC01MDMsMjMgKzUwMywyMyBAQCBwdWJs
aWM6CiAgICAgY29uc3QgTGVuZ3RoU2l6ZSYgYm9yZGVyQm90dG9tUmlnaHRSYWRpdXMoKSBjb25z
dCB7IHJldHVybiBzdXJyb3VuZC0+Ym9yZGVyLmJvdHRvbVJpZ2h0KCk7IH0KICAgICBib29sIGhh
c0JvcmRlclJhZGl1cygpIGNvbnN0IHsgcmV0dXJuIHN1cnJvdW5kLT5ib3JkZXIuaGFzQm9yZGVy
UmFkaXVzKCk7IH0KIAotICAgIHVuc2lnbmVkIGJvcmRlckxlZnRXaWR0aCgpIGNvbnN0IHsgcmV0
dXJuIHN1cnJvdW5kLT5ib3JkZXIuYm9yZGVyTGVmdFdpZHRoKCk7IH0KKyAgICBmbG9hdCBib3Jk
ZXJMZWZ0V2lkdGgoKSBjb25zdCB7IHJldHVybiBzdXJyb3VuZC0+Ym9yZGVyLmJvcmRlckxlZnRX
aWR0aCgpOyB9CiAgICAgRUJvcmRlclN0eWxlIGJvcmRlckxlZnRTdHlsZSgpIGNvbnN0IHsgcmV0
dXJuIHN1cnJvdW5kLT5ib3JkZXIubGVmdCgpLnN0eWxlKCk7IH0KICAgICBib29sIGJvcmRlckxl
ZnRJc1RyYW5zcGFyZW50KCkgY29uc3QgeyByZXR1cm4gc3Vycm91bmQtPmJvcmRlci5sZWZ0KCku
aXNUcmFuc3BhcmVudCgpOyB9Ci0gICAgdW5zaWduZWQgYm9yZGVyUmlnaHRXaWR0aCgpIGNvbnN0
IHsgcmV0dXJuIHN1cnJvdW5kLT5ib3JkZXIuYm9yZGVyUmlnaHRXaWR0aCgpOyB9CisgICAgZmxv
YXQgYm9yZGVyUmlnaHRXaWR0aCgpIGNvbnN0IHsgcmV0dXJuIHN1cnJvdW5kLT5ib3JkZXIuYm9y
ZGVyUmlnaHRXaWR0aCgpOyB9CiAgICAgRUJvcmRlclN0eWxlIGJvcmRlclJpZ2h0U3R5bGUoKSBj
b25zdCB7IHJldHVybiBzdXJyb3VuZC0+Ym9yZGVyLnJpZ2h0KCkuc3R5bGUoKTsgfQogICAgIGJv
b2wgYm9yZGVyUmlnaHRJc1RyYW5zcGFyZW50KCkgY29uc3QgeyByZXR1cm4gc3Vycm91bmQtPmJv
cmRlci5yaWdodCgpLmlzVHJhbnNwYXJlbnQoKTsgfQotICAgIHVuc2lnbmVkIGJvcmRlclRvcFdp
ZHRoKCkgY29uc3QgeyByZXR1cm4gc3Vycm91bmQtPmJvcmRlci5ib3JkZXJUb3BXaWR0aCgpOyB9
CisgICAgZmxvYXQgYm9yZGVyVG9wV2lkdGgoKSBjb25zdCB7IHJldHVybiBzdXJyb3VuZC0+Ym9y
ZGVyLmJvcmRlclRvcFdpZHRoKCk7IH0KICAgICBFQm9yZGVyU3R5bGUgYm9yZGVyVG9wU3R5bGUo
KSBjb25zdCB7IHJldHVybiBzdXJyb3VuZC0+Ym9yZGVyLnRvcCgpLnN0eWxlKCk7IH0KICAgICBi
b29sIGJvcmRlclRvcElzVHJhbnNwYXJlbnQoKSBjb25zdCB7IHJldHVybiBzdXJyb3VuZC0+Ym9y
ZGVyLnRvcCgpLmlzVHJhbnNwYXJlbnQoKTsgfQotICAgIHVuc2lnbmVkIGJvcmRlckJvdHRvbVdp
ZHRoKCkgY29uc3QgeyByZXR1cm4gc3Vycm91bmQtPmJvcmRlci5ib3JkZXJCb3R0b21XaWR0aCgp
OyB9CisgICAgZmxvYXQgYm9yZGVyQm90dG9tV2lkdGgoKSBjb25zdCB7IHJldHVybiBzdXJyb3Vu
ZC0+Ym9yZGVyLmJvcmRlckJvdHRvbVdpZHRoKCk7IH0KICAgICBFQm9yZGVyU3R5bGUgYm9yZGVy
Qm90dG9tU3R5bGUoKSBjb25zdCB7IHJldHVybiBzdXJyb3VuZC0+Ym9yZGVyLmJvdHRvbSgpLnN0
eWxlKCk7IH0KICAgICBib29sIGJvcmRlckJvdHRvbUlzVHJhbnNwYXJlbnQoKSBjb25zdCB7IHJl
dHVybiBzdXJyb3VuZC0+Ym9yZGVyLmJvdHRvbSgpLmlzVHJhbnNwYXJlbnQoKTsgfQogICAgIAot
ICAgIHVuc2lnbmVkIHNob3J0IGJvcmRlckJlZm9yZVdpZHRoKCkgY29uc3Q7Ci0gICAgdW5zaWdu
ZWQgc2hvcnQgYm9yZGVyQWZ0ZXJXaWR0aCgpIGNvbnN0OwotICAgIHVuc2lnbmVkIHNob3J0IGJv
cmRlclN0YXJ0V2lkdGgoKSBjb25zdDsKLSAgICB1bnNpZ25lZCBzaG9ydCBib3JkZXJFbmRXaWR0
aCgpIGNvbnN0OworICAgIGZsb2F0IGJvcmRlckJlZm9yZVdpZHRoKCkgY29uc3Q7CisgICAgZmxv
YXQgYm9yZGVyQWZ0ZXJXaWR0aCgpIGNvbnN0OworICAgIGZsb2F0IGJvcmRlclN0YXJ0V2lkdGgo
KSBjb25zdDsKKyAgICBmbG9hdCBib3JkZXJFbmRXaWR0aCgpIGNvbnN0OwogCiAgICAgdW5zaWdu
ZWQgc2hvcnQgb3V0bGluZVNpemUoKSBjb25zdCB7IHJldHVybiBzdGQ6Om1heCgwLCBvdXRsaW5l
V2lkdGgoKSArIG91dGxpbmVPZmZzZXQoKSk7IH0KICAgICB1bnNpZ25lZCBzaG9ydCBvdXRsaW5l
V2lkdGgoKSBjb25zdApAQCAtMTA5MSwxNiArMTA5MSwxNiBAQCBwdWJsaWM6CiAgICAgUm91bmRl
ZFJlY3QgZ2V0Um91bmRlZElubmVyQm9yZGVyRm9yKGNvbnN0IExheW91dFJlY3QmIGJvcmRlclJl
Y3QsCiAgICAgICAgIGludCB0b3BXaWR0aCwgaW50IGJvdHRvbVdpZHRoLCBpbnQgbGVmdFdpZHRo
LCBpbnQgcmlnaHRXaWR0aCwgYm9vbCBpbmNsdWRlTG9naWNhbExlZnRFZGdlLCBib29sIGluY2x1
ZGVMb2dpY2FsUmlnaHRFZGdlKSBjb25zdDsKIAotICAgIHZvaWQgc2V0Qm9yZGVyTGVmdFdpZHRo
KHVuc2lnbmVkIHYpIHsgU0VUX1ZBUihzdXJyb3VuZCwgYm9yZGVyLm1fbGVmdC5tX3dpZHRoLCB2
KTsgfQorICAgIHZvaWQgc2V0Qm9yZGVyTGVmdFdpZHRoKGZsb2F0IHYpIHsgU0VUX1ZBUihzdXJy
b3VuZCwgYm9yZGVyLm1fbGVmdC5tX3dpZHRoLCB2KTsgfQogICAgIHZvaWQgc2V0Qm9yZGVyTGVm
dFN0eWxlKEVCb3JkZXJTdHlsZSB2KSB7IFNFVF9WQVIoc3Vycm91bmQsIGJvcmRlci5tX2xlZnQu
bV9zdHlsZSwgdik7IH0KICAgICB2b2lkIHNldEJvcmRlckxlZnRDb2xvcihjb25zdCBDb2xvciYg
dikgeyBTRVRfQk9SREVSVkFMVUVfQ09MT1Ioc3Vycm91bmQsIGJvcmRlci5tX2xlZnQsIHYpOyB9
Ci0gICAgdm9pZCBzZXRCb3JkZXJSaWdodFdpZHRoKHVuc2lnbmVkIHYpIHsgU0VUX1ZBUihzdXJy
b3VuZCwgYm9yZGVyLm1fcmlnaHQubV93aWR0aCwgdik7IH0KKyAgICB2b2lkIHNldEJvcmRlclJp
Z2h0V2lkdGgoZmxvYXQgdikgeyBTRVRfVkFSKHN1cnJvdW5kLCBib3JkZXIubV9yaWdodC5tX3dp
ZHRoLCB2KTsgfQogICAgIHZvaWQgc2V0Qm9yZGVyUmlnaHRTdHlsZShFQm9yZGVyU3R5bGUgdikg
eyBTRVRfVkFSKHN1cnJvdW5kLCBib3JkZXIubV9yaWdodC5tX3N0eWxlLCB2KTsgfQogICAgIHZv
aWQgc2V0Qm9yZGVyUmlnaHRDb2xvcihjb25zdCBDb2xvciYgdikgeyBTRVRfQk9SREVSVkFMVUVf
Q09MT1Ioc3Vycm91bmQsIGJvcmRlci5tX3JpZ2h0LCB2KTsgfQotICAgIHZvaWQgc2V0Qm9yZGVy
VG9wV2lkdGgodW5zaWduZWQgdikgeyBTRVRfVkFSKHN1cnJvdW5kLCBib3JkZXIubV90b3AubV93
aWR0aCwgdik7IH0KKyAgICB2b2lkIHNldEJvcmRlclRvcFdpZHRoKGZsb2F0IHYpIHsgU0VUX1ZB
UihzdXJyb3VuZCwgYm9yZGVyLm1fdG9wLm1fd2lkdGgsIHYpOyB9CiAgICAgdm9pZCBzZXRCb3Jk
ZXJUb3BTdHlsZShFQm9yZGVyU3R5bGUgdikgeyBTRVRfVkFSKHN1cnJvdW5kLCBib3JkZXIubV90
b3AubV9zdHlsZSwgdik7IH0KICAgICB2b2lkIHNldEJvcmRlclRvcENvbG9yKGNvbnN0IENvbG9y
JiB2KSB7IFNFVF9CT1JERVJWQUxVRV9DT0xPUihzdXJyb3VuZCwgYm9yZGVyLm1fdG9wLCB2KTsg
fQotICAgIHZvaWQgc2V0Qm9yZGVyQm90dG9tV2lkdGgodW5zaWduZWQgdikgeyBTRVRfVkFSKHN1
cnJvdW5kLCBib3JkZXIubV9ib3R0b20ubV93aWR0aCwgdik7IH0KKyAgICB2b2lkIHNldEJvcmRl
ckJvdHRvbVdpZHRoKGZsb2F0IHYpIHsgU0VUX1ZBUihzdXJyb3VuZCwgYm9yZGVyLm1fYm90dG9t
Lm1fd2lkdGgsIHYpOyB9CiAgICAgdm9pZCBzZXRCb3JkZXJCb3R0b21TdHlsZShFQm9yZGVyU3R5
bGUgdikgeyBTRVRfVkFSKHN1cnJvdW5kLCBib3JkZXIubV9ib3R0b20ubV9zdHlsZSwgdik7IH0K
ICAgICB2b2lkIHNldEJvcmRlckJvdHRvbUNvbG9yKGNvbnN0IENvbG9yJiB2KSB7IFNFVF9CT1JE
RVJWQUxVRV9DT0xPUihzdXJyb3VuZCwgYm9yZGVyLm1fYm90dG9tLCB2KTsgfQogCkBAIC0xNjQ5
LDcgKzE2NDksNyBAQCBwdWJsaWM6CiAjZW5kaWYKICAgICBzdGF0aWMgQ29sb3IgaW5pdGlhbENv
bG9yKCkgeyByZXR1cm4gQ29sb3I6OmJsYWNrOyB9CiAgICAgc3RhdGljIFN0eWxlSW1hZ2UqIGlu
aXRpYWxMaXN0U3R5bGVJbWFnZSgpIHsgcmV0dXJuIDA7IH0KLSAgICBzdGF0aWMgdW5zaWduZWQg
aW5pdGlhbEJvcmRlcldpZHRoKCkgeyByZXR1cm4gMzsgfQorICAgIHN0YXRpYyBmbG9hdCBpbml0
aWFsQm9yZGVyV2lkdGgoKSB7IHJldHVybiAzOyB9CiAgICAgc3RhdGljIHVuc2lnbmVkIHNob3J0
IGluaXRpYWxDb2x1bW5SdWxlV2lkdGgoKSB7IHJldHVybiAzOyB9CiAgICAgc3RhdGljIHVuc2ln
bmVkIHNob3J0IGluaXRpYWxPdXRsaW5lV2lkdGgoKSB7IHJldHVybiAzOyB9CiAgICAgc3RhdGlj
IGZsb2F0IGluaXRpYWxMZXR0ZXJTcGFjaW5nKCkgeyByZXR1cm4gMDsgfQo=
</data>
<flag name="review"
          id="246743"
          type_id="1"
          status="+"
          setter="kling"
    />
          </attachment>
      

    </bug>

</bugzilla>