added interfaces
added interfaces