be compatible with java 6