MERGE KEEP: The essence of software design is abstraction.