improved and added Interface
improved and added Interface