adding more options and organizing switch