add some exercise about interface