Adding Interface for Extensibility