Base class and Linear class