Added Interface definition. Start phase 3