generalize tab bar