<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1 Basic//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-basic.dtd">
<svg version="1.1" baseProfile="basic" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="svg-root" width="100%" height="100%" onload="runTest()">
   <script type="text/ecmascript"><![CDATA[
      function runTest() {
         var ctm = document.getElementById("test").getCTM();
         if (ctm.a == 2 && ctm.b == 0 && ctm.c == 0 && ctm.d == 2 &&
             ctm.e == -50 && ctm.f == -50) {
             var ctm = document.getElementById("test").getScreenCTM();
             if (ctm.a == 2 && ctm.b == 0 && ctm.c == 0 && ctm.d == 2 &&
                 ctm.e == -40 && ctm.f == -40) {
                 document.getElementById("test").textContent = "Passed";
             }
         }
      }
   ]]></script>
   <g  transform="translate(10, 10)">
   <svg>
     <text transform="scale(2) translate(-25, -25)" id="test" x="70" y="70" >Failed</text>
   </svg>
   </g>
</svg>
