public void Execute(Message message, ITelegramBotClient telegramBotClient) { var meme = knowYourMemeParser.GetRandomMeme(); if (meme.Description.Length > MaxCaptionLength) { var chunks = Enumerable.Range(0, meme.Description.Length / MaxCaptionLength) .Select(i => meme.Description.Substring(i * MaxCaptionLength, MaxCaptionLength)); telegramBotClient.SendPhoto(message.Chat.Id, meme.PhotoUrl, $"<b>{meme.Title}</b>{chunks.First()}", ParseMode.Html); foreach (var chunk in chunks.Skip(1)) { telegramBotClient.SendTextMessage(message.Chat.Id, chunk, ParseMode.Html); } } else { telegramBotClient.SendPhoto(message.Chat.Id, meme.PhotoUrl, $"<b>{meme.Title}</b>{meme.Description}", ParseMode.Html); } }