updated shift categories to work dynamically