<?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>113939</bug_id>
          
          <creation_ts>2013-04-04 09:32:47 -0700</creation_ts>
          <short_desc>AX: Make SVG Group containers accessible elements</short_desc>
          <delta_ts>2013-04-05 14:55:58 -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>Accessibility</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="chris fleizach">cfleizach</reporter>
          <assigned_to name="chris fleizach">cfleizach</assigned_to>
          <cc>aboxhall</cc>
    
    <cc>apinheiro</cc>
    
    <cc>bdakin</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>dmazzoni</cc>
    
    <cc>d-r</cc>
    
    <cc>eric</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>fmalita</cc>
    
    <cc>jdiggs</cc>
    
    <cc>ojan.autocc</cc>
    
    <cc>pdr</cc>
    
    <cc>schenney</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>869193</commentid>
    <comment_count>0</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2013-04-04 09:32:47 -0700</bug_when>
    <thetext>SVG &lt;g&gt; elements are
1) not exposed in the AX hierarchy
2) do not expose the &lt;title&gt; attribute as descriptive text (well no SVG element does either)
3) do not respond to hit-testing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>869358</commentid>
    <comment_count>1</comment_count>
      <attachid>196526</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2013-04-04 14:16:20 -0700</bug_when>
    <thetext>Created attachment 196526
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>869889</commentid>
    <comment_count>2</comment_count>
      <attachid>196526</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2013-04-05 11:12:32 -0700</bug_when>
    <thetext>Comment on attachment 196526
patch

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

This looks okay to me (just some extremely minor nits below), but I&apos;d like someone with more hit testing knowledge to look at the changes.

&gt; Source/WebCore/accessibility/AccessibilityNodeObject.cpp:1190
&gt; +    Node* node = this-&gt;node();

Technically, if you turn off both SVG and MATHML, this will cause a compiler warning about an unused variable.  In practice, I don&apos;t think we&apos;ll do either.  :)

&gt; Source/WebCore/accessibility/AccessibilityNodeObject.cpp:1382
&gt; +    Node* node = this-&gt;node();

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>870092</commentid>
    <comment_count>3</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2013-04-05 14:55:58 -0700</bug_when>
    <thetext>Addressed David&apos;s comments
http://trac.webkit.org/changeset/147801</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>196526</attachid>
            <date>2013-04-04 14:16:20 -0700</date>
            <delta_ts>2013-04-05 11:54:14 -0700</delta_ts>
            <desc>patch</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>17028</size>
            <attacher name="chris fleizach">cfleizach</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE0NzY2OCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM3IEBACisyMDEzLTA0LTA0ICBDaHJpcyBG
