huge dropdowns refactoring