<?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>33115</bug_id>
          
          <creation_ts>2010-01-02 13:46:54 -0800</creation_ts>
          <short_desc>SVG &lt;marker&gt; orient=auto computes wrong angle at path closure (Z command)</short_desc>
          <delta_ts>2026-04-01 09:46:24 -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>SVG</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></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="Nikolas Zimmermann">zimmermann</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ahmad.saleem792</cc>
    
    <cc>karlcow</cc>
    
    <cc>krit</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>176385</commentid>
    <comment_count>0</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2010-01-02 13:46:54 -0800</bug_when>
    <thetext>Marker elements don&apos;t support paths which contain PathElementAddQuadCurveToPoint elements. See SVGMarkerLayoutInfo, updateMarkerDataForElement() method.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1982834</commentid>
    <comment_count>1</comment_count>
    <who name="Ahmad Saleem">ahmad.saleem792</who>
    <bug_when>2023-10-05 06:30:06 -0700</bug_when>
    <thetext>Following Blink commit: https://chromium.googlesource.com/chromium/src.git/+/7003bed16de3861e47d6bb0287ba4d6bffcfea04

Removed this FIXME:

https://searchfox.org/wubkat/source/Source/WebCore/rendering/svg/SVGMarkerData.h#118

and changed it into:

case PathElement::Type::AddQuadCurveToPoint:
            m_inslopePoints[0] = points[0];
            m_inslopePoints[1] = points[1];
            m_origin = points[1];
            break;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2167900</commentid>
    <comment_count>2</comment_count>
    <who name="Ahmad Saleem">ahmad.saleem792</who>
    <bug_when>2025-12-22 20:05:42 -0800</bug_when>
    <thetext>case PathElement::Type::AddQuadCurveToPoint:
    // Compute tangents for quadratic bezier curve
    // Start tangent: from origin to control point
    // End tangent: from control point to end point
    {
        FloatSize startTangent = points[0] - m_origin;
        FloatSize endTangent = points[1] - points[0];
        
        if (startTangent.isZero()) {
            // If start tangent is zero, use the end tangent for both
            m_inslopePoints[0] = m_origin;
            m_inslopePoints[1] = points[1];
        } else if (endTangent.isZero()) {
            // If end tangent is zero, use the start tangent for both
            m_inslopePoints[0] = m_origin;
            m_inslopePoints[1] = points[0];
        } else {
            // Normal case: use control point for in-slope calculation
            m_inslopePoints[0] = points[0];
            m_inslopePoints[1] = points[1];
        }
        
        m_origin = points[1];
    }
    break;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2195929</commentid>
    <comment_count>3</comment_count>
    <who name="Karl Dubost">karlcow</who>
    <bug_when>2026-04-01 09:45:27 -0700</bug_when>
    <thetext>The original title about PathElementAddQuadCurveToPoint describes dead code on CG platforms. it&apos;s dead code on macOS/iOS. The real bug is that CloseSubpath feeds (0,0) into the slope calculations because the CG  backend passes empty points for the Z command.

CoreGraphics converts all quadratic béziers to cubics internally, so CGPathApply never emits kCGPathElementAddQuadCurveToPoint. The Q segments go through the cubic case (line 137-141) which correctly sets m_inslopePoints.

The FIXME is technically correct but only affects non-CG backends (GTK/WPE with Cairo/Skia).


  Bug B: CloseSubpath uses (0,0) — two locations

  Location 1 — line 61-62: updateOutslope receives element.points[0] which is (0,0) for CloseSubpath. It should use m_subpathStart instead:

  Current:
      if (element.type != PathElement::Type::MoveToPoint)
          markerData.updateOutslope(element.points[0]);

  Fix:
      if (element.type == PathElement::Type::CloseSubpath)
          markerData.updateOutslope(markerData.m_subpathStart);
      else if (element.type != PathElement::Type::MoveToPoint)
          markerData.updateOutslope(element.points[0]);

  Location 2 — line 149-150: updateInslope also receives points[0] which is (0,0). It should use m_subpathStart:

  Current:
      case PathElement::Type::CloseSubpath:
          updateInslope(points[0]);

  Fix:
      case PathElement::Type::CloseSubpath:
          updateInslope(m_subpathStart);

  Bug A: Q segments don&apos;t set inslope (for GTK/WPE)

  Location — line 133-136: Add m_inslopePoints assignment:

  Current:
      case PathElement::Type::AddQuadCurveToPoint:
          // FIXME: https://bugs.webkit.org/show_bug.cgi?id=33115
          m_origin = points[1];
          break;

  Fix:
      case PathElement::Type::AddQuadCurveToPoint:
          m_inslopePoints[0] = points[0];
          m_inslopePoints[1] = points[1];
          m_origin = points[1];
          break;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2195930</commentid>
    <comment_count>4</comment_count>
      <attachid>478892</attachid>
    <who name="Karl Dubost">karlcow</who>
    <bug_when>2026-04-01 09:45:59 -0700</bug_when>
    <thetext>Created attachment 478892
bugA-testcase</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2195931</commentid>
    <comment_count>5</comment_count>
      <attachid>478893</attachid>
    <who name="Karl Dubost">karlcow</who>
    <bug_when>2026-04-01 09:46:24 -0700</bug_when>
    <thetext>Created attachment 478893
testcase A + B</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>478892</attachid>
            <date>2026-04-01 09:45:59 -0700</date>
            <delta_ts>2026-04-01 09:45:59 -0700</delta_ts>
            <desc>bugA-testcase</desc>
            <filename>test-marker-quad-bugA.html</filename>
            <type>text/html</type>
            <size>8905</size>
            <attacher name="Karl Dubost">karlcow</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sPgo8aGVhZD4KPG1ldGEgY2hhcnNldD0idXRmLTgiPgo8dGl0
