implemented interface methods
first commit