Update interface
Added Tests