Abstract RepositoryĀ