bGVpemFjaCAgPGNmbGVpemFjaEBhcHBsZS5jb20+CisKKyAgICAgICAgQVg6IE1ha2UgU1ZHIEdy
b3VwIGNvbnRhaW5lcnMgYWNjZXNzaWJsZSBlbGVtZW50cworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEzOTM5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU1ZHIGdyb3VwIGNvbnRhaW5lcnMgYXJlIGN1cnJl
bnRseSBub3QgZXhwb3NlZCBpbiB0aGUgQVggdHJlZS4gCisgICAgICAgIFdoZW4gYW4gU1ZHIGVs
ZW1lbnQgaGFzIGEgPHRpdGxlPiBjaGlsZCwgdGhhdCBpcyBub3QgYmVpbmcgdXNlZCBmb3IgdGhl
IEFYIGxhYmVsLgorICAgICAgICBXaGVuIGhpdC10ZXN0aW5nLCBmcm9tIEFjY2Vzc2liaWxpdHks
IFNWRyBncm91cHMgYXJlIG5ldmVyIHJldHVybmVkLgorCisgICAgICAgIEFsbCB0aGVzZSBpc3N1
ZXMgYXJlIGZpeGVkIGZvciBNYWMgYW5kIGlPUy4KKyAgICAgICAgVGhlcmUgYXJlIHR3byB0ZXN0
cyBiZWNhdXNlIHJpZ2h0IG5vdyBpT1Mgc2tpcHMgYWxsIHRoZSB0b3AtbGV2ZWwgYWNjZXNzaWJp
bGl0eSB0ZXN0cworICAgICAgICBkdWUgdG8gZnVuZGFtZW50YWwgYXJjaGl0ZWN0dXJhbCBkaWZm
ZXJlbmNlcy4KKworICAgICAgICBUZXN0czogYWNjZXNzaWJpbGl0eS9zdmctZ3JvdXAtZWxlbWVu
dC13aXRoLXRpdGxlLmh0bWwKKyAgICAgICAgICAgICAgIHBsYXRmb3JtL2lwaG9uZS1zaW11bGF0
b3IvYWNjZXNzaWJpbGl0eS9zdmctZ3JvdXAtZWxlbWVudC13aXRoLXRpdGxlLmh0bWwKKworICAg
ICAgICAqIGFjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU5vZGVPYmplY3QuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eU5vZGVPYmplY3Q6OmFsdGVybmF0aXZlVGV4dCk6Cisg
ICAgICAgIChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5Tm9kZU9iamVjdDo6YWNjZXNzaWJpbGl0eURl
c2NyaXB0aW9uKToKKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlSZW5kZXJP
YmplY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdDo6
YWNjZXNzaWJpbGl0eUhpdFRlc3QpOgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eVJl
bmRlck9iamVjdDo6ZGV0ZXJtaW5lQWNjZXNzaWJpbGl0eVJvbGUpOgorICAgICAgICAqIGFjY2Vz
c2liaWxpdHkvaW9zL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVySU9TLm1tOgorICAgICAg
ICAoLVtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlciBpc1NWR0dyb3VwRWxlbWVudF0pOgor
ICAgICAgICAoLVtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlciBkZXRlcm1pbmVJc0FjY2Vz
c2liaWxpdHlFbGVtZW50XSk6CisgICAgICAgICgtW1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFw
cGVyIGFjY2Vzc2liaWxpdHlDbGlja1BvaW50XSk6CisgICAgICAgICogcmVuZGVyaW5nL0hpdFRl
c3RSZXF1ZXN0Lmg6CisgICAgICAgICAgICBBZGQgYSBuZXcgb3B0aW9uLCBBY2Nlc3NpYmlsaXR5
SGl0VGVzdCwgdGhhdCB3aWxsIGFsbG93IHVzIHRvIG92ZXJyaWRlIG5vcm1hbCBiZWhhdmlvci4K
KyAgICAgICAgKiByZW5kZXJpbmcvc3ZnL1JlbmRlclNWR0NvbnRhaW5lci5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpSZW5kZXJTVkdDb250YWluZXI6Om5vZGVBdEZsb2F0UG9pbnQpOgorICAgICAg
ICAgICBBbGxvdyBhIFNWRyBncm91cCB0byBiZSB0aGUgbm9kZSBhdCBhIHBvaW50LCBmb3IgYWNj
ZXNzaWJpbGl0eSBoaXQgdGVzdHMuCisKIDIwMTMtMDQtMDQgIFNoZXJpZmYgQm90ICA8d2Via2l0
LnJldmlldy5ib3RAZ21haWwuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0
IHIxNDc2NjIuCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvSGl0VGVzdFJlcXVlc3Qu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvSGl0VGVzdFJlcXVlc3Qu
aAkocmV2aXNpb24gMTQ3NjY0KQorKysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0hpdFRlc3RS
ZXF1ZXN0LmgJKHdvcmtpbmcgY29weSkKQEAgLTM4LDcgKzM4LDggQEAKICAgICAgICAgRGlzYWxs
b3dTaGFkb3dDb250ZW50ID0gMSA8PCA4LAogICAgICAgICBBbGxvd0ZyYW1lU2Nyb2xsYmFycyA9
IDEgPDwgOSwKICAgICAgICAgQWxsb3dDaGlsZEZyYW1lQ29udGVudCA9IDEgPDwgMTAsCi0gICAg
ICAgIENoaWxkRnJhbWVIaXRUZXN0ID0gMSA8PCAxMQorICAgICAgICBDaGlsZEZyYW1lSGl0VGVz
dCA9IDEgPDwgMTEsCisgICAgICAgIEFjY2Vzc2liaWxpdHlIaXRUZXN0ID0gMSA8PCAxMgogICAg
IH07CiAKICAgICB0eXBlZGVmIHVuc2lnbmVkIEhpdFRlc3RSZXF1ZXN0VHlwZTsKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvUmVuZGVyU1ZHQ29udGFpbmVyLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR0NvbnRhaW5lci5j
cHAJKHJldmlzaW9uIDE0NzY2NCkKKysrIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvUmVu
ZGVyU1ZHQ29udGFpbmVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTg2LDYgKzE4NiwxMiBAQAog
ICAgICAgICB9CiAgICAgfQogCisgICAgLy8gQWNjZXNzaWJpbGl0eSB3YW50cyB0byByZXR1cm4g
U1ZHIGNvbnRhaW5lcnMsIGlmIGFwcHJvcHJpYXRlLgorICAgIGlmIChyZXF1ZXN0LnR5cGUoKSAm
IEhpdFRlc3RSZXF1ZXN0OjpBY2Nlc3NpYmlsaXR5SGl0VGVzdCAmJiBtX29iamVjdEJvdW5kaW5n
Qm94LmNvbnRhaW5zKGxvY2FsUG9pbnQpKSB7CisgICAgICAgIHVwZGF0ZUhpdFRlc3RSZXN1bHQo
cmVzdWx0LCByb3VuZGVkTGF5b3V0UG9pbnQobG9jYWxQb2ludCkpOworICAgICAgICByZXR1cm4g
dHJ1ZTsKKyAgICB9CisgICAgCiAgICAgLy8gU3BlYzogT25seSBncmFwaGljYWwgZWxlbWVudHMg
Y2FuIGJlIHRhcmdldGVkIGJ5IHRoZSBtb3VzZSwgcGVyaW9kLgogICAgIC8vIDE2LjQ6ICJJZiB0
aGVyZSBhcmUgbm8gZ3JhcGhpY3MgZWxlbWVudHMgd2hvc2UgcmVsZXZhbnQgZ3JhcGhpY3MgY29u
dGVudCBpcyB1bmRlciB0aGUgcG9pbnRlciAoaS5lLiwgdGhlcmUgaXMgbm8gdGFyZ2V0IGVsZW1l
bnQpLCB0aGUgZXZlbnQgaXMgbm90IGRpc3BhdGNoZWQuIgogICAgIHJldHVybiBmYWxzZTsKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU5vZGVPYmplY3Qu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJp
bGl0eU5vZGVPYmplY3QuY3BwCShyZXZpc2lvbiAxNDc2NjQpCisrKyBTb3VyY2UvV2ViQ29yZS9h
Y2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlOb2RlT2JqZWN0LmNwcAkod29ya2luZyBjb3B5KQpA
QCAtNjYsNiArNjYsOSBAQAogI2luY2x1ZGUgIk5vZGVUcmF2ZXJzYWwuaCIKICNpbmNsdWRlICJQ
YWdlLmgiCiAjaW5jbHVkZSAiUHJvZ3Jlc3NUcmFja2VyLmgiCisjaW5jbHVkZSAiU1ZHRWxlbWVu
dC5oIgorI2luY2x1ZGUgIlNWR05hbWVzLmgiCisjaW5jbHVkZSAiU1ZHU3R5bGVkRWxlbWVudC5o
IgogI2luY2x1ZGUgIlRleHQuaCIKICNpbmNsdWRlICJUZXh0Q29udHJvbElubmVyRWxlbWVudHMu
aCIKICNpbmNsdWRlICJUZXh0SXRlcmF0b3IuaCIKQEAgLTExODQsOCArMTE4NywxNCBAQAogICAg
ICAgICAgICAgdGV4dE9yZGVyLmFwcGVuZChBY2Nlc3NpYmlsaXR5VGV4dChhbHQsIEFsdGVybmF0
aXZlVGV4dCkpOwogICAgIH0KICAgICAKKyAgICBOb2RlKiBub2RlID0gdGhpcy0+bm9kZSgpOwor
I2lmIEVOQUJMRShTVkcpCisgICAgLy8gU1ZHIGVsZW1lbnRzIGFsbCBjYW4gaGF2ZSBhIDxzdmc6
dGl0bGU+IGVsZW1lbnQgaW5zaWRlIHdoaWNoIHNob3VsZCBhY3QgYXMgdGhlIGRlc2NyaXB0aXZl
IHRleHQuCisgICAgaWYgKG5vZGUgJiYgbm9kZS0+aXNTVkdFbGVtZW50KCkgJiYgdG9TVkdFbGVt
ZW50KG5vZGUpLT5pc1NWR1N0eWxlZEVsZW1lbnQoKSkKKyAgICAgICAgdGV4dE9yZGVyLmFwcGVu
ZChBY2Nlc3NpYmlsaXR5VGV4dCh0b1NWR1N0eWxlZEVsZW1lbnQobm9kZSktPnRpdGxlKCksIEFs
dGVybmF0aXZlVGV4dCkpOworI2VuZGlmCisgICAgCiAjaWYgRU5BQkxFKE1BVEhNTCkKLSAgICBO
b2RlKiBub2RlID0gdGhpcy0+bm9kZSgpOwogICAgIGlmIChub2RlICYmIG5vZGUtPmlzRWxlbWVu
dE5vZGUoKSAmJiB0b0VsZW1lbnQobm9kZSktPmlzTWF0aE1MRWxlbWVudCgpKQogICAgICAgICB0
ZXh0T3JkZXIuYXBwZW5kKEFjY2Vzc2liaWxpdHlUZXh0KGdldEF0dHJpYnV0ZShNYXRoTUxOYW1l
czo6YWx0dGV4dEF0dHIpLCBBbHRlcm5hdGl2ZVRleHQpKTsKICNlbmRpZgpAQCAtMTM3MCw4ICsx
Mzc5LDE0IEBACiAgICAgICAgICAgICByZXR1cm4gYWx0OwogICAgIH0KIAorICAgIE5vZGUqIG5v
ZGUgPSB0aGlzLT5ub2RlKCk7CisjaWYgRU5BQkxFKFNWRykKKyAgICAvLyBTVkcgZWxlbWVudHMg
YWxsIGNhbiBoYXZlIGEgPHN2Zzp0aXRsZT4gZWxlbWVudCBpbnNpZGUgd2hpY2ggc2hvdWxkIGFj
dCBhcyB0aGUgZGVzY3JpcHRpdmUgdGV4dC4KKyAgICBpZiAobm9kZSAmJiBub2RlLT5pc1NWR0Vs
ZW1lbnQoKSAmJiB0b1NWR0VsZW1lbnQobm9kZSktPmlzU1ZHU3R5bGVkRWxlbWVudCgpKQorICAg
ICAgICByZXR1cm4gdG9TVkdTdHlsZWRFbGVtZW50KG5vZGUpLT50aXRsZSgpOworI2VuZGlmCisg
ICAgCiAjaWYgRU5BQkxFKE1BVEhNTCkKLSAgICBOb2RlKiBub2RlID0gdGhpcy0+bm9kZSgpOwog
ICAgIGlmIChub2RlICYmIG5vZGUtPmlzRWxlbWVudE5vZGUoKSAmJiB0b0VsZW1lbnQobm9kZSkt
PmlzTWF0aE1MRWxlbWVudCgpKQogICAgICAgICByZXR1cm4gZ2V0QXR0cmlidXRlKE1hdGhNTE5h
bWVzOjphbHR0ZXh0QXR0cik7CiAjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2li
aWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdC5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0LmNwcAkocmV2
aXNpb24gMTQ3NjY0KQorKysgU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmls
aXR5UmVuZGVyT2JqZWN0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzYsNiArNzYsNyBAQAogI2lu
Y2x1ZGUgIlJlbmRlck1hdGhNTEJsb2NrLmgiCiAjaW5jbHVkZSAiUmVuZGVyTWF0aE1MT3BlcmF0
b3IuaCIKICNpbmNsdWRlICJSZW5kZXJNZW51TGlzdC5oIgorI2luY2x1ZGUgIlJlbmRlclNWR1No
YXBlLmgiCiAjaW5jbHVkZSAiUmVuZGVyVGV4dC5oIgogI2luY2x1ZGUgIlJlbmRlclRleHRDb250
cm9sLmgiCiAjaW5jbHVkZSAiUmVuZGVyVGV4dENvbnRyb2xTaW5nbGVMaW5lLmgiCkBAIC04Nyw2
ICs4OCw3IEBACiAjaW5jbHVkZSAiU1ZHRG9jdW1lbnQuaCIKICNpbmNsdWRlICJTVkdJbWFnZS5o
IgogI2luY2x1ZGUgIlNWR0ltYWdlQ2hyb21lQ2xpZW50LmgiCisjaW5jbHVkZSAiU1ZHTmFtZXMu
aCIKICNpbmNsdWRlICJTVkdTVkdFbGVtZW50LmgiCiAjaW5jbHVkZSAiVGV4dC5oIgogI2luY2x1
ZGUgIlRleHRDb250cm9sSW5uZXJFbGVtZW50cy5oIgpAQCAtMjE1Nyw3ICsyMTU5LDcgQEAKICAg
ICAKICAgICBSZW5kZXJMYXllciogbGF5ZXIgPSB0b1JlbmRlckJveChtX3JlbmRlcmVyKS0+bGF5
ZXIoKTsKICAgICAgCi0gICAgSGl0VGVzdFJlcXVlc3QgcmVxdWVzdChIaXRUZXN0UmVxdWVzdDo6
UmVhZE9ubHkgfCBIaXRUZXN0UmVxdWVzdDo6QWN0aXZlKTsKKyAgICBIaXRUZXN0UmVxdWVzdCBy
ZXF1ZXN0KEhpdFRlc3RSZXF1ZXN0OjpSZWFkT25seSB8IEhpdFRlc3RSZXF1ZXN0OjpBY3RpdmUg
fCBIaXRUZXN0UmVxdWVzdDo6QWNjZXNzaWJpbGl0eUhpdFRlc3QpOwogICAgIEhpdFRlc3RSZXN1
bHQgaGl0VGVzdFJlc3VsdCA9IEhpdFRlc3RSZXN1bHQocG9pbnQpOwogICAgIGxheWVyLT5oaXRU
ZXN0KHJlcXVlc3QsIGhpdFRlc3RSZXN1bHQpOwogICAgIGlmICghaGl0VGVzdFJlc3VsdC5pbm5l
ck5vZGUoKSkKQEAgLTI0NjAsNiArMjQ2Miw4IEBACiAgICAgICAgIHJldHVybiBJbWFnZVJvbGU7
CiAgICAgaWYgKG1fcmVuZGVyZXItPmlzU1ZHUm9vdCgpKQogICAgICAgICByZXR1cm4gU1ZHUm9v
dFJvbGU7CisgICAgaWYgKG5vZGUgJiYgbm9kZS0+aGFzVGFnTmFtZShTVkdOYW1lczo6Z1RhZykp
CisgICAgICAgIHJldHVybiBHcm91cFJvbGU7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShNQVRITUwp
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lvcy9XZWJBY2Nlc3NpYmlsaXR5
T2JqZWN0V3JhcHBlcklPUy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9hY2Nlc3Np
YmlsaXR5L2lvcy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlcklPUy5tbQkocmV2aXNpb24g
MTQ3NjY0KQorKysgU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pb3MvV2ViQWNjZXNzaWJp
bGl0eU9iamVjdFdyYXBwZXJJT1MubW0JKHdvcmtpbmcgY29weSkKQEAgLTQ0LDYgKzQ0LDcgQEAK
ICNpbXBvcnQgIlJhbmdlLmgiCiAjaW1wb3J0ICJSZW5kZXJWaWV3LmgiCiAjaW1wb3J0ICJSdW50
aW1lQXBwbGljYXRpb25DaGVja3NJT1MuaCIKKyNpbXBvcnQgIlNWR05hbWVzLmgiCiAjaW1wb3J0
ICJUZXh0SXRlcmF0b3IuaCIKICNpbXBvcnQgIldBS1Njcm9sbFZpZXcuaCIKICNpbXBvcnQgIldB
S1ZpZXcuaCIKQEAgLTU0NCw2ICs1NDUsMTggQEAKICAgICByZXR1cm4gdHJhaXRzOwogfQogCist
IChCT09MKWlzU1ZHR3JvdXBFbGVtZW50Cit7CisgICAgLy8gSWYgYW4gU1ZHIGdyb3VwIGVsZW1l
bnQgaGFzIGEgdGl0bGUsIGl0IHNob3VsZCBiZSBhbiBhY2Nlc3NpYmxlIGVsZW1lbnQgb24gaU9T
LgorI2lmIEVOQUJMRShTVkcpCisgICAgTm9kZSogbm9kZSA9IG1fb2JqZWN0LT5ub2RlKCk7Cisg
ICAgaWYgKG5vZGUgJiYgbm9kZS0+aGFzVGFnTmFtZShTVkdOYW1lczo6Z1RhZykgJiYgW1tzZWxm
IGFjY2Vzc2liaWxpdHlMYWJlbF0gbGVuZ3RoXSA+IDApCisgICAgICAgIHJldHVybiBZRVM7Cisj
ZW5kaWYKKyAgICAKKyAgICByZXR1cm4gTk87Cit9CisKIC0gKEJPT0wpZGV0ZXJtaW5lSXNBY2Nl
c3NpYmlsaXR5RWxlbWVudAogewogICAgIGlmICghbV9vYmplY3QpCkBAIC02MDEsNyArNjE0LDkg
QEAKICAgICAgICAgICAgIGlmIChbc2VsZiBjb250YWluc1VubmF0dXJhbGx5U2VnbWVudGVkQ2hp
bGRyZW5dIHx8ICFbc2VsZiBhY2Nlc3NpYmlsaXR5RWxlbWVudENvdW50XSkKICAgICAgICAgICAg
ICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLQorICAgICAgICBj
YXNlIEdyb3VwUm9sZToKKyAgICAgICAgICAgIGlmIChbc2VsZiBpc1NWR0dyb3VwRWxlbWVudF0p
CisgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIC8vIEFsbCBvdGhlciBlbGVt
ZW50cyBhcmUgaWdub3JlZCBvbiB0aGUgaXBob25lLgogICAgICAgICBkZWZhdWx0OgogICAgICAg
ICBjYXNlIFVua25vd25Sb2xlOgpAQCAtNjA5LDcgKzYyNCw2IEBACiAgICAgICAgIGNhc2UgU2Ny
b2xsQXJlYVJvbGU6CiAgICAgICAgIGNhc2UgVGFibGVSb2xlOgogICAgICAgICBjYXNlIEFwcGxp
Y2F0aW9uUm9sZToKLSAgICAgICAgY2FzZSBHcm91cFJvbGU6CiAgICAgICAgIGNhc2UgUmFkaW9H
cm91cFJvbGU6CiAgICAgICAgIGNhc2UgTGlzdFJvbGU6CiAgICAgICAgIGNhc2UgTGlzdEJveFJv
bGU6CkBAIC0yMDU3LDYgKzIwNzEsMTEgQEAKICAgICByZXR1cm4gbmlsOwogfQogCistIChDR1Bv
aW50KWFjY2Vzc2liaWxpdHlDbGlja1BvaW50Cit7CisgICAgcmV0dXJuIG1fb2JqZWN0LT5jbGlj
a1BvaW50KCk7Cit9CisKIC8vIFRoZXNlIGFyZSB1c2VkIGJ5IERSVCBzbyB0aGF0IGl0IGNhbiBr
bm93IHdoZW4gbm90aWZpY2F0aW9ucyBhcmUgc2VudC4KIC8vIFNpbmNlIHRoZXkgYXJlIHN0YXRp
Yywgb25seSBvbmUgY2FsbGJhY2sgY2FuIGJlIGluc3RhbGxlZCBhdCBhIHRpbWUgKHRoYXQncyBh
bGwgRFJUIHNob3VsZCBuZWVkKS4KIHR5cGVkZWYgdm9pZCAoKkFYUG9zdGVkTm90aWZpY2F0aW9u
Q2FsbGJhY2spKGlkIGVsZW1lbnQsIE5TU3RyaW5nKiBub3RpZmljYXRpb24sIHZvaWQqIGNvbnRl
eHQpOwpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL0NoYW5nZUxvZwkocmV2aXNpb24gMTQ3NjY4KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTMtMDQtMDQgIENocmlzIEZsZWl6
YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4KKworICAgICAgICBBWDogTWFrZSBTVkcgR3JvdXAg
Y29udGFpbmVycyBhY2Nlc3NpYmxlIGVsZW1lbnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTM5MzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIGFjY2Vzc2liaWxpdHkvc3ZnLWdyb3VwLWVsZW1lbnQt
d2l0aC10aXRsZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGFjY2Vzc2liaWxpdHkv
c3ZnLWdyb3VwLWVsZW1lbnQtd2l0aC10aXRsZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0
Zm9ybS9pcGhvbmUtc2ltdWxhdG9yL2FjY2Vzc2liaWxpdHkvc3ZnLWdyb3VwLWVsZW1lbnQtd2l0
aC10aXRsZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL2lwaG9uZS1z
aW11bGF0b3IvYWNjZXNzaWJpbGl0eS9zdmctZ3JvdXAtZWxlbWVudC13aXRoLXRpdGxlLmh0bWw6
IEFkZGVkLgorCiAyMDEzLTA0LTA0ICBHbGVubiBBZGFtcyAgPGdsZW5uQHNreW5hdi5jb20+CiAK
ICAgICAgICAgW0VGTF0gVW5yZXZpZXdlZCBnYXJkZW5pbmcuIFJlYmFzZWxpbmUgYWZ0ZXIgcjE0
NzU4OC4KSW5kZXg6IExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvc3ZnLWdyb3VwLWVsZW1lbnQt
d2l0aC10aXRsZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvYWNjZXNz
aWJpbGl0eS9zdmctZ3JvdXAtZWxlbWVudC13aXRoLXRpdGxlLWV4cGVjdGVkLnR4dAkocmV2aXNp
b24gMCkKKysrIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvc3ZnLWdyb3VwLWVsZW1lbnQtd2l0
aC10aXRsZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwxNSBAQAorVGhp
cyB0ZXN0cyBTVkcgZ3JvdXAgZWxlbWVudHMgYXJlIGFjY2Vzc2libGUgYW5kIHRoYXQgdGhlIHN2
Zzp0aXRsZSBlbGVtZW50IGlzIHJldHVybmVkIHByb3Blcmx5LgorCitPbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBD
T01QTEVURSIuCisKKworVmVyaWZ5IHRoYXQgdGhlIFNWRyBncm91cCBpcyByZXR1cm5lZCBhcyBh
biBhY2Nlc3NpYmxlIGVsZW1lbnQuCitQQVNTIGdyb3VwMS5yb2xlIGlzICdBWFJvbGU6IEFYR3Jv
dXAnCitQQVNTIGdyb3VwMS5kZXNjcmlwdGlvbiBpcyAnQVhEZXNjcmlwdGlvbjogU1ZHIFRJVExF
IDEnCisKK1ZlcmlmeSB0aGF0IHlvdSBjYW4gaGl0LXRlc3QgdG8gdGhlIFNWRyBncm91cC4KK1BB
U1MgaGl0VGVzdEVsZW1lbnQuaXNFcXVhbChncm91cDEpIGlzIHRydWUKK1BBU1Mgc3VjY2Vzc2Z1
bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCkluZGV4OiBMYXlvdXRUZXN0cy9h
Y2Nlc3NpYmlsaXR5L3N2Zy1ncm91cC1lbGVtZW50LXdpdGgtdGl0bGUuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3N2Zy1ncm91cC1lbGVtZW50LXdpdGgtdGl0
bGUuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvc3ZnLWdy
b3VwLWVsZW1lbnQtd2l0aC10aXRsZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMzgg
QEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1s
PgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUu
anMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHkgaWQ9ImJvZHkiPgorCis8c3ZnIHdpZHRoPSI1
MDAiIGhlaWdodD0iMzAwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgorICA8
ZyBpZD0iZ3JvdXAxIj4KKyAgICA8dGl0bGU+U1ZHIFRJVExFIDE8L3RpdGxlPgorICAgIDxyZWN0
IHg9IjEwIiB5PSIxMCIgd2lkdGg9IjIwMCIgaGVpZ2h0PSIxMDAiCisgICAgICBzdHlsZT0iZmls
bDpub25lOyBzdHJva2U6Ymx1ZTsgc3Ryb2tlLXdpZHRoOjFweCIvPgorICA8L2c+Cis8L3N2Zz4K
KworPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+CisKKzxzY3JpcHQ+CisKKyAgICBkZXNjcmlwdGlv
bigiVGhpcyB0ZXN0cyBTVkcgZ3JvdXAgZWxlbWVudHMgYXJlIGFjY2Vzc2libGUgYW5kIHRoYXQg
dGhlIHN2Zzp0aXRsZSBlbGVtZW50IGlzIHJldHVybmVkIHByb3Blcmx5LiIpOworCisgICAgaWYg
KHdpbmRvdy5hY2Nlc3NpYmlsaXR5Q29udHJvbGxlcikgeworCisgICAgICAgICAgZGVidWcoIlZl
cmlmeSB0aGF0IHRoZSBTVkcgZ3JvdXAgaXMgcmV0dXJuZWQgYXMgYW4gYWNjZXNzaWJsZSBlbGVt
ZW50LiIpOworICAgICAgICAgIHZhciBncm91cDEgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5h
Y2Nlc3NpYmxlRWxlbWVudEJ5SWQoImdyb3VwMSIpOworICAgICAgICAgIHNob3VsZEJlKCJncm91
cDEucm9sZSIsICInQVhSb2xlOiBBWEdyb3VwJyIpOworICAgICAgICAgIHNob3VsZEJlKCJncm91
cDEuZGVzY3JpcHRpb24iLCAiJ0FYRGVzY3JpcHRpb246IFNWRyBUSVRMRSAxJyIpOworCisgICAg
ICAgICAgZGVidWcoIlxuVmVyaWZ5IHRoYXQgeW91IGNhbiBoaXQtdGVzdCB0byB0aGUgU1ZHIGdy
b3VwLiIpOworICAgICAgICAgIHZhciBoaXRUZXN0RWxlbWVudCA9IGdyb3VwMS5lbGVtZW50QXRQ
b2ludChncm91cDEuY2xpY2tQb2ludFgsIGdyb3VwMS5jbGlja1BvaW50WSk7CisgICAgICAgICAg
c2hvdWxkQmVUcnVlKCJoaXRUZXN0RWxlbWVudC5pc0VxdWFsKGdyb3VwMSkiKTsKKyAgICB9CisK
Kzwvc2NyaXB0PgorCis8c2NyaXB0IHNyYz0iLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1w
b3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL3Bs
YXRmb3JtL2lwaG9uZS1zaW11bGF0b3IvYWNjZXNzaWJpbGl0eS9zdmctZ3JvdXAtZWxlbWVudC13
aXRoLXRpdGxlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9y
bS9pcGhvbmUtc2ltdWxhdG9yL2FjY2Vzc2liaWxpdHkvc3ZnLWdyb3VwLWVsZW1lbnQtd2l0aC10
aXRsZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9p
cGhvbmUtc2ltdWxhdG9yL2FjY2Vzc2liaWxpdHkvc3ZnLWdyb3VwLWVsZW1lbnQtd2l0aC10aXRs
ZS1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwxNSBAQAorVGhpcyB0ZXN0
cyBTVkcgZ3JvdXAgZWxlbWVudHMgYXJlIGFjY2Vzc2libGUgYW5kIHRoYXQgdGhlIHN2Zzp0aXRs
ZSBlbGVtZW50IGlzIHJldHVybmVkIHByb3Blcmx5LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBz
ZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVU
RSIuCisKKworVmVyaWZ5IHRoYXQgdGhlIFNWRyBncm91cCBpcyByZXR1cm5lZCBhcyBhbiBhY2Nl
c3NpYmxlIGVsZW1lbnQuCitQQVNTIGdyb3VwMS5pcGhvbmVMYWJlbCBpcyAnQVhMYWJlbDogU1ZH
IFRJVExFIDEnCitQQVNTIGdyb3VwMS5pcGhvbmVJc0VsZW1lbnQgaXMgdHJ1ZQorCitWZXJpZnkg
dGhhdCB5b3UgY2FuIGhpdC10ZXN0IHRvIHRoZSBTVkcgZ3JvdXAuCitQQVNTIGhpdFRlc3RFbGVt
ZW50LmlzRXF1YWwoZ3JvdXAxKSBpcyB0cnVlCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0
cnVlCisKK1RFU1QgQ09NUExFVEUKKwpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vaXBob25l
LXNpbXVsYXRvci9hY2Nlc3NpYmlsaXR5L3N2Zy1ncm91cC1lbGVtZW50LXdpdGgtdGl0bGUuaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pcGhvbmUtc2ltdWxhdG9yL2Fj
Y2Vzc2liaWxpdHkvc3ZnLWdyb3VwLWVsZW1lbnQtd2l0aC10aXRsZS5odG1sCShyZXZpc2lvbiAw
KQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vaXBob25lLXNpbXVsYXRvci9hY2Nlc3NpYmlsaXR5
L3N2Zy1ncm91cC1lbGVtZW50LXdpdGgtdGl0bGUuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCww
ICsxLDM4IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+
Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2Zhc3QvanMvcmVzb3VyY2Vz
L2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5IGlkPSJib2R5Ij4KKwor
PHN2ZyB3aWR0aD0iNTAwIiBoZWlnaHQ9IjMwMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIw
MDAvc3ZnIj4KKyAgPGcgaWQ9Imdyb3VwMSI+CisgICAgPHRpdGxlPlNWRyBUSVRMRSAxPC90aXRs
ZT4KKyAgICA8cmVjdCB4PSIxMCIgeT0iMTAiIHdpZHRoPSIyMDAiIGhlaWdodD0iMTAwIgorICAg
ICAgc3R5bGU9ImZpbGw6bm9uZTsgc3Ryb2tlOmJsdWU7IHN0cm9rZS13aWR0aDoxcHgiLz4KKyAg
PC9nPgorPC9zdmc+CisKKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorCis8c2NyaXB0PgorCisg
ICAgZGVzY3JpcHRpb24oIlRoaXMgdGVzdHMgU1ZHIGdyb3VwIGVsZW1lbnRzIGFyZSBhY2Nlc3Np
YmxlIGFuZCB0aGF0IHRoZSBzdmc6dGl0bGUgZWxlbWVudCBpcyByZXR1cm5lZCBwcm9wZXJseS4i
KTsKKworICAgIGlmICh3aW5kb3cuYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIpIHsKKworICAgICAg
ICAgIGRlYnVnKCJWZXJpZnkgdGhhdCB0aGUgU1ZHIGdyb3VwIGlzIHJldHVybmVkIGFzIGFuIGFj
Y2Vzc2libGUgZWxlbWVudC4iKTsKKyAgICAgICAgICB2YXIgZ3JvdXAxID0gYWNjZXNzaWJpbGl0
eUNvbnRyb2xsZXIuYWNjZXNzaWJsZUVsZW1lbnRCeUlkKCJncm91cDEiKTsKKyAgICAgICAgICBz
aG91bGRCZSgiZ3JvdXAxLmlwaG9uZUxhYmVsIiwgIidBWExhYmVsOiBTVkcgVElUTEUgMSciKTsK
KyAgICAgICAgICBzaG91bGRCZVRydWUoImdyb3VwMS5pcGhvbmVJc0VsZW1lbnQiKTsKKworICAg
ICAgICAgIGRlYnVnKCJcblZlcmlmeSB0aGF0IHlvdSBjYW4gaGl0LXRlc3QgdG8gdGhlIFNWRyBn
cm91cC4iKTsKKyAgICAgICAgICB2YXIgaGl0VGVzdEVsZW1lbnQgPSBhY2Nlc3NpYmlsaXR5Q29u
dHJvbGxlci5lbGVtZW50QXRQb2ludChncm91cDEuY2xpY2tQb2ludFgsIGdyb3VwMS5jbGlja1Bv
aW50WSk7CisgICAgICAgICAgc2hvdWxkQmVUcnVlKCJoaXRUZXN0RWxlbWVudC5pc0VxdWFsKGdy
b3VwMSkiKTsKKyAgICB9CisKKzwvc2NyaXB0PgorCis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vZmFz
dC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRt
bD4KSW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJ
KHJldmlzaW9uIDE0NzY2OCkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAt
MSwzICsxLDE5IEBACisyMDEzLTA0LTA0ICBDaHJpcyBGbGVpemFjaCAgPGNmbGVpemFjaEBhcHBs
ZS5jb20+CisKKyAgICAgICAgQVg6IE1ha2UgU1ZHIEdyb3VwIGNvbnRhaW5lcnMgYWNjZXNzaWJs
ZSBlbGVtZW50cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTEzOTM5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgSW1wbGVtZW50IGF4Q29udHJvbGxlci5lbGVtZW50QXRQb2ludCBmb3IgaU9TLgorICAgICAg
ICBJbXBsZW1lbnQgYSBjb3JyZWN0IHZlcnNpb24gb2YgY2xpY2tQb2ludCBmb3IgaU9TLgorCisg
ICAgICAgICogRHVtcFJlbmRlclRyZWUvaW9zL0FjY2Vzc2liaWxpdHlDb250cm9sbGVySU9TLm1t
OgorICAgICAgICAoQWNjZXNzaWJpbGl0eUNvbnRyb2xsZXI6OmVsZW1lbnRBdFBvaW50KToKKyAg
ICAgICAgKiBEdW1wUmVuZGVyVHJlZS9pb3MvQWNjZXNzaWJpbGl0eVVJRWxlbWVudElPUy5tbToK
KyAgICAgICAgKEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmNsaWNrUG9pbnRYKToKKyAgICAgICAg
KEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmNsaWNrUG9pbnRZKToKKwogMjAxMy0wNC0wNCAgQW5k
cmV3IFNjaGVya3VzICA8c2NoZXJrdXNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3
ZWQuIFJlbW92aW5nIGZlYXR1cmUtbWVkaWEtcmV2aWV3c0BjaHJvbWl1bS5vcmcgZnJvbSBNZWRp
YSB3YXRjaGxpc3QuCkluZGV4OiBUb29scy9EdW1wUmVuZGVyVHJlZS9pb3MvQWNjZXNzaWJpbGl0
eUNvbnRyb2xsZXJJT1MubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvRHVtcFJlbmRlclRyZWUvaW9z
L0FjY2Vzc2liaWxpdHlDb250cm9sbGVySU9TLm1tCShyZXZpc2lvbiAxNDc2NjQpCisrKyBUb29s
cy9EdW1wUmVuZGVyVHJlZS9pb3MvQWNjZXNzaWJpbGl0eUNvbnRyb2xsZXJJT1MubW0JKHdvcmtp
bmcgY29weSkKQEAgLTQ5LDggKzQ5LDcgQEAKIAogQWNjZXNzaWJpbGl0eVVJRWxlbWVudCBBY2Nl
c3NpYmlsaXR5Q29udHJvbGxlcjo6ZWxlbWVudEF0UG9pbnQoaW50IHgsIGludCB5KQogewotICAg
IC8vIEZJWE1FOiBpbXBsZW1lbnQKLSAgICByZXR1cm4gMDsKKyAgICByZXR1cm4gcm9vdEVsZW1l
bnQoKS5lbGVtZW50QXRQb2ludCh4LCB5KTsKIH0KIAogQWNjZXNzaWJpbGl0eVVJRWxlbWVudCBB
Y2Nlc3NpYmlsaXR5Q29udHJvbGxlcjo6Zm9jdXNlZEVsZW1lbnQoKQpJbmRleDogVG9vbHMvRHVt
cFJlbmRlclRyZWUvaW9zL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRJT1MubW0KPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gVG9vbHMvRHVtcFJlbmRlclRyZWUvaW9zL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRJT1MubW0J
KHJldmlzaW9uIDE0NzY2NCkKKysrIFRvb2xzL0R1bXBSZW5kZXJUcmVlL2lvcy9BY2Nlc3NpYmls
aXR5VUlFbGVtZW50SU9TLm1tCSh3b3JraW5nIGNvcHkpCkBAIC03NCw2ICs3NCw3IEBACiAtIChO
U1N0cmluZyAqKXN0cmluZ0ZvclJhbmdlOihOU1JhbmdlKXJhbmdlOwogLSAoTlNBcnJheSAqKWVs
ZW1lbnRzRm9yUmFuZ2U6KE5TUmFuZ2UpcmFuZ2U7CiAtIChOU1N0cmluZyAqKXNlbGVjdGlvblJh
bmdlU3RyaW5nOworLSAoQ0dQb2ludClhY2Nlc3NpYmlsaXR5Q2xpY2tQb2ludDsKIC0gKHZvaWQp
YWNjZXNzaWJpbGl0eU1vZGlmeVNlbGVjdGlvbjooV2ViQ29yZTo6VGV4dEdyYW51bGFyaXR5KWdy
YW51bGFyaXR5IGluY3JlYXNlOihCT09MKWluY3JlYXNlOwogLSAodm9pZClhY2Nlc3NpYmlsaXR5
U2V0UG9zdGVkTm90aWZpY2F0aW9uQ2FsbGJhY2s6KEFYUG9zdGVkTm90aWZpY2F0aW9uQ2FsbGJh
Y2spZnVuY3Rpb24gd2l0aENvbnRleHQ6KHZvaWQqKWNvbnRleHQ7CiBAZW5kCkBAIC0xNjgsMTMg
KzE2OSwxMyBAQAogCiBkb3VibGUgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6Y2xpY2tQb2ludFgo
KQogewotICAgIENHUG9pbnQgY2VudGVyUG9pbnQgPSBbbV9lbGVtZW50IGFjY2Vzc2liaWxpdHlB
Y3RpdmF0aW9uUG9pbnRdOworICAgIENHUG9pbnQgY2VudGVyUG9pbnQgPSBbbV9lbGVtZW50IGFj
Y2Vzc2liaWxpdHlDbGlja1BvaW50XTsKICAgICByZXR1cm4gY2VudGVyUG9pbnQueDsKIH0KIAog
ZG91YmxlIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmNsaWNrUG9pbnRZKCkKIHsKLSAgICBDR1Bv
aW50IGNlbnRlclBvaW50ID0gW21fZWxlbWVudCBhY2Nlc3NpYmlsaXR5QWN0aXZhdGlvblBvaW50
XTsKKyAgICBDR1BvaW50IGNlbnRlclBvaW50ID0gW21fZWxlbWVudCBhY2Nlc3NpYmlsaXR5Q2xp
Y2tQb2ludF07CiAgICAgcmV0dXJuIGNlbnRlclBvaW50Lnk7CiB9CiAK
</data>
<flag name="review"
          id="218618"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
      

    </bug>

</bugzilla>