Lets make this an abstract class again and make LimitSwitch implement this class