bGU+QnVnIDMzMTE1IC0gQnVnIEE6IFF1YWRyYXRpYyBJbnNsb3BlIE1pc3NpbmcgKElzb2xhdGVk
KTwvdGl0bGU+CjxzdHlsZT4KYm9keSB7IGZvbnQtZmFtaWx5OiBzeXN0ZW0tdWk7IG1hcmdpbjog
MmVtOyB9CmgyIHsgbWFyZ2luLXRvcDogMmVtOyB9CnN2ZyB7IGJvcmRlcjogMXB4IHNvbGlkICNj
Y2M7IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW46IDAuNWVtIDA7IH0KLnBhc3MgeyBjb2xvcjogZ3Jl
ZW47IGZvbnQtd2VpZ2h0OiBib2xkOyB9Ci5mYWlsIHsgY29sb3I6IHJlZDsgZm9udC13ZWlnaHQ6
IGJvbGQ7IH0KLm5vdGUgeyBjb2xvcjogIzY2NjsgZm9udC1zaXplOiAwLjllbTsgfQoucm93IHsg
ZGlzcGxheTogZmxleDsgZ2FwOiAyZW07IGZsZXgtd3JhcDogd3JhcDsgYWxpZ24taXRlbXM6IGZs
ZXgtc3RhcnQ7IH0KLmNhc2UgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH0KPC9zdHlsZT4KPC9oZWFk
Pgo8Ym9keT4KPGgxPkJ1ZyAzMzExNSDigJQgQnVnIEE6IFF1YWRyYXRpYyBJbnNsb3BlIE1pc3Np
bmc8L2gxPgo8cD5UaGUgZW5kIG1hcmtlciB1c2VzIDxjb2RlPmluQW5nbGU8L2NvZGU+IGZyb20g
PGNvZGU+bV9pbnNsb3BlUG9pbnRzPC9jb2RlPi4KUXVhZHJhdGljIHNlZ21lbnRzIG5ldmVyIHNl
dCA8Y29kZT5tX2luc2xvcGVQb2ludHM8L2NvZGU+LCBzbyB0aGUgZW5kIG1hcmtlcgppbmhlcml0
cyB0aGUgaW5zbG9wZSBmcm9tIHRoZSA8c3Ryb25nPnByZXZpb3VzIHNlZ21lbnQ8L3N0cm9uZz4u
IFRvIG1ha2UgdGhpcwp2aXNpYmxlLCB0aGUgcHJldmlvdXMgc2VnbWVudCBtdXN0IGdvIGluIGEg
dmVyeSBkaWZmZXJlbnQgZGlyZWN0aW9uIGZyb20gdGhlClEgY3VydmUncyBlbmRwb2ludCB0YW5n
ZW50LjwvcD4KCjxoMj5BMS4gTGluZSBnb2luZyByaWdodCDihpIgUSBjdXJ2aW5nIHNoYXJwbHkg
ZG93bjwvaDI+CjxwPlRoZSBsaW5lIGdvZXMgaG9yaXpvbnRhbGx5IHJpZ2h0IChpbnNsb3BlID0g
MMKwKS4gVGhlbiB0aGUgUSBjdXJ2ZXMgc2hhcnBseQpkb3dud2FyZCwgZW5kaW5nIHdpdGggYSB0
YW5nZW50IGdvaW5nIHN0cmFpZ2h0IGRvd24gKH4yNzDCsCkuIElmIHRoZSBlbmQgbWFya2VyCnVz
ZXMgdGhlIHN0YWxlIEwgaW5zbG9wZSwgaXQgd2lsbCBwb2ludCByaWdodCBpbnN0ZWFkIG9mIGRv
d24uPC9wPgo8ZGl2IGNsYXNzPSJyb3ciPgogIDxkaXYgY2xhc3M9ImNhc2UiPgogICAgPHA+TCB0
aGVuIEMgKHJlZmVyZW5jZSkg4oCUIGVuZCBhcnJvdyDihpM8L3A+CiAgICA8c3ZnIHdpZHRoPSIy
NTAiIGhlaWdodD0iMjUwIiB2aWV3Qm94PSIwIDAgMjUwIDI1MCI+CiAgICAgIDxkZWZzPgogICAg
ICAgIDxtYXJrZXIgaWQ9ImExYyIgbWFya2VyV2lkdGg9IjEyIiBtYXJrZXJIZWlnaHQ9IjgiIHJl
Zlg9IjEwIiByZWZZPSI0IiBvcmllbnQ9ImF1dG8iPgogICAgICAgICAgPHBvbHlnb24gcG9pbnRz
PSIwLDAgMTIsNCAwLDgiIGZpbGw9IiMyYzNlNTAiLz4KICAgICAgICA8L21hcmtlcj4KICAgICAg
PC9kZWZzPgogICAgICA8cmVjdCB3aWR0aD0iMjUwIiBoZWlnaHQ9IjI1MCIgZmlsbD0iI2Y4Zjhm
OCIvPgogICAgICA8IS0tIEwgdG8gMTUwLDUwLCB0aGVuIFEgMjIwLDUwIDIyMCwyMDAg4oaSIEMg
MTk2LjcsNTAgMjIwLDEwMCAyMjAsMjAwIC0tPgogICAgICA8cGF0aCBkPSJNMzAsNTAgTDE1MCw1
MCBDMTk2LjcsNTAgMjIwLDEwMCAyMjAsMjAwIgogICAgICAgICAgICBmaWxsPSJub25lIiBzdHJv
a2U9IiMyYzNlNTAiIHN0cm9rZS13aWR0aD0iMiIKICAgICAgICAgICAgbWFya2VyLWVuZD0idXJs
KCNhMWMpIi8+CiAgICAgIDwhLS0gU2hvdyB0YW5nZW50IGRpcmVjdGlvbiBhdCBlbmRwb2ludCAt
LT4KICAgICAgPGxpbmUgeDE9IjIyMCIgeTE9IjIwMCIgeDI9IjIyMCIgeTI9IjIzMCIgc3Ryb2tl
PSIjMjdhZTYwIiBzdHJva2Utd2lkdGg9IjEiIHN0cm9rZS1kYXNoYXJyYXk9IjMiLz4KICAgICAg
PHRleHQgeD0iMjI1IiB5PSIyMjUiIGZvbnQtc2l6ZT0iMTAiIGZpbGw9IiMyN2FlNjAiPmV4cGVj
dGVkIOKGkzwvdGV4dD4KICAgIDwvc3ZnPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9ImNhc2UiPgog
ICAgPHA+TCB0aGVuIFEg4oCUIGRvZXMgZW5kIGFycm93IHBvaW50IOKGkyBvciDihpI/PC9wPgog
ICAgPHN2ZyB3aWR0aD0iMjUwIiBoZWlnaHQ9IjI1MCIgdmlld0JveD0iMCAwIDI1MCAyNTAiPgog
ICAgICA8ZGVmcz4KICAgICAgICA8bWFya2VyIGlkPSJhMXEiIG1hcmtlcldpZHRoPSIxMiIgbWFy
a2VySGVpZ2h0PSI4IiByZWZYPSIxMCIgcmVmWT0iNCIgb3JpZW50PSJhdXRvIj4KICAgICAgICAg
IDxwb2x5Z29uIHBvaW50cz0iMCwwIDEyLDQgMCw4IiBmaWxsPSIjMmMzZTUwIi8+CiAgICAgICAg
PC9tYXJrZXI+CiAgICAgIDwvZGVmcz4KICAgICAgPHJlY3Qgd2lkdGg9IjI1MCIgaGVpZ2h0PSIy
NTAiIGZpbGw9IiNmOGY4ZjgiLz4KICAgICAgPHBhdGggZD0iTTMwLDUwIEwxNTAsNTAgUTIyMCw1
MCAyMjAsMjAwIgogICAgICAgICAgICBmaWxsPSJub25lIiBzdHJva2U9IiMyYzNlNTAiIHN0cm9r
ZS13aWR0aD0iMiIKICAgICAgICAgICAgbWFya2VyLWVuZD0idXJsKCNhMXEpIi8+CiAgICAgIDxs
aW5lIHgxPSIyMjAiIHkxPSIyMDAiIHgyPSIyMjAiIHkyPSIyMzAiIHN0cm9rZT0iIzI3YWU2MCIg
c3Ryb2tlLXdpZHRoPSIxIiBzdHJva2UtZGFzaGFycmF5PSIzIi8+CiAgICAgIDx0ZXh0IHg9IjIy
NSIgeT0iMjI1IiBmb250LXNpemU9IjEwIiBmaWxsPSIjMjdhZTYwIj5leHBlY3RlZCDihpM8L3Rl
eHQ+CiAgICAgIDwhLS0gV3JvbmcgZGlyZWN0aW9uIGluZGljYXRvciAtLT4KICAgICAgPGxpbmUg
eDE9IjIyMCIgeTE9IjIwMCIgeDI9IjI1MCIgeTI9IjIwMCIgc3Ryb2tlPSIjY2NjIiBzdHJva2Ut
d2lkdGg9IjEiIHN0cm9rZS1kYXNoYXJyYXk9IjMiLz4KICAgICAgPHRleHQgeD0iMjI1IiB5PSIx
OTUiIGZvbnQtc2l6ZT0iOSIgZmlsbD0iI2NjYyI+d3JvbmcgaWYg4oaSPC90ZXh0PgogICAgPC9z
dmc+CiAgPC9kaXY+CjwvZGl2PgoKPGgyPkEyLiBMaW5lIGdvaW5nIGRvd24g4oaSIFEgZW5kaW5n
IGdvaW5nIHJpZ2h0PC9oMj4KPHA+VGhlIGxpbmUgZ29lcyBzdHJhaWdodCBkb3duIChpbnNsb3Bl
ID0gOTDCsCkuIFRoZSBRIGN1cnZlcyBhbmQgZW5kcyBnb2luZwpob3Jpem9udGFsbHkgcmlnaHQg
KHRhbmdlbnQg4omIIDDCsCkuIFRoZSBzdGFsZSBpbnNsb3BlIHdvdWxkIG1ha2UgdGhlIGVuZCBh
cnJvdwpwb2ludCBkb3duIGluc3RlYWQgb2YgcmlnaHQuPC9wPgo8ZGl2IGNsYXNzPSJyb3ciPgog
IDxkaXYgY2xhc3M9ImNhc2UiPgogICAgPHA+TCB0aGVuIEMgKHJlZmVyZW5jZSkg4oCUIGVuZCBh
cnJvdyDihpI8L3A+CiAgICA8c3ZnIHdpZHRoPSIzMDAiIGhlaWdodD0iMjAwIiB2aWV3Qm94PSIw
IDAgMzAwIDIwMCI+CiAgICAgIDxkZWZzPgogICAgICAgIDxtYXJrZXIgaWQ9ImEyYyIgbWFya2Vy
V2lkdGg9IjEyIiBtYXJrZXJIZWlnaHQ9IjgiIHJlZlg9IjEwIiByZWZZPSI0IiBvcmllbnQ9ImF1
dG8iPgogICAgICAgICAgPHBvbHlnb24gcG9pbnRzPSIwLDAgMTIsNCAwLDgiIGZpbGw9IiM4ZTQ0
YWQiLz4KICAgICAgICA8L21hcmtlcj4KICAgICAgPC9kZWZzPgogICAgICA8cmVjdCB3aWR0aD0i
MzAwIiBoZWlnaHQ9IjIwMCIgZmlsbD0iI2Y4ZjhmOCIvPgogICAgICA8IS0tIEwgdG8gNTAsMTUw
LCB0aGVuIFEgNTAsNTAgMjUwLDUwIOKGkiBDIDUwLDgzLjMgMTE2LjcsNTAgMjUwLDUwIC0tPgog
ICAgICA8cGF0aCBkPSJNNTAsMjAgTDUwLDE1MCBDNTAsODMuMyAxMTYuNyw1MCAyNTAsNTAiCiAg
ICAgICAgICAgIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzhlNDRhZCIgc3Ryb2tlLXdpZHRoPSIyIgog
ICAgICAgICAgICBtYXJrZXItZW5kPSJ1cmwoI2EyYykiLz4KICAgICAgPGxpbmUgeDE9IjI1MCIg
eTE9IjUwIiB4Mj0iMjgwIiB5Mj0iNTAiIHN0cm9rZT0iIzI3YWU2MCIgc3Ryb2tlLXdpZHRoPSIx
IiBzdHJva2UtZGFzaGFycmF5PSIzIi8+CiAgICAgIDx0ZXh0IHg9IjI1NSIgeT0iNDUiIGZvbnQt
c2l6ZT0iMTAiIGZpbGw9IiMyN2FlNjAiPmV4cGVjdGVkIOKGkjwvdGV4dD4KICAgIDwvc3ZnPgog
IDwvZGl2PgogIDxkaXYgY2xhc3M9ImNhc2UiPgogICAgPHA+TCB0aGVuIFEg4oCUIGRvZXMgZW5k
IGFycm93IHBvaW50IOKGkiBvciDihpM/PC9wPgogICAgPHN2ZyB3aWR0aD0iMzAwIiBoZWlnaHQ9
IjIwMCIgdmlld0JveD0iMCAwIDMwMCAyMDAiPgogICAgICA8ZGVmcz4KICAgICAgICA8bWFya2Vy
IGlkPSJhMnEiIG1hcmtlcldpZHRoPSIxMiIgbWFya2VySGVpZ2h0PSI4IiByZWZYPSIxMCIgcmVm
WT0iNCIgb3JpZW50PSJhdXRvIj4KICAgICAgICAgIDxwb2x5Z29uIHBvaW50cz0iMCwwIDEyLDQg
MCw4IiBmaWxsPSIjOGU0NGFkIi8+CiAgICAgICAgPC9tYXJrZXI+CiAgICAgIDwvZGVmcz4KICAg
ICAgPHJlY3Qgd2lkdGg9IjMwMCIgaGVpZ2h0PSIyMDAiIGZpbGw9IiNmOGY4ZjgiLz4KICAgICAg
PHBhdGggZD0iTTUwLDIwIEw1MCwxNTAgUTUwLDUwIDI1MCw1MCIKICAgICAgICAgICAgZmlsbD0i
bm9uZSIgc3Ryb2tlPSIjOGU0NGFkIiBzdHJva2Utd2lkdGg9IjIiCiAgICAgICAgICAgIG1hcmtl
ci1lbmQ9InVybCgjYTJxKSIvPgogICAgICA8bGluZSB4MT0iMjUwIiB5MT0iNTAiIHgyPSIyODAi
IHkyPSI1MCIgc3Ryb2tlPSIjMjdhZTYwIiBzdHJva2Utd2lkdGg9IjEiIHN0cm9rZS1kYXNoYXJy
YXk9IjMiLz4KICAgICAgPHRleHQgeD0iMjU1IiB5PSI0NSIgZm9udC1zaXplPSIxMCIgZmlsbD0i
IzI3YWU2MCI+ZXhwZWN0ZWQg4oaSPC90ZXh0PgogICAgICA8bGluZSB4MT0iMjUwIiB5MT0iNTAi
IHgyPSIyNTAiIHkyPSI4MCIgc3Ryb2tlPSIjY2NjIiBzdHJva2Utd2lkdGg9IjEiIHN0cm9rZS1k
YXNoYXJyYXk9IjMiLz4KICAgICAgPHRleHQgeD0iMjU1IiB5PSI3NSIgZm9udC1zaXplPSI5IiBm
aWxsPSIjY2NjIj53cm9uZyBpZiDihpM8L3RleHQ+CiAgICA8L3N2Zz4KICA8L2Rpdj4KPC9kaXY+
Cgo8aDI+QTMuIExpbmUgZ29pbmcgdXAtbGVmdCDihpIgUSBlbmRpbmcgZ29pbmcgZG93bi1yaWdo
dCAob3Bwb3NpdGUgZGlyZWN0aW9ucyk8L2gyPgo8cD5NYXhpbXVtIGNvbnRyYXN0OiB0aGUgTCBn
b2VzIHVwLWxlZnQgKH4xMzXCsCkgdGhlbiB0aGUgUSBlbmRzIGdvaW5nCmRvd24tcmlnaHQgKH4z
MTXCsCkuIFRoZSBzdGFsZSBpbnNsb3BlIHdvdWxkIHByb2R1Y2UgYW4gYXJyb3cgfjE4MMKwIG9m
Zi48L3A+CjxkaXYgY2xhc3M9InJvdyI+CiAgPGRpdiBjbGFzcz0iY2FzZSI+CiAgICA8cD5MIHRo
ZW4gQyAocmVmZXJlbmNlKSDigJQgZW5kIGFycm93IOKGmDwvcD4KICAgIDxzdmcgd2lkdGg9IjI1
MCIgaGVpZ2h0PSIyNTAiIHZpZXdCb3g9IjAgMCAyNTAgMjUwIj4KICAgICAgPGRlZnM+CiAgICAg
ICAgPG1hcmtlciBpZD0iYTNjIiBtYXJrZXJXaWR0aD0iMTIiIG1hcmtlckhlaWdodD0iOCIgcmVm
WD0iMTAiIHJlZlk9IjQiIG9yaWVudD0iYXV0byI+CiAgICAgICAgICA8cG9seWdvbiBwb2ludHM9
IjAsMCAxMiw0IDAsOCIgZmlsbD0iI2QzNTQwMCIvPgogICAgICAgIDwvbWFya2VyPgogICAgICA8
L2RlZnM+CiAgICAgIDxyZWN0IHdpZHRoPSIyNTAiIGhlaWdodD0iMjUwIiBmaWxsPSIjZjhmOGY4
Ii8+CiAgICAgIDwhLS0gTCB0byA1MCw1MCwgdGhlbiBRIDUwLDIwMCAyMjAsMjIwIOKGkiBDIDUw
LDE1MCAxMDYuNywyMjAgMjIwLDIyMCAtLT4KICAgICAgPHBhdGggZD0iTTIwMCwyMDAgTDUwLDUw
IEM1MCwxNTAgMTA2LjcsMjIwIDIyMCwyMjAiCiAgICAgICAgICAgIGZpbGw9Im5vbmUiIHN0cm9r
ZT0iI2QzNTQwMCIgc3Ryb2tlLXdpZHRoPSIyIgogICAgICAgICAgICBtYXJrZXItZW5kPSJ1cmwo
I2EzYykiLz4KICAgICAgPGxpbmUgeDE9IjIyMCIgeTE9IjIyMCIgeDI9IjI0MCIgeTI9IjIzMCIg
c3Ryb2tlPSIjMjdhZTYwIiBzdHJva2Utd2lkdGg9IjEiIHN0cm9rZS1kYXNoYXJyYXk9IjMiLz4K
ICAgICAgPHRleHQgeD0iMjI1IiB5PSIyNDUiIGZvbnQtc2l6ZT0iMTAiIGZpbGw9IiMyN2FlNjAi
PmV4cGVjdGVkIOKGmDwvdGV4dD4KICAgIDwvc3ZnPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9ImNh
c2UiPgogICAgPHA+TCB0aGVuIFEg4oCUIGRvZXMgZW5kIGFycm93IHBvaW50IOKGmCBvciDihpY/
PC9wPgogICAgPHN2ZyB3aWR0aD0iMjUwIiBoZWlnaHQ9IjI1MCIgdmlld0JveD0iMCAwIDI1MCAy
NTAiPgogICAgICA8ZGVmcz4KICAgICAgICA8bWFya2VyIGlkPSJhM3EiIG1hcmtlcldpZHRoPSIx
MiIgbWFya2VySGVpZ2h0PSI4IiByZWZYPSIxMCIgcmVmWT0iNCIgb3JpZW50PSJhdXRvIj4KICAg
ICAgICAgIDxwb2x5Z29uIHBvaW50cz0iMCwwIDEyLDQgMCw4IiBmaWxsPSIjZDM1NDAwIi8+CiAg
ICAgICAgPC9tYXJrZXI+CiAgICAgIDwvZGVmcz4KICAgICAgPHJlY3Qgd2lkdGg9IjI1MCIgaGVp
Z2h0PSIyNTAiIGZpbGw9IiNmOGY4ZjgiLz4KICAgICAgPHBhdGggZD0iTTIwMCwyMDAgTDUwLDUw
IFE1MCwyMDAgMjIwLDIyMCIKICAgICAgICAgICAgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjZDM1NDAw
IiBzdHJva2Utd2lkdGg9IjIiCiAgICAgICAgICAgIG1hcmtlci1lbmQ9InVybCgjYTNxKSIvPgog
ICAgICA8bGluZSB4MT0iMjIwIiB5MT0iMjIwIiB4Mj0iMjQwIiB5Mj0iMjMwIiBzdHJva2U9IiMy
N2FlNjAiIHN0cm9rZS13aWR0aD0iMSIgc3Ryb2tlLWRhc2hhcnJheT0iMyIvPgogICAgICA8dGV4
dCB4PSIyMjUiIHk9IjI0NSIgZm9udC1zaXplPSIxMCIgZmlsbD0iIzI3YWU2MCI+ZXhwZWN0ZWQg
4oaYPC90ZXh0PgogICAgICA8bGluZSB4MT0iMjIwIiB5MT0iMjIwIiB4Mj0iMjAwIiB5Mj0iMjEw
IiBzdHJva2U9IiNjY2MiIHN0cm9rZS13aWR0aD0iMSIgc3Ryb2tlLWRhc2hhcnJheT0iMyIvPgog
ICAgICA8dGV4dCB4PSIxNzUiIHk9IjIwOCIgZm9udC1zaXplPSI5IiBmaWxsPSIjY2NjIj53cm9u
ZyBpZiDihpY8L3RleHQ+CiAgICA8L3N2Zz4KICA8L2Rpdj4KPC9kaXY+Cgo8aDI+QTQuIFR3byBR
IHNlZ21lbnRzIHdpdGggcGVycGVuZGljdWxhciB0YW5nZW50cyBhdCB0aGUgam9pbjwvaDI+Cjxw
PkZpcnN0IFEgZW5kcyBnb2luZyByaWdodCwgc2Vjb25kIFEgc3RhcnRzIGdvaW5nIGRvd24uIFRo
ZSBtaWQgbWFya2VyIHNob3VsZAphdmVyYWdlIHRoZXNlICjiiYggNDXCsCBkb3duLXJpZ2h0KS4g
QnV0IHNpbmNlIHRoZSBmaXJzdCBRIGRvZXNuJ3Qgc2V0IGluc2xvcGUsCnRoZSBtaWQgbWFya2Vy
J3MgPGNvZGU+aW5BbmdsZTwvY29kZT4gd2lsbCBiZSB3cm9uZy48L3A+CjxkaXYgY2xhc3M9InJv
dyI+CiAgPGRpdiBjbGFzcz0iY2FzZSI+CiAgICA8cD5DIEMgKHJlZmVyZW5jZSkg4oCUIG1pZCBh
cnJvdyDihpg8L3A+CiAgICA8c3ZnIHdpZHRoPSIyNTAiIGhlaWdodD0iMjUwIiB2aWV3Qm94PSIw
IDAgMjUwIDI1MCI+CiAgICAgIDxkZWZzPgogICAgICAgIDxtYXJrZXIgaWQ9ImE0YyIgbWFya2Vy
V2lkdGg9IjEyIiBtYXJrZXJIZWlnaHQ9IjgiIHJlZlg9IjYiIHJlZlk9IjQiIG9yaWVudD0iYXV0
byI+CiAgICAgICAgICA8cG9seWdvbiBwb2ludHM9IjAsMCAxMiw0IDAsOCIgZmlsbD0iI2U2N2Uy
MiIvPgogICAgICAgIDwvbWFya2VyPgogICAgICA8L2RlZnM+CiAgICAgIDxyZWN0IHdpZHRoPSIy
NTAiIGhlaWdodD0iMjUwIiBmaWxsPSIjZjhmOGY4Ii8+CiAgICAgIDwhLS0gUSA4MCwzMCAxNTAs
ODAg4oaSIEMgNTYuNyw0My4zIDEwNi43LDQ2LjcgMTUwLDgwIChlbmRzIGdvaW5nIOKGkikgLS0+
CiAgICAgIDwhLS0gUSAyMDAsODAgMjAwLDIyMCDihpIgQyAxODMuMyw4MCAyMDAsMTI2LjcgMjAw
LDIyMCAoc3RhcnRzIGdvaW5nIOKGkykgLS0+CiAgICAgIDxwYXRoIGQ9Ik0yMCwxMzAgQzU2Ljcs
NDMuMyAxMDYuNyw0Ni43IDE1MCw4MCBDMTgzLjMsODAgMjAwLDEyNi43IDIwMCwyMjAiCiAgICAg
ICAgICAgIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2U2N2UyMiIgc3Ryb2tlLXdpZHRoPSIyIgogICAg
ICAgICAgICBtYXJrZXItbWlkPSJ1cmwoI2E0YykiLz4KICAgICAgPGNpcmNsZSBjeD0iMTUwIiBj
eT0iODAiIHI9IjUiIGZpbGw9IiNlNjdlMjIiIG9wYWNpdHk9IjAuMyIvPgogICAgICA8dGV4dCB4
PSIxNTUiIHk9Ijc1IiBmb250LXNpemU9IjEwIiBmaWxsPSIjMjdhZTYwIj5taWQ6IGF2ZyBvZiDi
hpIgYW5kIOKGkyA9IOKGmDwvdGV4dD4KICAgIDwvc3ZnPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9
ImNhc2UiPgogICAgPHA+USBRIOKAlCBkb2VzIG1pZCBhcnJvdyBwb2ludCDihpg/PC9wPgogICAg
PHN2ZyB3aWR0aD0iMjUwIiBoZWlnaHQ9IjI1MCIgdmlld0JveD0iMCAwIDI1MCAyNTAiPgogICAg
ICA8ZGVmcz4KICAgICAgICA8bWFya2VyIGlkPSJhNHEiIG1hcmtlcldpZHRoPSIxMiIgbWFya2Vy
SGVpZ2h0PSI4IiByZWZYPSI2IiByZWZZPSI0IiBvcmllbnQ9ImF1dG8iPgogICAgICAgICAgPHBv
bHlnb24gcG9pbnRzPSIwLDAgMTIsNCAwLDgiIGZpbGw9IiNlNjdlMjIiLz4KICAgICAgICA8L21h
cmtlcj4KICAgICAgPC9kZWZzPgogICAgICA8cmVjdCB3aWR0aD0iMjUwIiBoZWlnaHQ9IjI1MCIg
ZmlsbD0iI2Y4ZjhmOCIvPgogICAgICA8cGF0aCBkPSJNMjAsMTMwIFE4MCwzMCAxNTAsODAgUTIw
MCw4MCAyMDAsMjIwIgogICAgICAgICAgICBmaWxsPSJub25lIiBzdHJva2U9IiNlNjdlMjIiIHN0
cm9rZS13aWR0aD0iMiIKICAgICAgICAgICAgbWFya2VyLW1pZD0idXJsKCNhNHEpIi8+CiAgICAg
IDxjaXJjbGUgY3g9IjE1MCIgY3k9IjgwIiByPSI1IiBmaWxsPSIjZTY3ZTIyIiBvcGFjaXR5PSIw
LjMiLz4KICAgICAgPHRleHQgeD0iMTU1IiB5PSI3NSIgZm9udC1zaXplPSIxMCIgZmlsbD0iIzI3
YWU2MCI+ZXhwZWN0ZWQg4oaYPC90ZXh0PgogICAgPC9zdmc+CiAgPC9kaXY+CjwvZGl2PgoKPC9i
b2R5Pgo8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>478893</attachid>
            <date>2026-04-01 09:46:24 -0700</date>
            <delta_ts>2026-04-01 09:46:24 -0700</delta_ts>
            <desc>testcase A + B</desc>
            <filename>test-marker-quad-focused.html</filename>
            <type>text/html</type>
            <size>11375</size>
            <attacher name="Karl Dubost">karlcow</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sPgo8aGVhZD4KPG1ldGEgY2hhcnNldD0idXRmLTgiPgo8dGl0
