summaryrefslogtreecommitdiff
path: root/rsvg/tests/fixtures/reftests/bugs
diff options
context:
space:
mode:
authorSophie Herold <sophie@hemio.de>2023-03-31 03:41:42 +0200
committerSophie Herold <sophie@hemio.de>2023-03-31 05:29:47 +0200
commit724c958dbece640ae8025fbca4050ee5cee2f266 (patch)
treed45fd40f9fd54fcdb68897f04379461dd8adf2dc /rsvg/tests/fixtures/reftests/bugs
parentd597831ff93b09cc41ce4768a833bc6407c95184 (diff)
downloadlibrsvg-724c958dbece640ae8025fbca4050ee5cee2f266.tar.gz
meta: Move lib and bins into separate crates
Closes #950 Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/822>
Diffstat (limited to 'rsvg/tests/fixtures/reftests/bugs')
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/a-inside-text-content-738-ref.pngbin0 -> 2799 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/a-inside-text-content-738.svg24
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/a-inside-text-content-pseudo-class-738-ref.pngbin0 -> 2799 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/a-inside-text-content-pseudo-class-738.svg26
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug108-font-size-relative-ref.pngbin0 -> 2397 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug108-font-size-relative.svg64
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug112-svg-delayed-attributes-ref.pngbin0 -> 99 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug112-svg-delayed-attributes.svg6
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug165-zero-length-subpath-square-linecap-ref.pngbin0 -> 2414 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug165-zero-length-subpath-square-linecap.svg6
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug181-inheritable-attrs-in-svg-ref.pngbin0 -> 1214 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug181-inheritable-attrs-in-svg.svg3
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug241-light-source-type-ref.pngbin0 -> 4013 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug241-light-source-type.svg16
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug245-negative-dashoffset-ref.pngbin0 -> 161 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug245-negative-dashoffset.svg4
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug282-drop-shadow-ref.pngbin0 -> 1733 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug282-drop-shadow.svg12
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug340047-ref.pngbin0 -> 5565 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug340047.svg43
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug363-missing-space-ref.pngbin0 -> 7943 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug363-missing-space.svg6
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug372-small-arcs-ref.pngbin0 -> 853 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug372-small-arcs.svg24
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug373-gradient-userspaceonuse-ref.pngbin0 -> 631 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug373-gradient-userspaceonuse.svg39
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug403357-ref.pngbin0 -> 1366 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug403357.svg48
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug476507-ref.pngbin0 -> 5982 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug476507.svg78
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug481-tspan-uses-at-least-first-x-ref.pngbin0 -> 1530 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug481-tspan-uses-at-least-first-x.svg15
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug494-text-accumulate-dy-ref.pngbin0 -> 4178 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug494-text-accumulate-dy.svg14
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug506-pattern-fallback-ref.pngbin0 -> 486 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug506-pattern-fallback.svg19
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug510-pattern-fill-opacity-ref.pngbin0 -> 1512 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug510-pattern-fill-opacity.svg21
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug510-pattern-fill-ref.pngbin0 -> 1053 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug510-pattern-fill.svg21
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug548-data-url-without-mimetype-ref.pngbin0 -> 77 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug548-data-url-without-mimetype.svg6
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug563933-ref.pngbin0 -> 2470 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug563933.svg86
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug577-multiple-font-families-ref.pngbin0 -> 3404 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug587721-text-transform-ref.pngbin0 -> 4050 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug587721-text-transform.svg13
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug590-mask-units-ref.pngbin0 -> 2701 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug590-mask-units.svg26
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug603550-mask-luminance-ref.pngbin0 -> 4597 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug603550-mask-luminance.svg130
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug609-clippath-transform-ref.pngbin0 -> 231 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug609-clippath-transform.svg23
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug634324-blur-negative-transform-ref.pngbin0 -> 25021 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug634324-blur-negative-transform.svg14
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug642-nested-tspan-dx-dy-ref.pngbin0 -> 7092 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug642-nested-tspan-dx-dy.svg17
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug667-tspan-visibility-ref.pngbin0 -> 2236 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug667-tspan-visibility.svg26
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug668-small-caps-ref.pngbin0 -> 2383 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug668-small-caps.svg5
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug689832-unresolved-gradient-ref.pngbin0 -> 943 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug689832-unresolved-gradient.svg220
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug718-rect-negative-rx-ry-ref.pngbin0 -> 658 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug718-rect-negative-rx-ry.svg11
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug730-font-scaling-ref.pngbin0 -> 16123 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug730-font-scaling.svg18
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug738367-ref.pngbin0 -> 8692 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug738367.svg7
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug749415-ref.pngbin0 -> 26974 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug749415.svg38
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug760180-ref.pngbin0 -> 10641 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug760180.svg159
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug761175-recursive-masks-ref.pngbin0 -> 513 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug761175-recursive-masks.svg50
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug761871-reset-reflection-points-ref.pngbin0 -> 695 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug761871-reset-reflection-points.svg18
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug763386-marker-coincident-ref.pngbin0 -> 1198 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug763386-marker-coincident.svg15
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug776297-marker-on-non-path-elements-ref.pngbin0 -> 1203 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug776297-marker-on-non-path-elements.svg16
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug786372-default-style-type-ref.pngbin0 -> 287 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug786372-default-style-type.svg1
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug788-inner-svg-viewbox-ref.pngbin0 -> 362 bytes
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/bug788-inner-svg-viewbox.svg21
-rw-r--r--rsvg/tests/fixtures/reftests/bugs/ignore-577-multiple-font-families.svg7
86 files changed, 1416 insertions, 0 deletions
diff --git a/rsvg/tests/fixtures/reftests/bugs/a-inside-text-content-738-ref.png b/rsvg/tests/fixtures/reftests/bugs/a-inside-text-content-738-ref.png
new file mode 100644
index 00000000..3baf7517
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/a-inside-text-content-738-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/a-inside-text-content-738.svg b/rsvg/tests/fixtures/reftests/bugs/a-inside-text-content-738.svg
new file mode 100644
index 00000000..7c3a0482
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/a-inside-text-content-738.svg
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.1"
+ viewBox="0 0 500 600"
+ font-family="sans-serif"
+ font-size="18">
+ <defs>
+ <style>
+ a {fill: black; font-family: Helvetica; font-size:10; }
+ text { font-family: Helvetica; font-size:10; }
+ </style>
+ </defs>
+
+ <text x="250" y="25" class="head" text-anchor="middle">SVG CSS Tests</text>
+ <g transform="translate(0,50)">
+ <text x="50">a:link</text>
+ <text x="250" class="test"><a xlink:href="#foo">xlink:href</a></text>
+ </g>
+
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/a-inside-text-content-pseudo-class-738-ref.png b/rsvg/tests/fixtures/reftests/bugs/a-inside-text-content-pseudo-class-738-ref.png
new file mode 100644
index 00000000..3baf7517
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/a-inside-text-content-pseudo-class-738-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/a-inside-text-content-pseudo-class-738.svg b/rsvg/tests/fixtures/reftests/bugs/a-inside-text-content-pseudo-class-738.svg
new file mode 100644
index 00000000..bc2203b2
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/a-inside-text-content-pseudo-class-738.svg
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.1"
+ viewBox="0 0 500 600"
+ font-family="sans-serif"
+ font-size="18">
+ <defs>
+ <style>
+ a { fill: white; font-family: Helvetica; font-size:10; }
+ a:link { fill: black; }
+
+ text { fill: black; font-family: Helvetica; font-size:10; }
+ </style>
+ </defs>
+
+ <text x="250" y="25" class="head" text-anchor="middle">SVG CSS Tests</text>
+ <g transform="translate(0,50)">
+ <text x="50">a:link</text>
+ <text x="250" class="test"><a xlink:href="#foo">xlink:href</a></text>
+ </g>
+
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug108-font-size-relative-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug108-font-size-relative-ref.png
new file mode 100644
index 00000000..2b18067b
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug108-font-size-relative-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug108-font-size-relative.svg b/rsvg/tests/fixtures/reftests/bugs/bug108-font-size-relative.svg
new file mode 100644
index 00000000..41fe8a59
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug108-font-size-relative.svg
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100">
+
+
+<title>Voronoi. Simple poor</title>
+
+
+<style type="text/css">
+<![CDATA[
+
+.line {
+ stroke : black;
+ stroke-width : 1;
+ stroke-linecap : butt;
+}
+
+.circle {
+ stroke : none;
+ stroke-width : 0;
+ fill : black;
+}
+
+text {
+ font-family: sans;
+}
+
+.text {
+ stroke-width : 0;
+ stroke : none;
+ fill : black;
+ font-size : 15px;
+ font-style : italic;
+}
+
+.rect {
+ stroke : none;
+ stroke-width : 0;
+}
+
+]]>
+</style>
+
+
+<rect class="rect" x="0" y="0" width="50" height="100" fill="LightBlue"/>
+<rect class="rect" x="50" y="0" width="50" height="100" fill="LightGreen"/><!-- AntiqueWhite LightCyan -->
+<line class="line" x1="25" y1="70" x2="75" y2="70"/>
+<line class="line" x1="50" y1="10" x2="50" y2="90"/>
+<path fill="none" stroke="black" d="M 50,65 l 5,0 l 0,5"/>
+<circle class="circle" cx="25" cy="70" r="2"/>
+<circle class="circle" cx="75" cy="70" r="2"/>
+<text class="text" x="14" y="70">p</text>
+<text class="text" x="80" y="70">q</text>
+<text class="text" x="5" y="20">H<tspan dy="0.2em" style="font-size : smaller">pq</tspan></text>
+<text class="text" x="75" y="20">H<tspan dy="0.2em" style="font-size : smaller">qp</tspan></text>
+
+
+<!--
+Creation timestamp (ISO 8601) 2015-02-06T05:39:42+00:00.
+
+2015-02-06
+ first release
+
+-->
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug112-svg-delayed-attributes-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug112-svg-delayed-attributes-ref.png
new file mode 100644
index 00000000..7cb3a2c2
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug112-svg-delayed-attributes-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug112-svg-delayed-attributes.svg b/rsvg/tests/fixtures/reftests/bugs/bug112-svg-delayed-attributes.svg
new file mode 100644
index 00000000..9c494345
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug112-svg-delayed-attributes.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" fill="red" width="16" height="16">
+ <svg fill="lime">
+ <rect width="16" height="16"/>
+ </svg>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug165-zero-length-subpath-square-linecap-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug165-zero-length-subpath-square-linecap-ref.png
new file mode 100644
index 00000000..be3c6316
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug165-zero-length-subpath-square-linecap-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug165-zero-length-subpath-square-linecap.svg b/rsvg/tests/fixtures/reftests/bugs/bug165-zero-length-subpath-square-linecap.svg
new file mode 100644
index 00000000..cb725dec
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug165-zero-length-subpath-square-linecap.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<svg width="500" height="200" viewBox="0 0 5 2" version="1.1" xmlns="http://www.w3.org/2000/svg">
+ <path d="m1 1 0 0" stroke="black" stroke-linecap="butt" />
+ <path d="m2.5 1 0 0" stroke="black" stroke-linecap="round" />
+ <path d="m4 1 0 0" stroke="black" stroke-linecap="square" />
+</svg> \ No newline at end of file
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug181-inheritable-attrs-in-svg-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug181-inheritable-attrs-in-svg-ref.png
new file mode 100644
index 00000000..147134b3
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug181-inheritable-attrs-in-svg-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug181-inheritable-attrs-in-svg.svg b/rsvg/tests/fixtures/reftests/bugs/bug181-inheritable-attrs-in-svg.svg
new file mode 100644
index 00000000..cb4fdf04
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug181-inheritable-attrs-in-svg.svg
@@ -0,0 +1,3 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="128" height="128" fill="red" opacity="0.5">
+ <circle cx="64" cy="64" r="32"/>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug241-light-source-type-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug241-light-source-type-ref.png
new file mode 100644
index 00000000..f7bd4dac
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug241-light-source-type-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug241-light-source-type.svg b/rsvg/tests/fixtures/reftests/bugs/bug241-light-source-type.svg
new file mode 100644
index 00000000..dcc13cc9
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug241-light-source-type.svg
@@ -0,0 +1,16 @@
+<svg height="48" viewBox="0 0 48 48" width="48" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <filter id="a" color-interpolation-filters="sRGB">
+ <feTurbulence baseFrequency=".037" numOctaves="3" result="result0"/>
+ <feSpecularLighting result="result1" specularConstant="1" specularExponent="24.3" surfaceScale="2">
+ <feDistantLight azimuth="225" elevation="45"/>
+ </feSpecularLighting>
+ <feDiffuseLighting diffuseConstant="1.21" in="result0" surfaceScale="3">
+ <feDistantLight azimuth="225" elevation="42"/>
+ </feDiffuseLighting>
+ <feBlend in2="SourceGraphic" mode="multiply" result="result91"/>
+ <feComposite in="result1" in2="result91" k2="1" k3="1" operator="arithmetic"/>
+ <feComposite in2="SourceAlpha" operator="in" result="result2"/>
+ </filter>
+ <path d="m4 4h40v40h-40z" fill="#f00" filter="url(#a)"/>
+</svg>
+
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug245-negative-dashoffset-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug245-negative-dashoffset-ref.png
new file mode 100644
index 00000000..3c85ae56
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug245-negative-dashoffset-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug245-negative-dashoffset.svg b/rsvg/tests/fixtures/reftests/bugs/bug245-negative-dashoffset.svg
new file mode 100644
index 00000000..48cdaf17
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug245-negative-dashoffset.svg
@@ -0,0 +1,4 @@
+<?xml version="1.0"?>
+<svg width="100" height="20" viewBox="0 0 100 20" version="1.1" xmlns="http://www.w3.org/2000/svg">
+ <line stroke="#000" stroke-width="5" stroke-dasharray="20, 4" stroke-dashoffset="-5" x1="10" y1="10" x2="90" y2="10" />
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug282-drop-shadow-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug282-drop-shadow-ref.png
new file mode 100644
index 00000000..18b51189
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug282-drop-shadow-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug282-drop-shadow.svg b/rsvg/tests/fixtures/reftests/bugs/bug282-drop-shadow.svg
new file mode 100644
index 00000000..04afae33
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug282-drop-shadow.svg
@@ -0,0 +1,12 @@
+<svg width="48" height="48" version="1.1" xmlns="http://www.w3.org/2000/svg">
+ <defs>
+ <filter id="filter22" color-interpolation-filters="sRGB">
+ <feFlood flood-color="rgb(0,0,0)" flood-opacity=".5" result="flood"/>
+ <feComposite in="flood" in2="SourceGraphic" operator="in" result="composite1"/>
+ <feGaussianBlur in="composite1" result="blur" stdDeviation="2"/>
+ <feOffset dx="0" dy="2" result="offset"/>
+ <feComposite in="SourceGraphic" in2="offset" result="composite2"/>
+ </filter>
+ </defs>
+ <circle cx="24" cy="24" r="20" fill="#EA4335" filter="url(#filter22)"/>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug340047-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug340047-ref.png
new file mode 100644
index 00000000..bc69bad6
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug340047-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug340047.svg b/rsvg/tests/fixtures/reftests/bugs/bug340047.svg
new file mode 100644
index 00000000..954bc7a7
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug340047.svg
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="744.09448819"
+ height="1052.3622047"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.47 r22583"
+ sodipodi:docname="New document 1">
+
+ <g fill = "navy">
+ <text x = "10" y = "25" font-size = "20" font-family="sans">
+ <tspan>
+ e = mc
+ <tspan baseline-shift = "super">
+ 2
+ </tspan>
+ </tspan>
+ <tspan x = "10" y = "60">
+ T
+ <tspan baseline-shift = "sub">
+ i+2
+ </tspan>
+ =T
+ <tspan baseline-shift = "sub">
+ i
+ </tspan>
+ + T
+ <tspan baseline-shift = "sub">
+ i+1
+ </tspan>
+ </tspan>
+ </text>
+ </g>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug363-missing-space-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug363-missing-space-ref.png
new file mode 100644
index 00000000..be503be4
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug363-missing-space-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug363-missing-space.svg b/rsvg/tests/fixtures/reftests/bugs/bug363-missing-space.svg
new file mode 100644
index 00000000..8203f802
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug363-missing-space.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 600 450" font-family="sans-serif" font-size="50">
+ <text x="20" y="100">hello <tspan>world</tspan></text>
+ <!-- <text x="20" y="150">hello<tspan> world</tspan></text> -->
+ <text x="20" y="200">hello <tspan> world</tspan></text>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug372-small-arcs-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug372-small-arcs-ref.png
new file mode 100644
index 00000000..1bd1fa8c
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug372-small-arcs-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug372-small-arcs.svg b/rsvg/tests/fixtures/reftests/bugs/bug372-small-arcs.svg
new file mode 100644
index 00000000..d3ce679f
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug372-small-arcs.svg
@@ -0,0 +1,24 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="320" height="320" viewBox="0 0 16 16">
+ <path d="M 4.25 4
+ h .5
+ a .25 .25 0 0 1 .25 .25
+ V 5
+ h .75
+ a .25 .25 0 0 1 .25 .25
+ v .5
+ a .25 .25 0 0 1 -.25 .25
+ H 5
+ v .75
+ a .25 .25 0 0 1 -.25 .25
+ h -.5
+ A .25 .25 0 0 1 4 6.75
+ V 6
+ h -.75
+ A .25 .25 0 0 1 3 5.75
+ v -.5
+ A .25 .25 0 0 1 3.25 5
+ H 4
+ v -.75
+ A .25 .25 0 0 1 4.25 4
+ z"/>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug373-gradient-userspaceonuse-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug373-gradient-userspaceonuse-ref.png
new file mode 100644
index 00000000..5d8e4c42
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug373-gradient-userspaceonuse-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug373-gradient-userspaceonuse.svg b/rsvg/tests/fixtures/reftests/bugs/bug373-gradient-userspaceonuse.svg
new file mode 100644
index 00000000..218e5f79
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug373-gradient-userspaceonuse.svg
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!--
+ We draw a horizontal and a vertical line, both with a gradient.
+ Since gradientUnits="userSpaceOnUse", it does not matter that the
+ lines have an empty bounding box, as would be the case for
+ objectBoundingBox. Thus, the gradient *is* drawn (here, all green),
+ instead of leaving the lines unstyled.
+-->
+<svg
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ x="0px"
+ y="0px"
+ width="200"
+ height="200"
+ viewBox="0 0 200 200"
+ xml:space="preserve">
+ <rect x="0" y="0" width="200" height="200" style="fill:blue" />
+ <g>
+ <radialGradient id="SVGID_19_" cx="100" cy="100" r="100" gradientUnits="userSpaceOnUse">
+ <stop offset="0" style="stop-color:green" />
+ </radialGradient>
+ <line
+ x1="100"
+ y1="0"
+ x2="100"
+ y2="200"
+ style="fill:none;stroke:url(#SVGID_19_);stroke-width:2;stroke-miterlimit:10"
+ />
+ <line
+ x1="0"
+ y1="100"
+ x2="200"
+ y2="100"
+ style="fill:none;stroke:url(#SVGID_19_);stroke-width:2;stroke-miterlimit:10"
+ />
+ </g>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug403357-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug403357-ref.png
new file mode 100644
index 00000000..6af46402
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug403357-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug403357.svg b/rsvg/tests/fixtures/reftests/bugs/bug403357.svg
new file mode 100644
index 00000000..67c72239
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug403357.svg
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!--Bug 403357 – Marker display doesn't respect overflow property-->
+<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="200" height="160">
+ <defs>
+ <marker orient="0" markerHeight="10" markerWidth="10" viewBox="0 0 1 1" refY="0.5" refX="0.5" id="marker0" overflow="hidden">
+ <path d="M 0 0.5 L 0.5 1 L 1 0.5 L 0.5 0 Z" />
+ </marker>
+ <marker orient="0" markerHeight="5" markerWidth="5" viewBox="0 0 .5 .5" refY="0.5" refX="0.5" id="marker1" overflow="hidden">
+ <path d="M 0 0.5 L 0.5 1 L 1 0.5 L 0.5 0 Z" />
+ </marker>
+ <marker orient="0" markerHeight="5" markerWidth="5" viewBox="0 0 .5 .5" refY="0.5" refX="0.5" id="marker2" overflow="visible">
+ <path d="M 0 0.5 L 0.5 1 L 1 0.5 L 0.5 0 Z" />
+ </marker>
+ <marker orient="30" markerHeight="10" markerWidth="10" viewBox="0 0 1 1" refY="0.5" refX="0.5" id="marker3" overflow="hidden">
+ <path d="M 0 0.5 L 0.5 1 L 1 0.5 L 0.5 0 Z" />
+ </marker>
+ <marker orient="30" markerHeight="5" markerWidth="5" viewBox="0 0 .5 .5" refY="0.5" refX="0.5" id="marker4" overflow="hidden">
+ <path d="M 0 0.5 L 0.5 1 L 1 0.5 L 0.5 0 Z" />
+ </marker>
+ <marker orient="30" markerHeight="5" markerWidth="5" viewBox="0 0 .5 .5" refY="0.5" refX="0.5" id="marker5" overflow="visible">
+ <path d="M 0 0.5 L 0.5 1 L 1 0.5 L 0.5 0 Z" />
+ </marker>
+ <marker orient="0" markerHeight="10" markerWidth="10" refY="5" refX="5" id="marker10" overflow="hidden">
+ <path d="M 0 5 L 5 10 L 10 5 L 5 0 Z" />
+ </marker>
+ <marker orient="0" markerHeight="5" markerWidth="5" refY="5" refX="5" id="marker11" overflow="hidden">
+ <path d="M 0 5 L 5 10 L 10 5 L 5 0 Z" />
+ </marker>
+ <marker orient="0" markerHeight="5" markerWidth="5" refY="5" refX="5" id="marker12" overflow="visible">
+ <path d="M 0 5 L 5 10 L 10 5 L 5 0 Z" />
+ </marker>
+ <marker orient="30" markerHeight="10" markerWidth="10" refY="5" refX="5" id="marker13" overflow="hidden">
+ <path d="M 0 5 L 5 10 L 10 5 L 5 0 Z" />
+ </marker>
+ <marker orient="30" markerHeight="5" markerWidth="5" refY="5" refX="5" id="marker14" overflow="hidden">
+ <path d="M 0 5 L 5 10 L 10 5 L 5 0 Z" />
+ </marker>
+ <marker orient="30" markerHeight="5" markerWidth="5" refY="5" refX="5" id="marker15" overflow="visible">
+ <path d="M 0 5 L 5 10 L 10 5 L 5 0 Z" />
+ </marker>
+ </defs>
+ <path stroke="black" stroke-width="2" marker-start="url(#marker0)" marker-end="url(#marker10)" d="M 20 40 L 80 40" />
+ <path stroke="black" stroke-width="2" marker-start="url(#marker1)" marker-end="url(#marker11)" d="M 20 80 L 80 80" />
+ <path stroke="black" stroke-width="2" marker-start="url(#marker2)" marker-end="url(#marker12)" d="M 20 120 L 80 120" />
+ <path stroke="black" stroke-width="2" marker-start="url(#marker3)" marker-end="url(#marker13)" d="M 120 40 L 180 40" />
+ <path stroke="black" stroke-width="2" marker-start="url(#marker4)" marker-end="url(#marker14)" d="M 120 80 L 180 80" />
+ <path stroke="black" stroke-width="2" marker-start="url(#marker5)" marker-end="url(#marker15)" d="M 120 120 L 180 120" />
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug476507-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug476507-ref.png
new file mode 100644
index 00000000..2a7f1b93
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug476507-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug476507.svg b/rsvg/tests/fixtures/reftests/bugs/bug476507.svg
new file mode 100644
index 00000000..26029ea8
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug476507.svg
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="744.09448819"
+ height="1052.3622047"
+ id="svg4454"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="New document 10">
+ <defs
+ id="defs4456">
+ <marker
+ inkscape:stockid="Arrow1Lend"
+ orient="auto"
+ refY="0"
+ refX="0"
+ id="Arrow1Lend"
+ style="overflow:visible">
+ <path
+ inkscape:connector-curvature="0"
+ id="path3786"
+ d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+ style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
+ transform="matrix(-0.8,0,0,-0.8,-10,0)" />
+ </marker>
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="0.35"
+ inkscape:cx="375"
+ inkscape:cy="520"
+ inkscape:document-units="px"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:window-width="472"
+ inkscape:window-height="383"
+ inkscape:window-x="600"
+ inkscape:window-y="271"
+ inkscape:window-maximized="0" />
+ <metadata
+ id="metadata4459">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ id="layer1">
+ <path
+ style="fill:none;stroke:#000000;stroke-width:3.29999995;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Lend)"
+ d="m 237.45964,473.86553 c 0,0 133.56466,15.06684 176.97377,168.95554 2.11668,7.50381 4.58183,16.60919 4.58183,16.60919"
+ id="path4227"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="csc"
+ inkscape:export-xdpi="57.75"
+ inkscape:export-ydpi="57.75" />
+ </g>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug481-tspan-uses-at-least-first-x-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug481-tspan-uses-at-least-first-x-ref.png
new file mode 100644
index 00000000..b5883094
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug481-tspan-uses-at-least-first-x-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug481-tspan-uses-at-least-first-x.svg b/rsvg/tests/fixtures/reftests/bugs/bug481-tspan-uses-at-least-first-x.svg
new file mode 100644
index 00000000..7c7ed4a3
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug481-tspan-uses-at-least-first-x.svg
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="200" height="200">
+ <!--
+ As of July 2019, librsvg does not support multiple positions in
+ the x/y/dx/dy attributes of text/tspan elements. This test is to
+ check that the library at least uses the first position specified.
+
+ (The reference PNG for this SVG is incorrect with respect to the
+ spec, since we don't actually use the second and third positions;
+ it's as if the "Foo" had normal letter spacing.)
+ -->
+ <text style="font-family: sans; font-size: 50; fill: black;" y="100">
+ <tspan x="70 120 170">Foo</tspan>
+ </text>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug494-text-accumulate-dy-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug494-text-accumulate-dy-ref.png
new file mode 100644
index 00000000..67a52de8
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug494-text-accumulate-dy-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug494-text-accumulate-dy.svg b/rsvg/tests/fixtures/reftests/bugs/bug494-text-accumulate-dy.svg
new file mode 100644
index 00000000..6eea3686
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug494-text-accumulate-dy.svg
@@ -0,0 +1,14 @@
+<?xml version="1.0" standalone="no"?>
+<svg xmlns="http://www.w3.org/2000/svg" xml:lang="en" viewBox="0 0 178 178" version="1.1">
+<style type="text/css">
+ svg {
+ font-family: sans;
+ font-size: 44px;
+ }
+ </style>
+ <text x="0" y="0">
+ <tspan x="0" dy="1.2em">Tata</tspan>
+ <tspan x="0" dy="1.2em">Toto tu</tspan>
+ <tspan x="0" dy="1.2em">ppo</tspan>
+ </text>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug506-pattern-fallback-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug506-pattern-fallback-ref.png
new file mode 100644
index 00000000..b9fec4e9
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug506-pattern-fallback-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug506-pattern-fallback.svg b/rsvg/tests/fixtures/reftests/bugs/bug506-pattern-fallback.svg
new file mode 100644
index 00000000..64f71050
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug506-pattern-fallback.svg
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.1"
+ width="256"
+ height="256"
+ viewBox="0 0 256 256">
+ <defs>
+ <pattern id="pattern1" xlink:href="#pattern2"/>
+ <pattern id="pattern2" patternUnits="userSpaceOnUse" width="1" height="1">
+ <image width="1" height="1" preserveAspectRatio="none"
+ xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVQI12Ng+M8AAAICAQCqKp4n
+AAAAAElFTkSuQmCC"
+ x="0"
+ y="0"/>
+ </pattern>
+ </defs>
+ <rect x="100" y="100" width="56" height="56" style="fill:url(#pattern1);"/>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug510-pattern-fill-opacity-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug510-pattern-fill-opacity-ref.png
new file mode 100644
index 00000000..cad2c3e7
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug510-pattern-fill-opacity-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug510-pattern-fill-opacity.svg b/rsvg/tests/fixtures/reftests/bugs/bug510-pattern-fill-opacity.svg
new file mode 100644
index 00000000..569d8ba4
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug510-pattern-fill-opacity.svg
@@ -0,0 +1,21 @@
+<svg width="200" height="200" xmlns="http://www.w3.org/2000/svg">
+ <defs>
+ <linearGradient id="Gradient1">
+ <stop offset="5%" stop-color="white"/>
+ <stop offset="95%" stop-color="blue"/>
+ </linearGradient>
+ <linearGradient id="Gradient2" x1="0" x2="0" y1="0" y2="1">
+ <stop offset="5%" stop-color="red"/>
+ <stop offset="95%" stop-color="orange"/>
+ </linearGradient>
+
+ <pattern id="Pattern" x="0" y="0" width=".25" height=".25">
+ <rect x="0" y="0" width="50" height="50" fill="skyblue"/>
+ <rect x="0" y="0" width="25" height="25" fill="url(#Gradient2)"/>
+ </pattern>
+ </defs>
+
+ <rect fill="url(#Gradient1)" width="200" height="200"/>
+ <rect fill="url(#Pattern)" stroke="black" width="200" height="200" fill-opacity=".2"/>
+</svg>
+
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug510-pattern-fill-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug510-pattern-fill-ref.png
new file mode 100644
index 00000000..6fdae2c4
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug510-pattern-fill-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug510-pattern-fill.svg b/rsvg/tests/fixtures/reftests/bugs/bug510-pattern-fill.svg
new file mode 100644
index 00000000..9698a03a
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug510-pattern-fill.svg
@@ -0,0 +1,21 @@
+<svg width="200" height="200" xmlns="http://www.w3.org/2000/svg">
+ <defs>
+ <linearGradient id="Gradient1">
+ <stop offset="5%" stop-color="white"/>
+ <stop offset="95%" stop-color="blue"/>
+ </linearGradient>
+ <linearGradient id="Gradient2" x1="0" x2="0" y1="0" y2="1">
+ <stop offset="5%" stop-color="red"/>
+ <stop offset="95%" stop-color="orange"/>
+ </linearGradient>
+
+ <pattern id="Pattern" x="0" y="0" width=".25" height=".25">
+ <rect x="0" y="0" width="50" height="50" fill="skyblue"/>
+ <rect x="0" y="0" width="25" height="25" fill="url(#Gradient2)"/>
+ </pattern>
+ </defs>
+
+ <rect fill="url(#Gradient1)" width="200" height="200"/>
+ <rect fill="url(#Pattern)" stroke="black" width="200" height="200"/>
+</svg>
+
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug548-data-url-without-mimetype-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug548-data-url-without-mimetype-ref.png
new file mode 100644
index 00000000..9008274a
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug548-data-url-without-mimetype-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug548-data-url-without-mimetype.svg b/rsvg/tests/fixtures/reftests/bugs/bug548-data-url-without-mimetype.svg
new file mode 100644
index 00000000..f2cd71c7
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug548-data-url-without-mimetype.svg
@@ -0,0 +1,6 @@
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink" width="10" height="10">
+ <image
+ xlink:href="data:;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAIAAAACUFjqAAAAFElEQVQY02Nk+M+ABzAxMIxKYwIAQC0BEwZFOw4AAAAASUVORK5CYII="
+ x="0" y="0" width="10" height="10"/>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug563933-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug563933-ref.png
new file mode 100644
index 00000000..1e50f0d6
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug563933-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug563933.svg b/rsvg/tests/fixtures/reftests/bugs/bug563933.svg
new file mode 100644
index 00000000..dd920ba9
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug563933.svg
@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="80" height="128" version="1.1">
+<g id="clubart">
+<g fill="#7F7F7F">
+<path d="M37.88,44.11c-.62,0.11-1.16,0.88-1.45,1.38c-.19,0.32-.19,0.75-.37,1.05c-.28,0.47-.3-.62-.3-.68c.09-1.01-.21-1.16-1.31-.63c-.98,0.49-2.44,1.49-2.66,2.67c-.18,0.93-1.23,2.09-2.03,2.54c-.34,0.17-.36,0.15-.17-.37c.13-.3,0.41-.82,0.64-1.12c.43-.54,0.41-.97-.02-.54c-.13,0.13-.38,0.19-.54,0.13c-.34-.13-.35,0.46-.35,0.64c.02,0.54-.28,0.44-.33,0.87c-.1,0.76-.19,1.29-.54,1.97l-.26-.75c-.34-1.01-.9-1.05-1.78-.15c-.44,0.45-.83,1.08-.97,1.7c-.02,0.09-.09,0.38,0.1,0.38c.21,0,0.28-.96,0.41-1.14c.21-.25,1.21-1.71,1.71-1.41c.79,0.47,0,2.35-.08,2.98c-.01,0.24-.95,1.79-1.18,1.65c.08,0.05,0.9-2.6,0.95-3.01c.08-.59-.17-.5-.4-.07c-.18,0.34-.28,0.73-.51,1.05c-.06,0.08-.46,0.24-.44,0.2c.02,0.05,0.03,0.1,0.05,0.15c.26,0.39-.06,1.21-.15,1.63l-.19-.73c-.28-.99-.39-.75-.17,0.36c.13,0.71,0.09,1.01-.17,1.27c-.64,0.57-.59,2.09-.78,2.87c-.08,0.31-.14,0.78-.34,1.04c-.08,0.1-.17-.1-.18-.14c-.07-.32,0.09-.71,0.21-1c.38-.84-.34-2.34-.77-1.63c-.11,0.19,0.46,0.45,0.28,0.86c-.38,0.85-.61-.58-.64-.6c-.08,0.02-.14,0.08-.17,0.17c-.34,0.54-.24,1.27,0.21,1.51c.44,0.24,0.65,1.14,0.87,1.58c.32,0.63,0.31,1.19-.49,1.13c-.69-.02-.71,0-.77,0.9c-.07,0.92,0.36,1.53,0.57,2.38c.17,0.66,0.84,0.99,1.33,1.42c.29,0.25,2.49,2.53,1.87,2.96c-.65,0.39-.76-.43-.93-.87c-.23-.61-.77-.84-1.39-.92c-.47-.09-.54-.02-.47,0.56c.07,0.56,0.27,1.1,0.89,1.17c.38,0.05,1.31-.01,0.82,0.61c-.35,0.42,0.44,0.19,0.62,0.15c.65-.1,1-.04,1.46,0.45c1.1,1.17-.12,0.69-.88,1.25c-.41,0.3-.41,0.32,0,1.03c.21,0.39,0.68,0.99,1.05,1.31c.8,0.77,1.73,0.56,2.77,0.54c.26,0,2.29,0.18,1.02,0.53c-.58,0.15-.54,0.5,0.13,0.92c.63,0.42,0.89,0.11,1.51-.17c.51-.23,1.1-.06,1.62,0.06c.98,0.2,1.91,0.48,2.85,0.82c-.36,0.01-1.29,0.16-1.5-.19c-.19-.32-1.61-.24-2.53,0.17c-.81,0.37-.84,0.39-.39,0.77c.48,0.45,0.94,0.18,1.5,0.04c.46-.12,0.86-.02,0.25,0.31c-.71,0.37-.54,0.58,0.47,0.6c.53,0,1.09,0.03,1.61,0.15c.75,0.16,1.06-.33,1.73-.44c.39-.07,0.75,0.41,1.25,0.32c.48-.08,1.01-.38,1.17-.87c.1-.36,3.14,0.85,3.49,1.01c.39,0.15,0.41,0.13,0.11-.24c-.24-.3-.26-.41-.04-.47c.54-.19,0.24-.49-.6-.62c-.04-.01-1.15-.31-.98-.42c.29-.19,1.24,0.21,1.58,0.27c.39,0.07,0.79,0.15,1.19,0.13c.71-.03,1.15-.51,1.59-1.01c.79-.92,0.83-1.08,0.26-1.48c-1.01-.71,1.39-.57,1.7-.71c1.1-.47,1.81-1.11,2.43-2.19c.12-.23,0.36-.56,0.17-.82C52,71.19,51.69,71,51.84,70.77c.4-.62,1.47-.56,1.95-1.13c.32-.39-.88-.32-1.37,0.08c-.51,0.43-.41,0.09,0.24-.77c.5-.66,1.17-.94,1.85-1.35c.8-.48,1.46-1.2,1.89-2.03c.29-.59,0.37-1.15,0.33-1.81c-.05-.81-.02-1.94-.39-2.69c-.35-.65-1.46-.01-1.45,0.01c-.01-.05-.02-.11-.02-.16c.02-.28,0.17-.62,1.07-2.26c.17-.32,0.17-.62,0.02-1.03c-.21-.56-.26-.58-.75-.26l-.49,0.34c.13-.71,0.21-1.46,0.54-2.11c.24-.41,0.21-.47-.06-.37c-.24,0.11-.32-.02-.34-.47l-.02-.62c-.16,0.49-.28,0.96-.33,1.48c-.02,0.17,0.04,1.68-.29,1.14c-.39-.65-.02-1.69,0.16-2.34c.29-1.06,0.28-1.49-.24-2.48c-.36-.67-.86-1.35-1.13-1.53c-.43-.28-.47-.28-.34,0.04c.12,0.37,0.44,0.21,0.64,0.44c.21,0.24,0.29,0.78,0.47,1.07c.47,0.74,0.74,1,0.47,1.89c-.24,0.8-.28,0.86-.49,0.5c-.15-.3-.19-.68-.22-1.01c-.01-.1-.14-1.03-.16-.99c-.09,0.13-.21,0.02-.3-.24c-.06-.24-.09-.54-.02-.62c.16-.27-.35-.17-.42-.11c-.24,0.21-.07,0.46-.52,0.35c-.45-.13-.58-.6-.21-.82c.13-.07,0.21-.3,0.19-.5c0-.27-.41,0.51-.41,0.5c-.12,0.25-.24,0.5-.36,0.75c-.14-.32-.31-.65-.39-.99c-.05-.23-.01-1.46-.4-1.31c-.32,0.14-.44-.2-.7-.24c-.27-.03,0.23,0.6,0.19,0.56c.04,0.06,0.09,0.13,0.13,0.19c.01,0.25-.69-.25-.71-.27c-.41-.34-.77-.75-1.09-1.17c-.58-.75-.73-1.89-1.42-2.52c-.56-.52-1.61-.9-1.37-.52c.19,0.27,0.63,0.26,0.88,0.48c.35,0.31,0.69,0.76,0.81,1.22c.09,0.41,0.06,0.45-.19,0.24c-.19-.16-.11-.65-.19-.58c-.25,0.25-1.39-.69-1.76-.69c-.1-.02-.19,0-.27,0.05c0,0.18,0.84,0.47,0.38,0.66c-.15,0.06-.02,0.13,0.3,0.13c.22,0.01,0.5,0.05,0.67,0.2c.25,0.23-.22,0.25-.17,0.38c.07,0.22,0.7,0.27,0.88,0.42c.28,0.23-.25,0.41-.46,0.1c-.13-.27-.97-.33-1.24-.57c-.51-.44-.92-1.04-1.18-1.66l-.28-.67c.07,0.52,0.14,1.03,0.19,1.55c-.36-.2-.74-.38-1.1-.6c-.67-.42-.72-1.11-1.56-1.35c-.64-.19-1.24,0.41-.94,0.92c.35,0.72-1.07,1.07-.62,1.68c.33,0.39,0.9,0.13,0.71,0.8c-.15,0.64,0.06,0.77,1.44,0.88c.73,0.05,1.31-.05,1.93-.45c.54-.34,1.25-.71,1.86-.32c.58,0.36-1.59,0.56-1.5,0.6c.13,0.04,0.21,0.19,0.13,0.3c-.19,0.34,1.03,0.04,1.12,0c.56-.25,1.08-.63,1.74-.47c.11,0.03,0.47,0.29,0.15,0.38c-.22,0.06-.51-.06-.76-.01c-.45,0.1-1.16,0.34-1.4,0.76c-.15,0.24,0.62,0.99,1.99,2.02c.55,0.42,1.25,0.71,1.95,0.63c.78-.09,1.04-.5,1.69,0.15l0.54,0.54l-.81-.02c-.62-.02-.83,0.06-.9,0.34c-.11,0.56,0.75,1.31,1.33,1.16c1.18-.31,0.17,0.87-.07,1.32c-.37,0.71-.04,1.64,0.11,2.36c.15,0.9,1.09,1.58,1.71,2.17c.21,0.21,1.57,1.33,1.13,1.71c-.15,0.13-.68-.74-1.14-.38c-.36,0.31-.33,0.86-.59,1.25c-.3,0.44-.85,0.82-.94,1.38c-.08,0.49,0.08,0.79-.17,1.24c-.26,0.48-.04,1.28,0.2,1.72c.54,0.95,0.41,1.38-1.11,3.29l-.49,0.62c-.02-.6,0.03-1.27-.19-1.83c-.13-.37-.19-.34-.73,0.15c-.55,0.51-.54,0.96-.45,1.68c.09,0.86-.07,1.42-.54,2.15c-.03,0.06-1.08,1.26-1.08,0.99c.05-.05,0.11-.1,0.16-.15c.15-.08,0.43-.43,0.6-.77c.34-.69,0.41-1.91,0.09-1.72c-.28,0.18-.05,0.83-.15,1.12c-.19,0.57-.62,1.06-1.07,1.44c-.25,0.21-.57,0.5-.9,0.54c-.21,0.03-.34-.23-.13-.36c.15-.03,0.29-.07,0.43-.13c.01-.1,0.01-.2,0-.3c.1-.04,0.2-.08,0.3-.11c.22-.13,0.39-.37,0.52-.59c.47-.79,0.36-.82-.41-.11c-.42,0.38-.48,0.43-.87,0.14c.35,0.27-1.27,1.75-1.06,0.98c.06-.13,0.15-.52,0.21-.86c.12-.43,0.29-.46,0.64-.63c.36-.18,0.58-.52,0.88-.78c.15-.13,1.49-.87,1.55-.81c-.44-.44-1.7,0.6-2.01,0.85c-.4,0.31-.77,0.65-1.09,1.04c-.1,0.12-.67,1.06-.55,1.15c-.05-.09-.07-.19-.07-.29c-.15-.6-.69-.51-1.11-.25c-.57,0.35-.5,0.72-.79,1.23c-.1,0.19-.26,0.37-.44,0.48c-.26,0.17-.26-.1-.41-.06c-.23,0.07-.91,1.44-1.11,1.29c-.25-.28,0.57-1.18,0.74-1.35c.43-.42,1.34-.29,0.86-1.27c-.24-.54-1.01-.51-1.51-.56c-.27-.02-3.3-.04-3.32-.09c.12,0.31,1.66,0.34,1.93,0.37c.44,0.05,0.89,0.09,1.34,0.08c.17,0,1.01-.2,0.88,0.06c-.22,0.33,0.51,0.16,0.51,0.41c0,0.25-3.94-.02-4.35-.02c-.16,0-.63,0.03-.72-.17c-.04-.08,0.1-.53-.01-.52c-.21,0.04-.23,0.22-.46,0.08c-.38-.24-.62-.67-.94-.97c-.5-.47-1.43-1.12-2.15-.74l-.47,0.26l0.49-.11c.64-.13,1.41,0.3,2.21,1.18c.62,0.71,0.86,1.59,0.36,1.42c-.15-.04-.26-.26-.21-.45c.08-.5-.42-.16-.64-.37c-.12-.12-.17-1.01-.39-.59c-.23,0.37-.58-.56-1.01-.6c-.56-.07-.66,0.3-.17,0.49c.33,0.17,0.03,0.31,0.21,0.46c.18,0.15,0.61-.02,0.45,0.38c-.18,0.49,0.68,0.22,0.86,0.36c.11,0.09-.38,0.25-.29,0.35c.11,0.05,0.24,0.07,0.36,0.06c.51,0,0.51,0.02,0.09,0.24c-.39,0.17-.6,0.08-1.39-.65c-.76-.73-1.15-1.55-1.48-2.51c.09,0.68,0.09,1.57,0.58,2.11c.66,0.73-.04,0.3-1.2-.75c-1.16-1.03-1.31-1.44-.75-1.89c.19-.17,0.3-.54,0.26-.95c-.08-1.01-1.15-.9-1.48-.09c-.17,0.39-.26,0.79-.24,0.9c.04,0.11-.09,0.08-.26-.09c-.41-.32-.45-.51-.09-.3c.17,0.11,0.19,0.04,0.09-.26c-.16-.38-.45-.96-.21-1.37c.23-.4,0.39-.7,0.42-1.18c.07-1.03-.2-2.32-.92-3.11c-.47-.51-.49-.51-.92-.13c-.23,0.21-.51,0.69-.62,1.05c-.17,0.6-.19,0.58-.21-.45c-.01-.44-.05-1.01,0.3-1.34c.45-.42,0.63-.73,0.54-1.38c-.11-.84-.23-1.22,0.28-1.96c.35-.52,0.2-1.1,0.09-1.68c-.24-1.38-.6-1.7-1.24-1.12c-.62,0.56-.68,0.32-.17-.49c.6-.92,1.68-.55,2.21-1.57c.06-.12,0.49-.73,0.17-.82c-.29-.07-.82-.09-.5,0.3c.21,0.26,0.19,0.34-.11,0.45c-.32,0.13-.89-.38-.53-.51c.24-.08,0.15-.34,0.26-.5c.18-.29,0.52-.5,0.81-.66c.9-.52,1.13-.94,0.43-.75c-.29,0.08-.6-.11-.26-.26c.44-.2,0.98-.23,1.45-.29c1.16-.15,1.98-.5,2.98-1.12c.41-.24,1.56-1.39,1.14-1.96c-.3-.4-.25,0.26-.26,0.37c-.06,0.37-.28,0.76-.52,1.04c-.22,0.25-.51,0.23-.75,0.46c-.19,0.18-.5,0.28-.73,0.38c-.14,0.06-1.73,0.49-1.7,0.4c.04-.15,0.17-.26,0.28-.28c.62,0,1.16-.64,1.8-.56c.06,0,0.12,0,0.17,0c.03-.05-.53-.21-.19-.47c.07-.05,1.09-.25,0.83-.4c-.44-.26-1.64,0.29-2.03,0.55c-.31,0.22-.27-.14-.64,0.19c-.25,0.2-.58,0.38-.9,0.45c-.49,0.13-.47,0.09,0.15-.56c.72-.72,1.93-1.01,2.89-1.31c.45-.15,0.48-.61-.09-.34c-.71,0.39-.98,0.11-.32-.32c1.33-.87,3.05-.16,4.46-.06c.75,0.05,3.56-.12,3.59-1.3c0-.41-1.5-.99-1.78-.71c-.24,0.24,0.99,0.36,1.22,0.52c.36,0.26,0.34,0.3-.21,0.69c-.64,0.43-2.06,0.58-3.26,0.39c-1.28-.21,0.44-.42,0.82-.44c.14-.01,2.26,0.02,1.86-.42c-.15-.15-1.33-.13-3.04,0.02c-1.07,0.11-1.07,0.11-.32-.15c.41-.15,0.86-.32,1.01-.43c.37-.24,0.86,0.13,1.28-.13c.32-.19,0.28-.21-.32-.24c-1.39,0,0.34-.48,0.76-.55c.94-.14,1.29-.79,1.72-1.58c.17-.32,0.19-.6,0.06-.73c-.18-.18-.54,1-.63,1.13c-.35,0.52-.92,0.85-1.53,0.97l-.75,0.13c.59-.31,1.17-.62,1.65-1.1c.34-.37,0.34-.41,0-.54c-.19-.06-.39-.02-.43,0.09c-.04,0.11-1.46,1.01-1.46,1.02c-.02-.07,0-.14,0.04-.2c.12-.36,0.49-.4,0.62-.77c.2-.6,1.82-.45,1.82-.88C39.02,43.8,38.05,44.08,37.88,44.11 M41.11,45.29c-.08,0.25-.6,0.54-.6,0.09C40.51,44.96,41.21,44.94,41.11,45.29 M35.48,45.74c-.45,1.57-1.18,2.43-2.4,2.86c-.83,0.3-.96-.04-.15-.34c.49-.21,0.58-.77,1.05-1.09c.27-.18,1.07-.63,0.51-.95c-.39-.25-.64,0.82-.94,0.32c-.21-.34,0.81-1.18,1.54-1.25C35.55,45.24,35.59,45.31,35.48,45.74 M41.58,45.67c0,0.28-.48,0.27-.32,0C41.36,45.47,41.58,45.36,41.58,45.67 M40.9,46.47c-.87,0.23,0.04,0.47,0.04,0.73c0,0.29-.95-.06-1.05-.15c-.17-.15,0.71-.71,1.05-.71C41.18,46.36,41.16,46.41,40.9,46.47 M42.08,46.47c-.15,0.04-.41,0.04-.54,0C41.24,46.34,42.34,46.34,42.08,46.47 M33.45,46.66c0,0.29-.28,0.73-.55,0.84c-.17,0.07-.31-.15-.31,0.17c0,0.21-.14,0.44-.3,0.56c-.41,0.34-.17-.77,0.28-1.29C32.89,46.58,33.45,46.41,33.45,46.66 M42.83,47.31c-.15,0.04-1.03,0.26-1.03,0.5c0,0.75,0.71-.06,0.94,0.08c.55,0.34,0.21,0.38,0.8-.06c.1-.08,0.98-.42,0.72,0c-.32,0.52-1.63,0.92-2.61,0.77c-.56-.06-1.03-.17-1.09-.21c-.04-.04,0.09-.34,0.28-.65c.39-.56,0.77-.71,2.14-.73l0.86-.02L42.83,47.31 M48.59,49.59c.54,0.23,1.16,0.62,1.49,1.13c.32,0.49-.36,0.2-.53-.16c-.17-.36-.24-.39-.24-.11c-.08,0.76-1.09,0.04-1.35-.32c-.17-.25-.7-.26-.96-.24c-.78,0.06,0.41,0.53,0.25,0.74c.02-.04,2.33,0.74,2.57,0.86c.47,0.26,0.69,0.41,0.47,0.34c-.76-.23-1.17,0.64-1.99,0.26c-.42-.18-.63-.51-.99-.73c-.47-.29-.91-.44-1.34-.83c-.6-.52-.75-.75-.54-.84C46.6,49.29,47.82,49.26,48.59,49.59 M52.42,52.21c.39,0.31,0.12,0.66,0.45,1.03c.42,0.45-.27,0.74,0.19,0.9c.19,0.06,0.3,0.19,0.24,0.28c-.47,0.43-1.08-1.47-1.22-1.66C51.42,51.91,51.59,51.61,52.42,52.21 M29.16,52.55c0,0.23-.71,0.31-.81,0.17c.02-.08,0.07-.14,0.16-.17C28.93,52.28,29.16,52.28,29.16,52.55 M50.3,53.76c-.19,0.19-.6-.13-.45-.39c.09-.13,0.21-.13,0.36,0.02C50.34,53.52,50.39,53.67,50.3,53.76 M51.89,54.1c.23,0.45,0.23,0.47-.09,0.19C51.27,53.92,51.47,53.3,51.89,54.1 M51.01,54.15c0,0.24-.41,0.32-.54,0.13C50.3,53.99,51.01,54.01,51.01,54.15 M52.08,55.46c.13,0.14,0.35,0.32,0.56,0.32c.34,0,0.31,0.43,0.45,0.64c.35,0.57,0.52,1.1,0.58,1.79c.11,1.14,0.09,1.23-.3,1.01c-.51-.28-.78-1.17-.93-1.68c-.07-.23-.17-.55-.08-.79c.19-.43-.49-.4-.49,0.04c-.02,0.34-.04,0.34-.32-.02c-.06-.12-.16-.2-.28-.25c-.3,0.07,1.08,1.41,0.94,1.58c-.18,0.13-.64-.37-.81-.45c-.45-.17-.51-1.1-.11-1.93C51.59,55.05,51.72,55,52.08,55.46 M26.81,56.1c0,0.4-.43,0.4-.43,0C26.38,55.71,26.81,55.7,26.81,56.1 M55.72,57.93c0,0.33-.89,0.24-.75,0C55.08,57.72,55.72,57.57,55.72,57.93 M26.87,59.39c.03,0.43,0.05,1.08-.21,1.46c-.28,0.4-.18,1.05-.58,1.35c-.26,0.22-.3,0.17-.24-.34c.05-.39,0.18-.75,0.24-1.14c.08-.45,0.06-.95-.06-1.39c-.07-.25-.39-.37-.4-.4c-.03-.08,0.3-.42,0.32-.44C26.59,57.78,26.83,57.99,26.87,59.39 M52.29,59c-.19,0.13-.15,0.24,0.17,0.41c.26,0.13,0.56,0.43,0.69,0.64c.19,0.41,0.17,0.41-.45,0.09c-.5-.24-1.04-.89-1.34-1.35c-.11-.17-.23-.55-.11-.75c.09-.15,0.61,0.31,0.63,0.33C52.34,58.7,52.46,58.9,52.29,59 M23.59,58.79c0,0.11-.15,0.15-.32,0.09c-.13-.04-.23-.12-.32-.21C22.95,58.52,23.59,58.52,23.59,58.79 M25.35,60.21c-.06,0.32-.17,0.47-.3,0.34C24.64,60.14,25.59,59.07,25.35,60.21 M53.75,60.53c-.06,0.43-.11,0.41-.19-.19c0-.03-.1-.49,0.01-.53C53.79,59.73,53.76,60.47,53.75,60.53 M56.11,61.93c.04,0.45,0.17,0.95,0.26,1.08c.24,0.26,0.06,1.68-.28,2.45c-.28,0.62-1.44,1.78-1.61,1.63c.1,0.1,1.46-1.96,1.54-2.23c.23-.76-.05-2.33-.68-.91c-.17,0.37-.38,0.58-.51,0.52c-.3-.21,0.27,1.05-.28,0.86c-.24-.11-.28-.04-.19,0.22c.2,0.45-.44,0.24-.28,0.62c.06,0.17,0.02,0.43-.11,0.6c-.17,0.28-.03-.99-.01-1.13c.07-.56,0.16-1.04,0.35-1.58c.17-.5,0.15-1.2,0.68-1.43c.15-.07,1.08-.77,0.87-.98c-.06-.09-.32,0.04-.56,0.26c-.43,0.39-.45,0.39-.28-.02C55.44,60.72,56.02,60.72,56.11,61.93 M53.15,62.36c0,1.11-.81-.81-.21-.45C53.06,61.97,53.15,62.19,53.15,62.36 M24.09,62.36c.41,0.15,0.47,0.43,0.15,0.62c-.35,0.21-.05-.48-.51-.06c-.21,0.19-.24,0.32-.04,0.43c.15,0.11,0.13,0.17-.09,0.17c-.24,0.02-.21,0.08,0.09,0.32c.48,0.35,0.43,1.16,0.86,1.7c.73,0.99,0.71,1.05-.19,0.49c-.63-.4-.8-1.09-1.04-1.75c-.19-.51-.49-1.61-.2-2.12c.06-.09,0.21-.13,0.34-.07C23.59,62.19,23.87,62.29,24.09,62.36 M26.49,62.87c-.1,0.16-.62,0.32-.43,0C26.15,62.7,26.66,62.53,26.49,62.87 M24.6,63.56c-.06,0.17-.13,0.11-.13-.13c-.02-.24,0.04-.37,0.11-.28C24.64,63.22,24.67,63.41,24.6,63.56 M53.36,64.1c0,0.27-.87-.69-1.03-.68c-.26,0.02,0.42,0.57,0.44,0.59c.19,0.25,0.07,0.96,0.42,1.06c.32,0.11-.15,1.76-.62,2.13c-.06,0.08-.15,0.13-.24,0.14c-.06-.02,0.58-1.23,0.52-1.45c-.1-.46-.16-1.31-.5-1.68c-.29-.31-.14,1.15-.53,0.9c-.27-.17,0.28,0.52,0.23,0.63c-.08,0.17-.35,0.08-.28,0.36c.04,0.15,0.27,0.42,0.24,0.58c-.06,0.04-.12,0.03-.17-.04c-.05-.02-.1-.04-.14-.07c.21,0.01-.16,1.1-.41,0.39c-.23-.64,0.03-1.54,0.15-2.17c.28-1.42,0.68-1.83,1.41-1.33C53.13,63.63,53.36,63.93,53.36,64.1 M25.42,65.02c.13,1.08,0.11,1.14-.17,0.67c-.27-.41-.18-.84-.17-1.28c.02-.42-.25,0.02-.39-.08c-.09-.06,0.1-.46,0.11-.48C25.03,63.26,25.27,63.75,25.42,65.02 M27.86,65.73c.51,1.05,0.58,2.64,0.15,3.22c-.28,0.34-.3,0.34-.43-.19c-.09-.32-.04-.69,0.06-.79c.17-.17,0.3-.53,0.22-.77c-.04-.11-.37,0.49-.4,0.37c-.08-.27,0.08-.62,0.27-.8c.13-.06,0.17-.12,0.12-.2c-.33,0.08-.43,0.22-.29-.27l0.15-.52l-.54,0.5c-.39,0.37-.51,0.67-.45,1.08c.09,0.54,0.06,0.56-.21,0.17c-.43-.51,0.23-1.07-.04-1.48c-.18-.18,0.38-.86,0.48-.99C27.39,64.51,27.67,65.33,27.86,65.73 M53.17,67.24c-.21,0.19-.24,0.17-.11-.13c.06-.21,0.19-.32,0.26-.26C53.39,66.92,53.32,67.09,53.17,67.24 M51.82,67.93c-.06,0.07-.19-.04-.26-.26c-.13-.3-.11-.32,0.11-.13C51.82,67.69,51.89,67.86,51.82,67.93 M54.16,67.52c-.06,0.07-.26,0.09-.41,0.02c-.17-.06-.11-.13,0.13-.13C54.11,67.39,54.24,67.45,54.16,67.52 M27.34,69.3c.28,0.49-.11,0.21-.45-.3c-.19-.28-.26-.65-.17-.8c.11-.17,0.21-.09,0.32,0.3C27.13,68.83,27.26,69.17,27.34,69.3 M24.62,68.51c-.08,0.25-.6,0.54-.6,0.09C24.02,68.19,24.72,68.15,24.62,68.51 M51.99,68.83c-.21,0.56-1.5,2.19-1.71,2.21c0,0,0.91-1.35,0.99-1.47c.13-.2,0.38-.51,0.38-.77C51.65,68.41,52.13,68.36,51.99,68.83 M25.09,69.11c0,0.31-.69,0.26-.54,0C24.66,68.91,25.09,68.76,25.09,69.11 M27.9,70.23c.24,0.45,0.24,0.47-.09,0.19C27.28,70.04,27.48,69.43,27.9,70.23 M49.08,70.08c0,0.54-1,0.3-.49-.17C48.82,69.65,49.08,69.73,49.08,70.08 M30.02,70.18c0,0.33-.89,0.24-.75,0C29.37,69.98,30.02,69.82,30.02,70.18 M48.87,70.83c0,0.35-.43,0.18-.54,0C48.19,70.54,48.87,70.53,48.87,70.83 M29.59,71.04c0,0.28-.43,0.27-.43,0C29.16,70.77,29.59,70.76,29.59,71.04 M51.87,71.45c0,0.34-.56,1.31-.79,1.42c-.38,0.13-.34-.45,0.06-.84c.7-.74-1.12,0.19-1.25,0.21c-.44,0.06-.15,0-.42,0.27c-.09,0.09-.53,0.19-.71,0.38c-.64,0.69-.86,0.67-.39-.08c.54-.82,1.16-1.31,1.67-1.33c.24,0,0.56-.09,0.73-.19C51.07,71.09,51.87,71.21,51.87,71.45 M28.41,72.12c.24,0.4,0.9,0.14,1.18,0.65c.23,0.42,0.67,0.32,0.94,0.75c.45,0.69,0.15,0.69-.6,0c-.19-.18-.45-.36-.71-.41c-.14-.03-.35,0.12-.45-.04c-.22-.35-.19-.81-.62-.11c-.55,0.86,1.68,0.34,0.88,1.01c-.1,0.06-.18,0.13-.26,0.22c0,0.01,0.99-.17,0.98-.11c-.04,0.09-.11,0.17-.19,0.24c-.29,0.31-1.19,0.4-1.44-.02c-.31-.5-.84-.72-1.13-1.27c-.05-.1-.47-.73-.3-.82c.38-.2,1.01-.26,1.44-.26C28.22,71.92,28.35,71.99,28.41,72.12 M50.52,73.52c-.2,0.41-.67,0.24-.99,0.43c-.24,0.13-.7,0.56-1.02,0.3c-.08-.07,0.41-.44,0.36-.4c.31-.26,1.23-.35,1.39-.67C50.47,72.85,50.67,73.11,50.52,73.52 M43.08,74.05c0,0.28-.43,0.27-.43,0C42.66,73.78,43.08,73.77,43.08,74.05 M42.38,74.74c-.06,0.17-.13,0.11-.13-.13c-.02-.24,0.04-.37,0.11-.28C42.42,74.4,42.44,74.59,42.38,74.74 M40.09,75.04c0,0.06-.11,0.3-.21,0.54c-.21,0.39-.28,0.39-.71,0.09c-.36-.24-1.34-.2-1.54-.54C37.54,75.01,40.09,74.71,40.09,75.04 M47.86,75.32c.15,0.15-.06,0.5-.62,1.08c-.72,0.77-1.79,1.28-2.78,0.56c-.39-.32-.39-.32,0.19-.19c.6,0.14,0.5-.4,1.01-.13c.2,0.1,1.07-.14,1.07-.41c0-.24-1.83-.12-1.98-.12c-.07,0-1.16,0.01-.89-.12c.31-.13,0.48-.38,0.75-.53c.33-.18,0.94,0,1.17-.35C45.95,74.83,47.52,74.98,47.86,75.32 M35.48,75.56c.17,0.28-.32,0.28-.75,0c-.09-.03-.14-.09-.17-.17C34.69,75.2,35.39,75.38,35.48,75.56 M37.6,75.67c.06,0.11,0.08,0.21,0.04,0.32c-.13-.09-.25-.19-.34-.32C36.96,75.22,37.46,75.38,37.6,75.67 M31.95,75.88c0,0.4-.43,0.39-.43,0C31.52,75.49,31.95,75.48,31.95,75.88 M38.69,76.83c-.38,0.34-.98-.64-.72-.97c.06-.08,0.42,0.41,0.38,0.36C38.59,76.5,38.74,76.78,38.69,76.83 M38.91,75.99c.17,0.29-.6,0.29-.43,0C38.61,75.73,38.78,75.73,38.91,75.99 M41.5,76.53c-.3,0.28-.56,0.69-.58,0.9c0,0.24-.06,0.28-.13,0.11c-.04-.13-.19-.21-.3-.15c-.28,0.17,0.02-.58,0.41-1.03C41.3,75.9,42.36,75.73,41.5,76.53 M34.67,77.43c-.19,0.19-.41,0.3-.49,0.24c-.45-.45,0.76-.71,0.75-.55C34.86,77.24,34.78,77.34,34.67,77.43 M36.32,77.54c.19,0.26,0.3,0.52,0.23,0.56c-.11,0.11-1.16-.67-1.18-.88C35.37,76.87,36.02,77.08,36.32,77.54 M39.55,77.64c.23,0.24,0.91,1.15,0.07,0.75c-.39-.19-.8-1.08-1.07-.62c-.2,0.41-.72,0.41-1.05,0.71c-.28,0.26-.41,0.26-.54,0.06c-.09-.15-.06-.21,0.06-.13c.32,0.2,1.2-.88,1.38-1.04C38.92,76.92,39.11,77.17,39.55,77.64 M43.81,77.84c.47,0.19,0.21,0.49-.3,0.36c-.24-.07-.36-.19-.3-.3C43.34,77.67,43.38,77.67,43.81,77.84"/>
+<path d="M48.44,50.19c0,0.27,0.48,0.27,0.32,0C48.66,49.99,48.44,49.87,48.44,50.19"/>
+<path d="M52.74,57.2c0,0.24,0.06,0.3,0.13,0.13c.06-.15,0.04-.34-.02-.41C52.79,56.83,52.72,56.96,52.74,57.2"/>
+<path d="M53.19,58.36c0,0.3,0.04,0.41,0.11,0.26c.04-.13,0.04-.39,0-.54C53.24,57.95,53.19,58.06,53.19,58.36"/>
+<path d="M54.86,63.52c0,0.27,0.48,0.27,0.32,0C55.09,63.32,54.86,63.2,54.86,63.52"/>
+<path d="M45.12,75.77c-.16,0.27,0.32,0.27,0.32,0C45.44,75.46,45.22,75.57,45.12,75.77"/>
+</g>
+<g fill="#282828">
+<path d="M37.81,44.4c-.06,0.13,0.02,0.15,0.19,0.09C38.69,44.22,37.99,44.05,37.81,44.4"/>
+<path d="M41.04,45.16c.13,0.26,0.64,0.25,0.68,0.46c.05,0.25-.3,0.43-.49,0.47c-.19,0.04-.32,0-.24-.13c.06-.11-.06-.26-.3-.32c-.51-.13-.54-.06-.09,0.37c.4,0.45,1.05,0.17,1.5,0.46c.42,0.27-1.07,0.23-1.18,0.29c-.47,0.3,0.09,0.45,0.84,0.24c.39-.11,0.79-.15,0.88-.09c.39,0.24,0.17-.28-.47-1.16C41.54,44.88,40.79,44.49,41.04,45.16"/>
+<path d="M37.1,45.82c-.9,0.77-1.18,1.25-.58,1.03c.26-.13,0.33-.49,0.62-.68c.31-.2,1.04-.46,1.15-.87C38.39,44.88,38.02,45,37.1,45.82"/>
+<path d="M38.67,45.99c-.53,0.34-1.13,0.54-1.71,0.77c.67-.11,1.4-.19,1.93-.67C39.37,45.63,39.27,45.56,38.67,45.99"/>
+<path d="M34.06,46.55c0,0.24-.6,0.29-.73,0.54c-.17,0.49,0.17,0.39,0.73-.21c.08-.09,0.33-.34,0.31-.5C34.35,46.22,34.06,46.44,34.06,46.55"/>
+<path d="M44.02,46.53c.28,0.52-1.05-.1-.86,0.24c.07,0.11,1.01,0.32,0.67,0.51c-.46,0.25-1.05,0.06-1.54,0.33c-.36,0.24-.34,0.26,0.19,0.13c.41-.09,0.56-.04,0.47,0.11c-.28,0.44,0.57-.07,0.62-.11c.26-.2,1.08-.57,1.26-.06c.04,0.15,0.15,0.24,0.21,0.17C45.28,47.61,44.01,46.51,44.02,46.53"/>
+<path d="M45.41,46.66c.33,0.38,0.84,0.51,1.2,0.92c.32,0.37,0.46,0.89,0.78,1.21c.6,0.6,1.86,1.05,1.56,0.56c-.17-.34-.77-.04-.92-.26c-.04-.06,0.31-.28,0.33-.33c-.02,0.08-.46-.42-.48-.49c-.1-.38-.37-.39-.65-.58c-.33-.21-1.54-1.52-1.96-1.36C45.16,46.38,45.43,46.68,45.41,46.66"/>
+<path d="M34.98,47.2c-.3,0.73,0.06,0.84,0.66,0.19c.24-.26,0.3-.37,0.09-.21c-.3,0.21-.36,0.19-.45-.13C35.22,46.72,35.15,46.75,34.98,47.2"/>
+<path d="M39.93,47.28c.23,0.19,0.58,0.34,0.75,0.32c.3,0,0.3-.02,0.02-.13c-.17-.06-.51-.22-.75-.32C39.52,46.96,39.52,46.96,39.93,47.28"/>
+<path d="M32.67,47.86c-.09,0.13-.11,0.28-.04,0.34C33.24,48.82,33.27,46.81,32.67,47.86"/>
+<path d="M34.1,48.19c-.21,0.41-.15,0.49,0.66,0.82l0.9,0.34c-.41-.33-1.09-.76-1.22-1.29C34.36,47.8,34.3,47.84,34.1,48.19"/>
+<path d="M36.2,48.27c-.06,0.04-.12,0.09-.18,0.13c-.03,0.04,0.61,0.19,0.61-.13C36.63,47.93,36.38,48.16,36.2,48.27"/>
+<path d="M37.17,48.27c-.18,0.29,0.53,0.19,0.64,0C37.97,47.95,37.27,48.07,37.17,48.27"/>
+<path d="M45.84,48.27c0,0.23-1.19,0.85-1.07,0.86c.51,0,1.14-.37,1.55-.66C46.98,48.01,45.84,47.95,45.84,48.27"/>
+<path d="M43.1,48.59c-.34,0.41-.06,0.41,0.47,0c.3-.24,0.34-.32,0.11-.32C43.51,48.29,43.25,48.42,43.1,48.59"/>
+<path d="M30.1,48.72c-.09,0.13-.28,0.17-.45,0.11c-.4-.16-.32,0.59-.29,0.79c.06,0.36,0.55-.44,0.58-.49c.01-.01,0.41-.65,0.39-.65C30.22,48.53,30.15,48.61,30.1,48.72"/>
+<path d="M31.38,49.09c.19,0.24-1.83,1.64-2.04,1.83l-.02-.52c-.02-.45-.04-.43-.17,0.15c-.09,0.36-.24,0.77-.32,0.9c-.07,0.07-.1,0.16-.08,0.25c-.05-.04,2.36-1.55,2.37-1.46c-.04-.13,0.24-.47,0.58-.75c.6-.52,0.6-.54,0.11-.49C31.53,49,31.34,49.05,31.38,49.09"/>
+<path d="M50.25,50.36c.09,0.34,0.28,0.8,0.43,1.03c.43,0.62,0.36,0.75-.32,0.62c-.34-.06-.66-.04-.73,0.08c-.02,0.03,0.94,0.03,1.05,0.34c.1,0.3,0.62,0.47,0.39,0.07c-.11-.17-.06-.17,0.19,0.04c.34,0.27,0.26,0.73,0.45,1.11c.02,0.05,0.65,1.12,0.35,1.02c-.66-.16-.76-1.25-1.46-1.48L50.1,53c.54,0.77,1.08,1.53,1.78,2.16c.87,0.78,1.44,0.87,1.69,2.12c.12,0.55,0.21,1.1,0.26,1.66c.03,0.39-.08,1.2,0.21,1.5c.17,0.17-.47,0.77-.28,1.16c.13,0.22,0.21,0.62,0.21,0.9c.01,0.11-.01,0.22-.04,0.33c.03-.04-1.05-1.7-.71-.59c.16,0.53-.26,0.24-.3,0.48c.04,0.04,0.07,0.08,0.11,0.13c.13,0.08,0.26,0.3,0.26,0.47c.07,0.67,0.17,1.36,0.09,2.03c-.05,0.46-.58,1.19-.46,1.6c.03,0.09,0.28-.38,0.23-.28c.17-.28,0.28-.32,0.41-.13c.08,0.14,0.31-.93,0.32-.99c.06-.5,0.11-1.1,0.32-1.57c.27-.49,0.27-1.08,0.44-1.61c.05-.14,0.64-1.4,0.76-1.36c-.08,0.03-.16,0.08-.22,0.15c-.39,0.3-.41,0.28-.28-.54c.19-.99,1.43-2.13,0.79-3.12c-.17-.24-.19-.17-.09,0.26c.15,0.65-.24,0.84-.73,0.34c-.06-.1-.13-.15-.23-.14c-.34,0.38,0.94,0.55,0.7,0.85c-.06,0.13-.26,0.17-.39,0.13c-.45-.2,0.08,1.09-.32,0.84c-.82-.55,0.18-3.02,0.26-3.72c.03-.21-.19-.97-.28-.43c-.02,0.11-.32,1.97-.5,1.44c-.16-.45-.29-.93-.24-1.41c.02-.18,0.39-.98-.01-.8c-.36,0.11-.49-1.28-.58-1.57c-.03-.1-.49-1.34-.54-1.29c-.23,0.23,0.59,2.47,0.66,2.95c.13,0.62,0.11,0.67-.11,0.3c-.24-.44-.62-.76-.89-1.17c-.22-.35-.09-.7-.38-1.08c-.23-.33-.28-.92-.51-1.19c-.14-.17-.3-.09-.43-.29c-.16-.23-.26-.51-.34-.78C50.49,49.71,50.02,49.37,50.25,50.36 M52.16,53.43c.16,0.27-.32,0.28-.32,0C51.84,53.12,52.06,53.23,52.16,53.43 M52.91,55.39c0,0.13-.09,0.15-.21,0.09c-.16-.1-.32-.62,0-.43C52.82,55.11,52.91,55.28,52.91,55.39 M53.98,63.54c0,0.27-.48,0.26-.32,0C53.76,63.34,53.98,63.22,53.98,63.54"/>
+<path d="M46.91,50.08c0,0.15,1.35,0.8,1.44,0.69c.13-.13-.6-.64-1.03-.71C47.1,50.01,46.91,50.04,46.91,50.08"/>
+<path d="M32.09,51c.15,0.06,0.34,0.04,0.41-.02c.09-.07-.04-.13-.28-.11C31.98,50.87,31.92,50.94,32.09,51"/>
+<path d="M49.4,51.18c.47,0.36,1.03,0.43,0.84,0.11c-.09-.13-1.08-.28-1.09-.39C49.2,51.02,49.28,51.11,49.4,51.18"/>
+<path d="M31.06,51.28c-.79,0.22-1.53,0.7-2.25,1.1c.53-.11,1.04-.2,1.54-.41c.55-.23,1.01-.58,1.31-.88C31.62,51.09,31.36,51.18,31.06,51.28"/>
+<path d="M46.7,51.37c0,0.04,0.15,0.15,0.34,0.21c.17,0.06,0.26,0.04,0.19-.09C47.1,51.28,46.7,51.2,46.7,51.37"/>
+<path d="M27.98,52.21c-.15,0.58,0.02,0.75,0.39,0.34c.26-.26,0.26-.34,0.02-.56C28.17,51.8,28.09,51.84,27.98,52.21"/>
+<path d="M26.65,52.94c-.18,0.47-.36,0.96-.45,1.46c-.08,0.43-.59,1.05-.43,1.48c.17,0.38-.42,0.38-.59,0.55c-.28,0.28-.01,0.94-.07,1.29c-.06,0.38-.39,0.6-.45,0.98c-.05,0.31,0.37,0.63,0.3,0.75c-.09,0.13-.21,0.17-.32,0.11c-.11-.06-.21,0.11-.26,0.36l-.06,0.5l-.3-.52c-.28-.53,0-.61,0.12-1.09c.09-.38,0.04-.8,0.03-1.18l-.3,0.71c-.24,0.54-.41,0.69-.66,0.58c-.32-.11-.34-.09-.02,0.26c.35,0.41,0.62,0.91,0.81,1.4c.07,0.18,0.15,1.11,0.26,1.19c.1,0.08,0.24-.4,0.34-.33c.33,0.22-.06,0.77-.41,0.7c-.43-.09-.43-.07,0.04,0.41c.34,0.34,0.76,0.72,0.96,1.17c.18,0.42,0.12,0.83,0.41,1.23c.3,0.39,0.3,0.39,0.32-.17c0-.75,0.86-.88,0.86-1.63l-.02-.58c-.15,0.28-.49,1.18-.86,1.18c-.44,0,0.44-1.5,0.54-1.5c-.19,0.03-.34,0.12-.47,0.26c-.4,0.4-.36-.11-.32-.43c.02-.19,0.43-2.19,0.28-2.19c-.55,0-.61,1.9-.66,2.23c-.06,0.43-.29,0.19-.35-.09c-.1-.48,0.16-1.21-.13-1.64c-.18-.31,0.36-.64,0.53-.79c.28-.25,0.23-.52,0.11-.84c-.26-.8,0.32-1.66,1.29-1.91c.36-.09,0.79-.34,0.94-.54c.28-.32,0.26-.35-.13-.2c-.86,0.37-1.24,0.26-1.28-.3c-.02-.3,0.95-3.65,0.83-3.65C26.95,52.14,26.69,52.86,26.65,52.94 M25.54,57.13c-.06,0.04-.12,0.08-.18,0.13c-.17,0.03,0.05-.78,0.33-.49C25.73,56.83,25.67,57,25.54,57.13 M25.49,63.11c0,0.28-.43,0.27-.43,0C25.07,62.83,25.49,62.82,25.49,63.11"/>
+<path d="M27.79,53.15c-.2,0.15-.25,0.84-.4,1.09c-.08,0.13-1.03,1.23-.9,1.32c.06,0.06,1.51-1.36,1.69-1.48c.04-.02,0.72-.4,0.35-.42c-.29-.02-1.08-.24-.39-.5c.13-.07,0.15-.13,0.02-.13C28.02,53,27.85,53.07,27.79,53.15"/>
+<path d="M54.43,53.35c0,0.24,0.06,0.3,0.13,0.13c.06-.15,0.04-.34-.02-.41C54.47,52.98,54.41,53.11,54.43,53.35"/>
+<path d="M54.21,54.21c0,0.24,0.06,0.3,0.13,0.13c.06-.15,0.04-.34-.02-.41C54.26,53.84,54.19,53.97,54.21,54.21"/>
+<path d="M50.02,54.29c.11,0.18,0.32,0.32,0.32,0C50.34,54.03,49.87,54,50.02,54.29"/>
+<path d="M52.01,56.85c-.09,0.28-.06,0.67,0.04,0.86c.12,0.27,1.25,2.26,1.24,2.28c.19-.2-.6-1.46-.69-1.7c-.07-.18-.55-1.65-.5-1.69C52.05,56.67,52.02,56.76,52.01,56.85"/>
+<path d="M26.8,58.59c0,0.17,0.09,0.47,0.19,0.65c.26,0.39,0.26,0.04,0-.54C26.86,58.42,26.8,58.38,26.8,58.59"/>
+<path d="M26.89,60.08c.04,0.14-.17,1.19-.32,1.1c.1-.04,0.2-.11,0.28-.19c.41-.32,0.49-.99,0.13-1.23C26.8,59.67,26.78,59.77,26.89,60.08"/>
+<path d="M56.12,62.16c0,0.17,0.11,0.26,0.21,0.19C56.92,62.06,56.12,61.48,56.12,62.16"/>
+<path d="M23.87,63.6c.05,0.41,0.36,0.76,0.55,1.11c.17,0.33,0.18,0.71,0.35,1.03c.21,0.38,0.56,0.66,0.7,1.08c.03,0.09,0.25,1.12,0.53,0.65c.19-.35,0.36-1.46,0.19-1.18c-.28,0.41-.84,0.11-1.09-.62c-.17-.46-.9-1.7-.71-2.19C24.43,63.28,23.81,63.23,23.87,63.6"/>
+<path d="M55.48,64.07c0,0.38-.43,0.31-.43,0.73c0,0.45-.33,0.72-.55,1.07c-.31,0.49-.51,1.04-.73,1.58c.23-.2,0.45-.4,0.68-.6c.17-.15,0.34-.29,0.47-.48c.17-.22-.03-.29,0.12-.53c.31-.5,0.61-.87,0.74-1.46C55.88,63.89,55.48,63.51,55.48,64.07"/>
+<path d="M51.24,64.72c0,0.34,0.04,0.47,0.11,0.26c.04-.19,0.04-.49,0-.64C51.28,64.2,51.24,64.35,51.24,64.72"/>
+<path d="M52.14,65.06c0,0.89-.57,2.6-.11,3.38c.17,0.32,0.02,0.64-.75,1.61c-.26,0.33-.52,0.66-.82,0.95c-.09,0.09-.7,0.48-.42-.01c.11-.15,0.02-.13-.21,0.06c-.26,0.21-.3,0.34-.13,0.39c.77,0.29,2.39-.97,3.06-1.29c.79-.41,1.11-.71,0.43-.45c-.26,0.11-.3,0.06-.17-.17c.1-.14-1,0.67-1.14,0.58c-.13-.13,0.64-1.13,0.72-1.24c.33-.47,0.85-.81,0.88-1.41c.02-.54,0-.56-.26-.22c-.06,0.08-.3,0.41-.45,0.36c-.15-.04,0.12-.32,0.08-.37c-.11,0.02-.2,0.07-.27,0.16c-.36,0.3-.39,0.28-.24-.22c.21-.67,0.17-2.32-.06-2.75C52.16,64.22,52.12,64.46,52.14,65.06 M52.69,68.14c0,0.24-.41,0.32-.54,0.13C51.99,67.98,52.69,68,52.69,68.14"/>
+<path d="M56.23,65.28c-.09,0.13-.11,0.26-.04,0.32c.04,0.07,0.15-.04,0.21-.24C56.55,65,56.42,64.93,56.23,65.28"/>
+<path d="M27.14,66.48c-.21,0.19-.15,1.81,0.06,2.32c.13,0.3,0.19-.02,0.19-1.03C27.42,66.33,27.4,66.2,27.14,66.48"/>
+<path d="M55.33,66.59c-.26,0.13-.51,0.36-.58,0.51c-.06,0.19,0.15,0.11,0.51-.17C56.12,66.31,56.14,66.2,55.33,66.59"/>
+<path d="M23.78,68.07c0,0.11,0.11,0.15,0.21,0.09C24.55,67.88,23.78,67.67,23.78,68.07"/>
+<path d="M24.57,68.18c.06,0.24,0.66,1.25,0.86,1.31c.43,0.15-.02-1.05-.53-1.4C24.45,67.79,24.42,67.82,24.57,68.18"/>
+<path d="M26.14,68.2c0,0.11,0.11,0.32,0.21,0.5c.03,0.09,0.09,0.15,0.17,0.16C26.96,68.53,26.14,67.78,26.14,68.2"/>
+<path d="M28.02,69.02c-.13,0.28-.32,0.47-.43,0.41c-.11-.08-.09,0.07,0.09,0.32c.41,0.67,0.5-.36,0.6-.69C28.51,68.33,28.34,68.31,28.02,69.02"/>
+<path d="M50.96,69.49c-.28,0.34-.26,0.37,0.09,0.09c.04-.03,0.41-.3,0.35-.42C51.32,68.97,50.92,69.55,50.96,69.49"/>
+<path d="M48.99,69.47c-.17,0.17,0.1,0.41,0.14,0.56c.08,0.26,0,0.58-.11,0.81c-.19,0.39-.76,0.26-.67,0.62c.05,0.26-.17,1.66-.38,1.75c.03-.03,0.05-.06,0.08-.1c.48-.69,1.19-1.36,1.35-2.21C49.52,70.27,49.25,69.23,48.99,69.47"/>
+<path d="M26.27,69.75c-.34,0.07-.66,0.26-.73,0.43c-.09,0.24,0,0.26,0.3,0.13c.24-.09,0.6-.15,0.83-.15c.54,0.02,1.19,0.79,1.43,1.22c.11,0.19,0,0.38,0.18,0.52c.45,0.33,1.04,0.38,1.42,0.82c.06,0.08,0.12,0.16,0.19,0.23c-.28-.16-.32-.98-.12-1.23c.41-.51,0.86-.86,0.43-1.52c-.03-.16-.09-.21-.2-.16c-.01,0.16-.03,0.32-.07,0.48c-.13,0.25-.33,0.09-.29,0.48c0,0.21-.11,0.37-.28,0.32c-.15-.02-.41,0.04-.56,0.17c-.35,0.32-.84-.65-.98-.83c-.06-.08-.31-.46-.46-.46c-.3,0-.04-.62-.32-.62C26.95,69.6,26.61,69.67,26.27,69.75"/>
+<path d="M48.09,70.44c-.09,0.13-.11,0.26-.04,0.32c.04,0.06,0.15-.04,0.21-.24C48.41,70.16,48.28,70.09,48.09,70.44"/>
+<path d="M50.44,72.14c-.17,0.29-.96,0.09-.96,0.47c0,0.09-.73,0.41-.88,0.54c-.79,0.71-.69,0.82,0.36,0.39c.5-.2,0.95-.61,1.33-.98c.15-.14,0.32-.3,0.41-.49C50.85,71.8,50.5,72.02,50.44,72.14"/>
+<path d="M34.28,72.72c0,0.13,0.17,0.37,0.39,0.51C35,73.51,35,73.51,34.7,73.1c-.17-.24-.34-.47-.36-.52C34.3,72.54,34.28,72.59,34.28,72.72"/>
+<path d="M30.42,73.21c0,0.3,0.72,0.71,0.62,0.95c-.08,0.18-.85-.38-.9-.41c-.81-.54-1.09-.45-.41,0.13c.36,0.3,0.54,0.39,0.86,0.43c.09,0-.04,0.09-.28,0.19c-.07,0.02-.14,0.06-.19,0.12c.04-.1,1.78,0.15,1.95,0.47c.12,0.24-.17,0.41,0.06,0.69c.22,0.25,0.62,0.42,0.94,0.29c.69-.24,1.35-.15,3.08,0.41c1.48,0.47,1.54,0.52,1.26,0.9c-.56,0.76-.55-.31-1.13-.29c-.12,0.01,0.12,0.42,0.1,0.37c.45,0.86,0.75,0.9,1.48,0.28c.07-.07,0.96-.8,0.51-.87c-.48-.08-.52-.17-.56-.7c-.04-.41,1.09-.45,1.24-.04c.11,0.26,0.04,0.32-.23,0.21c-.34-.11-.34-.11-.04,0.13c.44,0.34,0.71,1.01,1.07,1.44c.15,0.18,0.41,0.55,0.67,0.58c.1,0.01,0.45-.23,0.33-.32c-.11,0-.22-.04-.31-.11c-.11-.18,0.18-.53-.13-.63c-.47-.17,0.32-1.33,0.96-1.4c.45-.06,0.71,0.18,0.96,0.53c.06,0.08,1.04,1.29,1.05,1.11c-.05-.11-.13-.2-.25-.26c-.62-.47-.28-.58,0.66-.24c.47,0.17,1.28,0.3,1.82,0.28c.81-.02,0.86-.04,0.21-.11c-1.03-.11-2.98-.71-3.13-.97c-.2-.31,0.28-.47,0.49-.48c.53-.02,0.74,0.01,1.09-.48c.26-.32,0.62-.77,0.81-.97c.04-.04,0.37-.34,0.31-.46c-.07-.15-2.45,1.87-1.63,0.68c.02-.02,0.43-.83,0.28-.76c-.41,0.19-.38,0.47-.92,0.53c-.33,0.04-.56,0.08-.47,0.45c.06,0.21-.02,0.58-.17,0.8c-.28,0.39-.3,0.36-.3-.22v-.6c-.23,0.21-.46,0.45-.72,0.63c-.25,0.18-.68,0.2-.89,0.39c-.25,0.22-.17,0.56-.52,0.76c-.92,0.5-.88,0.13,0.11-1.03l0.77-.9c-1.1,0-2.18-.03-3.28-.13c-1.33-.13-1.37-.13-.98,0.26c.28,0.3,0.43,0.34,0.53,0.15c.33-.53,2.51-.02,3.08,0.04l-.39,0.49c-.48,0.59-.74,0.29-1.35,0.02c-.17-.08-1.17-.43-.94,0.13c.09,0.26,0,0.32-.39,0.24c-.28-.04-.71-.17-.92-.26c-.28-.11-.36-.09-.26,0.08c.06,0.13,0.04,0.28-.09,0.37c-.16,0.09-.25-.21-.46-.2c-.27,0.01-.58-.15-.83-.25c-.5-.2-1.53-.49-1.84-.97c-.04-.09-.24-.13-.41-.04c-.37,0.12-.97-.54-1.18-.75C31.22,73.84,30.42,73.2,30.42,73.21 M33.63,75.6c0,0.24-.45,0.24-.83,0C32.44,75.36,33.63,75.28,33.63,75.6"/>
+<path d="M33.29,73.75c.13,0.13,0.47,0.54,0.69,0.54c.1,0-.35-.54-.34-.54c-.14-.15-.45-.54-.69-.54C32.8,73.21,33.3,73.76,33.29,73.75"/>
+<path d="M45.84,73.53c-.35,0.45,0.16,0.29,0.3,0c.06-.11,0.08-.21,0.04-.32C46.05,73.3,45.94,73.4,45.84,73.53"/>
+<path d="M37.87,73.79c.15,0.06,0.34,0.04,0.41-.02c.09-.06-.04-.13-.28-.11C37.77,73.66,37.7,73.73,37.87,73.79"/>
+<path d="M47.25,74.11c-.01,0.01-.34,0.45-.28,0.52c.09,0.09,0.7-.11,0.79-.13c.49-.11,0.58-.17,0.28-.19c-.34-.02-.45-.13-.36-.34C47.88,73.49,47.62,73.58,47.25,74.11"/>
+<path d="M27.53,74.07c.11,0.18,0.32,0.32,0.32,0C27.85,73.81,27.38,73.78,27.53,74.07"/>
+<path d="M35.35,74.31c.09,0.6,0,0.82-.32,0.71c-.21-.11-.46,0.09-.24,0.27c.19,0.15,0.6,0.11,0.83,0.2c.43,0.15,0.43-.88,0-1.25C35.37,74.03,35.32,74.05,35.35,74.31"/>
+<path d="M45.86,74.61c.01-.01-.46,0.54-.3,0.54c.23,0,0.54-.39,0.66-.54C46.83,73.92,46.53,73.92,45.86,74.61"/>
+<path d="M34.21,74.59c-.14,0.36,0.26,0.2,0.39,0.06C34.9,74.32,34.39,74.16,34.21,74.59"/>
+<path d="M28.06,74.59c0,0.04,0.19,0.13,0.43,0.19c.24,0.07,0.39,0.02,0.3-.09C28.69,74.5,28.06,74.42,28.06,74.59"/>
+<path d="M29.31,74.87c.15,0.06,0.34,0.04,0.41-.02c.09-.07-.04-.13-.28-.11C29.2,74.74,29.13,74.8,29.31,74.87"/>
+<path d="M35.99,75.04c0,0.04,0.21,0.21,0.49,0.34c.43,0.24,0.45,0.24,0.17-.09C36.37,74.95,35.99,74.8,35.99,75.04"/>
+<path d="M42.95,76.22c-.17,0.29,0.6,0.29,0.43,0C43.25,75.97,43.08,75.96,42.95,76.22"/>
+<path d="M43.7,76.44c0,0.11,0.32,0.21,0.71,0.19c.58,0,0.62-.04,0.26-.19C44.06,76.18,43.7,76.18,43.7,76.44"/>
+<path d="M45.37,76.37c.15,0.06,0.34,0.04,0.41-.02c.09-.07-.04-.13-.28-.11C45.26,76.24,45.2,76.31,45.37,76.37"/>
+<path d="M41.41,76.69c-.13,0.15-.3,0.5-.36,0.75c-.13,0.41-.09,0.47,0.19,0.37c.26-.1,0.35-1.42,0.51-.68c.16,0.78,0.07,0.72,0.82,0.94c.21,0.06,0.3,0.04,0.17-.06c-.13-.09-.32-.45-.43-.79C42.07,76.48,41.73,76.31,41.41,76.69"/>
+<path d="M33.12,77.62c.15,0.37,0.43,0.43,0.6,0.13c.06-.11-.02-.26-.21-.32C33.03,77.23,32.99,77.25,33.12,77.62"/>
+<path d="M35.09,78.05c-.36,0.5-.36,0.52,0.04,0.47c.43-.04,0.26-.3,0.46-.49c.1-.09,0.41,0.48,0.57,0.49c.2,0.01-.31-.63-.32-.64C35.48,77.58,35.43,77.6,35.09,78.05"/>
+<path d="M38.43,78.03c-.11,0.33-.73,0.29-.73,0.56c0,0.49,0.65-.1,0.77-.19c.32-.26,0.43-.47,0.3-.56C38.67,77.77,38.49,77.86,38.43,78.03"/>
+<path d="M44.17,78.2c.04,0.26,0.21,0.52,0.39,0.56c.07,0.06,0.14,0.07,0.21,0.04c.01-.13-.27-.37-.32-.48c-.12-.26,0.4-.08,0.22-.37C44.43,77.55,44.11,77.73,44.17,78.2"/>
+</g>
+</g>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug577-multiple-font-families-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug577-multiple-font-families-ref.png
new file mode 100644
index 00000000..075edd14
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug577-multiple-font-families-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug587721-text-transform-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug587721-text-transform-ref.png
new file mode 100644
index 00000000..798fc6fb
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug587721-text-transform-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug587721-text-transform.svg b/rsvg/tests/fixtures/reftests/bugs/bug587721-text-transform.svg
new file mode 100644
index 00000000..d86b6ef7
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug587721-text-transform.svg
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="utf-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg width="1179.75118pt" height="687.74173pt"
+ viewBox="0 0 1179.75118 687.74173"
+ enable-background="new 0 0 1179.75118 687.74173"
+ version="1.1" xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink" >
+
+ <g font-family="'DejaVu Sans'" font-size="1" kerning="0" font-weight="400" fill="#000000">
+ <text transform="matrix(12 0 0 12 929.88438 660.96434)">Frenchtown</text>
+ </g>
+
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug590-mask-units-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug590-mask-units-ref.png
new file mode 100644
index 00000000..3647c930
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug590-mask-units-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug590-mask-units.svg b/rsvg/tests/fixtures/reftests/bugs/bug590-mask-units.svg
new file mode 100644
index 00000000..14e2e719
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug590-mask-units.svg
@@ -0,0 +1,26 @@
+<svg preserveAspectRatio="xMidYMid" viewBox="-70 -100 140 200" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <defs>
+ <!-- A square mask -->
+ <mask id="square-mask">
+ <rect fill="#ffffff" height="49" stroke="none" width="49" x="-49" y="24.5"/>
+ </mask>
+ </defs>
+ <g fill="none" stroke="#292d2f" stroke-width="0.14">
+ <!-- Black background rectangle -->
+ <rect fill="#292d2f" height="200" stroke="#292d2f" width="140" x="-70" y="-100"/>
+
+ <!-- Draw a filled white circle and apply a square mask to only show the bottom left 90 degree arc -->
+ <g mask="url(#square-mask)">
+ <g fill="#ffffff" stroke="none" transform="matrix(-1.8369701987210297e-16 -1 1 -1.8369701987210297e-16 -24.5 49)">
+ <circle cx="24.5" cy="24.5" r="49"/>
+ </g>
+ </g>
+
+ <!-- Magenta outline of the square mask -->
+ <rect stroke="#ff00ff" height="49" fill="none" width="49" x="-49" y="24.5"/>
+ <!-- Yellow outline of the entire circle to mask -->
+ <g fill="none" stroke="#ffff00" transform="matrix(-1.8369701987210297e-16 -1 1 -1.8369701987210297e-16 -24.5 49)">
+ <circle cx="24.5" cy="24.5" r="49" />
+ </g>
+ </g>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug603550-mask-luminance-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug603550-mask-luminance-ref.png
new file mode 100644
index 00000000..456b1982
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug603550-mask-luminance-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug603550-mask-luminance.svg b/rsvg/tests/fixtures/reftests/bugs/bug603550-mask-luminance.svg
new file mode 100644
index 00000000..19c40b2f
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug603550-mask-luminance.svg
@@ -0,0 +1,130 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ width="744.09448819"
+ height="1052.3622047">
+ <defs
+ id="defs34">
+ <mask
+ maskUnits="userSpaceOnUse"
+ id="masky"
+ x="0"
+ y="0"
+ width='500'
+ height='500'>
+ <g>
+ <rect
+ style="fill:white; stroke:none"
+ id="rect128"
+ width="500"
+ height="500"
+ x="0"
+ y="0" />
+ </g>
+ </mask>
+ </defs>
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <rect
+ style="fill:#000000;fill-opacity:1;stroke:none"
+ id="rect42"
+ width="600"
+ height="300"
+ x="0"
+ y="0"/>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <g mask="url(#masky)" >
+ <rect
+ style="fill:#000000;fill-opacity:1;stroke:none"
+ id="rect42"
+ width="600"
+ height="300"
+ x="0"
+ y="300"/>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <rect
+ style="fill:#000000;fill-opacity:1;stroke:none"
+ id="rect42"
+ width="50"
+ height="600"
+ x="275"
+ y="0"/>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug609-clippath-transform-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug609-clippath-transform-ref.png
new file mode 100644
index 00000000..58924a21
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug609-clippath-transform-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug609-clippath-transform.svg b/rsvg/tests/fixtures/reftests/bugs/bug609-clippath-transform.svg
new file mode 100644
index 00000000..a689a06b
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug609-clippath-transform.svg
@@ -0,0 +1,23 @@
+<svg xmlns="http://www.w3.org/2000/svg"
+ width="100"
+ height="100">
+
+ <rect width="100"
+ height="100"
+ x="0"
+ y="0"
+ fill="black" />
+
+ <rect clip-path="url(#clip)"
+ width="100"
+ height="100"
+ x="0"
+ y="0"
+ fill="red" />
+
+ <defs>
+ <clipPath id="clip" transform="translate(25, 25)">
+ <rect width="50" height="50" x="0" y="0"/>
+ </clipPath>
+ </defs>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug634324-blur-negative-transform-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug634324-blur-negative-transform-ref.png
new file mode 100644
index 00000000..b87da96f
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug634324-blur-negative-transform-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug634324-blur-negative-transform.svg b/rsvg/tests/fixtures/reftests/bugs/bug634324-blur-negative-transform.svg
new file mode 100644
index 00000000..8b8278b7
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug634324-blur-negative-transform.svg
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg width="640" height="480"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg">
+ <defs>
+ <filter id="filter5259">
+ <feGaussianBlur stdDeviation="10" />
+ </filter>
+ </defs>
+ <path
+ d="m 254.28573,198.07648 -83.98834,-2.98146 -50.07031,67.49735 -23.118289,-80.79897 -79.666374,-26.76187 69.700445,-46.95505 0.833789,-84.0371 66.195529,51.779153 80.18169,-25.17591 -28.78936,78.956327 z"
+ transform="matrix(-0.2675823,1.2978266,-1.2978266,-0.2675823,432.82964,76.441279)"
+ style="filter:url(#filter5259)" />
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug642-nested-tspan-dx-dy-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug642-nested-tspan-dx-dy-ref.png
new file mode 100644
index 00000000..81887de8
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug642-nested-tspan-dx-dy-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug642-nested-tspan-dx-dy.svg b/rsvg/tests/fixtures/reftests/bugs/bug642-nested-tspan-dx-dy.svg
new file mode 100644
index 00000000..175d00c8
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug642-nested-tspan-dx-dy.svg
@@ -0,0 +1,17 @@
+<svg width="500" height="500" xmlns="http://www.w3.org/2000/svg" version="1.1">
+ <rect x="0" y="0" width="500" height="500" fill="white"/>
+
+ <!-- with buggy #642 these will overlap -->
+ <text x="100" y="100" fill="black" style="font-family: sans-serif; font-size: 20px;">
+ <tspan x="100" y="100" dy="0"><tspan>one</tspan></tspan>
+ <tspan x="100" y="100" dy="20"><tspan>two</tspan></tspan>
+ <tspan x="100" y="100" dy="40"><tspan>three</tspan></tspan>
+ </text>
+
+ <!-- but these won't, note the whitespace inside the outermost tspans -->
+ <text x="100" y="200" fill="black" style="font-family: sans-serif; font-size: 20px;">
+ <tspan x="100" y="200" dy="0"> <tspan>one</tspan></tspan>
+ <tspan x="100" y="200" dy="20"> <tspan>two</tspan></tspan>
+ <tspan x="100" y="200" dy="40"> <tspan>three</tspan></tspan>
+ </text>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug667-tspan-visibility-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug667-tspan-visibility-ref.png
new file mode 100644
index 00000000..3b48cb6d
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug667-tspan-visibility-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug667-tspan-visibility.svg b/rsvg/tests/fixtures/reftests/bugs/bug667-tspan-visibility.svg
new file mode 100644
index 00000000..7919fab3
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug667-tspan-visibility.svg
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<svg viewBox="0 0 300 300" xmlns="http://www.w3.org/2000/svg" version="1.1">
+ <g>
+ <!-- text and tspans all visible -->
+ <text x="10" y="10" font-family="sans" font-size="12">
+ foo
+ <tspan>bar</tspan>
+ <tspan>baz</tspan>
+ </text>
+
+ <!-- tspan with display none -->
+ <text x="10" y="50" font-family="sans" font-size="12">
+ foo
+ <tspan display="none">bar</tspan>
+ <tspan>baz</tspan>
+ </text>
+
+ <!-- tspan with visibility hidden -->
+ <text x="10" y="100" font-family="sans" font-size="12">
+ foo
+ <tspan visibility="hidden">bar</tspan>
+ <tspan>baz</tspan>
+ </text>
+
+ </g>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug668-small-caps-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug668-small-caps-ref.png
new file mode 100644
index 00000000..42de8479
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug668-small-caps-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug668-small-caps.svg b/rsvg/tests/fixtures/reftests/bugs/bug668-small-caps.svg
new file mode 100644
index 00000000..a69f52b5
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug668-small-caps.svg
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="300" height="100">
+ <!-- This doesn't work with font-family:sans - one needs to use the real font name -->
+ <text x="10" y="70" style="font-family:Roboto; font-size:40; font-variant:small-caps;">BlahBlehBlih</text>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug689832-unresolved-gradient-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug689832-unresolved-gradient-ref.png
new file mode 100644
index 00000000..64cbe5c0
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug689832-unresolved-gradient-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug689832-unresolved-gradient.svg b/rsvg/tests/fixtures/reftests/bugs/bug689832-unresolved-gradient.svg
new file mode 100644
index 00000000..15413d83
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug689832-unresolved-gradient.svg
@@ -0,0 +1,220 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ id="Ebene_1"
+ x="0px"
+ y="0px"
+ width="256px"
+ height="18px"
+ viewBox="0 0 256 18"
+ enable-background="new 0 0 256 18"
+ xml:space="preserve"
+ sodipodi:version="0.32"
+ inkscape:version="0.47 r22583"
+ sodipodi:docname="Button_Single_Normal.svg"
+ inkscape:output_extension="org.inkscape.output.svg.inkscape"
+ inkscape:export-filename="C:\Users\Markus\Desktop\OMAN SOL\ownThemes\vThemes\Button\Single\Button_Single_Normal.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90"><sodipodi:namedview
+ inkscape:window-height="667"
+ inkscape:window-width="640"
+ inkscape:pageshadow="2"
+ inkscape:pageopacity="0.0"
+ guidetolerance="10.0"
+ gridtolerance="10.0"
+ objecttolerance="10.0"
+ borderopacity="1.0"
+ bordercolor="#666666"
+ pagecolor="#ffffff"
+ id="base"
+ showgrid="false"
+ inkscape:zoom="2.125"
+ inkscape:cx="128"
+ inkscape:cy="9"
+ inkscape:window-x="58"
+ inkscape:window-y="58"
+ inkscape:current-layer="Ebene_1"
+ inkscape:window-maximized="0" /><metadata
+ id="metadata29"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+ id="defs27"><inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 9 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="256 : 9 : 1"
+ inkscape:persp3d-origin="128 : 6 : 1"
+ id="perspective7327" /></defs>
+<g
+ id="g3">
+ <rect
+ width="256"
+ height="18"
+ id="rect5" />
+ <g
+ id="g7">
+ <linearGradient
+ id="SVGID_1_"
+ gradientUnits="userSpaceOnUse"
+ x1="60.0854"
+ y1="-58.9146"
+ x2="191.20831"
+ y2="71.267044">
+ <stop
+ offset="0"
+ style="stop-color:#0000d4;stop-opacity:1"
+ id="stop10" />
+ <stop
+ offset="0.1459"
+ style="stop-color:#0000d4;stop-opacity:1"
+ id="stop12" />
+ <stop
+ offset="0.5197"
+ style="stop-color:#000080;stop-opacity:1"
+ id="stop14" />
+ <stop
+ offset="0.8174"
+ style="stop-color:#000055;stop-opacity:1"
+ id="stop16" />
+ <stop
+ offset="1"
+ style="stop-color:#00002b;stop-opacity:1"
+ id="stop18" />
+ </linearGradient>
+ <path
+ fill="url(#SVGID_1_-839-88)"
+ d="M256,2c0-1.105-0.896-2-2-2H2C0.895,0,0,0.895,0,2v14c0,1.104,0.895,2,2,2h252c1.104,0,2-0.896,2-2 V2z"
+ id="path20"
+ style="fill:url(#SVGID_1_-510-219)" />
+ <g
+ opacity="0.4"
+ id="g22">
+ <path
+ fill="#ffffff"
+ d="M254,0H2C0.895,0,0,0.895,0,2v2.707C38.479,7.436,82.145,9,128,9c45.791,0,89.176-1.541,128-4.293V2 C256,0.895,255.104,0,254,0z"
+ id="path24" />
+ </g>
+ <linearGradient
+ id="SVGID_1_-839"
+ gradientUnits="userSpaceOnUse"
+ x1="60.0854"
+ y1="-58.9146"
+ x2="191.20831"
+ y2="71.267044">
+ <stop
+ offset="0"
+ style="stop-color:#00d400;stop-opacity:1"
+ id="stop7347" />
+ <stop
+ offset="0.1459"
+ style="stop-color:#00d400;stop-opacity:1"
+ id="stop7349" />
+ <stop
+ offset="0.5197"
+ style="stop-color:#008000;stop-opacity:1"
+ id="stop7351" />
+ <stop
+ offset="0.8174"
+ style="stop-color:#005500;stop-opacity:1"
+ id="stop7353" />
+ <stop
+ offset="1"
+ style="stop-color:#002b00;stop-opacity:1"
+ id="stop7355" />
+ </linearGradient>
+ <linearGradient
+ id="SVGID_1_-510"
+ gradientUnits="userSpaceOnUse"
+ x1="60.0854"
+ y1="-58.9146"
+ x2="191.20831"
+ y2="71.267044">
+ <stop
+ offset="0"
+ style="stop-color:#00d400;stop-opacity:1"
+ id="stop7358" />
+ <stop
+ offset="0.1459"
+ style="stop-color:#00d400;stop-opacity:1"
+ id="stop7360" />
+ <stop
+ offset="0.5197"
+ style="stop-color:#008000;stop-opacity:1"
+ id="stop7362" />
+ <stop
+ offset="0.8174"
+ style="stop-color:#005500;stop-opacity:1"
+ id="stop7364" />
+ <stop
+ offset="1"
+ style="stop-color:#002b00;stop-opacity:1"
+ id="stop7366" />
+ </linearGradient>
+ <linearGradient
+ id="SVGID_1_-839-88"
+ gradientUnits="userSpaceOnUse"
+ x1="60.0854"
+ y1="-58.9146"
+ x2="191.20831"
+ y2="71.267044">
+ <stop
+ offset="0"
+ style="stop-color:#0000d4;stop-opacity:1"
+ id="stop7425" />
+ <stop
+ offset="0.1459"
+ style="stop-color:#0000d4;stop-opacity:1"
+ id="stop7427" />
+ <stop
+ offset="0.5197"
+ style="stop-color:#000080;stop-opacity:1"
+ id="stop7429" />
+ <stop
+ offset="0.8174"
+ style="stop-color:#000055;stop-opacity:1"
+ id="stop7431" />
+ <stop
+ offset="1"
+ style="stop-color:#00002b;stop-opacity:1"
+ id="stop7433" />
+ </linearGradient>
+ <linearGradient
+ id="SVGID_1_-510-219"
+ gradientUnits="userSpaceOnUse"
+ x1="60.0854"
+ y1="-58.9146"
+ x2="191.20831"
+ y2="71.267044">
+ <stop
+ offset="0"
+ style="stop-color:#0000d4;stop-opacity:1"
+ id="stop7436" />
+ <stop
+ offset="0.1459"
+ style="stop-color:#0000d4;stop-opacity:1"
+ id="stop7438" />
+ <stop
+ offset="0.5197"
+ style="stop-color:#000080;stop-opacity:1"
+ id="stop7440" />
+ <stop
+ offset="0.8174"
+ style="stop-color:#000055;stop-opacity:1"
+ id="stop7442" />
+ <stop
+ offset="1"
+ style="stop-color:#00002b;stop-opacity:1"
+ id="stop7444" />
+ </linearGradient>
+ </g>
+</g>
+</svg> \ No newline at end of file
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug718-rect-negative-rx-ry-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug718-rect-negative-rx-ry-ref.png
new file mode 100644
index 00000000..5fd1b8cf
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug718-rect-negative-rx-ry-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug718-rect-negative-rx-ry.svg b/rsvg/tests/fixtures/reftests/bugs/bug718-rect-negative-rx-ry.svg
new file mode 100644
index 00000000..1f526d16
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug718-rect-negative-rx-ry.svg
@@ -0,0 +1,11 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="300" height="100">
+<!-- Negative values for rx/ry should be ignored -->
+ <rect x="20" y="20" width="60" height="60" fill="red"/>
+ <rect x="10" y="10" width="80" height="80" rx="-10" ry="5" fill="lime"/>
+
+ <rect x="120" y="20" width="60" height="60" fill="red"/>
+ <rect x="110" y="10" width="80" height="80" rx="5" ry="-10" fill="lime"/>
+
+ <rect x="220" y="20" width="60" height="60" fill="red"/>
+ <rect x="210" y="10" width="80" height="80" rx="-5" ry="-10" fill="lime"/>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug730-font-scaling-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug730-font-scaling-ref.png
new file mode 100644
index 00000000..5fef4bdf
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug730-font-scaling-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug730-font-scaling.svg b/rsvg/tests/fixtures/reftests/bugs/bug730-font-scaling.svg
new file mode 100644
index 00000000..5a8ea2b8
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug730-font-scaling.svg
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="500" height="200">
+ <svg x="10" y="0" width="480" height="40" viewBox="0 0 480 40">
+ <text x="0" y="25" font-size="20" font-family="sans">How vexingly quick daft zebras jump!</text>
+ </svg>
+
+ <svg x="10" y="40" width="480" height="40" viewBox="0 0 240 20">
+ <text x="0" y="12.5" font-size="10" font-family="sans">How vexingly quick daft zebras jump!</text>
+ </svg>
+
+ <svg x="10" y="80" width="480" height="40" viewBox="0 0 120 10">
+ <text x="0" y="6.25" font-size="5" font-family="sans">How vexingly quick daft zebras jump!</text>
+ </svg>
+
+ <svg x="10" y="120" width="480" height="40" viewBox="0 0 60 5">
+ <text x="0" y="3.125" font-size="2.5" font-family="sans">How vexingly quick daft zebras jump!</text>
+ </svg>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug738367-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug738367-ref.png
new file mode 100644
index 00000000..dd1af4a1
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug738367-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug738367.svg b/rsvg/tests/fixtures/reftests/bugs/bug738367.svg
new file mode 100644
index 00000000..00860a44
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug738367.svg
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg id="svg2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 800 300" version="1.1">
+ <path fill="#AAA" stroke="#F00" d="m100,50c100,0,100,100,0,150s-100,50,0,50z"/>
+ <path fill="#AAA" stroke="#F00" d="m300,50c100,0,100,100,0,150h0s-100,50,0,50z"/>
+ <path fill="#AAA" stroke="#F00" d="m500,50c100,0,100,100,0,150v0s-100,50,0,50z"/>
+ <path fill="#AAA" stroke="#F00" d="m700,50c100,0,100,100,0,150l0,0s-100,50,0,50z"/>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug749415-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug749415-ref.png
new file mode 100644
index 00000000..b843dcdd
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug749415-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug749415.svg b/rsvg/tests/fixtures/reftests/bugs/bug749415.svg
new file mode 100644
index 00000000..15865a5a
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug749415.svg
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" version="1.1" width="643.56433" height="257.42575" id="svg2852">
+ <defs id="defs2854"/>
+ <g transform="translate(-58.921894,66.069669)" id="layer1">
+ <text x="69.253036" y="-29.653135" id="text3167" xml:space="preserve" style="font-size:32px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans"><tspan x="69.253036" y="-29.653135" id="tspan3169">1</tspan></text>
+ <text x="69.253036" y="179.25775" id="text3167-4" xml:space="preserve" style="font-size:32px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans"><tspan x="69.253036" y="179.25775" id="tspan3273">6</tspan></text>
+ <text x="69.253036" y="137.47557" id="text3167-48" xml:space="preserve" style="font-size:32px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans"><tspan x="69.253036" y="137.47557" id="tspan3271">5</tspan></text>
+ <text x="69.253036" y="95.693436" id="text3167-45" xml:space="preserve" style="font-size:32px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans"><tspan x="69.253036" y="95.693436" id="tspan3269">4</tspan></text>
+ <text x="69.253036" y="53.911259" id="text3167-7" xml:space="preserve" style="font-size:32px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans"><tspan x="69.253036" y="53.911259" id="tspan3267">3</tspan></text>
+ <text x="69.253036" y="12.129059" id="text3167-2" xml:space="preserve" style="font-size:32px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans"><tspan x="69.253036" y="12.129059" id="tspan3265">2</tspan></text>
+ <g transform="matrix(1.5,0,0,1.5,397.76677,54.817007)" id="g3300">
+ <rect width="4.8888898" height="4.6808534" x="-192.98616" y="-71.900017" id="rect2862-2-1-7-2-61" style="fill:#19b2ce;fill-opacity:1;fill-rule:nonzero;stroke:none"/>
+ <rect width="2" height="16" x="-87.267052" y="-182.85747" transform="matrix(0.70710678,-0.70710678,0.70710678,0.70710678,0,0)" id="rect2862-2-1-7-2-2-4-42" style="fill:#19b2ce;fill-opacity:1;fill-rule:nonzero;stroke:none"/>
+ </g>
+ <text x="164.86249" y="-28.66876" id="text3304" xml:space="preserve" style="font-size:32px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans"><tspan x="164.86249" y="-28.66876" id="tspan3308">Tip mass 0.5 kg</tspan></text>
+ <rect width="44.000343" height="14.666781" x="97.317757" y="-7.0793319" id="rect2862-2-1-7-4-4-6" style="fill:#ce9919;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1;stroke-linecap:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"/>
+ <text x="161.62811" y="12.691559" id="text3304-7" xml:space="preserve" style="font-size:32px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans"><tspan x="161.62811" y="12.691559" id="tspan3408">Liquid crystal device</tspan></text>
+ <rect width="28.712872" height="28.712872" x="104.96149" y="27.906385" id="rect3434" style="fill:#cdd9ec;fill-opacity:1;fill-rule:nonzero;stroke:none"/>
+ <text x="161.62811" y="54.473759" id="text3304-4" xml:space="preserve" style="font-size:32px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans"><tspan x="161.62811" y="54.473759" id="tspan3461">Membrane 7.5 um thick</tspan></text>
+ <rect width="26.400206" height="13.200104" x="106.11783" y="77.429321" id="rect2862-2-1-7-4-44-4-2-33" style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#808080;stroke-width:0.73499995;stroke-linecap:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"/>
+ <text x="162.65936" y="96.677811" id="text3304-7-2" xml:space="preserve" style="font-size:32px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans"><tspan x="162.65936" y="96.677811" id="tspan3542">Solar cells 25 um thick</tspan></text>
+ <g transform="translate(-11.463337,-2.9292343)" id="g3588">
+ <path d="m 82.3125,172.71875 -32.21875,32.21875 2.8125,0 30.8125,-30.8125 -1.40625,-1.40625 z" transform="translate(58.921894,-65.07957)" id="rect2862-2-1-7-2-2-3-8-7" style="fill:#ceaa19;fill-opacity:1;fill-rule:nonzero;stroke:none"/>
+ <path d="m 92.21875,182.59375 -23.3125,23.34375 2.8125,0 21.90625,-21.90625 -1.40625,-1.4375 z" transform="translate(58.921894,-65.07957)" id="rect2862-2-1-7-2-2-3-5-9-9" style="fill:#1982ce;fill-opacity:1;fill-rule:nonzero;stroke:none"/>
+ </g>
+ <text x="162.47852" y="138.45995" id="text3304-3" xml:space="preserve" style="font-size:32px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans"><tspan x="162.47852" y="138.45995" id="tspan3617">Tethers</tspan></text>
+ <path d="m 187.32394,828.41852 a 83.098595,83.098595 0 1 1 -166.197185,0 83.098595,83.098595 0 1 1 166.197185,0 z" transform="matrix(0.24067796,0,0,0.24067796,94.233178,-31.78839)" id="path3939-9" style="fill:#0000ff;fill-opacity:1;fill-rule:nonzero;stroke:none"/>
+ <path d="m 187.32394,828.41852 a 83.098595,83.098595 0 1 1 -166.197185,0 83.098595,83.098595 0 1 1 166.197185,0 z" transform="matrix(0.06016949,0,0,0.06016949,438.17176,92.436)" id="path3939-5-1-8" style="fill:#f3dd00;fill-opacity:1;fill-rule:nonzero;stroke:none"/>
+ <path d="m 187.32394,828.41852 a 83.098595,83.098595 0 1 1 -166.197185,0 83.098595,83.098595 0 1 1 166.197185,0 z" transform="matrix(0.06016949,0,0,0.06016949,453.02324,75.60432)" id="path3939-5-6-6" style="fill:#f3dd00;fill-opacity:1;fill-rule:nonzero;stroke:none"/>
+ <path d="m 187.32394,828.41852 a 83.098595,83.098595 0 1 1 -166.197185,0 83.098595,83.098595 0 1 1 166.197185,0 z" transform="matrix(0.06016949,0,0,0.06016949,424.31037,84.5152)" id="path3939-5-5-5" style="fill:#f3dd00;fill-opacity:1;fill-rule:nonzero;stroke:none"/>
+ <path d="m 187.32394,828.41852 a 83.098595,83.098595 0 1 1 -166.197185,0 83.098595,83.098595 0 1 1 166.197185,0 z" transform="matrix(0.06016949,0,0,0.06016949,440.15195,61.74293)" id="path3939-5-0-0" style="fill:#f3dd00;fill-opacity:1;fill-rule:nonzero;stroke:none"/>
+ <text x="159.24414" y="179.82025" id="text3304-3-6" xml:space="preserve" style="font-size:32px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans"><tspan x="159.24414" y="179.82025" id="tspan3684">Main body</tspan></text>
+ <text x="485.80463" y="138.83588" id="text3304-3-6-2" xml:space="preserve" style="font-size:32px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans"><tspan x="485.80463" y="138.83588" id="tspan3711">Instruments</tspan></text>
+ <text x="392.2764" y="138.83588" id="text3167-4-8" xml:space="preserve" style="font-size:32px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans"><tspan x="392.2764" y="138.83588" id="tspan3738">7</tspan></text>
+ <rect width="643.56433" height="257.42575" x="0" y="-0.99009901" transform="translate(58.921894,-65.07957)" id="rect3740" style="fill:none;stroke:none"/>
+ </g>
+</svg> \ No newline at end of file
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug760180-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug760180-ref.png
new file mode 100644
index 00000000..a6838ca4
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug760180-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug760180.svg b/rsvg/tests/fixtures/reftests/bugs/bug760180.svg
new file mode 100644
index 00000000..c1929f81
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug760180.svg
@@ -0,0 +1,159 @@
+<svg id="svg-root" width="100%" height="100%"
+ viewBox="0 0 480 360" xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink">
+ <!--======================================================================-->
+ <!--= Copyright 2008 World Wide Web Consortium, (Massachusetts =-->
+ <!--= Institute of Technology, European Research Consortium for =-->
+ <!--= Informatics and Mathematics (ERCIM), Keio University). =-->
+ <!--= All Rights Reserved. =-->
+ <!--= See http://www.w3.org/Consortium/Legal/. =-->
+ <!--======================================================================-->
+ <d:SVGTestCase xmlns:d="http://www.w3.org/2000/02/svg/testsuite/description/"
+ template-version="1.4" reviewer="AG" author="ED" status="accepted"
+ version="$Revision: 1.9 $" testname="$RCSfile: painting-marker-06-f.svg,v $">
+ <d:testDescription xmlns="http://www.w3.org/1999/xhtml" href="http://www.w3.org/TR/SVG11/painting.html#MarkerElement">
+ <p>
+ Tests the basic support for markers. For the three tests, there
+ should be two identical paths with markers drawn. The path on the left is
+ rendered using the marker elements. The path on the right is rendered using
+ the equivalent SVG, showing what the marked path should look like.
+ </p>
+ <p>
+ This test is similar to the painting-marker-01-f.svg test, but has some viewBox attributes
+ that have a non-zero offset.
+ </p>
+ <p>
+ The top test examines the basic support for the marker element and style. The markers are purple rectangles.
+ </p>
+ <p>
+ The middle test examines the support for the different styles of marker properties. The
+ "marker-start" property defines the marker to use at the first vertex of the marked path,
+ in this case a purple rectangle. The "marker-end" property defines the marker to use at the
+ last vertex of the marked path, in this case a blue triangle. The "marker-mid" property
+ defines the marker to use at all vertices, other than the first and last, of the marked path,
+ in this case a green circle.
+ </p>
+ <p>
+ The bottom test examines the support for marker orientation along the
+ path direction. The second vertex, the top right corner of the path, has a marker that
+ is rotated 45 degrees, since that is the average of the horizontal and vertical segments
+ each side. The last vertex, the bottom right corner of the path, has a marker rotated 90
+ degrees since that is the direction of the last path segment.
+ </p>
+ </d:testDescription>
+ <d:operatorScript xmlns="http://www.w3.org/1999/xhtml">
+ <p>
+ Run the test. No interaction required.
+ </p>
+ </d:operatorScript>
+ <d:passCriteria xmlns="http://www.w3.org/1999/xhtml">
+ <p>
+ The rendered picture should match the reference image, except for possible
+ variations in the labelling text (per CSS2 rules).
+ </p>
+ </d:passCriteria>
+ </d:SVGTestCase>
+ <title id="test-title">$RCSfile: painting-marker-06-f.svg,v $</title>
+ <defs>
+ <font-face
+ font-family="SVGFreeSansASCII"
+ unicode-range="U+0-7F">
+ <font-face-src>
+ <font-face-uri xlink:href="../resources/SVGFreeSans.svg#ascii"/>
+ </font-face-src>
+ </font-face>
+ </defs>
+ <g id="test-body-content" font-family="SVGFreeSansASCII,sans-serif" font-size="18">
+ <defs>
+ <!-- ===================================================================== -->
+ <!-- Define a few simple marker elements -->
+ <!-- ===================================================================== -->
+ <marker id="marker1" viewBox="20 20 10 10" markerWidth="2" markerHeight="2" refX="25" refY="25" markerUnits="strokeWidth">
+ <rect x="20" y="20" width="10" height="10" fill="purple" stroke="none"/>
+ </marker>
+ <marker id="marker2" viewBox="-5 -5 10 10" markerWidth="2" markerHeight="2" markerUnits="strokeWidth" orient="auto">
+ <path d="M 0 -5 L 5 5 L -5 5 Z" fill="blue" stroke="none"/>
+ </marker>
+ <marker id="markerStart" viewBox="0 0 10 10" markerWidth="2" markerHeight="2" refX="5" refY="5" markerUnits="strokeWidth">
+ <rect width="10" height="10" fill="purple" stroke="none"/>
+ </marker>
+ <marker id="markerMiddle" viewBox="0 0 10 10" markerWidth="2" markerHeight="2" refX="5" refY="5" markerUnits="strokeWidth">
+ <circle cx="5" cy="5" r="5" fill="green" stroke="none"/>
+ </marker>
+ <marker id="markerEnd" viewBox="0 0 10 10" markerWidth="2" markerHeight="2" refX="5" refY="5" markerUnits="strokeWidth">
+ <path d="M 5 0 L 10 10 L 0 10 Z" fill="blue" stroke="none"/>
+ </marker>
+ </defs>
+ <!-- ===================================================================== -->
+ <!-- Basic Marker Test -->
+ <!-- ===================================================================== -->
+ <text x="170" y="30" font-size="14">Basic Markers</text>
+ <path fill="none" stroke="black" stroke-width="8" marker-start="url(#marker1)" marker-mid="url(#marker1)" marker-end="url(#marker1)" d="M 130 40 L 180 40 L 180 90"/>
+ <!-- ===================================================================== -->
+ <!-- Generate the equivalent SVG -->
+ <!-- ===================================================================== -->
+ <g transform="translate(120,0)">
+ <path fill="none" stroke="black" stroke-width="8" d="M 130 40 L 180 40 L 180 90"/>
+ <g transform="translate(130,40) scale(8) scale(0.2, 0.2) translate(-5, -5)" fill="none" stroke="black" stroke-width="8">
+ <rect width="10" height="10" fill="purple" stroke="none"/>
+ </g>
+ <g transform="translate(180,40) scale(8) scale(0.2, 0.2) translate(-5, -5)" fill="none" stroke="black" stroke-width="8">
+ <rect width="10" height="10" fill="purple" stroke="none"/>
+ </g>
+ <g transform="translate(180,90) scale(8) scale(0.2, 0.2) translate(-5, -5)" fill="none" stroke="black" stroke-width="8">
+ <rect width="10" height="10" fill="purple" stroke="none"/>
+ </g>
+ </g>
+ <!-- ===================================================================== -->
+ <!-- Start, Middle and End Marker Test -->
+ <!-- ===================================================================== -->
+ <text x="145" y="125" font-size="14">Start, Middle and End</text>
+ <path fill="none" stroke="black" stroke-width="8" marker-start="url(#markerStart)" marker-mid="url(#markerMiddle)" marker-end="url(#markerEnd)" d="M 130 135 L 180 135 L 180 185"/>
+ <!-- ===================================================================== -->
+ <!-- Generate the equivalent SVG -->
+ <!-- ===================================================================== -->
+ <g transform="translate(120,0)">
+ <path fill="none" stroke="black" stroke-width="8" d="M 130 135 L 180 135 L 180 185"/>
+ <g transform="translate(130,135) scale(8) scale(0.2, 0.2) translate(-5, -5)" fill="none" stroke="black" stroke-width="8">
+ <rect width="10" height="10" fill="purple" stroke="none"/>
+ </g>
+ <g transform="translate(180,135) scale(8) scale(0.2, 0.2) translate(-5, -5)" fill="none" stroke="black" stroke-width="8">
+ <circle cx="5" cy="5" r="5" fill="green" stroke="none"/>
+ </g>
+ <g transform="translate(180,185) scale(8) scale(0.2, 0.2) translate(-5, -5)" fill="none" stroke="black" stroke-width="8">
+ <path d="M 5 0 L 10 10 L 0 10 Z" fill="blue" stroke="none"/>
+ </g>
+ </g>
+ <!-- ===================================================================== -->
+ <!-- Auto Orientation Marker Test -->
+ <!-- ===================================================================== -->
+ <text x="145" y="220" font-size="14">Automatic Orientation</text>
+ <path fill="none" stroke="black" stroke-width="8" marker-start="url(#marker2)" marker-mid="url(#marker2)" marker-end="url(#marker2)" d="M 130 230 L 180 230 L 180 280"/>
+ <!-- ===================================================================== -->
+ <!-- Generate the equivalent SVG -->
+ <!-- ===================================================================== -->
+ <g transform="translate(120,0)">
+ <path fill="none" stroke="black" stroke-width="8" d="M 130 230 L 180 230 L 180 280"/>
+ <g transform="translate(130,230) rotate(0) scale(8) scale(0.2, 0.2) translate(-5, -5)" fill="none" stroke="black" stroke-width="8">
+ <path d="M 5 0 L 10 10 L 0 10 Z" fill="blue" stroke="none"/>
+ </g>
+ <g transform="translate(180,230) rotate(45) scale(8) scale(0.2, 0.2) translate(-5, -5)" fill="none" stroke="black" stroke-width="8">
+ <path d="M 5 0 L 10 10 L 0 10 Z" fill="blue" stroke="none"/>
+ </g>
+ <g transform="translate(180,280) rotate(90) scale(8) scale(0.2, 0.2) translate(-5, -5)" fill="none" stroke="black" stroke-width="8">
+ <path d="M 5 0 L 10 10 L 0 10 Z" fill="blue" stroke="none"/>
+ </g>
+ </g>
+ </g>
+ <g font-family="SVGFreeSansASCII,sans-serif" font-size="32">
+ <text id="revision" x="10" y="340" stroke="none"
+ fill="black">$Revision: 1.9 $</text>
+ </g>
+ <rect id="test-frame" x="1" y="1" width="478" height="358" fill="none" stroke="#000"/>
+ <!-- comment out this watermark once the test is approved -->
+ <!--<g id="draft-watermark">
+ <rect x="1" y="1" width="478" height="20" fill="red" stroke="black" stroke-width="1"/>
+ <text font-family="SVGFreeSansASCII,sans-serif" font-weight="bold" font-size="20" x="240"
+ text-anchor="middle" y="18" stroke-width="0.5" stroke="black" fill="white">DRAFT</text>
+ </g>-->
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug761175-recursive-masks-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug761175-recursive-masks-ref.png
new file mode 100644
index 00000000..aceb5d20
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug761175-recursive-masks-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug761175-recursive-masks.svg b/rsvg/tests/fixtures/reftests/bugs/bug761175-recursive-masks.svg
new file mode 100644
index 00000000..22482664
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug761175-recursive-masks.svg
@@ -0,0 +1,50 @@
+<svg version="1.1" baseProfile="full" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" stroke-linecap="round" stroke-linejoin="round" fill-rule="evenodd" width="321.00" height="27.00" viewBox="0 0 6420 540">
+ <metadata>
+ <rdf:RDF>
+ <rdf:Description>
+ <dc:description>MSS/MilX-Export to SVG</dc:description>
+ <dc:publisher>gs-soft AG</dc:publisher>
+ </rdf:Description>
+ </rdf:RDF>
+ </metadata>
+ <defs>
+ <style type="text/css">
+ <![CDATA[
+ .Pen0 {fill:none;stroke:black;stroke-width:42;}
+ .Pen1 {fill:none;stroke:black;stroke-width:44;}
+ ]]>
+ </style>
+ <mask id="Mask_ClipObj0_ex_ClipObj1" maskUnits="userSpaceOnUse" x="0" y="0" width="6420" height="540">
+ <g>
+ <use xlink:href="#ClipObj0" fill="white"/>
+ <use xlink:href="#ClipObj1" fill="black"/>
+ </g>
+ </mask>
+ <g id="ClipObj0_ex_ClipObj1">
+ <use xlink:href="#ClipObj0" mask="url(#Mask_ClipObj0_ex_ClipObj1)"/>
+ </g>
+ <mask id="Region0" maskUnits="userSpaceOnUse" x="0" y="0" width="6420" height="540" fill-rule="nonzero">
+ <use xlink:href="#ClipObj0_ex_ClipObj1" fill="white"/>
+ </mask>
+ <mask id="Region1" maskUnits="userSpaceOnUse" x="0" y="0" width="6420" height="540" fill-rule="nonzero">
+ <use xlink:href="#ClipObj0" fill="white"/>
+ </mask>
+ <rect id="ClipObj0" x="0" y="0" width="6420" height="540"/>
+ <polygon id="ClipObj1" points="2760,20 3660,20 3660,500 2760,500"/>
+ <g id="Block1">
+ <g transform="matrix(0.068 0 0 0.068 2 2)">
+ <polyline points="480,0 300,300" class="Pen1"/>
+ </g>
+ </g>
+ </defs>
+ <g mask="url(#Region0)">
+ <g transform="matrix(1.66667 0 0 1.66667 0 0)">
+ <polyline points="30,156 3810,156" class="Pen0"/>
+ </g>
+ </g>
+ <g mask="url(#Region1)">
+ <g transform="matrix(19.529 0 0 19.1333 2751.67 21.6667)">
+ <use xlink:href="#Block1"/>
+ </g>
+ </g>
+</svg> \ No newline at end of file
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug761871-reset-reflection-points-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug761871-reset-reflection-points-ref.png
new file mode 100644
index 00000000..e76e47c5
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug761871-reset-reflection-points-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug761871-reset-reflection-points.svg b/rsvg/tests/fixtures/reftests/bugs/bug761871-reset-reflection-points.svg
new file mode 100644
index 00000000..cc3bda9f
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug761871-reset-reflection-points.svg
@@ -0,0 +1,18 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="128" height="128" viewBox="0 0 256 128">
+
+<!-- alternating S (or C) and T -->
+<path d="M 10 10 S 10 48 48 48 T 48 10"/>
+<path d="M 60 10 S 60 48 98 48 Q 98 48 98 10"/>
+
+<path d="M 10 60 C 10 60 10 98 48 98 T 48 60"/>
+<path d="M 60 60 C 60 60 60 98 98 98 Q 98 98 98 60"/>
+<g transform='translate (128, 0)'>
+<!-- alternating Q (or T) and S -->
+<path d="M 10 10 T 10 48 S 48 48 48 10"/>
+<path d="M 60 10 T 60 48 C 60 48 98 48 98 10"/>
+
+<path d="M 10 60 Q 10 60 10 98 S 48 98 48 60"/>
+<path d="M 60 60 Q 60 60 60 98 C 60 98 98 98 98 60"/>
+</g>
+</svg>
+
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug763386-marker-coincident-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug763386-marker-coincident-ref.png
new file mode 100644
index 00000000..2248fd7b
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug763386-marker-coincident-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug763386-marker-coincident.svg b/rsvg/tests/fixtures/reftests/bugs/bug763386-marker-coincident.svg
new file mode 100644
index 00000000..7af4f9e3
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug763386-marker-coincident.svg
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ viewBox="0 0 130 130">
+ <marker id="marker"
+ viewBox="-4 -4 8 8"
+ orient="auto">
+ <path d="M -1 -4, -1, 4, 1, 0 Z"/>
+ </marker>
+ <path stroke-width="8" marker-start="url(#marker)" marker-end="url(#marker)"
+ stroke="red" d="M 12,12 c 0,0 0,0 40,40"/>
+ <path stroke-width="8" marker-start="url(#marker)" marker-end="url(#marker)"
+ stroke="red" d="M 118,12 c -40,40 -40,40 -40,40"/>
+ <path stroke-width="8" marker-start="url(#marker)" marker-end="url(#marker)"
+ stroke="red" d="M 12,70 c 0,0 40,40 40,40"/>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug776297-marker-on-non-path-elements-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug776297-marker-on-non-path-elements-ref.png
new file mode 100644
index 00000000..1b5634c1
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug776297-marker-on-non-path-elements-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug776297-marker-on-non-path-elements.svg b/rsvg/tests/fixtures/reftests/bugs/bug776297-marker-on-non-path-elements.svg
new file mode 100644
index 00000000..d8b78f31
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug776297-marker-on-non-path-elements.svg
@@ -0,0 +1,16 @@
+<svg xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ viewBox="0 0 128 64">
+ <marker id="marker"
+ viewBox="0 -1 4 2"
+ orient="auto">
+ <path fill="blue" d="M 0 -1 L 4 0 0 1" />
+ </marker>
+
+ <path stroke-width="4" marker-mid="url(#marker)"
+ stroke="red" fill="none" d="M 12,12 l 40,0 0,40 -40,0 0,-40"/>
+ <circle stroke-width="4" cx="32" cy="32" r="20" marker-mid="url(#marker)"
+ stroke="red" fill="none"/>
+ <rect stroke-width="4" x="76" y="12" width="40" height="40" marker-mid="url(#marker)"
+ stroke="red" fill="none"/>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug786372-default-style-type-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug786372-default-style-type-ref.png
new file mode 100644
index 00000000..f3bf76a8
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug786372-default-style-type-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug786372-default-style-type.svg b/rsvg/tests/fixtures/reftests/bugs/bug786372-default-style-type.svg
new file mode 100644
index 00000000..780aac63
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug786372-default-style-type.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><defs><style>.a{fill:#010101;}.b{fill:none;}</style></defs><title>Icont set</title><path class="a" d="M17.15,15.56c-2-.46-3.87-.87-3-2.58,2.75-5.2.73-8-2.18-8S7.06,7.89,9.82,13c.93,1.72-1,2.12-3,2.58C5.06,16,5,16.86,5,18.42V19H19v-.57C19,16.87,18.95,16,17.15,15.56Z"/><path class="b" d="M0,0H24V24H0Z"/></svg> \ No newline at end of file
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug788-inner-svg-viewbox-ref.png b/rsvg/tests/fixtures/reftests/bugs/bug788-inner-svg-viewbox-ref.png
new file mode 100644
index 00000000..93349f98
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug788-inner-svg-viewbox-ref.png
Binary files differ
diff --git a/rsvg/tests/fixtures/reftests/bugs/bug788-inner-svg-viewbox.svg b/rsvg/tests/fixtures/reftests/bugs/bug788-inner-svg-viewbox.svg
new file mode 100644
index 00000000..25029f61
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/bug788-inner-svg-viewbox.svg
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg" fill="#FFFFFF" height="62px" version="1.1" viewBox="0 0 164 62" width="164px">
+ <defs>
+ <clipPath id="clip"><rect height="100%" width="100%" x="0" y="0"/></clipPath>
+ </defs>
+ <g clip-path="url(#clip)">
+ <g style="text-anchor:middle" transform="translate(72)">
+ <linearGradient id="BOX" x1="100%" x2="100%" y1="100%" y2="0">
+ <stop offset="0" style="stop-color:#2E2E2E"/>
+ <stop offset="1" style="stop-color:#676769"/>
+ </linearGradient>
+
+ <g transform="translate(-148)">
+ <svg height="45%" width="22px" x="100%" y="3.33%">
+ <rect fill="url(#BOX)" height="100%" width="100%"/>
+ <rect fill="green" x="50%" y="72%" width="4px" height="4px">3</rect>
+ </svg>
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/rsvg/tests/fixtures/reftests/bugs/ignore-577-multiple-font-families.svg b/rsvg/tests/fixtures/reftests/bugs/ignore-577-multiple-font-families.svg
new file mode 100644
index 00000000..a7d3ca84
--- /dev/null
+++ b/rsvg/tests/fixtures/reftests/bugs/ignore-577-multiple-font-families.svg
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<svg xmlns="http://www.w3.org/2000/svg" width="500" height="500">
+ <rect x="0" y="0" width="500" height="500" fill="white"/>
+ <text font-family="Nonexistent Family, serif, sans" x="100" y="100" font-size="30">
+ Hello
+ </text>
+</svg>