DOZEN CYCLES SIMULATION/TEST

3
3
2
1
1
1
1
3
2
1
1
1
3
3
3
2
2
2
2
1
1
3
3
2
1
3
2
1
3
3
3
3
3
3
3
2
1
3
2
1
1
1
3
2
2
2
2
2
1
1
1
1
1
3
2
2
2
1
3
2
1
3
2
1
3
2
2
1
3
3
2
2
1
3
3
2
2
1
1
1
1
1
3
2
1
1
1
3
2
1
3
3
3
3
3
3
2
1
1
1
3
2
1
3
2
1
3
2
2
2
1
3
3
2
2
2
2
2
2
2
2
2
2
2
1
1
3
2
1
1
1
3
3
2
2
1
3
2
1
3
2
2
1
1
1
1
3
3
3
2
2
1
3
3
2
1
1
1
3
2
1
1
1
3
3
3
3
2
2
2
1
3
3
2
1
1
3
2
1
1
1
3
3
3
3
2
2
2
2
2
2
2
2
1
1
3
2
2
1
3
3
3
2
2
2
1
3
3
3
3
2
1
1
1
1
3
3
2
2
2
1
1
3
2
2
2
2
1
1
3
2
1
1
3
2
1
1
3
2
2
1
1
3
2
2
2
1
3
2
2
1
3
2
1
3
3
2
2
2
2
1
1
3
3
3
3
2
1
1
1
1
1
1
3
2
1
1
1
1
1
3
2
1
1
1
1
3
3
3
2
1
3
2
1
1
3
2
2
2
2
2
1
1
3
3
3
2
1
3
2
1
3
2
1
3
2
2
1
3
2
1
1
3
3
3
3
3
2
1
3
2
1
1
1
3
2
2
1
3
2
2
1
1
3
2
2
2
1
1
3
3
3
3
2
1
1
3
3
3
3
2
2
1
1
3
3
3
2
2
2
2
2
1
3
2
1
1
3
2
1
1
3
3
2
1
1
1
1
1
1
3
2
2
2
2
2
2
2
2
1
1
3
3
3
2
1
1
1
1
3
2
2
2
2
1
1
3
3
2
2
2
1
3
3
2
1
1
1
3
3
3
2
2
2
1
3
3
3
2
1
1
3
2
1
3
3
2
1
3
3
3
2
2
2
1
1
3
3
2
1
1
1
3
3
3
3
3
3
2
2
2
1
1
1
1
1
1
3
2
2
2
1
1
1
3
2
1
1
1
3
2
1
1
3
3
2
1
3
3
2
1
3
2
1
3
2
1
1
3
2
1
1
3
3
2
2
2
2
2
2
2
2
2
1
3
3
2
1
1
3
3
2
2
1
3
3
3
3
2
2
1
1
1
3
3
2
1
3
3
3
2
2
2
1
1
3
3
2
2
1
1
3
3
3
2
2
1
1
1
3
3
3
2
1
3
2
1
3
3
3
3
2
1
3
3
2
2
2
2
1
3
2
2
1
3
2
2
1
3
3
3
3
2
1
3
3
3
3
2
1
1
3
2
1
1
1
1
3
3
3
3
3
2
2
1
3
3
3
2
1
1
1
3
3
3
2
1
3
3
2
1
1
1
3
3
3
2
1
1
1
3
2
2
1
3
3
2
2
1
3
2
2
2
1
3
3
3
3
3
2
1
1
3
3
3
2
1
3
2
2
1
1
1
3
2
1
1
1
1
3
2
2
2
2
1
1
1
3
3
2
2
2
2
2
1
3
2
1
3
3
2
2
2
2
2
1
1
3
3
2
1
1
1
1
3
3
3
3
2
1
3
3
3
3
3
2
1
1
3
2
1
1
1
3
2
1
3
2
1
3
3
3
2
2
1
1
1
3
2
2
2
2
2
1
1
3
2
1
3
3
2
2
2
1
3
2
1
1
1
1
1
1
3
2
2
1
3
3
2
2
1
1
1
3
3
3
3
2
2
1
1
1
1
1
3
2
2
1
3
3
3
2
1
1
3
2
2
2
1
3
2
2
1
3
3
3
3
3
2
1
1
1
1
1
1
3
3
2
2
1
3
3
2
2
2
1
3
2
2
1
1
3
3
3
3
2
2
2
2
1
1
3
2
2
1
3
3
3
3
2
2
2
1
3
2
2
1
3
3
2
1
3
2
2
1
3
3
3
2
1
1
1
3
3
2
2
2
1
3
3
3
3
2
1
1
1
3
3
2
1
1
1
1
1
1
1
1
1
1
3
2
1
3
3
3
2
2
2
1
1
3
3
3
2
2
1
1
1
3
3
3
3
2
1
1
1
1
1
1
3
3
3
2
1
1
1
1
3
2
2
2
1
3
2
2
1
1
3
2
2
1
3
3
2
1
3
2
1
3
2
2
1
1
1
3
3
2
2
1
1
3
3
3
2
1
1
1
3
2
1
1
1
3
3
2
2
2
2
2
1
1
1
3
3
2
2
2
1
3
3
2
1
3
2
1
3
3
3
2
2
1
3
2
1
3
2
1
3
2
1
1
3
2
2
2
2
2
1
1
3
2
1
1
1
1
1
3
3
2
2
1
3
2
2
1
3
2
2
2
2
1
1
3
3
2
2
2
2
1
1
3
2
1
1
1
1
1
3
2
1
3
2
1
1
1
1
3
2
1
1
1
3
3
2
2
1
1
3
2
1
3
3
3
3
2
2
1
1
3
2
1
1
1
1
3
3
3
2
1
1
1
3
3
3
2
1
3
2
1
3
2
2
1
3
3
2
1
1
3
3
2
2
2
1
1
1
3
3
3
2
1
1
1
3
2
2
1
3
3
2
2
1
1
3
3
2
1
3
3
3
3
3
2
2
2
2
2
1
3
3
3
3
2
2
1
1
1
3
3
3
2
1
1
1
1
3
3
3
2
2
1
1
1
3
3
3
2
1
3
3
3
2
2
1
3
2
2
2
2
1
3
3
3
3
3
2
2
2
2
1
1
1
1
1
3
3
3
3
3
3
2
2
2
1
3
3
2
2
2
2
2
2
1
3
3
3
2
1
3
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
3
3
2
2
2
1
3
2
1
3
3
2
2
1
3
2
2
1
3
3
2
1
1
1
3
2
2
2
2
1
3
3
2
1
1
1
3
3
3
3
2
2
2
2
1
3
3
3
2
1
1
1
1
1
1
3
3
2
2
1
1
3
3
3
3
3
3
3
2
1
1
1
3
3
3
2
2
1
3
3
2
2
1
1
3
3
2
2
1
3
2
1
1
1
3
2
2
2
2
2
1
1
3
2
1
1
1
3
2
1
1
3
3
3
3
3
3
2
1
1
3
2
2
2
1
3
3
3
3
2
2
2
1
1
1
1
3
3
2
1
3
2
1
3
2
1
1
1
1
3
3
3
3
2
2
2
2
1
3
3
3
2
1
3
2
1
1
3
2
1
1
1
1
1
3
3
2
2
1
3
2
2
2
2
2
1
3
3
3
3
3
3
2
2
1
1
1
1
3
3
2
1
3
2
1
3
3
3
2
2
1
3
3
2
2
2
2
2
2
2
1
3
2
2
1
1
3
2
2
1
1
1
1
1
3
2
1
1
3
3
2
1
1
3
2
2
2
1
1
1
1
1
3
2
1
3
2
2
2
2
1
1
1
3
3
2
2
2
1
1
1
1
3
2
2
1
1
3
2
2
2
1
3
2
2
2
2
1
3
3
3
3
3
2
2
1
1
3
3
3
3
3
2
2
1
1
3
3
2
2
1
3
2
2
2
1
1
1
1
3
2
2
2
2
2
2
2
1
3
3
3
2
1
1
1
1
1
3
2
1
3
3
3
2
1
1
3
2
2
1
3
2
2
1
3
2
1
3
2
2
2
2
2
2
2
1
3
2
1
1
1
3
3
2
1
1
3
2
1
3
3
3
2
1
3
2
1
1
1
1
1
3
3
2
1
1
1
3
3
3
2
1
1
1
3
2
2
2
1
1
3
3
2
2
2
1
3
2
1
3
2
1
3
2
2
1
3
2
2
2
2
2
1
1
1
3
2
1
3
3
3
2
2
1
1
3
2
1
1
1
3
2
1
1
3
3
2
1
3
2
1
1
3
3
2
2
2
2
1
1
1
1
1
1
3
3
2
1
1
3
3
3
3
3
3
2
1
1
3
3
3
2
1
3
3
3
3
3
3
3
2
1
1
1
1
1
3
2
2
1
1
3
3
2
2
2
1
1
1
1
1
3
2
1
3
2
2
2
2
1
3
2
1
1
3
3
2
1
1
3
3
2
2
2
2
2
2
2
1
1
3
2
2
2
2
2
1
3
3
3
2
2
2
1
3
3
3
3
3
3
2
1
3
3
2
2
1
1
1
1
3
3
3
3
3
3
3
2
1
3
3
2
2
1
1
3
2
1
3
3
2
2
2
2
1
1
3
2
2
2
1
1
1
3
2
2
2
1
3
2
2
1
3
3
2
2
1
3
3
3
3
3
2
1
1
1
1
3
3
3
3
2
2
1
1
3
2
2
2
2
1
3
2
2
2
1
3
2
2
2
1
3
3
2
1
3
3
3
2
1
3
3
2
2
1
3
3
2
2
2
1
3
3
3
2
2
1
3
2
1
3
2
1
3
2
1
3
3
3
2
2
2
2
1
3
2
2
1
1
1
3
3
2
2
1
1
1
3
3
3
2
1
3
3
2
2
2
2
1
1
1
3
2
1
1
3
2
2
1
3
3
3
2
2
1
3
2
2
1
1
1
1
3
3
3
2
1
1
3
2
1
1
1
1
3
3
3
2
1
1
1
1
3
2
2
2
2
1
3
2
1
1
1
3
3
2
1
1
1
1
3
2
1
1
1
1
1
3
2
1
1
3
3
3
2
2
1
1
3
3
3
2
2
1
1
1
3
2
2
1
1
3
2
1
3
3
3
3
3
3
3
2
2
1
3
3
3
2
1
1
1
1
3
2
2
2
2
1
1
1
1
3
2
2
1
1
1
3
3
3
2
2
2
1
1
1
1
3
2
1
1
3
2
1
1
3
3
2
2
1
1
1
3
3
2
2
1
1
3
2
2
1
1
1
3
3
2
1
1
3
2
1
3
2
2
1
1
3
2
2
1
1
3
2
1
3
2
2
1
3
3
3
3
3
3
3
3
2
2
2
1
1
1
1
3
2
1
1
1
1
1
1
1
3
3
2
2
2
1
1
1
1
3
3
3
3
2
1
1
1
3
3
2
2
2
2
2
2
1
1
1
3
2
2
1
3
3
2
1
3
3
3
2
1
3
2
1
1
3
2
1
1
1
1
1
1
3
2
2
1
3
2
1
3
2
1
3
3
2
1
1
1
1
1
3
3
3
2
2
1
1
3
3
2
2
2
2
2
1
3
2
2
1
1
1
1
3
3
3
2
1
3
2
2
1
3
2
2
2
1
1
1
3
2
2
1
1
1
3
3
2
1
1
3
3
3
3
3
3
3
3
3
3
2
1
1
3
3
3
2
2
1
3
2
1
1
3
2
1
1
1
1
3
2
1
1
1
1
1
3
2
1
1
1
1
3
2
1
3
3
3
2
1
1
1
3
2
1
3
3
3
3
2
2
2
1
3
2
1
1
3
2
2
2
1
3
2
1
3
2
2
1
3
2
2
1
1
3
2
1
3
2
2
1
3
3
2
2
1
1
3
3
2
1
3
3
3
2
2
1
3
2
2
1
3
3
2
2
2
2
2
2
2
1
1
3
3
2
1
1
3
2
2
1
3
3
2
1
3
2
2
1
3
2
1
3
3
2
1
3
2
2
1
3
3
2
2
1
1
1
1
3
2
1
1
1
1
3
2
2
2
2
1
3
3
3
3
2
2
2
2
1
1
1
3
2
1
3
2
2
1
1
1
1
1
3
2
1
3
2
2
2
1
3
2
2
1
3
3
2
1
1
1
1
3
2
2
2
2
1
1
1
3
3
3
3
3
3
3
2
2
1
3
3
2
2
2
1
3
2
1
1
3
3
2
2
1
3
2
2
2
1
3
3
2
2
1
3
3
3
3
3
3
3
2
1
3
2
2
1
1
3
3
3
3
2
1
3
3
3
3
3
3
3
3
2
1
3
3
2
1
3
3
2
1
3
3
2
2
1
3
2
1
3
3
3
3
2
2
2
1
1
3
2
2
1
3
3
3
2
1
3
2
1
1
3
3
3
3
2
1
1
1
3
3
3
3
2
2
2
2
2
1
1
3
2
1
3
3
2
1
1
1
3
2
1
3
2
2
2
1
1
1
3
3
2
1
1
3
2
2
2
1
3
2
2
1
3
3
3
2
2
1
1
1
3
3
3
3
2
1
3
2
2
2
1
1
1
1
1
1
3
3
3
3
2
2
2
1
1
3
3
3
3
3
2
2
1
3
2
1
3
2
1
3
2
2
2
1
3
3
2
2
2
1
1
3
2
2
2
1
3
3
2
1
1
1
1
1
1
3
2
1
3
3
2
1
1
1
3
2
2
1
1
1
3
3
2
1
1
3
3
3
2
1
3
2
2
1
1
1
3
2
2
1
1
1
1
3
2
2
1
1
1
3
2
1
3
2
2
1
1
1
1
1
1
3
3
2
2
1
1
1
3
3
3
3
2
2
1
3
3
3
2
2
2
2
2
2
1
1
1
1
3
3
3
2
2
1
3
3
2
1
3
2
1
3
2
2
2
1
3
2
1
3
2
1
3
2
2
2
1
3
2
1
3
2
2
1
3
2
1
1
1
3
2
1
1
3
2
1
3
3
3
2
1
1
1
1
1
1
1
1
1
3
2
2
1
3
3
3
2
1
1
1
1
3
2
2
2
2
1
1
1
1
1
1
1
1
1
1
3
3
2
1
1
3
3
2
2
2
2
1
1
1
1
3
2
2
1
1
1
1
1
1
3
2
2
2
1
3
3
3
3
2
1
1
1
1
1
1
1
3
3
2
2
2
1
1
1
1
3
2
2
1
1
3
2
1
1
3
2
1
3
2
2
2
1
3
2
1
3
3
2
2
1
3
3
2
2
1
1
3
3
2
1
3
2
2
1
3
2
2
1
3
2
2
2
2
2
1
1
3
3
3
3
3
2
1
1
3
2
1
1
1
1
3
3
3
3
3
2
1
3
2
1
1
1
1
3
2
1
3
3
2
1
3
2
2
1
1
1
3
2
2
1
3
2
2
1
3
2
2
1
1
1
3
3
2
2
2
1
1
3
2
2
1
1
1
3
3
2
2
2
1
1
3
2
1
1
1
1
1
1
1
3
3
3
3
3
2
1
3
3
3
3
3
3
2
1
1
3
3
2
1
1
3
3
2
2
1
3
3
3
3
2
2
1
1
3
2
1
1
3
2
1
3
3
2
1
1
3
2
1
1
1
3
3
2
2
1
1
1
3
3
2
1
3
3
2
1
1
3
2
2
2
2
1
3
2
2
1
1
1
3
2
2
1
1
3
2
1
1
3
3
2
1
1
1
3
2
2
2
1
3
3
3
2
2
2
1
1
3
3
3
2
1
3
2
2
2
2
2
1
1
1
1
1
1
3
2
1
1
3
3
2
2
2
2
1
1
1
1
3
3
3
3
3
2
2
2
1
3
3
2
1
1
3
3
2
1
1
1
1
1
1
3
2
1
3
2
2
2
1
3
3
3
3
2
1
1
1
1
1
3
3
2
2
1
1
1
1
3
2
2
2
2
2
2
1
1
1
1
1
1
1
3
3
2
1
3
3
2
1
1
1
3
3
2
2
1
3
2
1
1
1
3
2
1
3
2
1
3
2
1
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
1
1
3
2
1
3
3
3
3
3
3
3
2
2
2
1
1
3
3
3
3
2
1
3
2
1
1
1
3
2
1
1
1
1
1
1
1
3
3
2
2
1
3
3
2
2
2
2
1
3
3
2
2
1
1
3
2
1
3
2
1
1
1
1
3
3
2
2
1
1
3
3
2
1
3
3
3
3
2
2
2
2
1
3
2
1
3
3
3
2
2
1
1
1
3
3
3
3
3
3
2
2
2
1
3
3
2
1
3
2
2
1
1
1
1
1
3
3
2
2
2
2
1
1
3
2
1
3
2
1
3
2
2
1
1
3
3
3
3
3
3
2
1
1
1
3
3
2
1
1
3
2
1
1
3
3
3
2
1
3
3
2
1
1
3
3
3
2
2
1
3
2
2
1
3
3
2
1
1
3
2
2
1
3
2
2
2
2
2
1
3
3
2
2
1
3
2
1
3
2
1
1
1
3
3
3
2
2
1
1
3
3
3
3
2
1
1
3
2
2
1
1
1
3
3
2
2
1
1
3
2
2
1
1
3
2
1
3
2
1
3
2
1
3
2
2
1
3
2
1
3
3
3
2
1
1
3
2
1
3
2
2
2
1
3
3
2
1
1
1
3
2
2
2
1
1
1
1
3
2
2
1
1
3
3
3
2
1
1
1
1
3
3
3
3
2
1
3
3
2
1
3
2
1
1
3
3
2
2
2
1
1
1
1
1
3
3
3
3
3
2
2
1
1
1
1
1
1
1
1
3
3
3
2
2
1
1
1
1
1
1
3
3
3
2
1
3
2
1
1
3
3
3
3
3
3
3
3
3
3
2
1
3
3
2
2
2
1
3
2
1
3
2
1
3
3
2
1
1
1
3
3
2
2
1
3
2
2
1
3
2
1
1
3
2
2
1
3
3
2
1
1
1
1
1
1
1
3
2
2
2
2
1
1
3
2
1
1
3
2
2
1
3
2
2
1
1
3
2
1
3
2
1
1
1
1
1
3
2
1
3
3
3
3
3
2
1
3
2
1
3
3
3
2
1
1
1
3
3
3
3
2
2
2
2
2
1
3
2
1
3
3
3
2
1
3
2
2
2
1
1
1
3
3
3
3
3
2
1
1
1
3
2
1
3
3
2
2
2
1
3
3
2
2
1
1
3
3
3
2
1
3
2
1
3
2
2
1
3
3
2
2
1
3
3
2
1
1
3
3
2
1
1
3
3
2
2
2
1
3
3
2
1
3
2
1
3
3
2
1
1
3
2
1
3
3
3
2
1
3
3
2
1
1
1
1
1
3
3
3
2
2
1
3
3
2
1
3
2
1
1
3
3
2
2
2
2
2
2
1
1
1
3
2
1
3
3
2
2
2
1
1
1
3
3
2
1
3
3
2
1
1
1
3
2
2
2
2
2
1
1
1
3
2
2
2
1
3
3
3
3
3
3
3
2
2
2
2
1
3
3
3
2
1
1
1
3
3
3
2
2
2
1
1
3
2
2
2
1
1
3
2
1
3
2
1
1
1
3
2
2
2
2
1
3
3
2
1
3
2
1
3
2
1
3
3
2
1
1
3
3
3
2
2
1
3
2
2
2
1
1
3
2
1
3
3
3
3
3
3
3
2
1
3
3
3
2
1
1
3
3
3
3
3
3
3
3
3
3
2
2
1
1
1
1
3
2
2
2
2
1
1
3
2
2
2
2
1
1
3
2
2
1
3
3
2
1
3
2
2
2
2
1
3
3
3
3
2
2
2
2
1
1
1
1
1
1
1
3
3
2
2
2
1
3
2
2
1
3
3
2
2
1
3
2
2
2
1
3
2
1
1
1
1
1
3
2
1
1
1
3
2
2
2
1
1
1
3
2
1
3
3
2
1
1
1
1
3
3
2
2
2
2
2
2
1
1
3
3
2
2
2
1
1
3
2
1
3
3
3
3
2
2
2
1
3
3
3
3
3
2
1
1
1
3
2
1
3
3
3
3
2
2
2
1
3
3
2
1
3
2
1
3
3
3
2
1
1
3
2
2
1
1
3
3
3
3
2
2
1
1
1
1
1
1
3
3
2
1
3
3
3
2
2
2
1
3
3
2
2
2
2
1
1
3
2
1
3
3
3
3
2
2
2
1
1
1
3
3
3
2
1
3
2
1
3
3
2
2
1
1
1
1
1
3
2
2
2
2
2
2
1
3
2
1
1
1
3
3
3
2
2
1
3
3
3
3
3
2
2
2
1
3
2
1
1
3
2
1
1
1
3
3
3
3
3
3
3
3
2
1
3
2
2
1
3
2
1
1
1
1
1
3
2
2
2
1
1
1
3
3
3
2
2
2
1
3
2
1
1
1
1
1
3
3
2
1
1
3
3
3
3
3
2
2
1
3
2
1
3
3
2
2
1
1
3
2
2
2
2
2
2
1
3
3
3
3
2
2
1
3
2
1
1
3
2
1
1
3
2
1
1
3
3
3
3
2
1
1
3
3
3
2
1
3
3
2
2
2
1
3
3
2
2
2
1
3
2
2
2
1
1
1
3
3
3
2
1
3
3
2
1
1
3
2
2
2
1
1
1
3
2
1
1
3
2
2
1
3
3
3
3
2
2
1
1
3
2
2
1
1
1
1
3
3
2
2
2
2
1
1
1
3
2
2
2
1
3
3
3
2
1
3
3
2
2
2
1
3
3
3
3
3
3
2
1
3
3
2
2
1
3
2
2
2
1
3
3
3
3
2
1
1
1
3
3
3
3
3
3
3
3
3
3
3
3
2
2
2
2
1
1
1
1
3
3
2
2
2
1
1
3
3
2
1
3
3
3
3
3
2
1
3
2
2
1
3
3
2
1
1
3
2
1
3
2
1
1
3
2
2
1
3
2
1
3
2
2
1
1
3
3
3
2
1
1
3
3
3
3
2
2
2
2
2
1
1
1
1
1
1
1
3
3
3
2
2
1
1
3
3
2
1
1
3
3
2
1
3
2
2
1
3
2
1
3
3
3
3
2
2
2
2
2
1
3
3
2
2
2
1
3
3
3
3
2
1
1
3
2
2
2
2
1
1
1
3
2
1
1
3
2
2
1
1
3
3
3
2
1
3
2
2
1
3
2
2
2
2
1
1
1
1
1
1
3
2
2
1
3
2
2
1
1
3
2
1
3
3
3
2
1
1
1
3
3
2
2
1
1
1
1
3
3
3
3
2
2
1
3
2
1
1
1
1
1
1
3
3
3
3
2
1
1
1
1
3
2
2
1
3
2
1
3
2
1
3
2
2
1
1
3
3
3
3
2
1
3
3
3
2
1
3
2
1
1
1
1
3
2
1
3
2
2
1
3
2
1
1
1
3
3
2
1
3
3
2
1
1
3
3
2
1
3
2
1
1
3
3
2
1
3
2
1
3
3
2
1
1
1
1
3
3
3
2
2
2
1
3
3
2
2
2
2
2
2
1
1
1
1
3
2
2
2
1
1
3
2
1
1
1
1
3
3
3
3
2
2
2
2
1
3
2
2
2
2
1
3
2
2
1
1
1
3
3
3
2
2
2
2
2
1
3
3
2
2
1
3
2
2
2
2
2
2
1
3
2
2
1
1
1
1
3
3
3
2
2
1
1
1
3
3
3
3
3
3
3
3
3
2
2
1
3
2
2
1
3
2
2
2
1
3
2
1
1
3
3
2
1
1
3
2
2
1
3
3
2
2
2
2
1
1
1
1
1
1
3
2
1
1
3
3
2
2
1
3
2
2
1
1
3
2
2
1
3
2
2
2
2
1
1
1
3
2
1
3
3
2
2
2
1
3
2
2
1
3
3
2
2
1
3
2
2
1
3
2
1
3
2
1
1
1
3
3
2
2
1
3
2
1
1
1
1
3
3
3
3
2
1
1
1
3
3
3
2
1
1
1
1
1
3
3
2
1
1
1
3
2
2
2
2
2
1
1
1
3
2
2
1
3
3
3
2
2
2
2
2
2
1
1
1
3
2
2
1
3
3
2
2
1
3
2
2
1
3
3
2
2
1
3
3
2
2
2
1
3
2
1
1
3
3
3
3
2
2
2
1
1
3
3
3
3
2
1
3
3
3
2
1
3
3
2
2
2
1
1
3
3
3
3
2
1
3
3
3
2
2
1
1
3
3
3
2
2
2
2
1
1
3
3
2
2
2
2
1
3
2
2
1
1
1
1
1
1
1
3
3
2
1
1
1
3
3
2
2
1
3
2
1
3
2
1
3
2
2
1
3
2
1
3
2
1
3
3
3
2
2
1
3
2
1
1
1
3
2
2
1
1
3
2
2
2
1
3
3
2
2
2
2
2
2
1
3
3
3
2
2
2
1
3
3
3
3
2
2
1
3
3
2
1
1
3
2
1
1
3
2
1
3
3
2
2
1
3
3
3
2
2
2
1
3
3
3
3
3
3
2
1
3
2
2
2
2
2
1
1
3
3
2
1
1
3
3
3
2
1
1
3
3
3
3
2
2
2
2
1
3
3
3
3
3
3
3
2
1
1
3
3
2
2
2
1
3
3
3
2
1
3
2
1
3
3
2
1
1
3
3
2
2
1
1
3
2
2
2
2
2
2
1
1
3
2
2
2
2
2
1
1
3
2
1
3
2
2
2
2
2
2
1
1
3
2
2
1
1
1
3
3
3
2
1
3
3
2
2
1
1
3
3
2
2
1
1
1
1
3
3
3
3
2
1
3
2
2
2
2
2
1
1
3
3
2
2
2
1
3
3
2
2
2
2
2
1
1
1
1
1
3
2
1
3
2
2
2
1
3
3
3
3
3
2
2
2
1
1
1
1
3
3
3
2
2
2
2
2
1
1
3
3
2
1
3
3
3
2
1
1
3
2
2
2
2
1
3
2
1
3
2
1
1
1
1
3
2
2
1
3
2
2
2
1
1
1
1
1
1
1
1
1
3
3
3
2
2
1
3
2
1
1
1
1
1
3
2
1
1
1
1
1
3
3
3
3
3
2
1
1
3
2
2
1
3
2
2
2
1
1
3
2
2
1
3
3
2
1
1
3
2
1
1
3
2
2
1
3
3
3
3
2
2
2
2
2
2
2
2
1
1
1
3
3
3
2
1
1
1
1
1
3
2
2
1
1
1
1
3
3
2
1
1
1
1
1
1
3
2
2
1
1
1
1
3
2
2
2
1
1
1
3
2
1
1
1
1
1
1
1
3
3
3
2
1
1
3
2
2
1
3
3
2
2
2
2
1
1
3
2
1
1
3
2
1
1
3
2
2
1
1
1
3
2
1
1
3
2
2
2
2
1
3
2
1
3
2
1
3
2
2
1
3
2
2
2
2
2
2
1
1
1
3
2
1
3
2
2
1
1
1
3
2
1
1
3
2
1
3
2
1
1
1
1
3
2
2
2
1
3
3
3
2
2
1
1
3
3
2
1
3
3
2
1
3
3
3
3
3
3
3
2
2
2
1
3
2
1
1
1
3
3
3
3
2
1
3
2
1
3
3
3
2
2
2
2
1
3
2
2
1
3
3
2
2
2
1
3
3
2
2
2
1
3
2
1
3
3
3
2
1
3
3
3
2
2
2
1
3
2
1
1
3
3
3
2
2
1
1
3
2
1
3
3
3
2
2
1
1
3
2
1
1
1
1
1
1
3
2
1
3
2
2
1
3
3
3
2
1
1
1
3
2
2
1
3
2
1
3
3
3
3
2
1
1
3
3
3
2
1
3
2
1
3
3
2
2
2
1
3
2
1
3
2
1
1
1
3
3
2
2
2
2
1
3
2
2
2
1
1
3
2
2
1
3
3
3
3
3
2
2
1
3
3
3
2
2
2
1
3
3
3
3
2
1
1
3
2
2
1
1
1
1
3
3
3
2
1
1
3
3
2
1
1
3
2
1
1
3
3
2
2
2
1
3
2
2
1
1
3
3
3
2
1
3
3
2
1
3
3
2
1
3
2
2
2
1
3
3
2
1
1
3
3
2
1
3
2
2
1
3
2
1
1
1
3
3
2
2
2
1
3
3
2
2
2
2
2
1
1
3
2
2
1
3
2
1
1
1
1
3
2
1
1
1
1
3
2
1
3
3
3
3
2
2
1
3
2
2
2
2
1
1
3
2
2
1
3
2
2
2
1
3
2
2
2
2
2
1
3
3
2
1
3
3
3
3
3
3
2
1
1
1
3
2
1
1
1
3
2
1
1
3
2
1
3
2
1
1
1
3
2
2
1
1
1
1
1
1
3
2
2
1
1
1
3
3
2
2
2
1
3
2
2
2
1
3
3
2
1
3
2
1
3
3
2
1
1
3
2
1
1
1
3
2
2
1
3
3
3
3
3
3
2
2
2
1
1
3
3
2
2
2
1
3
3
2
1
1
3
3
2
2
2
1
1
3
3
2
1
1
3
2
2
2
1
1
3
3
3
2
2
1
3
2
2
1
1
1
1
1
1
3
2
2
2
1
1
3
2
2
2
2
2
1
1
1
3
2
2
1
1
3
2
2
1
1
3
3
3
2
2
2
2
2
1
3
3
3
2
1
3
3
2
1
1
1
1
3
3
3
3
3
3
2
2
1
1
1
1
1
3
3
3
3
2
1
3
2
1
3
3
3
3
3
3
2
2
2
1
3
3
3
3
3
3
3
3
3
2
1
1
1
1
3
3
3
3
3
3
3
2
1
3
2
2
2
1
1
1
1
1
1
3
2
2
2
1
1
3
2
1
3
3
2
2
2
1
1
1
3
2
2
2
2
2
2
2
1
1
3
2
2
2
1
1
1
1
3
3
3
2
2
2
1
3
2
2
2
1
1
3
2
2
1
1
1
3
3
3
2
2
2
2
1
1
1
3
3
3
2
2
2
1
1
3
2
1
1
1
3
3
2
1
1
1
1
3
3
2
1
3
2
1
3
2
1
3
3
2
1
1
1
1
3
2
1
1
1
1
3
2
2
1
3
3
3
2
1
3
3
2
2
2
1
3
3
2
1
1
3
3
2
1
3
2
2
1
3
3
3
2
2
2
1
1
1
3
2
1
1
3
2
1
1
3
2
2
2
2
2
1
3
2
2
1
3
3
2
2
1
1
1
3
3
2
2
2
2
2
2
1
3
2
2
1
3
3
3
2
2
2
1
3
2
1
3
3
3
3
3
3
2
1
1