Added Interfaces and Datatype