impl Material class and repository