constant doesn't have to be public