use switch-case