Basic interface & trait written