public override IEnumerable <IMarkdownMediaOutput> Extend(CompositionContext context)
        {
            foreach (IMarkdownMediaOutput markdownMediaOutput in base.Extend(context))
            {
                yield return(markdownMediaOutput);
            }

            foreach (IHtmlMediaOutput htmlMediaOutput in _htmlMediaOutputs.Extend(context))
            {
                if (htmlMediaOutput is IExtensible extensible)
                {
                    extensible.Extend(context);
                }

                IMarkdownMediaOutput adapted = Adapt(htmlMediaOutput);
                MediaCatalog.Add(adapted);
                yield return(adapted);
            }
        }
 IEnumerable <IHtmlMediaOutput> IExtensible <IHtmlMediaOutput> .Extend(CompositionContext context)
 {
     IHtmlMediaOutput[] htmlMediaOutputs = _htmlMediaOutputs.Extend(context).ToArray();
     MediaCatalog.AddRange(htmlMediaOutputs.Select(Adapt));
     return(htmlMediaOutputs);
 }