public static TypeInstancesChanges GetTypeInstanceChangesTranslated(ITranslator[] translators, Type type, CultureInfo targetCulture, out int totalInstances)
    {
        var cultures = TranslationLogic.CurrentCultureInfos(TranslatedInstanceLogic.DefaultCulture);

        cultures.Remove(targetCulture);

        var instances = TranslatedInstanceLogic.GetInstanceChanges(type, targetCulture, cultures);

        totalInstances = instances.Count;
        if (instances.Sum(a => a.TotalOriginalLength()) > MaxTotalSyncCharacters)
        {
            instances = instances.Chunk(a => a.TotalOriginalLength(), MaxTotalSyncCharacters).First().ToList();
        }

        return(TranslateInstances(translators, type, targetCulture, instances));
    }