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 (50,91) size 468x349
      RenderSVGContainer {g} at (50,91) size 468x349
        RenderSVGHiddenContainer {defs} at (0,0) size 0x0
        RenderSVGHiddenContainer {defs} at (0,0) size 0x0
          RenderSVGContainer {g} at (0,0) size 7x7
            RenderSVGPath {line} at (0,0) size 0x0 [stroke={[type=SOLID] [color=#FFA500]}] [fill={[type=SOLID] [color=#000000]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
            RenderSVGRect {rect} at (0,0) size 7x7 [fill={[type=SOLID] [color=#000000]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
        RenderSVGContainer {g} at (50,91) size 468x349 [transform={m=((1.00,0.00)(0.00,1.00)) t=(20.00,30.00)}]
          RenderSVGContainer {g} at (50,98) size 127x257 [transform={m=((1.00,0.00)(0.00,1.00)) t=(10.00,40.00)}]
            RenderSVGText {text} at (0,-12) size 67x15 contains 1 chunk(s)
              RenderSVGInlineText {#text} at (0,0) size 67x14
                chunk 1 text run 1 at (0.00,0.00) startOffset 0 endOffset 13 width 66.71: "x positioning"
            RenderSVGText {text} at (0,28) size 67x15 contains 1 chunk(s)
              RenderSVGInlineText {#text} at (0,0) size 67x14
                chunk 1 text run 1 at (0.00,40.00) startOffset 0 endOffset 13 width 66.71: "y positioning"
            RenderSVGText {text} at (0,128) size 77x15 contains 1 chunk(s)
              RenderSVGInlineText {#text} at (0,0) size 77x14
                chunk 1 text run 1 at (0.00,140.00) startOffset 0 endOffset 15 width 76.04: "x/y positioning"
          RenderSVGContainer {g} at (210,91) size 308x33 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,40.00)}]
            RenderSVGContainer {use} at (210,91) size 14x33 [transform={m=((1.00,0.00)(0.00,1.00)) t=(10.00,0.00)}]
              RenderSVGContainer {g} at (210,91) size 14x33
                RenderSVGPath {line} at (215,91) size 3x26 [stroke={[type=SOLID] [color=#FFA500]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                RenderSVGRect {rect} at (210,110) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
            RenderSVGContainer {use} at (493,91) size 14x33 [transform={m=((1.00,0.00)(0.00,1.00)) t=(180.00,0.00)}]
              RenderSVGContainer {g} at (493,91) size 14x33
                RenderSVGPath {line} at (499,91) size 2x26 [stroke={[type=SOLID] [color=#FFA500]}] [fill={[type=SOLID] [color=#FFA500]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                RenderSVGRect {rect} at (493,110) size 14x14 [fill={[type=SOLID] [color=#FFA500]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
            RenderSVGContainer {use} at (260,91) size 14x33 [transform={m=((1.00,0.00)(0.00,1.00)) t=(40.00,0.00)}]
              RenderSVGContainer {g} at (260,91) size 14x33
                RenderSVGPath {line} at (265,91) size 3x26 [stroke={[type=SOLID] [color=#FFA500]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                RenderSVGRect {rect} at (260,110) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
            RenderSVGContainer {use} at (310,91) size 14x33 [transform={m=((1.00,0.00)(0.00,1.00)) t=(70.00,0.00)}]
              RenderSVGContainer {g} at (310,91) size 14x33
                RenderSVGPath {line} at (315,91) size 3x26 [stroke={[type=SOLID] [color=#FFA500]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                RenderSVGRect {rect} at (310,110) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
            RenderSVGContainer {use} at (360,91) size 14x33 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,0.00)}]
              RenderSVGContainer {g} at (360,91) size 14x33
                RenderSVGPath {line} at (365,91) size 3x26 [stroke={[type=SOLID] [color=#FFA500]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                RenderSVGRect {rect} at (360,110) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
            RenderSVGContainer {use} at (410,91) size 14x33 [transform={m=((1.00,0.00)(0.00,1.00)) t=(130.00,0.00)}]
              RenderSVGContainer {g} at (410,91) size 14x33
                RenderSVGPath {line} at (415,91) size 3x26 [stroke={[type=SOLID] [color=#FFA500]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                RenderSVGRect {rect} at (410,110) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
            RenderSVGText {text} at (10,-11) size 181x11 contains 1 chunk(s)
              RenderSVGInlineText {#text} at (0,0) size 181x11
                chunk 1 text run 1 at (10.00,0.00) startOffset 0 endOffset 1 width 10.20: "f"
                chunk 1 text run 1 at (180.00,0.00) startOffset 0 endOffset 1 width 10.20: "i"
                chunk 1 text run 1 at (40.00,0.00) startOffset 0 endOffset 1 width 15.30: "1"
                chunk 1 text run 1 at (70.00,0.00) startOffset 0 endOffset 1 width 15.30: "2"
                chunk 1 text run 1 at (100.00,0.00) startOffset 0 endOffset 1 width 15.30: "3"
                chunk 1 text run 1 at (130.00,0.00) startOffset 0 endOffset 1 width 15.30: "4"
          RenderSVGContainer {g} at (193,141) size 144x133 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,80.00)}]
            RenderSVGContainer {use} at (193,141) size 14x33 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,-10.00)}]
              RenderSVGContainer {g} at (193,141) size 14x33
                RenderSVGPath {line} at (199,141) size 2x26 [stroke={[type=SOLID] [color=#FFA500]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                RenderSVGRect {rect} at (193,160) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
            RenderSVGContainer {use} at (218,241) size 14x33 [transform={m=((1.00,0.00)(0.00,1.00)) t=(15.00,50.00)}]
              RenderSVGContainer {g} at (218,241) size 14x33
                RenderSVGPath {line} at (224,241) size 2x26 [stroke={[type=SOLID] [color=#FFA500]}] [fill={[type=SOLID] [color=#FFA500]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                RenderSVGRect {rect} at (218,260) size 14x14 [fill={[type=SOLID] [color=#FFA500]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
            RenderSVGContainer {use} at (218,158) size 14x32 [transform={m=((1.00,0.00)(0.00,1.00)) t=(15.00,0.00)}]
              RenderSVGContainer {g} at (218,158) size 14x32
                RenderSVGPath {line} at (224,158) size 2x26 [stroke={[type=SOLID] [color=#FFA500]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                RenderSVGRect {rect} at (218,176) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
            RenderSVGContainer {use} at (243,175) size 14x32 [transform={m=((1.00,0.00)(0.00,1.00)) t=(30.00,10.00)}]
              RenderSVGContainer {g} at (243,175) size 14x32
                RenderSVGPath {line} at (249,175) size 2x25 [stroke={[type=SOLID] [color=#FFA500]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                RenderSVGRect {rect} at (243,193) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
            RenderSVGContainer {use} at (268,191) size 14x33 [transform={m=((1.00,0.00)(0.00,1.00)) t=(45.00,20.00)}]
              RenderSVGContainer {g} at (268,191) size 14x33
                RenderSVGPath {line} at (274,191) size 2x26 [stroke={[type=SOLID] [color=#FFA500]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                RenderSVGRect {rect} at (268,210) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
            RenderSVGContainer {use} at (293,208) size 14x32 [transform={m=((1.00,0.00)(0.00,1.00)) t=(60.00,30.00)}]
              RenderSVGContainer {g} at (293,208) size 14x32
                RenderSVGPath {line} at (299,208) size 2x26 [stroke={[type=SOLID] [color=#FFA500]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                RenderSVGRect {rect} at (293,226) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
            RenderSVGText {text} at (0,-21) size 82x71 contains 1 chunk(s)
              RenderSVGInlineText {#text} at (0,0) size 82x71
                chunk 1 text run 1 at (0.00,-10.00) startOffset 0 endOffset 1 width 10.20: "f"
                chunk 1 text run 1 at (10.20,50.00) startOffset 0 endOffset 1 width 10.20: "i"
                chunk 1 text run 1 at (20.40,0.00) startOffset 0 endOffset 1 width 15.30: "1"
                chunk 1 text run 1 at (35.70,10.00) startOffset 0 endOffset 1 width 15.30: "2"
                chunk 1 text run 1 at (51.00,20.00) startOffset 0 endOffset 1 width 15.30: "3"
                chunk 1 text run 1 at (66.30,30.00) startOffset 0 endOffset 1 width 15.30: "4"
          RenderSVGContainer {g} at (210,308) size 308x132 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,180.00)}]
            RenderSVGContainer {use} at (210,308) size 14x32 [transform={m=((1.00,0.00)(0.00,1.00)) t=(10.00,-10.00)}]
              RenderSVGContainer {g} at (210,308) size 14x32
                RenderSVGPath {line} at (215,308) size 3x26 [stroke={[type=SOLID] [color=#FFA500]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                RenderSVGRect {rect} at (210,326) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
            RenderSVGContainer {use} at (493,408) size 14x32 [transform={m=((1.00,0.00)(0.00,1.00)) t=(180.00,50.00)}]
              RenderSVGContainer {g} at (493,408) size 14x32
                RenderSVGPath {line} at (499,408) size 2x26 [stroke={[type=SOLID] [color=#FFA500]}] [fill={[type=SOLID] [color=#FFA500]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                RenderSVGRect {rect} at (493,426) size 14x14 [fill={[type=SOLID] [color=#FFA500]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
            RenderSVGContainer {use} at (260,325) size 14x32 [transform={m=((1.00,0.00)(0.00,1.00)) t=(40.00,0.00)}]
              RenderSVGContainer {g} at (260,325) size 14x32
                RenderSVGPath {line} at (265,325) size 3x25 [stroke={[type=SOLID] [color=#FFA500]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                RenderSVGRect {rect} at (260,343) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
            RenderSVGContainer {use} at (310,341) size 14x33 [transform={m=((1.00,0.00)(0.00,1.00)) t=(70.00,10.00)}]
              RenderSVGContainer {g} at (310,341) size 14x33
                RenderSVGPath {line} at (315,341) size 3x26 [stroke={[type=SOLID] [color=#FFA500]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                RenderSVGRect {rect} at (310,360) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
            RenderSVGContainer {use} at (360,358) size 14x32 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,20.00)}]
              RenderSVGContainer {g} at (360,358) size 14x32
                RenderSVGPath {line} at (365,358) size 3x26 [stroke={[type=SOLID] [color=#FFA500]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                RenderSVGRect {rect} at (360,376) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
            RenderSVGContainer {use} at (410,375) size 14x32 [transform={m=((1.00,0.00)(0.00,1.00)) t=(130.00,30.00)}]
              RenderSVGContainer {g} at (410,375) size 14x32
                RenderSVGPath {line} at (415,375) size 3x25 [stroke={[type=SOLID] [color=#FFA500]}] [fill={[type=SOLID] [color=#8888FF]}] [x1=0.00] [y1=0.00] [x2=0.00] [y2=-15.00]
                RenderSVGRect {rect} at (410,393) size 14x14 [fill={[type=SOLID] [color=#8888FF]}] [x=-4.00] [y=-4.00] [width=8.00] [height=8.00]
            RenderSVGText {text} at (10,-21) size 181x71 contains 1 chunk(s)
              RenderSVGInlineText {#text} at (0,0) size 181x71
                chunk 1 text run 1 at (10.00,-10.00) startOffset 0 endOffset 1 width 10.20: "f"
                chunk 1 text run 1 at (180.00,50.00) startOffset 0 endOffset 1 width 10.20: "i"
                chunk 1 text run 1 at (40.00,0.00) startOffset 0 endOffset 1 width 15.30: "1"
                chunk 1 text run 1 at (70.00,10.00) startOffset 0 endOffset 1 width 15.30: "2"
                chunk 1 text run 1 at (100.00,20.00) startOffset 0 endOffset 1 width 15.30: "3"
                chunk 1 text run 1 at (130.00,30.00) startOffset 0 endOffset 1 width 15.30: "4"
    RenderSVGContainer {g} at (16,517) size 381x62
      RenderSVGText {text} at (10,310) size 229x38 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 229x37
          chunk 1 text run 1 at (10.00,340.00) startOffset 0 endOffset 16 width 228.03: "$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]
