(motive : Lean.Expr → Sort u_1) →
  (x : Lean.Expr) →
    ((name uniq : Lean.Name) →
        (p : Lean.Expr) →
          motive
            (Lean.Expr.mdata { entries := [(`name, Lean.DataValue.ofName name), (`uniq, Lean.DataValue.ofName uniq)] }
              p)) →
      ((x : Lean.Expr) → motive x) → motive x