adding interface methods etc