Must conform to java 1.6