<html>
<head>
  <style>
  div {
    background: lime;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-image: url(resources/animated-rect-relative-size.svg);
    height: 600px;
    width: 800px;
  }
  </style>
  <script type="text/javascript" charset="utf-8">
    if (window.layoutTestController)
      layoutTestController.waitUntilDone();
    
    function pageLoaded() 
    {
      window.setTimeout(function() {
        if (window.layoutTestController)
          layoutTestController.notifyDone();
      }, 400);    // empirically determined delay. SVG animation has 100ms duration.
    }

    window.addEventListener('load', pageLoaded, false);
  </script>
  </script>
</head>
<body style='margin: 0px'>
<div>&nbsp;</div>
</body>
</html>
