<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" onload="loaded()">

<rect x="50" y="50" width="100" height="100" fill="green">
    <animateTransform attributeName="transform" type="translate" from="0,0" to="50,50" begin="0s" dur="1s" fill="freeze"/>
</rect>

<!-- Beware the end result of this animation is: transform="translate(25,25) translate(25,25)" which simplifies to translate(50,50) -->
<rect x="50" y="200" width="100" height="100" fill="green">
    <animateTransform attributeName="transform" type="translate" from="0,0" to="25,25" begin="0s" dur="1s" fill="freeze"/>
    <animateTransform attributeName="transform" type="translate" additive="sum" from="0,0" to="25,25" begin="0s" dur="1s" fill="freeze"/>
</rect>

<rect x="50" y="350" width="100" height="100" fill="green">
    <animateTransform attributeName="transform" type="translate" accumulate="sum" from="0,0" to="25,25" begin="0s" dur="0.5s" repeatCount="2" fill="freeze"/>
</rect>

<rect x="200" y="50" width="100" height="100" fill="green">
    <animateTransform attributeName="transform" type="translate" additive="sum" from="0,0" to="50,50" begin="0s" dur="1s" fill="freeze"/>
</rect>

<rect x="200" y="200" width="100" height="100" fill="green">
    <animateTransform attributeName="transform" type="translate" additive="sum" accumulate="sum" from="0,0" to="25,25" begin="0s" dur="0.5s" repeatCount="2" fill="freeze"/>
</rect>

<!-- Beware the end result of this animation is: transform="translate(25,25) translate(25,25)" which simplifies to translate(50,50) -->
<rect x="200" y="350" width="100" height="100" fill="green" transform="translate(25,25)">
    <animateTransform attributeName="transform" type="translate" additive="sum" accumulate="sum" from="0,0" to="12.5,12.5" begin="0s" dur="0.5s" repeatCount="2" fill="freeze"/>
</rect>

<script>
if (window.testRunner)
    testRunner.waitUntilDone();

function loaded() {
    document.documentElement.setCurrentTime(2);
    if (window.testRunner)
        testRunner.notifyDone();
}
</script>
</svg>
