does not build with java 6 but should run