public void OptimizeForSave(EquationRoot root)
        {
            mapping.Clear();
            List <TextFormat> newList  = new List <TextFormat>();
            HashSet <int>     usedOnes = root.GetUsedTextFormats();

            foreach (int i in usedOnes)
            {
                TextFormat tf = formattingList[i];
                tf.Index = newList.Count;
                newList.Add(tf);
                mapping.Add(i, tf.Index);
            }
            root.ResetTextFormats(mapping);
            formattingListBeforeSave = formattingList;
            formattingList           = newList;
        }