Adds comments, @Override annotations and null check