{J : Type u_1} →
  {K : Type u_2} →
    [inst : CategoryTheory.Category.{v_1, u_1} J] →
      [inst_1 : CategoryTheory.Category.{v_2, u_2} K] →
        {C : Type u_3} →
          [inst_2 : CategoryTheory.Category.{v_3, u_3} C] →
            (G : CategoryTheory.Functor (J × K) C) →
              [inst_3 : CategoryTheory.Limits.HasColimitsOfShape K C] →
                [inst_4 : CategoryTheory.Limits.HasColimitsOfShape J C] →
                  [inst_5 :
                      CategoryTheory.Limits.HasColimit
                        ((CategoryTheory.Functor.curry.obj G).comp CategoryTheory.Limits.colim)] →
                    CategoryTheory.Limits.colimit
                        ((CategoryTheory.Functor.curry.obj ((CategoryTheory.Prod.swap K J).comp G)).comp
                          CategoryTheory.Limits.colim) ≅
                      CategoryTheory.Limits.colimit
                        ((CategoryTheory.Functor.curry.obj G).comp CategoryTheory.Limits.colim)