<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="../../../http/tests/inspector/resources/inspector-test.js"></script>
<script src="resources/remote-object-utilities.js"></script>
<script>
function test()
{
    let steps = [
        {expression: `"0123456789".repeat(1000000 / 10)[Symbol.iterator]()`},
        {expression: `arr = new Int8Array(new ArrayBuffer(1000000)); arr[Symbol.iterator]()`},
        {expression: `map = new Map; for (var i = 0; i < 1000000; i++) map.set(i, i); map[Symbol.iterator]()`},
        {expression: `set = new Set; for (var i = 0; i < 1000000; i++) set.add(i); set[Symbol.iterator]()`},
    ];

    if (!window.WI) {
        window.steps = steps;
        return;
    }

    runSteps(steps);
}
</script>
</head>
<body onload="runTest(); runInBrowserTest();"></body>
</html>
