Make it more readable - use switch/case