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
    RenderSVGContainer {g} at (1,46) size 779x438
      RenderSVGText {text} at (19,29) size 77x39 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 77x39
          chunk 1 text run 1 at (19.00,61.00) startOffset 0 endOffset 5 width 76.80: "Plain"
      RenderSVGText {text} at (142,29) size 80x39 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 80x39
          chunk 1 text run 1 at (142.00,61.00) startOffset 0 endOffset 6 width 79.80: "Italic"
      RenderSVGText {text} at (257,28) size 79x39 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 79x39
          chunk 1 text run 1 at (257.00,60.00) startOffset 0 endOffset 4 width 78.60: "Bold"
      RenderSVGText {text} at (224,78) size 155x39 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 155x39
          chunk 1 text run 1 at (224.00,110.00) startOffset 0 endOffset 9 width 154.20: "Underline"
      RenderSVGText {text} at (39,115) size 205x39 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 205x39
          chunk 1 text run 1 at (39.00,147.00) startOffset 0 endOffset 12 width 204.60: "Line through"
      RenderSVGText {text} at (1,168) size 467x39 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 467x39
          chunk 1 text run 1 at (1.00,200.00) startOffset 0 endOffset 27 width 466.80: "Bold, italic and underlined"
      RenderSVGContainer {g} at (81,372) size 638x112
        RenderSVGRect {rect} at (81,373) size 638x111 [stroke={[type=SOLID] [color=#000000] [stroke width=2.00]}] [x=50.00] [y=225.00] [width=380.00] [height=64.00]
        RenderSVGContainer {g} at (91,372) size 580x112
          RenderSVGText {text} at (55,223) size 344x28 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 344x27
              chunk 1 text run 1 at (55.00,245.00) startOffset 0 endOffset 34 width 343.80: "Each line of text which flows in a"
          RenderSVGText {text} at (55,243) size 348x28 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 348x27
              chunk 1 text run 1 at (55.00,265.00) startOffset 0 endOffset 32 width 347.40: "rectangular box has to be broken"
          RenderSVGText {text} at (55,263) size 213x28 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 213x27
              chunk 1 text run 1 at (55.00,285.00) startOffset 0 endOffset 21 width 213.00: "into separated lines."
    RenderSVGText {text} at (10,303) size 269x48 contains 1 chunk(s)
      RenderSVGInlineText {#text} at (0,0) size 269x47
        chunk 1 text run 1 at (10.00,340.00) startOffset 0 endOffset 16 width 268.20: "$Revision: 1.8 $"
    RenderSVGRect {rect} at (0,0) size 800x600 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=478.00] [height=358.00]
selection start: position 0 of child 0 {#text} of child 1 {text} of child 13 {g} of child 32 {svg} of document
selection end:   position 16 of child 0 {#text} of child 15 {text} of child 32 {svg} of document
