layer at (0,0) size 785x638
  RenderView at (0,0) size 785x600
layer at (0,0) size 785x638
  RenderBlock {HTML} at (0,0) size 785x638
    RenderBody {BODY} at (8,8) size 769x622
      RenderBlock (anonymous) at (0,0) size 769x36
        RenderText {#text} at (0,0) size 743x35
          text run at (0,0) width 716: "In the test below, the column rules should not be visible, since a negative z-index child is painting on top of them. "
          text run at (715,0) width 28: "You"
          text run at (0,18) width 156: "should see no red below."
layer at (8,44) size 769x586 layerType: background only
layer at (13,49) size 759x576
  RenderBlock (positioned) zI: -1 {DIV} at (5,5) size 759x576 [bgcolor=#EEEEEE]
layer at (8,44) size 769x586 layerType: foreground only
  RenderBlock (relative positioned) {DIV} at (0,36) size 769x586 [bgcolor=#FF0000] [border: (5px solid #000000)]
    RenderMultiColumnSet at (35,5) size 699x576
layer at (43,49) size 222x1692 backgroundClip at (0,0) size 785x638 clip at (0,0) size 785x638
  RenderMultiColumnFlowThread at (35,5) size 223x1692
    RenderText {#text} at (0,0) size 223x1691
      text run at (0,0) width 177: "Lorem ipsum dolor sit amet,"
      text run at (0,18) width 212: "consectetuer adipiscing elit. Nulla"
      text run at (0,36) width 179: "varius enim ac mi. Curabitur"
      text run at (0,54) width 173: "sollicitudin felis quis lectus."
      text run at (0,72) width 208: "Quisque adipiscing rhoncus sem."
      text run at (0,90) width 201: "Proin nulla purus, vulputate vel,"
      text run at (0,108) width 192: "varius ut, euismod et, nisi. Sed"
      text run at (0,126) width 216: "vitae felis vel orci sagittis aliquam."
      text run at (0,144) width 190: "Cras convallis adipiscing sem."
      text run at (0,162) width 189: "Nam nonummy enim. Nullam"
      text run at (0,180) width 160: "bibendum lobortis neque."
      text run at (0,198) width 184: "Vestibulum velit orci, tempus"
      text run at (0,216) width 203: "euismod, pretium quis, interdum"
      text run at (0,234) width 211: "vitae, nulla. Phasellus eget ante et"
      text run at (0,252) width 201: "tortor condimentum vestibulum."
      text run at (0,270) width 202: "Suspendisse hendrerit quam nec"
      text run at (0,288) width 211: "felis. Sed varius turpis vitae pede."
      text run at (0,306) width 177: "Lorem ipsum dolor sit amet,"
      text run at (0,324) width 211: "consectetuer adipiscing elit. Proin"
      text run at (0,342) width 192: "bibendum justo ac enim. Class"
      text run at (0,360) width 186: "aptent taciti sociosqu ad litora"
      text run at (0,378) width 200: "torquent per conubia nostra, per"
      text run at (0,396) width 221: "inceptos hymenaeos. Sed leo nulla,"
      text run at (0,414) width 212: "rutrum eu, dictum ut, posuere vel,"
      text run at (0,432) width 185: "arcu. Nam libero. Morbi orci."
      text run at (0,450) width 213: "Maecenas pellentesque. Curabitur"
      text run at (0,468) width 203: "erat erat, ullamcorper at, gravida"
      text run at (0,486) width 194: "vitae, iaculis vitae, elit. Nullam"
      text run at (0,504) width 168: "quam. Quisque orci lectus,"
      text run at (0,522) width 190: "ullamcorper eu, imperdiet sed,"
      text run at (0,540) width 193: "accumsan et, ligula. Duis diam"
      text run at (0,558) width 194: "nisl, sagittis a, blandit volutpat,"
      text run at (0,576) width 196: "interdum sed, velit. Vestibulum"
      text run at (0,594) width 195: "quam. Nulla a purus. Phasellus"
      text run at (0,612) width 177: "semper semper lectus. Nulla"
      text run at (0,630) width 211: "porttitor, dolor dictum scelerisque"
      text run at (0,648) width 215: "luctus, velit ipsum lobortis mauris,"
      text run at (0,666) width 196: "ac pretium enim nunc vel risus."
      text run at (0,684) width 194: "Proin gravida mi ut sem cursus"
      text run at (0,702) width 188: "mattis. Fusce laoreet, nisi quis"
      text run at (0,720) width 220: "luctus volutpat, arcu pede tincidunt"
      text run at (0,738) width 208: "enim, nec malesuada urna nisl eu"
      text run at (0,756) width 198: "enim. Vivamus varius augue ac"
      text run at (0,774) width 192: "purus. Vestibulum vestibulum."
      text run at (0,792) width 159: "Phasellus et est vitae ante"
      text run at (0,810) width 163: "accumsan rhoncus. Morbi"
      text run at (0,828) width 221: "convallis, arcu at hendrerit gravida,"
      text run at (0,846) width 186: "sem diam dignissim risus, sed"
      text run at (0,864) width 212: "aliquet erat mi ut mi. Nunc cursus"
      text run at (0,882) width 209: "lacinia elit. Nunc nisi. Quisque at"
      text run at (0,900) width 223: "erat. Vestibulum dictum quam vitae"
      text run at (0,918) width 195: "nibh. Nunc vitae ante non odio"
      text run at (0,936) width 194: "interdum blandit. Curabitur leo"
      text run at (0,954) width 207: "quam, fermentum sed, feugiat in,"
      text run at (0,972) width 212: "ullamcorper id, nibh. Suspendisse"
      text run at (0,990) width 219: "ac turpis. In iaculis sollicitudin dui."
      text run at (0,1008) width 192: "Aenean vitae lectus vitae nulla"
      text run at (0,1026) width 194: "pellentesque sollicitudin. Nunc"
      text run at (0,1044) width 187: "gravida pharetra lectus. Etiam"
      text run at (0,1062) width 195: "lacus ligula, placerat ut, dictum"
      text run at (0,1080) width 180: "vitae, tempus vel, risus. Cras"
      text run at (0,1098) width 206: "rhoncus. Praesent varius ultricies"
      text run at (0,1116) width 221: "orci. Donec mattis, neque ut ornare"
      text run at (0,1134) width 202: "fringilla, ante urna placerat eros,"
      text run at (0,1152) width 216: "vel commodo nisi tortor ut mauris."
      text run at (0,1170) width 216: "Morbi magna dui, sagittis sit amet,"
      text run at (0,1188) width 181: "tincidunt et, elementum eget,"
      text run at (0,1206) width 196: "quam. Fusce molestie nisl vitae"
      text run at (0,1224) width 161: "nisi. Vestibulum a sapien."
      text run at (0,1242) width 218: "Phasellus ante lacus, vehicula non,"
      text run at (0,1260) width 173: "cursus a, tempor ut, magna."
      text run at (0,1278) width 219: "Suspendisse potenti. Fusce aliquet,"
      text run at (0,1296) width 189: "odio viverra vulputate dictum,"
      text run at (0,1314) width 163: "enim odio luctus purus, ut"
      text run at (0,1332) width 196: "scelerisque quam nulla non est."
      text run at (0,1350) width 199: "Donec eros lacus, egestas vitae,"
      text run at (0,1368) width 195: "lacinia quis, tempor quis, pede."
      text run at (0,1386) width 206: "Morbi orci erat, iaculis id, ornare"
      text run at (0,1404) width 182: "ac, elementum at, sem. Nunc"
      text run at (0,1422) width 163: "ornare sodales nisi. Morbi"
      text run at (0,1440) width 194: "interdum commodo nisl. Fusce"
      text run at (0,1458) width 209: "eget eros non nisi ornare facilisis."
      text run at (0,1476) width 183: "Sed placerat, est non posuere"
      text run at (0,1494) width 185: "posuere, purus sem dignissim"
      text run at (0,1512) width 196: "libero, a viverra tellus dolor vel"
      text run at (0,1530) width 213: "lorem. Cras augue. Etiam ultricies"
      text run at (0,1548) width 209: "consequat odio. Mauris ac libero."
      text run at (0,1566) width 168: "Etiam posuere, libero vitae"
      text run at (0,1584) width 163: "euismod gravida, urna elit"
      text run at (0,1602) width 199: "imperdiet magna, vel cursus elit"
      text run at (0,1620) width 209: "felis non mauris. Donec orci erat,"
      text run at (0,1638) width 189: "porta id, dignissim ut, posuere"
      text run at (0,1656) width 155: "dictum, leo. Suspendisse"
      text run at (0,1674) width 157: "scelerisque egestas nulla."
