enum VisibilityState { hidden, visible }