layer at (0,0) size 800x600
  RenderView at (0,0) size 800x600
layer at (0,0) size 800x600
  RenderSVGRoot {svg} at (0,0) size 800x600
    RenderSVGHiddenContainer {defs} at (0,0) size 0x0
    RenderSVGContainer {g} at (203,29) size 316x451
      RenderSVGHiddenContainer {defs} at (0,0) size 0x0
        RenderSVGResourceMarker {marker} [id="marker1"] [markerUnits=strokeWidth] [ref at (25,25)] [angle=0.00]
          RenderSVGRect {rect} at (0,0) size 4x4 [fill={[type=SOLID] [color=#800080]}] [x=20.00] [y=20.00] [width=10.00] [height=10.00]
        RenderSVGResourceMarker {marker} [id="marker2"] [markerUnits=strokeWidth] [ref at (0,0)] [angle=auto]
          RenderSVGPath {path} at (0,0) size 4x4 [fill={[type=SOLID] [color=#0000FF]}] [data="M 0 -5 L 5 5 L -5 5 Z"]
        RenderSVGResourceMarker {marker} [id="markerStart"] [markerUnits=strokeWidth] [ref at (5,5)] [angle=0.00]
          RenderSVGRect {rect} at (0,0) size 4x4 [fill={[type=SOLID] [color=#800080]}] [x=0.00] [y=0.00] [width=10.00] [height=10.00]
        RenderSVGResourceMarker {marker} [id="markerMiddle"] [markerUnits=strokeWidth] [ref at (5,5)] [angle=0.00]
          RenderSVGEllipse {circle} at (0,0) size 4x4 [fill={[type=SOLID] [color=#008000]}] [cx=5.00] [cy=5.00] [r=5.00]
        RenderSVGResourceMarker {marker} [id="markerEnd"] [markerUnits=strokeWidth] [ref at (5,5)] [angle=0.00]
          RenderSVGPath {path} at (0,0) size 4x4 [fill={[type=SOLID] [color=#0000FF]}] [data="M 5 0 L 10 10 L 0 10 Z"]
      RenderSVGText {text} at (170,17) size 89x16 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 89x16
          chunk 1 text run 1 at (170.00,30.00) startOffset 0 endOffset 13 width 88.80: "Basic Markers"
      RenderSVGPath {path} at (203,53) size 111x111 [stroke={[type=SOLID] [color=#000000] [stroke width=8.00]}] [start marker=marker1] [middle marker=marker1] [end marker=marker1] [data="M 130 40 L 180 40 L 180 90"]
      RenderSVGContainer {g} at (403,53) size 111x111 [transform={m=((1.00,0.00)(0.00,1.00)) t=(120.00,0.00)}]
        RenderSVGPath {path} at (416,60) size 91x90 [stroke={[type=SOLID] [color=#000000] [stroke width=8.00]}] [data="M 130 40 L 180 40 L 180 90"]
        RenderSVGContainer {g} at (403,53) size 27x27 [transform={m=((1.60,0.00)(0.00,1.60)) t=(122.00,32.00)}]
          RenderSVGRect {rect} at (403,53) size 27x27 [fill={[type=SOLID] [color=#800080]}] [x=0.00] [y=0.00] [width=10.00] [height=10.00]
        RenderSVGContainer {g} at (486,53) size 28x27 [transform={m=((1.60,0.00)(0.00,1.60)) t=(172.00,32.00)}]
          RenderSVGRect {rect} at (486,53) size 28x27 [fill={[type=SOLID] [color=#800080]}] [x=0.00] [y=0.00] [width=10.00] [height=10.00]
        RenderSVGContainer {g} at (486,136) size 28x28 [transform={m=((1.60,0.00)(0.00,1.60)) t=(172.00,82.00)}]
          RenderSVGRect {rect} at (486,136) size 28x28 [fill={[type=SOLID] [color=#800080]}] [x=0.00] [y=0.00] [width=10.00] [height=10.00]
      RenderSVGText {text} at (145,112) size 132x16 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 133x16
          chunk 1 text run 1 at (145.00,125.00) startOffset 0 endOffset 21 width 132.00: "Start, Middle and End"
      RenderSVGPath {path} at (203,211) size 111x111 [stroke={[type=SOLID] [color=#000000] [stroke width=8.00]}] [start marker=markerStart] [middle marker=markerMiddle] [end marker=markerEnd] [data="M 130 135 L 180 135 L 180 185"]
      RenderSVGContainer {g} at (403,211) size 111x111 [transform={m=((1.00,0.00)(0.00,1.00)) t=(120.00,0.00)}]
        RenderSVGPath {path} at (416,218) size 91x91 [stroke={[type=SOLID] [color=#000000] [stroke width=8.00]}] [data="M 130 135 L 180 135 L 180 185"]
        RenderSVGContainer {g} at (403,211) size 27x28 [transform={m=((1.60,0.00)(0.00,1.60)) t=(122.00,127.00)}]
          RenderSVGRect {rect} at (403,211) size 27x28 [fill={[type=SOLID] [color=#800080]}] [x=0.00] [y=0.00] [width=10.00] [height=10.00]
        RenderSVGContainer {g} at (486,211) size 28x28 [transform={m=((1.60,0.00)(0.00,1.60)) t=(172.00,127.00)}]
          RenderSVGEllipse {circle} at (486,211) size 28x28 [fill={[type=SOLID] [color=#008000]}] [cx=5.00] [cy=5.00] [r=5.00]
        RenderSVGContainer {g} at (486,295) size 28x27 [transform={m=((1.60,0.00)(0.00,1.60)) t=(172.00,177.00)}]
          RenderSVGPath {path} at (486,295) size 28x27 [fill={[type=SOLID] [color=#0000FF]}] [data="M 5 0 L 10 10 L 0 10 Z"]
      RenderSVGText {text} at (145,207) size 133x16 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 133x16
          chunk 1 text run 1 at (145.00,220.00) startOffset 0 endOffset 21 width 132.60: "Automatic Orientation"
      RenderSVGPath {path} at (203,364) size 116x116 [stroke={[type=SOLID] [color=#000000] [stroke width=8.00]}] [start marker=marker2] [middle marker=marker2] [end marker=marker2] [data="M 130 230 L 180 230 L 180 280"]
      RenderSVGContainer {g} at (403,364) size 116x116 [transform={m=((1.00,0.00)(0.00,1.00)) t=(120.00,0.00)}]
        RenderSVGPath {path} at (416,376) size 91x91 [stroke={[type=SOLID] [color=#000000] [stroke width=8.00]}] [data="M 130 230 L 180 230 L 180 280"]
        RenderSVGContainer {g} at (403,370) size 27x27 [transform={m=((1.60,0.00)(0.00,1.60)) t=(122.00,222.00)}]
          RenderSVGPath {path} at (403,370) size 27x27 [fill={[type=SOLID] [color=#0000FF]}] [data="M 5 0 L 10 10 L 0 10 Z"]
        RenderSVGContainer {g} at (481,364) size 38x39 [transform={m=((1.13,1.13)(-1.13,1.13)) t=(180.00,218.69)}]
          RenderSVGPath {path} at (481,364) size 38x39 [fill={[type=SOLID] [color=#0000FF]}] [data="M 5 0 L 10 10 L 0 10 Z"]
        RenderSVGContainer {g} at (486,453) size 28x27 [transform={m=((0.00,1.60)(-1.60,0.00)) t=(188.00,272.00)}]
          RenderSVGPath {path} at (486,453) size 28x27 [fill={[type=SOLID] [color=#0000FF]}] [data="M 5 0 L 10 10 L 0 10 Z"]
    RenderSVGContainer {g} at (16,518) size 380x60
      RenderSVGText {text} at (10,311) size 228x36 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 228x36
          chunk 1 text run 1 at (10.00,340.00) startOffset 0 endOffset 16 width 227.40: "$Revision: 1.9 $"
    RenderSVGRect {rect} at (0,0) size 800x600 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=478.00] [height=358.00]
