<!DOCTYPE HTML>
<html>
    <script>
        if (window.testRunner)
            window.testRunner.waitUntilDone();
        function addIsolation() {
            var isolator = document.getElementById('isolator');
            isolator.style.isolation = "auto";
            if (window.testRunner)
                window.testRunner.notifyDone();
        }
        window.addEventListener('load', function () {
            window.setTimeout(addIsolation, 10);
        }, false);
    </script>
    <body>
        <p>The test passes if you see a green square.</p>
        <svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="200px" height="200px">
            <g id="isolator" style="isolation: isolate;">
                <rect x="0" y="0" width="200" height="200" style="fill: fuchsia; mix-blend-mode: difference;"/>
            </g>
        </svg>
    </body>
</html>
