table view using enum pattern