switch methods, no return