Shouldn't this class be abstract?