Adpters with Abstracts and Interfaces