class, methods, multiple parameters, switch, init