worked on interfaces