public async Task Execute()
        {
            //Get tweets
            var lastTweets = GetTweetsUntilLastSync(_syncAccount.LastSyncTweetId).OrderBy(x => x.Id).ToList();

            //Sync
            if (lastTweets.Count == 0)
            {
                return;
            }
            foreach (var lastTweet in lastTweets)
            {
                var mediasIds      = new int[0];
                var messageContent = lastTweet.MessageContent;

                if (lastTweet.MediaUrls != null)
                {
                    var uploadResults = (await _mastodonService.SubmitAttachementsAsync(_syncAccount.MastodonAccessToken, _syncAccount.MastodonInstance, lastTweet.MediaUrls)).ToArray();
                    mediasIds = uploadResults.Where(x => x.UploadSucceeded).Select(x => x.AttachementId).ToArray();

                    var failedUploadAttachementUrls = uploadResults.Where(x => !x.UploadSucceeded).Select(x => x.AttachementUrl);
                    foreach (var url in failedUploadAttachementUrls)
                    {
                        messageContent += $" {url}";
                    }
                }

                await _mastodonService.SubmitTootAsync(_syncAccount.MastodonAccessToken, _syncAccount.MastodonInstance, messageContent, mediasIds);
            }

            //Update profile
            _syncAccount.LastSyncTweetId = lastTweets.Select(x => x.Id).Max();
            _syncAccountsRepository.UpdateAccount(_syncAccount);
        }