changed switches to use enumerationsadded slect boxes