add the dataclass and repository