<svg id="svg-root" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="test-body-content">
<!-- This test should produce 12 columns, each with 3 rows, with each cell size 50x50 -->
<!-- There should be a solid grey rectangle behind the table. -->
<!-- The 1st row should be empty. All the paths here have zero length and butt linecaps. -->
<!-- The 2nd row should consist of green circles. All the paths here have zero length and round linecaps. -->
<!-- The 3rd row should consist of green squares. All the paths here have zero length and square linecaps.-->
<def>
<g id="CheckCircles">
<circle cx="25" cy="75" r="20" fill="red" />
<rect x="5" y="105" width="40" height="40" fill="red" />
</g>
</def>
<rect x="0" y="0" width="600" height="150" fill="grey" />
<g id="column-1-single-move-tests">
<circle cx="25" cy="75" r="20" fill="green" />
<rect x="5" y="105" width="40" height="40" fill="green" />
<path d="M 25 25" stroke="red" stroke-width="40" stroke-linecap="butt" />
<path transform="translate(25,75)" d="M 0 0" stroke="red" stroke-width="40" stroke-linecap="round" />
<path d="M 25 125" stroke="red" stroke-width="40" stroke-linecap="square" />
</g>
<g id="column-2-close-move-tests" transform="translate(50, 0)">
<use xlink:href="#CheckCircles" />
<path d="M 25 25 z" stroke="red" stroke-width="40" stroke-linecap="butt" />
<path transform="translate(25,75)" d="M 0 0 z" stroke="green" stroke-width="40" stroke-linecap="round" />
<path d="M 25 125 z" stroke="green" stroke-width="40" stroke-linecap="square" />
</g>
<g id="column-3-horizontal-tests" transform="translate(100, 0)">
<use xlink:href="#CheckCircles" />
<path d="M 25 25 h 0" stroke="red" stroke-width="40" stroke-linecap="butt" />
<path transform="translate(25,75)" d="M 0 0 H 0" stroke="green" stroke-width="40" stroke-linecap="round" />
<path d="M 25 125 h 0" stroke="green" stroke-width="40" stroke-linecap="square" />
</g>
<g id="column-4-vertical-tests" transform="translate(150, 0)">
<use xlink:href="#CheckCircles" />
<path d="M 25 25 v 0" stroke="red" stroke-width="40" stroke-linecap="butt" />
<path transform="translate(25,75)" d="M 0 0 V 0" stroke="green" stroke-width="40" stroke-linecap="round" />
<path d="M 25 125 v 0" stroke="green" stroke-width="40" stroke-linecap="square" />
</g>
<g id="column-5-line-tests" transform="translate(200, 0)">
<use xlink:href="#CheckCircles" />
<path d="M 25 25 l 0 0" stroke="red" stroke-width="40" stroke-linecap="butt" />
<path transform="translate(25,75)" d="M 0 0 L 0 0" stroke="green" stroke-width="40" stroke-linecap="round" />
<path d="M 25 125 l 0 0" stroke="green" stroke-width="40" stroke-linecap="square" />
</g>
<g id="column-6-cubic-tests" transform="translate(250, 0)">
<use xlink:href="#CheckCircles" />
<path d="M 25 25 c 0 0 0 0 0 0" stroke="red" stroke-width="40" stroke-linecap="butt" />
<path transform="translate(25,75)" d="M 0 0 C 0 0 0 0 0 0" stroke="green" stroke-width="40" stroke-linecap="round" />
<path d="M 25 125 c 0 0 0 0 0 0" stroke="green" stroke-width="40" stroke-linecap="square" />
</g>
<g id="column-7-smooth-cubic-tests" transform="translate(300, 0)">
<use xlink:href="#CheckCircles" />
<path d="M 25 25 s 0 0 0 0" stroke="red" stroke-width="40" stroke-linecap="butt" />
<path transform="translate(25,75)" d="M 0 0 S 0 0 0 0" stroke="green" stroke-width="40" stroke-linecap="round" />
<path d="M 25 125 s 0 0 0 0" stroke="green" stroke-width="40" stroke-linecap="square" />
</g>
<g id="column-8-quadratic-tests" transform="translate(350, 0)">
<use xlink:href="#CheckCircles" />
<path d="M 25 25 q 0 0 0 0" stroke="red" stroke-width="40" stroke-linecap="butt" />
<path transform="translate(25,75)" d="M 0 0 Q 0 0 0 0" stroke="green" stroke-width="40" stroke-linecap="round" />
<path d="M 25 125 q 0 0 0 0" stroke="green" stroke-width="40" stroke-linecap="square" />
</g>
<g id="column-9-quadratic-tests" transform="translate(400, 0)">
<use xlink:href="#CheckCircles" />
<path d="M 25 25 t 0 0" stroke="red" stroke-width="40" stroke-linecap="butt" />
<path transform="translate(25,75)" d="M 0 0 T 0 0" stroke="green" stroke-width="40" stroke-linecap="round" />
<path d="M 25 125 t 0 0" stroke="green" stroke-width="40" stroke-linecap="square" />
</g>
<g id="column-10-arc-tests-sweep-1" transform="translate(450, 0)">
<use xlink:href="#CheckCircles" />
<path d="M 25 25 a 20 20 90 0 1 0 0" stroke="red" stroke-width="40" stroke-linecap="butt" />
<path transform="translate(25,75)" d="M 0 0 A 20 20 90 0 1 0 0" stroke="green" stroke-width="40" stroke-linecap="round" />
<path d="M 25 125 a 20 20 90 0 1 0 0" stroke="green" stroke-width="40" stroke-linecap="square" />
</g>
<g id="column-11-arc-tests-sweep-0" transform="translate(500, 0)">
<use xlink:href="#CheckCircles" />
<path d="M 25 25 a 20 20 90 0 0 0 0" stroke="red" stroke-width="40" stroke-linecap="butt" />
<path transform="translate(25,75)" d="M 0 0 A 20 20 90 0 0 0 0" stroke="green" stroke-width="40" stroke-linecap="round" />
<path d="M 25 125 a 20 20 90 0 0 0 0" stroke="green" stroke-width="40" stroke-linecap="square" />
</g>
<g id="column-12-arc-tests-zero-rad" transform="translate(550, 0)">
<use xlink:href="#CheckCircles" />
<path d="M 25 25 a 0 0 90 0 1 0 0" stroke="red" stroke-width="40" stroke-linecap="butt" />
<path transform="translate(25,75)" d="M 0 0 A 0 0 90 0 1 0 0" stroke="green" stroke-width="40" stroke-linecap="round" />
<path d="M 25 125 a 0 0 90 0 1 0 0" stroke="green" stroke-width="40" stroke-linecap="square" />
</g>
</g>
</svg>