Inheritance-and-Abstraction