7: repository interface and implementation.