public GiftCard(Currency currency, decimal amount, Date validBefore)
     : base(currency, amount)
 {
     ValidBefore = validBefore ?? throw new ArgumentNullException(nameof(validBefore));
 }