visibility modifiers have no effect on private, nested classes.  they can go away on the fields and the constructor