new implementor of repository