public Task ModifyAsync(Action <MessageProperties> func, RequestOptions options = null) { var props = new MessageProperties { Content = Content, Embed = Optional.Create(Embeds.FirstOrDefault() as Embed) }; func(props); Content = props.Content.Value; Embeds = props.Embed.IsSpecified ? new List <IEmbed> { props.Embed.Value } : new List <IEmbed>(); return(Task.CompletedTask); }