implemented missing interface methods