{P : Sort u} →
  {ignoreArgsAttr : Lean.NameMapExtension (List ℕ)} →
    {doTranslateAttr : Lean.NameMapExtension Bool} →
      {unfoldBoundaries? : Option Mathlib.Tactic.UnfoldBoundary.UnfoldBoundaryExt} →
        {translations : Lean.NameMapExtension Mathlib.Tactic.Translate.TranslationInfo} →
          {attrName : Lean.Name} →
            {changeNumeral isDual : Bool} →
              {guessNameData : Mathlib.Tactic.GuessName.GuessNameData} →
                {ignoreArgsAttr' : Lean.NameMapExtension (List ℕ)} →
                  {doTranslateAttr' : Lean.NameMapExtension Bool} →
                    {unfoldBoundaries?' : Option Mathlib.Tactic.UnfoldBoundary.UnfoldBoundaryExt} →
                      {translations' : Lean.NameMapExtension Mathlib.Tactic.Translate.TranslationInfo} →
                        {attrName' : Lean.Name} →
                          {changeNumeral' isDual' : Bool} →
                            {guessNameData' : Mathlib.Tactic.GuessName.GuessNameData} →
                              { ignoreArgsAttr := ignoreArgsAttr, doTranslateAttr := doTranslateAttr,
                                    unfoldBoundaries? := unfoldBoundaries?, translations := translations,
                                    attrName := attrName, changeNumeral := changeNumeral, isDual := isDual,
                                    guessNameData := guessNameData } =
                                  { ignoreArgsAttr := ignoreArgsAttr', doTranslateAttr := doTranslateAttr',
                                    unfoldBoundaries? := unfoldBoundaries?', translations := translations',
                                    attrName := attrName', changeNumeral := changeNumeral', isDual := isDual',
                                    guessNameData := guessNameData' } →
                                (ignoreArgsAttr = ignoreArgsAttr' →
                                    doTranslateAttr = doTranslateAttr' →
                                      unfoldBoundaries? = unfoldBoundaries?' →
                                        translations = translations' →
                                          attrName = attrName' →
                                            changeNumeral = changeNumeral' →
                                              isDual = isDual' → guessNameData = guessNameData' → P) →
                                  P