Completed interface defintion
Some changes