The tests in this directory were imported from the W3C repository.
Do NOT modify these tests directly in Webkit.
Instead, push changes to the W3C CSS repo:
	http://hg.csswg.org/test
Or create a pull request on the W3C CSS github:
	https://github.com/w3c/csswg-test

Then run the Tools/Scripts/import-w3c-tests in Webkit to reimport

Do NOT modify or remove this file

------------------------------------------------------------------------
Last Import: 2014-11-06 09:44
------------------------------------------------------------------------
Properties requiring vendor prefixes:
None
Property values requiring vendor prefixes:
None
------------------------------------------------------------------------
List of files:
/LayoutTests/w3c/css-shapes-1/spec-examples/support/circle-no-shadow.png
/LayoutTests/w3c/css-shapes-1/spec-examples/support/circle-shadow.png
/LayoutTests/w3c/css-shapes-1/spec-examples/support/rounded-triangle.svg
/LayoutTests/w3c/css-shapes-1/spec-examples/support/spec-example-utils.js
