pattern nverG (nb_in, nb_out, nb_comp, nb_vin) {
   component top (in i[nb_in], out o[nb_out]) {
	   component split[nb_in](in i[1], out o[nb_comp])
	   component comp[nb_comp](in i[nb_in], out o[nb_out])
	   component vote[1](in i[nb_vin], out o[nb_out])
	   i -{Transpose}-> split.i 
	   split.o -{Transpose}-> comp.i 
	   comp.o -{FlattenC}-> vote.i 
	   vote.o -{Identity}-> o
   }
}