many changes to respect the java convention