Starting work on a java version.