<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1 Tiny//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-tiny.dtd">
<svg xmlns="http://www.w3.org/2000/svg" onload="loaded()">
<rect width="10" height="100" fill="green">
    <animate attributeName="width" attributeType="XML" begin="0s; 2s" from="0" to="200" dur="4s" fill="freeze"/>
</rect>
<script>
if (window.testRunner)
    testRunner.waitUntilDone();

function loaded() {
    document.documentElement.setCurrentTime(4);
    document.documentElement.pauseAnimations();

    if (window.testRunner)
        testRunner.notifyDone();
}
</script>
</svg>
