layer at (0,0) size 480x360
  RenderView at (0,0) size 480x360
layer at (0,0) size 480x360
  RenderSVGRoot {svg} at (0,0) size 480x360
    RenderSVGHiddenContainer {defs} at (0,0) size 0x0
    RenderSVGContainer {g} at (33,6) size 413x293
      RenderSVGText {text} at (65,6) size 334x13 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 334x13
          chunk 1 text run 1 at (65.00,16.00) startOffset 0 endOffset 69 width 333.42: "Link test of the 'view' element and its attributes, 1 of 2, internal."
      RenderSVGContainer {g} at (33,28) size 413x271
        RenderSVGContainer {g} at (150,130) size 125x112 [transform={m=((1.00,0.00)(0.00,1.00)) t=(-150.00,75.00)}]
          RenderSVGRect {rect} at (150,130) size 125x85 [fill={[type=SOLID] [color=#AAAAAA]}] [x=300.00] [y=55.00] [width=125.00] [height=85.00]
          RenderSVGContainer {a} at (160,133) size 102x15
            RenderSVGText {text} at (310,58) size 102x15 contains 1 chunk(s)
              RenderSVGInlineText {#text} at (0,0) size 102x15
                chunk 1 text run 1 at (310.00,70.00) startOffset 0 endOffset 15 width 101.16: "Go to Rectangle"
          RenderSVGContainer {a} at (160,153) size 80x15
            RenderSVGText {text} at (310,78) size 80x15 contains 1 chunk(s)
              RenderSVGInlineText {#text} at (0,0) size 80x15
                chunk 1 text run 1 at (310.00,90.00) startOffset 0 endOffset 13 width 79.37: "Go to Ellipse"
          RenderSVGContainer {a} at (160,173) size 74x15
            RenderSVGText {text} at (310,98) size 74x15 contains 1 chunk(s)
              RenderSVGInlineText {#text} at (0,0) size 74x15
                chunk 1 text run 1 at (310.00,110.00) startOffset 0 endOffset 12 width 73.91: "Go to Circle"
          RenderSVGContainer {a} at (160,193) size 89x15
            RenderSVGText {text} at (310,118) size 89x15 contains 1 chunk(s)
              RenderSVGInlineText {#text} at (0,0) size 89x15
                chunk 1 text run 1 at (310.00,130.00) startOffset 0 endOffset 13 width 88.72: "Go to Polygon"
          RenderSVGText {text} at (315,142) size 103x13 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 103x13
              chunk 1 text run 1 at (315.00,152.00) startOffset 0 endOffset 20 width 102.31: "Click element's line"
          RenderSVGText {text} at (315,154) size 88x13 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 88x13
              chunk 1 text run 1 at (315.00,164.00) startOffset 0 endOffset 19 width 87.36: "to link to its view"
        RenderSVGRect {rect} at (295,36) size 135x68 [fill={[type=SOLID] [color=#800080]}] [x=295.00] [y=36.00] [width=135.00] [height=68.00]
        RenderSVGText {text} at (330,104) size 65x15 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 64x15
            chunk 1 (middle anchor) text run 1 at (330.99,116.00) startOffset 0 endOffset 9 width 63.03: "Rectangle"
        RenderSVGRect {rect} at (291,28) size 143x93 [stroke={[type=SOLID] [color=#000000]}] [x=292.00] [y=29.00] [width=141.00] [height=91.00]
        RenderSVGText {text} at (299,123) size 127x11 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 126x11
            chunk 1 (middle anchor) text run 1 at (299.98,132.00) startOffset 0 endOffset 29 width 125.05: "No view attributes except id."
        RenderSVGEllipse {ellipse} at (298,219) size 144x64 [fill={[type=SOLID] [color=#0000FF]}] [cx=370.00] [cy=251.00] [rx=72.00] [ry=32.00]
        RenderSVGText {text} at (349,283) size 42x15 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 42x15
            chunk 1 (middle anchor) text run 1 at (349.39,295.00) startOffset 0 endOffset 7 width 41.23: "Ellipse"
        RenderSVGRect {rect} at (294,215) size 152x84 [stroke={[type=SOLID] [color=#000000]}] [x=295.00] [y=216.00] [width=150.00] [height=82.00]
        RenderSVGText {text} at (315,203) size 116x11 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 116x11
            chunk 1 text run 1 at (315.00,212.00) startOffset 0 endOffset 27 width 115.59: "viewBox, should fill frame."
        RenderSVGEllipse {circle} at (49,32) size 72x72 [fill={[type=SOLID] [color=#FFFF00]}] [cx=85.00] [cy=68.00] [r=36.00]
        RenderSVGText {text} at (67,104) size 36x15 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 36x15
            chunk 1 (middle anchor) text run 1 at (67.11,116.00) startOffset 0 endOffset 6 width 35.77: "Circle"
        RenderSVGRect {rect} at (35,28) size 100x93 [stroke={[type=SOLID] [color=#000000]}] [x=36.00] [y=29.00] [width=98.00] [height=91.00]
        RenderSVGText {text} at (33,121) size 104x11 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 103x11
            chunk 1 (middle anchor) text run 1 at (33.60,130.00) startOffset 0 endOffset 21 width 102.81: "viewBox & non-uniform"
        RenderSVGText {text} at (38,130) size 94x11 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 93x11
            chunk 1 (middle anchor) text run 1 at (38.60,139.00) startOffset 0 endOffset 19 width 92.81: "preserveAspectRatio"
        RenderSVGPath {polygon} at (39,211) size 95x72 [fill={[type=SOLID] [color=#008000]}] [points="87 211 134 238 116 283 57 283 39 238 87 211"]
        RenderSVGText {text} at (59,283) size 52x15 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 51x15
            chunk 1 (middle anchor) text run 1 at (59.71,295.00) startOffset 0 endOffset 7 width 50.58: "Polygon"
        RenderSVGRect {rect} at (35,207) size 102x91 [stroke={[type=SOLID] [color=#000000]}] [x=36.00] [y=208.00] [width=100.00] [height=89.00]
        RenderSVGText {text} at (52,186) size 66x11 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 66x11
            chunk 1 (middle anchor) text run 1 at (52.21,195.00) startOffset 0 endOffset 14 width 65.58: "viewTarget, no"
        RenderSVGText {text} at (40,195) size 90x11 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 89x11
            chunk 1 (middle anchor) text run 1 at (40.54,204.00) startOffset 0 endOffset 19 width 88.93: "changes to viewport"
    RenderSVGContainer {g} at (10,314) size 248x33
      RenderSVGText {text} at (10,314) size 248x33 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 248x33
          chunk 1 text run 1 at (10.00,340.00) startOffset 0 endOffset 17 width 247.23: "$Revision: 1.12 $"
    RenderSVGRect {rect} at (0,0) size 480x360 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=478.00] [height=358.00]
