Added interface and initial class