model result {
	component System(in i1,in i2,out o1, out o2) {
		component Sub2(in i,out o)
		component Sub1(in i1,in i2,out o1,out o2) {
			component vote_2(in i_1,in i_2,in i_3,out o_1)
			component vote_1(in i_1,in i_2,in i_3,out o_1)
			component dupl_2(in i_1,out o_1,out o_2,out o_3)
			component dupl_1(in i_1,out o_1,out o_2,out o_3)
			component Sub1_3(in i_1,in i_2,out o_1,out o_2)
			component Sub1_2(in i_1,in i_2,out o_1,out o_2)
			component Sub1_1(in i_1,in i_2,out o_1,out o_2)
			i1 -> dupl_2.i_1
			i2 -> dupl_1.i_1
			dupl_2.o_3 -> Sub1_3.i_2
			dupl_2.o_2 -> Sub1_2.i_2
			dupl_2.o_1 -> Sub1_1.i_2
			dupl_1.o_3 -> Sub1_3.i_1
			dupl_1.o_2 -> Sub1_2.i_1
			dupl_1.o_1 -> Sub1_1.i_1
			Sub1_3.o_2 -> vote_2.i_3
			Sub1_3.o_1 -> vote_1.i_3
			Sub1_2.o_2 -> vote_2.i_2
			Sub1_2.o_1 -> vote_1.i_2
			Sub1_1.o_2 -> vote_2.i_1
			Sub1_1.o_1 -> vote_1.i_1
			vote_2.o_1 -> o1
			vote_1.o_1 -> o2
		}
		i1 -> Sub1.i1
		i2 -> Sub1.i2
		Sub1.o1 -> Sub2.i
		Sub1.o2 -> o2
		Sub2.o -> o1
	}
}