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 (0,0) size 480x360
      RenderSVGHiddenContainer {defs} at (0,0) size 0x0
      RenderSVGText {text} at (160,55) size 160x19 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 159x18
          chunk 1 (middle anchor) text run 1 at (160.78,70.00) startOffset 0 endOffset 1 width 12.01: "S"
          chunk 1 (middle anchor) text run 2 at (172.03,70.00) startOffset 1 endOffset 2 width 12.01: "V"
          chunk 1 (middle anchor) text run 3 at (183.28,70.00) startOffset 2 endOffset 4 width 26.01: "GS"
          chunk 1 (middle anchor) text run 4 at (209.24,70.00) startOffset 4 endOffset 6 width 11.00: "tr"
          chunk 1 (middle anchor) text run 5 at (220.25,70.00) startOffset 6 endOffset 12 width 47.02: "ingLis"
          chunk 1 (middle anchor) text run 6 at (267.22,70.00) startOffset 12 endOffset 17 width 52.00: "t DOM"
      RenderSVGContainer {g} at (80,100) size 320x100
        RenderSVGRect {rect} at (80,100) size 100x100 [transform={m=((1.00,0.00)(0.00,1.00)) t=(80.00,100.00)}] [fill={[type=SOLID] [color=#00FF00]}] [x=0.00] [y=0.00] [width=100.00] [height=100.00]
        RenderSVGRect {rect} at (190,100) size 100x100 [transform={m=((1.00,0.00)(0.00,1.00)) t=(190.00,100.00)}] [fill={[type=SOLID] [color=#00FF00]}] [x=0.00] [y=0.00] [width=100.00] [height=100.00]
        RenderSVGRect {rect} at (300,100) size 100x100 [transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,100.00)}] [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=100.00] [height=100.00]
      RenderSVGRect {rect} at (100,100) size 100x100 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,100.00)}] [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=100.00] [height=100.00]
      RenderSVGRect {rect} at (190,100) size 100x100 [transform={m=((1.00,0.00)(0.00,1.00)) t=(190.00,100.00)}] [fill={[type=SOLID] [color=#FF0000]}] [x=0.00] [y=0.00] [width=100.00] [height=100.00]
      RenderSVGRect {rect} at (300,100) size 100x100 [transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,100.00)}] [fill={[type=SOLID] [color=#00FF00]}] [x=0.00] [y=0.00] [width=100.00] [height=100.00]
      RenderSVGRect {rect} at (0,0) size 480x360 [x=0.00] [y=0.00] [width=480.00] [height=360.00]
    RenderSVGContainer {g} at (10,314) size 227x33
      RenderSVGText {text} at (10,314) size 227x33 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 227x32
          chunk 1 text run 1 at (10.00,340.00) startOffset 0 endOffset 2 width 40.90: "$R"
          chunk 1 text run 2 at (50.51,340.00) startOffset 2 endOffset 3 width 17.79: "e"
          chunk 1 text run 3 at (67.82,340.00) startOffset 3 endOffset 12 width 117.38: "vision: 1"
          chunk 1 text run 4 at (182.83,340.00) startOffset 12 endOffset 16 width 53.38: ".5 $"
    RenderSVGRect {rect} at (0,0) size 480x360 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=478.00] [height=358.00]
