Test if setting blend mode creates isolation.

Test if unsetting blend mode removes isolation.

Test if unsetting a parent's stacking context correctly removes isolation.

Test if switching a blend mode preserves isolation.

Test if switching the property that causes the parent to create a stacking context preserves isolation.

Test if unsetting a parent's stacking context correctly updates its parent isolation.

(repaint rects
  (rect 48 54 60 60)
  (rect 48 54 60 60)
  (rect 48 54 60 60)
  (rect 48 172 60 60)
  (rect 48 172 60 60)
  (rect 28 290 60 60)
  (rect 48 290 60 60)
  (rect 28 290 60 60)
  (rect 28 526 60 60)
  (rect 48 526 60 60)
  (rect 48 408 60 60)
  (rect 48 408 60 60)
  (rect 48 644 60 60)
  (rect 68 644 60 60)
  (rect 48 644 60 60)
  (rect 28 290 60 60)
  (rect 48 644 60 60)
  (rect 48 54 60 60)
  (rect 48 290 60 60)
  (rect 28 526 60 60)
  (rect 88 644 20 60)
  (rect 68 644 60 60)
)

