{M : Type u_1} →
  [inst : Monoid M] →
    {ι : Type u_2} →
      [Fintype ι] →
        {N : ι → Type u_3} →
          [inst_2 : (i : ι) → Monoid (N i)] →
            (ϕ : (i : ι) → N i →* M) →
              (Pairwise fun i j => ∀ (x : N i) (y : N j), Commute ((ϕ i) x) ((ϕ j) y)) → ((i : ι) → N i) →* M