all private, protected not needed.