with GUI implemented in Java