Why do I fail the test? 1) I also do not understand why you can create another CodeGym. You would assume that it should be a singleton? 2) I do not understand why you use codeGym.save(outputStream) what is this suppose to do? I would think that you would save new users to the list that is in the class Codegym But that is not what we're doing? This I find very confusing. 3) Why did we have a lesson on the isPresent boolean to check if a field is blank or not. When are we suppose to use this? 4) What do they mean on line 23 initialize users field for the codeGym object. The only field is the arrayList why would we initialize it here as it is initialized in its own class. So what is the meaning of this?