Complete JAVA compatibility