Use interface, add Abstract, change to embeds