class changed to interface