layer at (0,0) size 800x600
  RenderView at (0,0) size 800x600
layer at (0,0) size 800x600
  RenderSVGRoot {svg} at (0.83,0.83) size 798.33x598.33
    RenderSVGContainer {g} at (28.33,10) size 756.67x487.92
      RenderSVGText {text} at (25,20) size 420x17 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,-14) size 420x17
          chunk 1 text run 1 at (25.00,20.00) startOffset 0 endOffset 60 width 420.00: "Basics of tspan: changing visual properties and positioning."
      RenderSVGContainer {g} at (78.33,81.67) size 519.17x132.08
        RenderSVGText {text} at (74,63) size 160x18 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,-14) size 56x18
            chunk 1 text run 1 at (74.00,63.75) startOffset 0 endOffset 7 width 56.00: "You are"
          RenderSVGTSpan {tspan} at (0,0) size 33x18
            RenderSVGInlineText {#text} at (56,-14) size 33x18
              chunk 1 text run 2 at (130.00,63.75) startOffset 0 endOffset 5 width 33.00: " not "
          RenderSVGInlineText {#text} at (89,-14) size 71x18
            chunk 1 text run 3 at (163.00,63.75) startOffset 0 endOffset 9 width 71.00: "a banana."
        RenderPath {rect} at (78.33,122.92) size 519.17x90.83 [stroke={[type=SOLID] [color=#000000]}] [data="M47.50,74.25L358.00,74.25L358.00,127.75L47.50,127.75"]
        RenderSVGText {text} at (65,90) size 208x18 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,-14) size 208x18
            chunk 1 text run 1 at (65.25,90.75) startOffset 0 endOffset 29 width 208.00: "Text: \"You are not a banana.\""
        RenderSVGText {text} at (65,108) size 284x17 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,-14) size 284x17
            chunk 1 text run 1 at (65.25,108.00) startOffset 0 endOffset 43 width 284.00: "'tspan' changes visual attributes of \"not\","
        RenderSVGText {text} at (65,125) size 83x17 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,-14) size 83x17
            chunk 1 text run 1 at (65.25,125.25) startOffset 0 endOffset 13 width 83.00: "to red, bold."
      RenderSVGContainer {g} at (374.17,215) size 410.83x173.33
        RenderSVGText {text} at (257,143) size 176x43 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,-4) size 55x18
            chunk 1 text run 1 at (257.50,153.75) startOffset 0 endOffset 7 width 54.00: "But you"
          RenderSVGTSpan {tspan} at (0,0) size 25x17
            RenderSVGInlineText {#text} at (86,-14) size 25x17
              chunk 1 text run 2 at (343.50,143.00) startOffset 0 endOffset 3 width 24.00: "are"
          RenderSVGTSpan {tspan} at (0,0) size 66x18
            RenderSVGInlineText {#text} at (110,11) size 66x18
              chunk 1 text run 3 at (367.50,168.50) startOffset 0 endOffset 9 width 65.00: " a peach!"
        RenderPath {rect} at (374.17,297.50) size 410.83x90.83 [stroke={[type=SOLID] [color=#000000]}] [data="M225.00,179.00L470.50,179.00L470.50,232.50L225.00,232.50"]
        RenderSVGText {text} at (238,195) size 197x17 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,-14) size 197x17
            chunk 1 text run 1 at (238.00,195.00) startOffset 0 endOffset 28 width 197.00: "Text: \"But you are a peach!\""
        RenderSVGText {text} at (238,212) size 227x17 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,-14) size 227x17
            chunk 1 text run 1 at (238.00,212.25) startOffset 0 endOffset 34 width 227.00: "Using dx,dy, 'tspan' raises \"are\","
        RenderSVGText {text} at (238,229) size 173x18 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,-14) size 173x18
            chunk 1 text run 1 at (238.00,229.50) startOffset 0 endOffset 25 width 173.00: "'tspan' lowers \"a peach!\""
      RenderSVGContainer {g} at (28.33,310) size 560.83x187.92
        RenderSVGText {text} at (35,200) size 144x48 contains 13 chunk(s)
          RenderSVGTSpan {tspan} at (0,0) size 144x17
            RenderSVGInlineText {#text} at (0,-14) size 144x17
              chunk 1 text run 1 at (35.00,200.00) startOffset 0 endOffset 1 width 12.00: "C"
              chunk 2 text run 1 at (53.75,200.00) startOffset 1 endOffset 2 width 9.00: "u"
              chunk 3 text run 1 at (72.50,200.00) startOffset 2 endOffset 3 width 4.00: "t"
              chunk 4 text run 1 at (91.25,200.00) startOffset 3 endOffset 4 width 9.00: "e"
              chunk 5 text run 1 at (110.50,200.00) startOffset 4 endOffset 5 width 4.00: " "
              chunk 6 text run 1 at (128.75,200.00) startOffset 5 endOffset 6 width 9.00: "a"
              chunk 7 text run 1 at (147.50,200.00) startOffset 6 endOffset 7 width 9.00: "n"
              chunk 8 text run 1 at (166.25,200.00) startOffset 7 endOffset 9 width 13.00: "d "
          RenderSVGInlineText {#text} at (0,0) size 0x0
          RenderSVGTSpan {tspan} at (0,0) size 87x18
            RenderSVGInlineText {#text} at (28,16) size 87x18
              chunk 9 text run 1 at (63.13,230.50) startOffset 0 endOffset 1 width 4.00: "f"
              chunk 10 text run 1 at (81.88,230.50) startOffset 1 endOffset 2 width 9.00: "u"
              chunk 11 text run 1 at (100.63,230.50) startOffset 2 endOffset 3 width 8.00: "z"
              chunk 12 text run 1 at (119.38,230.50) startOffset 3 endOffset 4 width 8.00: "z"
              chunk 13 text run 1 at (138.13,230.50) startOffset 4 endOffset 6 width 12.00: "y."
          RenderSVGInlineText {#text} at (0,0) size 0x0
        RenderPath {rect} at (28.33,407.08) size 560.83x90.83 [stroke={[type=SOLID] [color=#000000]}] [data="M17.50,244.75L353.00,244.75L353.00,298.25L17.50,298.25"]
        RenderSVGText {text} at (25,258) size 161x17 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,-14) size 161x17
            chunk 1 text run 1 at (25.25,258.00) startOffset 0 endOffset 23 width 161.00: "Text: \"Cute and fuzzy.\""
        RenderSVGText {text} at (25,275) size 318x17 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,-14) size 318x17
            chunk 1 text run 1 at (25.25,275.25) startOffset 0 endOffset 45 width 318.00: "'tspan' char-by-char placement of \"Cute and\","
        RenderSVGText {text} at (25,292) size 258x18 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,-14) size 258x18
            chunk 1 text run 1 at (25.25,292.50) startOffset 0 endOffset 39 width 258.00: "'tspan' char-by-char \"fuzzy\", below it."
    RenderSVGText {text} at (10,340) size 264x46 contains 1 chunk(s)
      RenderSVGInlineText {#text} at (0,-36) size 264x46
        chunk 1 text run 1 at (10.00,340.00) startOffset 0 endOffset 16 width 264.00: "$Revision: 1.7 $"
    RenderPath {rect} at (0.83,0.83) size 798.33x598.33 [stroke={[type=SOLID] [color=#000000]}] [data="M1.00,1.00L479.00,1.00L479.00,359.00L1.00,359.00"]
selection start: position 0 of child 0 {#text} of child 1 {text} of child 13 {g} of child 34 {svg} of document
selection end:   position 16 of child 0 {#text} of child 15 {text} of child 34 {svg} of document
