-- Std.Data.DTreeMap.Internal.Balancing
Std.DTreeMap.Internal.Impl.balanceR.match_1.congr_eq_3 : ∀ {α : Type u_1} {β : α → Type u_2}
  (motive :
    (r : Std.DTreeMap.Internal.Impl α β) →
      r.Balanced → Std.DTreeMap.Internal.Impl.BalanceLPrecond r.size Std.DTreeMap.Internal.Impl.leaf.size → Sort u_3)
  (r : Std.DTreeMap.Internal.Impl α β) (hrb : r.Balanced)
  (hlr : Std.DTreeMap.Internal.Impl.BalanceLPrecond r.size Std.DTreeMap.Internal.Impl.leaf.size)
  (h_1 :
    (hrb : Std.DTreeMap.Internal.Impl.leaf.Balanced) →
      (hlr :
          Std.DTreeMap.Internal.Impl.BalanceLPrecond Std.DTreeMap.Internal.Impl.leaf.size
            Std.DTreeMap.Internal.Impl.leaf.size) →
        motive Std.DTreeMap.Internal.Impl.leaf hrb hlr)
  (h_2 :
    (size : ℕ) →
      (k : α) →
        (v : β k) →
          (hrb :
              (Std.DTreeMap.Internal.Impl.inner size k v Std.DTreeMap.Internal.Impl.leaf
                  Std.DTreeMap.Internal.Impl.leaf).Balanced) →
            (hlr :
                Std.DTreeMap.Internal.Impl.BalanceLPrecond
                  (Std.DTreeMap.Internal.Impl.inner size k v Std.DTreeMap.Internal.Impl.leaf
                      Std.DTreeMap.Internal.Impl.leaf).size
                  Std.DTreeMap.Internal.Impl.leaf.size) →
              motive
                (Std.DTreeMap.Internal.Impl.inner size k v Std.DTreeMap.Internal.Impl.leaf
                  Std.DTreeMap.Internal.Impl.leaf)
                hrb hlr)
  (h_3 :
    (size : ℕ) →
      (rk : α) →
        (rv : β rk) →
          (rr : Std.DTreeMap.Internal.Impl α β) →
            (size_1 : ℕ) →
              (k : α) →
                (v : β k) →
                  (l r : Std.DTreeMap.Internal.Impl α β) →
                    rr = Std.DTreeMap.Internal.Impl.inner size_1 k v l r →
                      (hrb :
                          (Std.DTreeMap.Internal.Impl.inner size rk rv Std.DTreeMap.Internal.Impl.leaf
                              (Std.DTreeMap.Internal.Impl.inner size_1 k v l r)).Balanced) →
                        (hlr :
                            Std.DTreeMap.Internal.Impl.BalanceLPrecond
                              (Std.DTreeMap.Internal.Impl.inner size rk rv Std.DTreeMap.Internal.Impl.leaf
                                  (Std.DTreeMap.Internal.Impl.inner size_1 k v l r)).size
                              Std.DTreeMap.Internal.Impl.leaf.size) →
                          motive
                            (Std.DTreeMap.Internal.Impl.inner size rk rv Std.DTreeMap.Internal.Impl.leaf
                              (Std.DTreeMap.Internal.Impl.inner size_1 k v l r))
                            hrb hlr)
  (h_4 :
    (size : ℕ) →
      (rk : α) →
        (rv : β rk) →
          (size_1 : ℕ) →
            (rlk : α) →
              (rlv : β rlk) →
                (l r : Std.DTreeMap.Internal.Impl α β) →
                  (hrb :
                      (Std.DTreeMap.Internal.Impl.inner size rk rv (Std.DTreeMap.Internal.Impl.inner size_1 rlk rlv l r)
                          Std.DTreeMap.Internal.Impl.leaf).Balanced) →
                    (hlr :
                        Std.DTreeMap.Internal.Impl.BalanceLPrecond
                          (Std.DTreeMap.Internal.Impl.inner size rk rv
                              (Std.DTreeMap.Internal.Impl.inner size_1 rlk rlv l r)
                              Std.DTreeMap.Internal.Impl.leaf).size
                          Std.DTreeMap.Internal.Impl.leaf.size) →
                      motive
                        (Std.DTreeMap.Internal.Impl.inner size rk rv
                          (Std.DTreeMap.Internal.Impl.inner size_1 rlk rlv l r) Std.DTreeMap.Internal.Impl.leaf)
                        hrb hlr)
  (h_5 :
    (rs : ℕ) →
      (rk : α) →
        (rv : β rk) →
          (rls : ℕ) →
            (rlk : α) →
              (rlv : β rlk) →
                (rll rlr : Std.DTreeMap.Internal.Impl α β) →
                  (rrs : ℕ) →
                    (k : α) →
                      (v : β k) →
                        (l r : Std.DTreeMap.Internal.Impl α β) →
                          (hrb :
                              (Std.DTreeMap.Internal.Impl.inner rs rk rv
                                  (Std.DTreeMap.Internal.Impl.inner rls rlk rlv rll rlr)
                                  (Std.DTreeMap.Internal.Impl.inner rrs k v l r)).Balanced) →
                            (hlr :
                                Std.DTreeMap.Internal.Impl.BalanceLPrecond
                                  (Std.DTreeMap.Internal.Impl.inner rs rk rv
                                      (Std.DTreeMap.Internal.Impl.inner rls rlk rlv rll rlr)
                                      (Std.DTreeMap.Internal.Impl.inner rrs k v l r)).size
                                  Std.DTreeMap.Internal.Impl.leaf.size) →
                              motive
                                (Std.DTreeMap.Internal.Impl.inner rs rk rv
                                  (Std.DTreeMap.Internal.Impl.inner rls rlk rlv rll rlr)
                                  (Std.DTreeMap.Internal.Impl.inner rrs k v l r))
                                hrb hlr)
  (size : ℕ) (rk : α) (rv : β rk) (size_1 : ℕ) (k : α) (v : β k) (l r_1 : Std.DTreeMap.Internal.Impl α β)
  (hrb_1 :
    (Std.DTreeMap.Internal.Impl.inner size rk rv Std.DTreeMap.Internal.Impl.leaf
        (Std.DTreeMap.Internal.Impl.inner size_1 k v l r_1)).Balanced)
  (hlr_1 :
    Std.DTreeMap.Internal.Impl.BalanceLPrecond
      (Std.DTreeMap.Internal.Impl.inner size rk rv Std.DTreeMap.Internal.Impl.leaf
          (Std.DTreeMap.Internal.Impl.inner size_1 k v l r_1)).size
      Std.DTreeMap.Internal.Impl.leaf.size),
  r =
      Std.DTreeMap.Internal.Impl.inner size rk rv Std.DTreeMap.Internal.Impl.leaf
        (Std.DTreeMap.Internal.Impl.inner size_1 k v l r_1) →
    hrb ≍ hrb_1 →
      hlr ≍ hlr_1 →
        (match r, hrb, hlr with
          | Std.DTreeMap.Internal.Impl.leaf, hrb, hlr => h_1 hrb hlr
          | Std.DTreeMap.Internal.Impl.inner size k v Std.DTreeMap.Internal.Impl.leaf Std.DTreeMap.Internal.Impl.leaf,
            hrb, hlr => h_2 size k v hrb hlr
          |
          Std.DTreeMap.Internal.Impl.inner size rk rv Std.DTreeMap.Internal.Impl.leaf
              rr@h:(Std.DTreeMap.Internal.Impl.inner size_2 k v l r),
            hrb, hlr => h_3 size rk rv rr size_2 k v l r h hrb hlr
          |
          Std.DTreeMap.Internal.Impl.inner size rk rv (Std.DTreeMap.Internal.Impl.inner size_2 rlk rlv l r)
              Std.DTreeMap.Internal.Impl.leaf,
            hrb, hlr => h_4 size rk rv size_2 rlk rlv l r hrb hlr
          |
          Std.DTreeMap.Internal.Impl.inner rs rk rv (Std.DTreeMap.Internal.Impl.inner rls rlk rlv rll rlr)
              (Std.DTreeMap.Internal.Impl.inner rrs k v l r),
            hrb, hlr => h_5 rs rk rv rls rlk rlv rll rlr rrs k v l r hrb hlr) ≍
          h_3 size rk rv (Std.DTreeMap.Internal.Impl.inner size_1 k v l r_1) size_1 k v l r_1 ⋯ hrb_1 hlr_1