<!DOCTYPE html> <!-- webkit-test-runner [ AsyncOverflowScrollingEnabled=true ] -->
<html>
<head>
<style>
    * {
        box-sizing: border-box;
    }

    #scroller {
        height: 500px;
        width: 600px;
        margin: 10px;
        overflow-x: hidden;
        overflow-y: auto;
        position: relative;
        perspective-origin: top left;
        perspective: 100px;
    }

    .parallax {
        width: 100%;
        height: 1200px;
        margin: 20px;
        transform-origin: top left;
        transform: translate3d(0, 0, -50px);
        background-color: green;
    }

    .spacer {
        height: 2000px;
        width: 100px;
    }
</style>
<script>
    if (window.testRunner)
        testRunner.dumpAsText();
    
    window.addEventListener('load', async () => {
        let scroller = document.getElementById('scroller');
        scroller.scrollTop = 900;

        if (window.testRunner)
            document.getElementById('layers').textContent = window.internals.layerTreeAsText(document, internals.LAYER_TREE_INCLUDES_TILE_CACHES + internals.LAYER_TREE_INCLUDES_VISIBLE_RECTS);
        
    }, false);
</script>
</head>
<body>
    <div id="scroller">
        <div class="parallax">&nbsp;</div>
        <div class="spacer"></div>
    </div>
<pre id="layers"></pre>
</body>
</html>