bGU+QnVnIDMzMTE1IC0gTWFya2VyIG9uIFF1YWRyYXRpYyBCw6l6aWVyOiBGb2N1c2VkIFJlcHJv
ZHVjdGlvbjwvdGl0bGU+CjxzdHlsZT4KYm9keSB7IGZvbnQtZmFtaWx5OiBzeXN0ZW0tdWk7IG1h
cmdpbjogMmVtOyB9CmgyIHsgbWFyZ2luLXRvcDogMmVtOyB9CnN2ZyB7IGJvcmRlcjogMXB4IHNv
bGlkICNjY2M7IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW46IDAuNWVtIDA7IH0KLnBhc3MgeyBjb2xv
cjogZ3JlZW47IGZvbnQtd2VpZ2h0OiBib2xkOyB9Ci5mYWlsIHsgY29sb3I6IHJlZDsgZm9udC13
ZWlnaHQ6IGJvbGQ7IH0KLm5vdGUgeyBjb2xvcjogIzY2NjsgZm9udC1zaXplOiAwLjllbTsgfQou
cm93IHsgZGlzcGxheTogZmxleDsgZ2FwOiAyZW07IGZsZXgtd3JhcDogd3JhcDsgYWxpZ24taXRl
bXM6IGZsZXgtc3RhcnQ7IH0KLmNhc2UgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH0KPC9zdHlsZT4K
PC9oZWFkPgo8Ym9keT4KPGgxPkJ1ZyAzMzExNSDigJQgRm9jdXNlZCBSZXByb2R1Y3Rpb246IE1h
cmtlciBvbiBRdWFkcmF0aWMgKyBDbG9zZVN1YnBhdGg8L2gxPgo8cD5Ud28gc2VwYXJhdGUgaXNz
dWVzIGNhdXNlIHdyb25nIG1hcmtlciBvcmllbnRhdGlvbjo8YnI+CjxzdHJvbmc+QnVnIEE6PC9z
dHJvbmc+IDxjb2RlPkFkZFF1YWRDdXJ2ZVRvUG9pbnQ8L2NvZGU+IGRvZXMgbm90IHNldCA8Y29k
ZT5tX2luc2xvcGVQb2ludHM8L2NvZGU+Ljxicj4KPHN0cm9uZz5CdWcgQjo8L3N0cm9uZz4gPGNv
ZGU+Q2xvc2VTdWJwYXRoPC9jb2RlPiByZWNlaXZlcyA8Y29kZT5wb2ludHNbMF0gPSAoMCwwKTwv
Y29kZT4gZnJvbSB0aGUgQ0cgYmFja2VuZCwKcG9pc29uaW5nIGJvdGggaW5zbG9wZSBhbmQgb3V0
c2xvcGUgY2FsY3VsYXRpb25zLjwvcD4KCjxoMj5CdWcgQTogUXVhZHJhdGljIGluc2xvcGUgbWlz
c2luZzwvaDI+Cgo8aDM+QTEuIEVuZCBtYXJrZXIgb24gc2luZ2xlIFEgc2VnbWVudDwvaDM+Cjxw
PlRoZSBlbmQgbWFya2VyIHVzZXMgPGNvZGU+aW5BbmdsZTwvY29kZT4uIEZvciB0aGUgY3ViaWMg
cmVmZXJlbmNlLCB0aGUgaW5zbG9wZQppcyBzZXQgZnJvbSB0aGUgc2Vjb25kIGNvbnRyb2wgcG9p
bnQg4oaSIGVuZHBvaW50LiBGb3IgcXVhZHJhdGljLCBpdCBpcyBuZXZlciBzZXQuPC9wPgo8ZGl2
IGNsYXNzPSJyb3ciPgogIDxkaXYgY2xhc3M9ImNhc2UiPgogICAgPHA+Q3ViaWMgKHJlZmVyZW5j
ZSkg4oCUIGFycm93IHBvaW50cyDihpg8L3A+CiAgICA8c3ZnIHdpZHRoPSIyMDAiIGhlaWdodD0i
MjAwIiB2aWV3Qm94PSIwIDAgMjAwIDIwMCI+CiAgICAgIDxkZWZzPgogICAgICAgIDxtYXJrZXIg
aWQ9ImExYyIgbWFya2VyV2lkdGg9IjEyIiBtYXJrZXJIZWlnaHQ9IjgiIHJlZlg9IjEwIiByZWZZ
PSI0IiBvcmllbnQ9ImF1dG8iPgogICAgICAgICAgPHBvbHlnb24gcG9pbnRzPSIwLDAgMTIsNCAw
LDgiIGZpbGw9IiMyYzNlNTAiLz4KICAgICAgICA8L21hcmtlcj4KICAgICAgPC9kZWZzPgogICAg
ICA8cmVjdCB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCIgZmlsbD0iI2Y4ZjhmOCIvPgogICAgICA8
IS0tIFEgMTAwLDMwIDE4MCwxNTAg4oaSIEMgNjYuNyw3Ni43IDEyNi43LDcwIDE4MCwxNTAgLS0+
CiAgICAgIDxwYXRoIGQ9Ik0yMCwxNTAgQzY2LjcsNzYuNyAxMjYuNyw3MCAxODAsMTUwIgogICAg
ICAgICAgICBmaWxsPSJub25lIiBzdHJva2U9IiMyYzNlNTAiIHN0cm9rZS13aWR0aD0iMiIKICAg
ICAgICAgICAgbWFya2VyLWVuZD0idXJsKCNhMWMpIi8+CiAgICA8L3N2Zz4KICA8L2Rpdj4KICA8
ZGl2IGNsYXNzPSJjYXNlIj4KICAgIDxwPlF1YWRyYXRpYyDigJQgZG9lcyB0aGUgYXJyb3cgbWF0
Y2g/PC9wPgogICAgPHN2ZyB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCIgdmlld0JveD0iMCAwIDIw
MCAyMDAiPgogICAgICA8ZGVmcz4KICAgICAgICA8bWFya2VyIGlkPSJhMXEiIG1hcmtlcldpZHRo
PSIxMiIgbWFya2VySGVpZ2h0PSI4IiByZWZYPSIxMCIgcmVmWT0iNCIgb3JpZW50PSJhdXRvIj4K
ICAgICAgICAgIDxwb2x5Z29uIHBvaW50cz0iMCwwIDEyLDQgMCw4IiBmaWxsPSIjMmMzZTUwIi8+
CiAgICAgICAgPC9tYXJrZXI+CiAgICAgIDwvZGVmcz4KICAgICAgPHJlY3Qgd2lkdGg9IjIwMCIg
aGVpZ2h0PSIyMDAiIGZpbGw9IiNmOGY4ZjgiLz4KICAgICAgPHBhdGggZD0iTTIwLDE1MCBRMTAw
LDMwIDE4MCwxNTAiCiAgICAgICAgICAgIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzJjM2U1MCIgc3Ry
b2tlLXdpZHRoPSIyIgogICAgICAgICAgICBtYXJrZXItZW5kPSJ1cmwoI2ExcSkiLz4KICAgIDwv
c3ZnPgogIDwvZGl2Pgo8L2Rpdj4KCjxoMz5BMi4gTWlkIG1hcmtlciBhdCBRLVEganVuY3Rpb248
L2gzPgo8cD5UaGUgbWlkIG1hcmtlciB1c2VzIHRoZSBhdmVyYWdlIG9mIDxjb2RlPmluQW5nbGU8
L2NvZGU+IGFuZCA8Y29kZT5vdXRBbmdsZTwvY29kZT4uClRoZSBvdXRzbG9wZSBpcyBzZXQgY29y
cmVjdGx5IChmcm9tIHRoZSBwcmV2aW91cyBvcmlnaW4gdG8gdGhlIG5leHQgc2VnbWVudCdzCmZp
cnN0IHBvaW50KSwgYnV0IHRoZSBpbnNsb3BlIGlzIHN0YWxlIGJlY2F1c2UgdGhlIHByZWNlZGlu
ZyBRIHNlZ21lbnQgbmV2ZXIgc2V0IGl0LjwvcD4KPGRpdiBjbGFzcz0icm93Ij4KICA8ZGl2IGNs
YXNzPSJjYXNlIj4KICAgIDxwPkN1YmljIChyZWZlcmVuY2UpPC9wPgogICAgPHN2ZyB3aWR0aD0i
MzAwIiBoZWlnaHQ9IjE1MCIgdmlld0JveD0iMCAwIDMwMCAxNTAiPgogICAgICA8ZGVmcz4KICAg
ICAgICA8bWFya2VyIGlkPSJhMmMiIG1hcmtlcldpZHRoPSIxMCIgbWFya2VySGVpZ2h0PSI4IiBy
ZWZYPSI1IiByZWZZPSI0IiBvcmllbnQ9ImF1dG8iPgogICAgICAgICAgPHBvbHlnb24gcG9pbnRz
PSIwLDAgMTAsNCAwLDgiIGZpbGw9IiNlNjdlMjIiLz4KICAgICAgICA8L21hcmtlcj4KICAgICAg
PC9kZWZzPgogICAgICA8cmVjdCB3aWR0aD0iMzAwIiBoZWlnaHQ9IjE1MCIgZmlsbD0iI2Y4Zjhm
OCIvPgogICAgICA8IS0tIFEgODAsMTAgMTUwLDc1IOKGkiBDIDYwLDMxLjcgMTA2LjcsMzEuNyAx
NTAsNzUgLS0+CiAgICAgIDwhLS0gUSAyMjAsMTQwIDI4MCw3NSDihpIgQyAxOTYuNywxMTguMyAy
NDMuMywxMTguMyAyODAsNzUgLS0+CiAgICAgIDxwYXRoIGQ9Ik0yMCw3NSBDNjAsMzEuNyAxMDYu
NywzMS43IDE1MCw3NSBDMTk2LjcsMTE4LjMgMjQzLjMsMTE4LjMgMjgwLDc1IgogICAgICAgICAg
ICBmaWxsPSJub25lIiBzdHJva2U9IiNlNjdlMjIiIHN0cm9rZS13aWR0aD0iMiIKICAgICAgICAg
ICAgbWFya2VyLW1pZD0idXJsKCNhMmMpIi8+CiAgICAgIDxjaXJjbGUgY3g9IjE1MCIgY3k9Ijc1
IiByPSI0IiBmaWxsPSIjZTY3ZTIyIiBvcGFjaXR5PSIwLjMiLz4KICAgIDwvc3ZnPgogIDwvZGl2
PgogIDxkaXYgY2xhc3M9ImNhc2UiPgogICAgPHA+UXVhZHJhdGljIOKAlCBkb2VzIHRoZSBtaWQg
YXJyb3cgbWF0Y2g/PC9wPgogICAgPHN2ZyB3aWR0aD0iMzAwIiBoZWlnaHQ9IjE1MCIgdmlld0Jv
eD0iMCAwIDMwMCAxNTAiPgogICAgICA8ZGVmcz4KICAgICAgICA8bWFya2VyIGlkPSJhMnEiIG1h
cmtlcldpZHRoPSIxMCIgbWFya2VySGVpZ2h0PSI4IiByZWZYPSI1IiByZWZZPSI0IiBvcmllbnQ9
ImF1dG8iPgogICAgICAgICAgPHBvbHlnb24gcG9pbnRzPSIwLDAgMTAsNCAwLDgiIGZpbGw9IiNl
NjdlMjIiLz4KICAgICAgICA8L21hcmtlcj4KICAgICAgPC9kZWZzPgogICAgICA8cmVjdCB3aWR0
aD0iMzAwIiBoZWlnaHQ9IjE1MCIgZmlsbD0iI2Y4ZjhmOCIvPgogICAgICA8cGF0aCBkPSJNMjAs
NzUgUTgwLDEwIDE1MCw3NSBRMjIwLDE0MCAyODAsNzUiCiAgICAgICAgICAgIGZpbGw9Im5vbmUi
IHN0cm9rZT0iI2U2N2UyMiIgc3Ryb2tlLXdpZHRoPSIyIgogICAgICAgICAgICBtYXJrZXItbWlk
PSJ1cmwoI2EycSkiLz4KICAgICAgPGNpcmNsZSBjeD0iMTUwIiBjeT0iNzUiIHI9IjQiIGZpbGw9
IiNlNjdlMjIiIG9wYWNpdHk9IjAuMyIvPgogICAgPC9zdmc+CiAgPC9kaXY+CjwvZGl2Pgo8cCBj
bGFzcz0ibm90ZSI+Qm90aCBtaWQgYXJyb3dzIHNob3VsZCBwb2ludCBob3Jpem9udGFsbHkg4oaS
ICh0YW5nZW50IGF0IHRoZSBqb2luIG9mCnR3byBzeW1tZXRyaWMgYXJjcyBpcyBob3Jpem9udGFs
KS48L3A+Cgo8aDM+QTMuIEVuZCBtYXJrZXIgYWZ0ZXIgTCB0aGVuIFE8L2gzPgo8cD5MaW5lIHNl
dHMgPGNvZGU+bV9pbnNsb3BlUG9pbnRzPC9jb2RlPiBjb3JyZWN0bHkuIFRoZW4gUSBkb2VzIG5v
dC4KSWYgdGhlIGVuZCBhcnJvdyB1c2VzIHRoZSBzdGFsZSBpbnNsb3BlIGZyb20gdGhlIEwgc2Vn
bWVudCwgaXQgd2lsbApwb2ludCBpbiBMJ3MgZGlyZWN0aW9uIGluc3RlYWQgb2YgUSdzIGVuZHBv
aW50IHRhbmdlbnQuPC9wPgo8ZGl2IGNsYXNzPSJyb3ciPgogIDxkaXYgY2xhc3M9ImNhc2UiPgog
ICAgPHA+TCB0aGVuIEMgKHJlZmVyZW5jZSkg4oCUIGVuZCBhcnJvdyBmb2xsb3dzIGN1cnZlPC9w
PgogICAgPHN2ZyB3aWR0aD0iMzAwIiBoZWlnaHQ9IjE1MCIgdmlld0JveD0iMCAwIDMwMCAxNTAi
PgogICAgICA8ZGVmcz4KICAgICAgICA8bWFya2VyIGlkPSJhM2MiIG1hcmtlcldpZHRoPSIxMCIg
bWFya2VySGVpZ2h0PSI4IiByZWZYPSI4IiByZWZZPSI0IiBvcmllbnQ9ImF1dG8iPgogICAgICAg
ICAgPHBvbHlnb24gcG9pbnRzPSIwLDAgMTAsNCAwLDgiIGZpbGw9IiM4ZTQ0YWQiLz4KICAgICAg
ICA8L21hcmtlcj4KICAgICAgPC9kZWZzPgogICAgICA8cmVjdCB3aWR0aD0iMzAwIiBoZWlnaHQ9
IjE1MCIgZmlsbD0iI2Y4ZjhmOCIvPgogICAgICA8IS0tIEwgdG8gKDE1MCwzMCksIHRoZW4gUSAy
MjAsMTMwIDI3MCw1MCDihpIgQyAxOTYuNyw5Ni43IDI0My4zLDk2LjcgMjcwLDUwIC0tPgogICAg
ICA8cGF0aCBkPSJNMjAsMTIwIEwxNTAsMzAgQzE5Ni43LDk2LjcgMjQzLjMsOTYuNyAyNzAsNTAi
CiAgICAgICAgICAgIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzhlNDRhZCIgc3Ryb2tlLXdpZHRoPSIy
IgogICAgICAgICAgICBtYXJrZXItZW5kPSJ1cmwoI2EzYykiLz4KICAgIDwvc3ZnPgogIDwvZGl2
PgogIDxkaXYgY2xhc3M9ImNhc2UiPgogICAgPHA+TCB0aGVuIFEg4oCUIGRvZXMgZW5kIGFycm93
IGZvbGxvdyBjdXJ2ZSBvciBzdGFsZSBMIGRpcmVjdGlvbj88L3A+CiAgICA8c3ZnIHdpZHRoPSIz
MDAiIGhlaWdodD0iMTUwIiB2aWV3Qm94PSIwIDAgMzAwIDE1MCI+CiAgICAgIDxkZWZzPgogICAg
ICAgIDxtYXJrZXIgaWQ9ImEzcSIgbWFya2VyV2lkdGg9IjEwIiBtYXJrZXJIZWlnaHQ9IjgiIHJl
Zlg9IjgiIHJlZlk9IjQiIG9yaWVudD0iYXV0byI+CiAgICAgICAgICA8cG9seWdvbiBwb2ludHM9
IjAsMCAxMCw0IDAsOCIgZmlsbD0iIzhlNDRhZCIvPgogICAgICAgIDwvbWFya2VyPgogICAgICA8
L2RlZnM+CiAgICAgIDxyZWN0IHdpZHRoPSIzMDAiIGhlaWdodD0iMTUwIiBmaWxsPSIjZjhmOGY4
Ii8+CiAgICAgIDxwYXRoIGQ9Ik0yMCwxMjAgTDE1MCwzMCBRMjIwLDEzMCAyNzAsNTAiCiAgICAg
ICAgICAgIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzhlNDRhZCIgc3Ryb2tlLXdpZHRoPSIyIgogICAg
ICAgICAgICBtYXJrZXItZW5kPSJ1cmwoI2EzcSkiLz4KICAgIDwvc3ZnPgogIDwvZGl2Pgo8L2Rp
dj4KPHAgY2xhc3M9Im5vdGUiPlRoZSBlbmQgYXJyb3cgc2hvdWxkIHBvaW50IOKGlyAodXB3YXJk
LXJpZ2h0LCBmb2xsb3dpbmcgdGhlIFEgY3VydmUncwplbmRwb2ludCB0YW5nZW50KS4gSWYgaXQg
cG9pbnRzIOKGlyBhbG9uZyB0aGUgTCdzIGRpcmVjdGlvbiBpbnN0ZWFkLCB0aGF0J3MgdGhlCnN0
YWxlIGluc2xvcGUgYnVnLjwvcD4KCjxoMj5CdWcgQjogQ2xvc2VTdWJwYXRoIHVzZXMgKDAsMCkg
Zm9yIHBvaW50czwvaDI+Cgo8aDM+QjEuIENsb3NlZCBwYXRoOiBRIHRoZW4gWjwvaDM+CjxwPkEg
c2ltcGxlIGNsb3NlZCB0cmlhbmdsZSB3aXRoIG9uZSBRIHNlZ21lbnQgYW5kIG9uZSBaLiBUaGUg
ZW5kIG1hcmtlciBhdCB0aGUKY2xvc3VyZSBzaG91bGQgb3JpZW50IGFsb25nIHRoZSBjbG9zaW5n
IGxpbmUgZGlyZWN0aW9uLiBCdXQgPGNvZGU+Q2xvc2VTdWJwYXRoPC9jb2RlPgpmZWVkcyA8Y29k
ZT4oMCwwKTwvY29kZT4gdG8gYm90aCA8Y29kZT51cGRhdGVPdXRzbG9wZTwvY29kZT4gYW5kCjxj
b2RlPnVwZGF0ZUluc2xvcGU8L2NvZGU+LCBwcm9kdWNpbmcgd3JvbmcgYW5nbGVzLjwvcD4KPGRp
diBjbGFzcz0icm93Ij4KICA8ZGl2IGNsYXNzPSJjYXNlIj4KICAgIDxwPk9wZW4gcGF0aCBMIEwg
KHJlZmVyZW5jZSk8L3A+CiAgICA8c3ZnIHdpZHRoPSIyMDAiIGhlaWdodD0iMjAwIiB2aWV3Qm94
PSIwIDAgMjAwIDIwMCI+CiAgICAgIDxkZWZzPgogICAgICAgIDxtYXJrZXIgaWQ9ImIxYyIgbWFy
a2VyV2lkdGg9IjEwIiBtYXJrZXJIZWlnaHQ9IjgiIHJlZlg9IjUiIHJlZlk9IjQiIG9yaWVudD0i
YXV0byI+CiAgICAgICAgICA8cG9seWdvbiBwb2ludHM9IjAsMCAxMCw0IDAsOCIgZmlsbD0iIzE2
YTA4NSIvPgogICAgICAgIDwvbWFya2VyPgogICAgICA8L2RlZnM+CiAgICAgIDxyZWN0IHdpZHRo
PSIyMDAiIGhlaWdodD0iMjAwIiBmaWxsPSIjZjhmOGY4Ii8+CiAgICAgIDxwYXRoIGQ9Ik0xMDAs
MjAgTDE3MCwxNzAgTDMwLDE3MCBMMTAwLDIwIgogICAgICAgICAgICBmaWxsPSJub25lIiBzdHJv
a2U9IiMxNmEwODUiIHN0cm9rZS13aWR0aD0iMiIKICAgICAgICAgICAgbWFya2VyLXN0YXJ0PSJ1
cmwoI2IxYykiCiAgICAgICAgICAgIG1hcmtlci1taWQ9InVybCgjYjFjKSIKICAgICAgICAgICAg
bWFya2VyLWVuZD0idXJsKCNiMWMpIi8+CiAgICA8L3N2Zz4KICA8L2Rpdj4KICA8ZGl2IGNsYXNz
PSJjYXNlIj4KICAgIDxwPkNsb3NlZCBwYXRoIEwgTCBaIOKAlCBkb2VzIHRvcCBhcnJvdyBtYXRj
aD88L3A+CiAgICA8c3ZnIHdpZHRoPSIyMDAiIGhlaWdodD0iMjAwIiB2aWV3Qm94PSIwIDAgMjAw
IDIwMCI+CiAgICAgIDxkZWZzPgogICAgICAgIDxtYXJrZXIgaWQ9ImIxeiIgbWFya2VyV2lkdGg9
IjEwIiBtYXJrZXJIZWlnaHQ9IjgiIHJlZlg9IjUiIHJlZlk9IjQiIG9yaWVudD0iYXV0byI+CiAg
ICAgICAgICA8cG9seWdvbiBwb2ludHM9IjAsMCAxMCw0IDAsOCIgZmlsbD0iIzE2YTA4NSIvPgog
ICAgICAgIDwvbWFya2VyPgogICAgICA8L2RlZnM+CiAgICAgIDxyZWN0IHdpZHRoPSIyMDAiIGhl
aWdodD0iMjAwIiBmaWxsPSIjZjhmOGY4Ii8+CiAgICAgIDxwYXRoIGQ9Ik0xMDAsMjAgTDE3MCwx
NzAgTDMwLDE3MCBaIgogICAgICAgICAgICBmaWxsPSJub25lIiBzdHJva2U9IiMxNmEwODUiIHN0
cm9rZS13aWR0aD0iMiIKICAgICAgICAgICAgbWFya2VyLXN0YXJ0PSJ1cmwoI2IxeikiCiAgICAg
ICAgICAgIG1hcmtlci1taWQ9InVybCgjYjF6KSIKICAgICAgICAgICAgbWFya2VyLWVuZD0idXJs
KCNiMXopIi8+CiAgICA8L3N2Zz4KICA8L2Rpdj4KPC9kaXY+CjxwIGNsYXNzPSJub3RlIj5UaGlz
IHRlc3RzIHRoZSBDbG9zZVN1YnBhdGggYnVnIGluIGlzb2xhdGlvbiAobm8gcXVhZHJhdGljIHNl
Z21lbnRzKS4KQWxsIGFycm93cyBzaG91bGQgbWF0Y2ggYmV0d2VlbiBvcGVuIGFuZCBjbG9zZWQg
dmVyc2lvbnMuPC9wPgoKPGgzPkIyLiBDbG9zZWQgcXVhZHJhdGljIHBhdGggKGJvdGggYnVncyk8
L2gzPgo8cD5BIGNsb3NlZCBwYXRoIG1hZGUgZW50aXJlbHkgb2YgUSBzZWdtZW50cyBwbHVzIFou
IFRyaWdnZXJzIGJvdGggQnVnIEEKKFEgZG9lc24ndCBzZXQgaW5zbG9wZSkgYW5kIEJ1ZyBCICha
IHVzZXMgKDAsMCkgZm9yIHBvaW50cykuClRoaXMgaXMgdGhlIG1pbmltYWwgcmVwcm9kdWN0aW9u
IG9mIHRoZSB0ZXN0IDcgZmFpbHVyZS48L3A+CjxkaXYgY2xhc3M9InJvdyI+CiAgPGRpdiBjbGFz
cz0iY2FzZSI+CiAgICA8cD5PcGVuIGVxdWl2YWxlbnQgd2l0aCBDIHNlZ21lbnRzIChyZWZlcmVu
Y2UpPC9wPgogICAgPHN2ZyB3aWR0aD0iMjUwIiBoZWlnaHQ9IjI1MCIgdmlld0JveD0iMCAwIDI1
MCAyNTAiPgogICAgICA8ZGVmcz4KICAgICAgICA8bWFya2VyIGlkPSJiMmMiIG1hcmtlcldpZHRo
PSIxMCIgbWFya2VySGVpZ2h0PSI4IiByZWZYPSI1IiByZWZZPSI0IiBvcmllbnQ9ImF1dG8iPgog
ICAgICAgICAgPHBvbHlnb24gcG9pbnRzPSIwLDAgMTAsNCAwLDgiIGZpbGw9IiMyOTgwYjkiLz4K
ICAgICAgICA8L21hcmtlcj4KICAgICAgPC9kZWZzPgogICAgICA8cmVjdCB3aWR0aD0iMjUwIiBo
ZWlnaHQ9IjI1MCIgZmlsbD0iI2Y4ZjhmOCIvPgogICAgICA8IS0tIFRyaWFuZ2xlOiAoMTI1LDMw
KSDihpIgKDIwMCwyMDApIOKGkiAoNTAsMjAwKSDihpIgKDEyNSwzMCkKICAgICAgICAgICBRIDIw
MCwxMDAgMjAwLDIwMCDihpIgQyAxNzUsNzYuNyAyMDAsMTMzLjMgMjAwLDIwMAogICAgICAgICAg
IFEgMTI1LDI0MCA1MCwyMDAgIOKGkiBDIDE1MCwyMjYuNyAxMDAsMjI2LjcgNTAsMjAwCiAgICAg
ICAgICAgUSAxMCwxMDAgMTI1LDMwICAg4oaSIEMgMzYuNywxMzMuMyA1MS43LDc2LjcgMTI1LDMw
IC0tPgogICAgICA8cGF0aCBkPSJNMTI1LDMwIEMxNzUsNzYuNyAyMDAsMTMzLjMgMjAwLDIwMCBD
MTUwLDIyNi43IDEwMCwyMjYuNyA1MCwyMDAgQzM2LjcsMTMzLjMgNTEuNyw3Ni43IDEyNSwzMCIK
ICAgICAgICAgICAgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjMjk4MGI5IiBzdHJva2Utd2lkdGg9IjIi
CiAgICAgICAgICAgIG1hcmtlci1zdGFydD0idXJsKCNiMmMpIgogICAgICAgICAgICBtYXJrZXIt
bWlkPSJ1cmwoI2IyYykiCiAgICAgICAgICAgIG1hcmtlci1lbmQ9InVybCgjYjJjKSIvPgogICAg
ICA8Y2lyY2xlIGN4PSIxMjUiIGN5PSIzMCIgcj0iNCIgZmlsbD0iIzI5ODBiOSIgb3BhY2l0eT0i
MC4zIi8+CiAgICAgIDxjaXJjbGUgY3g9IjIwMCIgY3k9IjIwMCIgcj0iNCIgZmlsbD0iIzI5ODBi
OSIgb3BhY2l0eT0iMC4zIi8+CiAgICAgIDxjaXJjbGUgY3g9IjUwIiBjeT0iMjAwIiByPSI0IiBm
aWxsPSIjMjk4MGI5IiBvcGFjaXR5PSIwLjMiLz4KICAgIDwvc3ZnPgogIDwvZGl2PgogIDxkaXYg
Y2xhc3M9ImNhc2UiPgogICAgPHA+Q2xvc2VkIFEgUSBRIFog4oCUIGJvdGggYnVncyBhY3RpdmU8
L3A+CiAgICA8c3ZnIHdpZHRoPSIyNTAiIGhlaWdodD0iMjUwIiB2aWV3Qm94PSIwIDAgMjUwIDI1
MCI+CiAgICAgIDxkZWZzPgogICAgICAgIDxtYXJrZXIgaWQ9ImIycSIgbWFya2VyV2lkdGg9IjEw
IiBtYXJrZXJIZWlnaHQ9IjgiIHJlZlg9IjUiIHJlZlk9IjQiIG9yaWVudD0iYXV0byI+CiAgICAg
ICAgICA8cG9seWdvbiBwb2ludHM9IjAsMCAxMCw0IDAsOCIgZmlsbD0iIzI5ODBiOSIvPgogICAg
ICAgIDwvbWFya2VyPgogICAgICA8L2RlZnM+CiAgICAgIDxyZWN0IHdpZHRoPSIyNTAiIGhlaWdo
dD0iMjUwIiBmaWxsPSIjZjhmOGY4Ii8+CiAgICAgIDxwYXRoIGQ9Ik0xMjUsMzAgUTIwMCwxMDAg
MjAwLDIwMCBRMTI1LDI0MCA1MCwyMDAgUTEwLDEwMCAxMjUsMzAgWiIKICAgICAgICAgICAgZmls
bD0ibm9uZSIgc3Ryb2tlPSIjMjk4MGI5IiBzdHJva2Utd2lkdGg9IjIiCiAgICAgICAgICAgIG1h
cmtlci1zdGFydD0idXJsKCNiMnEpIgogICAgICAgICAgICBtYXJrZXItbWlkPSJ1cmwoI2IycSki
CiAgICAgICAgICAgIG1hcmtlci1lbmQ9InVybCgjYjJxKSIvPgogICAgICA8Y2lyY2xlIGN4PSIx
MjUiIGN5PSIzMCIgcj0iNCIgZmlsbD0iIzI5ODBiOSIgb3BhY2l0eT0iMC4zIi8+CiAgICAgIDxj
aXJjbGUgY3g9IjIwMCIgY3k9IjIwMCIgcj0iNCIgZmlsbD0iIzI5ODBiOSIgb3BhY2l0eT0iMC4z
Ii8+CiAgICAgIDxjaXJjbGUgY3g9IjUwIiBjeT0iMjAwIiByPSI0IiBmaWxsPSIjMjk4MGI5IiBv
cGFjaXR5PSIwLjMiLz4KICAgIDwvc3ZnPgogIDwvZGl2Pgo8L2Rpdj4KCjxoMz5CMy4gU2luZ2xl
IFEgKyBaIChtaW5pbWFsIGNhc2UpPC9oMz4KPHA+VGhlIGFic29sdXRlIHNtYWxsZXN0IGNhc2U6
IG9uZSBxdWFkcmF0aWMgc2VnbWVudCB0aGVuIGNsb3NlLgpTdGFydCBhbmQgZW5kIG1hcmtlcnMg
c2hvdWxkIGZvbGxvdyB0aGUgY3VydmUgdGFuZ2VudCBhdCAoMTAwLDMwKS48L3A+CjxkaXYgY2xh
c3M9InJvdyI+CiAgPGRpdiBjbGFzcz0iY2FzZSI+CiAgICA8cD5DdWJpYyBlcXVpdmFsZW50IChy
ZWZlcmVuY2UpPC9wPgogICAgPHN2ZyB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCIgdmlld0JveD0i
MCAwIDIwMCAyMDAiPgogICAgICA8ZGVmcz4KICAgICAgICA8bWFya2VyIGlkPSJiM2MiIG1hcmtl
cldpZHRoPSIxMCIgbWFya2VySGVpZ2h0PSI4IiByZWZYPSI1IiByZWZZPSI0IiBvcmllbnQ9ImF1
dG8iPgogICAgICAgICAgPHBvbHlnb24gcG9pbnRzPSIwLDAgMTAsNCAwLDgiIGZpbGw9IiNkMzU0
MDAiLz4KICAgICAgICA8L21hcmtlcj4KICAgICAgPC9kZWZzPgogICAgICA8cmVjdCB3aWR0aD0i
MjAwIiBoZWlnaHQ9IjIwMCIgZmlsbD0iI2Y4ZjhmOCIvPgogICAgICA8IS0tIE0xMDAsMzAgUTE4
MCwxMjAgMTAwLDE3MCDihpIgQyAxNTMuMyw5MCAxNTMuMywxMzYuNyAxMDAsMTcwIHRoZW4gY2xv
c2UgbGluZSBiYWNrIC0tPgogICAgICA8cGF0aCBkPSJNMTAwLDMwIEMxNTMuMyw5MCAxNTMuMywx
MzYuNyAxMDAsMTcwIEwxMDAsMzAiCiAgICAgICAgICAgIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2Qz
NTQwMCIgc3Ryb2tlLXdpZHRoPSIyIgogICAgICAgICAgICBtYXJrZXItc3RhcnQ9InVybCgjYjNj
KSIKICAgICAgICAgICAgbWFya2VyLW1pZD0idXJsKCNiM2MpIgogICAgICAgICAgICBtYXJrZXIt
ZW5kPSJ1cmwoI2IzYykiLz4KICAgIDwvc3ZnPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9ImNhc2Ui
PgogICAgPHA+USArIFogKG1pbmltYWwgcmVwcm9kdWN0aW9uKTwvcD4KICAgIDxzdmcgd2lkdGg9
IjIwMCIgaGVpZ2h0PSIyMDAiIHZpZXdCb3g9IjAgMCAyMDAgMjAwIj4KICAgICAgPGRlZnM+CiAg
ICAgICAgPG1hcmtlciBpZD0iYjNxIiBtYXJrZXJXaWR0aD0iMTAiIG1hcmtlckhlaWdodD0iOCIg
cmVmWD0iNSIgcmVmWT0iNCIgb3JpZW50PSJhdXRvIj4KICAgICAgICAgIDxwb2x5Z29uIHBvaW50
cz0iMCwwIDEwLDQgMCw4IiBmaWxsPSIjZDM1NDAwIi8+CiAgICAgICAgPC9tYXJrZXI+CiAgICAg
IDwvZGVmcz4KICAgICAgPHJlY3Qgd2lkdGg9IjIwMCIgaGVpZ2h0PSIyMDAiIGZpbGw9IiNmOGY4
ZjgiLz4KICAgICAgPHBhdGggZD0iTTEwMCwzMCBRMTgwLDEyMCAxMDAsMTcwIFoiCiAgICAgICAg
ICAgIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2QzNTQwMCIgc3Ryb2tlLXdpZHRoPSIyIgogICAgICAg
ICAgICBtYXJrZXItc3RhcnQ9InVybCgjYjNxKSIKICAgICAgICAgICAgbWFya2VyLW1pZD0idXJs
KCNiM3EpIgogICAgICAgICAgICBtYXJrZXItZW5kPSJ1cmwoI2IzcSkiLz4KICAgIDwvc3ZnPgog
IDwvZGl2Pgo8L2Rpdj4KCjwvYm9keT4KPC9odG1sPgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>