layer at (0,0) size 800x600
  RenderView at (0,0) size 800x600
layer at (0,0) size 800x600
  RenderSVGRoot {svg} at (16,55) size 206x85
    RenderSVGContainer {g} at (16,55) size 206x85
      RenderSVGText {text} at (10,33) size 123x21 contains 1 chunk(s)
        RenderSVGTSpan {tspan} at (0,0) size 123x21
          RenderSVGInlineText {#text} at (0,0) size 123x21
            chunk 1 text run 1 at (10.00,50.00) startOffset 0 endOffset 17 width 122.40: "\x{646}\x{634}\x{627}\x{637} \x{627}\x{644}\x{62A}\x{62F}\x{648}\x{64A}\x{644}\x{60C} W3C"
      RenderSVGText {text} at (10,63) size 123x21 contains 1 chunk(s)
        RenderSVGTSpan {tspan} at (0,0) size 123x21
          RenderSVGInlineText {#text} at (0,0) size 123x21
            chunk 1 text run 1 at (10.00,80.00) startOffset 0 endOffset 12 width 71.40 RTL: "\x{646}\x{634}\x{627}\x{637} \x{627}\x{644}\x{62A}\x{62F}\x{648}\x{64A}\x{644}"
            chunk 1 text run 1 at (81.40,80.00) startOffset 0 endOffset 5 width 51.00: "\x{60C} W3C"
      RenderSVGContainer {g} at (16,55) size 206x85
        RenderSVGRect {svg:rect} at (16,55) size 131x35 [fill={[type=SOLID] [color=#FF0000] [opacity=0.40]}] [x=10.00] [y=33.71] [width=77.40] [height=20.11]
        RenderSVGRect {svg:rect} at (153,55) size 69x35 [fill={[type=SOLID] [color=#008000] [opacity=0.40]}] [x=92.20] [y=33.71] [width=40.20] [height=20.11]
        RenderSVGRect {svg:rect} at (16,105) size 131x35 [fill={[type=SOLID] [color=#FF0000] [opacity=0.40]}] [x=10.00] [y=63.71] [width=77.40] [height=20.11]
        RenderSVGRect {svg:rect} at (153,105) size 69x35 [fill={[type=SOLID] [color=#008000] [opacity=0.40]}] [x=92.20] [y=63.71] [width=40.20] [height=20.11]
