public void ExtendFrom(SubscriptionConfiguration parent)
        {
            if (parent == null)
            {
                return;
            }

            if (parent.Id.HasValue())
            {
                Id = Id.HasValue() ? parent.Id + "." + Id : parent.Id;
            }

            Enabled ??= parent.Enabled;
            Comments        = Comments.Or(parent.Comments);
            AwsRegion       = AwsRegion.Or(parent.AwsRegion);
            LogGroupName    = LogGroupName.Or(parent.LogGroupName);
            LogGroupPattern = LogGroupPattern.Or(parent.LogGroupPattern);

            StartTimeIso = StartTimeIso.Or(parent.StartTimeIso);
            EndTimeIso   = EndTimeIso.Or(parent.EndTimeIso);
            StartTimeSecondsAgo ??= parent.StartTimeSecondsAgo;
            EndTimeSecondsAgo ??= parent.EndTimeSecondsAgo;

            EventFilterPattern  = EventFilterPattern.Or(parent.EventFilterPattern);
            LogStreamNamePrefix = LogStreamNamePrefix.Or(parent.LogStreamNamePrefix);
            if (parent.LogStreamNames.SafeAny())
            {
                LogStreamNames = LogStreamNames.SafeUnion(parent.LogStreamNames).ToList();
            }

            ReadMaxBatchSize ??= parent.ReadMaxBatchSize;
            MinIntervalSeconds ??= parent.MinIntervalSeconds;
            MaxIntervalSeconds ??= parent.MaxIntervalSeconds;
            ClockSkewProtectionSeconds ??= parent.ClockSkewProtectionSeconds;

            TargetUrl = TargetUrl.Or(parent.TargetUrl);
            TargetTimeoutSeconds ??= parent.TargetTimeoutSeconds;
            TargetMaxBatchSize ??= parent.TargetMaxBatchSize;
            TargetSubscriptionData = TargetSubscriptionData.Or(parent.TargetSubscriptionData);
        }