sources of java project 3a