initial java version

OK