<!DOCTYPE html> <!-- webkit-test-runner [ AsyncOverflowScrollingEnabled=true ] -->
<html>
<head>
    <style>
        body {
            height: 1000px;
        }

        .scroller {
            position: absolute;
            height: 300px;
            width: 300px;
            border: 2px solid gray;
            padding: 5px;
            overflow: scroll;
        }
        
        .inner-scroller {
            border: 1px solid black;
            overflow-x: scroll;
            overflow-y: hidden;
            height: 100px;
            border: 1px solid black;
        }

        .filler {
            height: 500px;
            width: 10px;
        }

        .wide {
            width: 200%;
            height: 10px;
        }
        
        .absolute {
            position: absolute;
            top: 100px;
            left: 50px;
            height: 200px;
            width: 200px;
            background-color: green;
        }
    </style>
    <script>
	    if (window.testRunner)
	        testRunner.dumpAsText();

	    window.addEventListener('load', () => {
	        if (window.internals)
	            document.getElementById('scrollingTree').innerText = window.internals.scrollingStateTreeAsText() + "\n";
	    }, false);
    </script>
</head>
<body>
    <div class="scroller">
        <div class="filler"></div>
        <div class="inner-scroller">
            <div class="wide"></div>
            <div class="absolute"></div>
        </div>
        <div class="filler"></div>
    </div>
<pre id="scrollingTree"></pre>
</body>
</html>
