public string Name { get => name; set => name = value ?? throw new ArgumentNullException("Name cannot be null", nameof(value)); }