{motive : Aesop.CasesTarget → Sort u} →
  ((decl : Lean.Name) → motive (Aesop.CasesTarget.decl decl)) →
    ((patterns : Array Aesop.CasesPattern) → motive (Aesop.CasesTarget.patterns patterns)) →
      (t : Aesop.CasesTarget) → motive t