internal Offer Apply(OfferModifier offerModifier) => offerModifier.ApplyOn(this);
public static EverySecondBoxForHalfPrice Or(OfferModifier fallbackModifier) => new EverySecondBoxForHalfPrice(fallbackModifier);
private EverySecondBoxForHalfPrice(OfferModifier fallbackModifier) : base(fallbackModifier) { }
protected SpecialOffer(OfferModifier fallbackModifier) => _fallbackModifier = fallbackModifier;
private ThreeForTwo(OfferModifier fallbackModifier) : base(fallbackModifier) { }
public static ThreeForTwo Or(OfferModifier fallbackModifier) => new ThreeForTwo(fallbackModifier);