#interface-abstraction