pgtt_1or2_and_4
0
0
1
1
1
0
0
0
0
1
0
1
1
0
0
1
1
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
0
0
0
1
1
0
0
0
0
1
0
1
1
0
0
0
0
1
0
1
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
1
1
1
1
0
1
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
1
1
1
0
0
0
0
1
0
1
0
0
0
1
1
0
1
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
1
1
0
0
0
1
0
0
1
1
1
1
1
0
0
1
1
0
1
0
0
0
1
0
0
0
0
1
0
0
0
0
1
0
0
1
0
1
0
0
0
1
0
1
0
0
1
1
1
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
1
0
0
1
1
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
1
0
1
0
0
0
1
0
0
0
0
0
0
0
0
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
1
0
1
0
0
0
0
1
0
0
0
0
1
1
1
0
0
0
0
1
1
0
0
1
1
0
0
1
0
0
1
1
0
0
0
0
0
1
0
0
0
0
0
1
0
1
1
0
1
0
0
0
1
0
0
1
1
0
1
0
0
0
0
1
0
0
1
0
0
0
0
1
1
0
1
0
0
0
1
1
0
0
1
1
0
0
0
0
0
0
0
0
1
0
0
1
1
0
0
1
1
0
1
1
1
0
0
1
1
0
1
0
1
0
1
1
0
0
0
1
0
1
0
0
0
0
0
0
1
1
0
0
1
0
0
1
1
0
1
1
0
1
0
0
1
0
0
0
1
0
0
1
1
1
0
0
0
0
0
1
1
0
0
0
0
0
1
1
1
0
1
1
0
0
0
0
0
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
1
0
0
0
0
0
1
1
0
0
1
1
0
0
0
0
0
0
0
0
1
1
0
1
1
1
1
0
0
1
0
1
1
1
1
1
0
0
1
0
0
0
0
0
1
0
0
1
1
1
0
1
0
1
1
1
0
1
0
0
0
0
0
1
0
0
0
1
1
1
0
1
0
0
0
0
1
0
0
1
1
0
0
0
1
1
1
0
0
0
0
0
1
0
1
1
0
1
1
0
0
0
0
0
0
1
0
0
0
1
1
0
1
0
1
1
0
1
1
0
1
0
1
1
0
0
0
1
1
0
1
0
0
1
1
0
1
0
0
0
1
0
1
1
1
1
1
0
1
1
1
0
0
0
1
0
0
1
0
0
0
0
1
1
0
1
0
0
0
0
0
1
1
0
1
1
1
0
1
0
1
0
0
0
0
0
0
0
0
0
0
1
1
0
1
1
0
0
0
1
0
0
1
0
1
0
1
0
1
1
0
0
1
1
0
0
0
0
1
0
0
0
1
0
0
1
0
0
0
0
1
0
0
0
0
0
1
0
0
0
1
1
0
0
0
0
1
0
0
1
0
1
0
0
0
0
1
0
0
0
0
0
1
0
0
1
0
1
0
1
0
1
0
0
0
1
1
0
1
0
1
0
0
0
0
0
0
0
0
1
0
1
1
0
1
1
0
0
0
1
1
0
1
0
0
0
0
0
0
1
0
0
0
0
0
1
1
0
0
1
0
0
1
0
0
0
1
0
1
0
0
1
1
0
0
0
1
1
0
0
0
0
0
0
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
1
1
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
1
1
0
1
1
0
0
0
1
0
0
0
0
0
0
0
1
1
1
1
0
0
0
0
0
0
0
1
1
0
1
1
0
0
0
0
0
0
0
1
0
1
0
0
0
1
1
0
0
0
1
0
0
0
0
0
1
1
1
1
0
0
0
1
0
0
0
0
0
1
1
0
1
0
0
1
0
0
0
0
0
1
0
1
0
0
0
1
0
0
1
1
0
1
1
1
0
0
0
1
0
0
0
0
0
1
1
0
0
0
1
0
1
0
1
0
0
1
0
0
0
0
0
0
1
1
1
0
0
0
0
0
0
1
1
0
1
1
1
0
1
0
0
1
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
1
0
1
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
1
1
1
0
1
0
0
0
1
0
0
0
1
0
1
0
0
0
0
0
1
0
0
1
0
0
1
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
1
1
0
0
1
0
0
1
0
0
0
1
0
0
1
0
0
1
0
0
1
1
1
0
1
1
1
0
1
0
0
1
0
0
1
0
0
0
1
1
1
0
0
1
1
0
0
1
0
1
0
0
1
1
0
0
1
0
0
0
0
0
0
0
0
1
0
1
0
1
1
0
1
1
0
0
0
0
1
1
0
0
0
0
1
1
1
0
0
0
1
1
1
0
1
1
1
0
1
0
0
1
0
0
1
1
0
0
0
0
1
0
1
0
0
1
1
0
0
1
0
1
0
0
0
0
0
0
0
0
1
0
1
0
0
1
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
0
0
0
1
1
0
0
0
0
1
1
0
1
1
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
1
0
0
0
0
0
1
0
1
0
0
1
0
1
1
1
0
1
0
1
0
0
0
0
1
0
1
1
0
1
0
0
1
1
1
1
1
1
0
0
1
1
0
1
0
0
0
0
0
0
0
0
1
1
0
0
1
1
1
1
0
1
1
0
0
0
1
0
1
0
1
1
0
0
1
1
0
0
1
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
1
0
1
0
0
1
1
0
1
0
0
0
1
0
1
0
0
0
1
1
1
0
0
1
0
0
0
0
1
0
0
0
0
0
1
0
1
0
1
1
1
0
0
1
0
0
1
0
1
1
0
0
0
1
1
1
0
0
1
0
0
1
0
0
1
0
1
0
1
1
0
0
0
0
0
0
0
1
1
0
1
1
1
0
0
1
0
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
0
0
0
1
1
1
1
1
1
1
0
0
1
0
0
1
0
1
1
0
0
0
0
0
0
1
0
0
1
0
0
1
0
0
1
0
0
1
1
0
0
0
0
0
1
1
1
0
0
0
0
0
1
1
0
0
0
1
1
0
1
1
0
0
1
0
0
0
0
0
1
1
1
0
1
1
0
0
0
0
0
0
0
1
0
0
1
0
1
1
0
0
1
1
1
1
0
1
1
0
0
0
0
0
0
0
0
1
1
1
0
1
0
1
0
1
1
1
0
1
0
0
0
1
0
1
1
0
0
1
0
0
0
1
1
0
0
0
0
0
1
1
1
1
0
1
1
0
0
0
1
0
1
0
0
0
1
1
0
0
0
0
0
0
1
0
0
0
1
0
1
0
0
0
0
0
1
0
1
0
0
0
0
1
0
0
0
0
1
1
1
0
0
0
1
0
0
1
0
0
0
0
1
1
0
1
0
0
0
0
0
0
1
0
1
0
0
0
1
0
1
0
1
0
0
1
0
0
0
0
0
1
0
1
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
1
1
1
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
1
1
1
0
0
0
0
0
1
1
1
1
0
0
1
0
1
0
0
1
0
0
0
0
0
1
0
0
1
0
0
0
1
1
1
0
0
0
0
1
1
1
1
1
0
0
0
0
0
1
1
0
0
0
0
1
1
1
1
0
0
0
1
1
0
0
0
0
1
0
0
1
0
1
0
1
0
0
1
1
0
1
0
1
0
1
0
0
1
1
0
0
0
0
0
0
0
1
1
1
1
0
1
0
0
1
1
0
0
0
0
0
0
1
0
0
1
0
1
1
0
1
1
0
0
1
0
0
0
0
0
1
0
1
1
0
0
1
1
0
1
0
1
1
1
0
0
0
1
1
0
0
0
0
1
1
0
0
0
1
1
0
1
1
0
0
0
0
1
0
0
0
0
1
0
1
0
0
0
1
1
0
0
0
0
0
1
1
0
0
0
1
0
0
1
0
0
0
0
1
1
1
1
0
0
1
0
0
0
0
1
1
1
0
0
0
0
0
1
0
0
1
1
0
1
0
1
1
1
0
0
0
0
0
1
0
1
1
1
0
0
1
0
1
1
0
0
1
0
1
0
0
0
1
0
1
0
0
0
0
0
0
1
1
0
1
1
1
0
0
1
1
1
1
0
0
0
0
0
1
0
1
1
1
1
0
1
0
1
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
1
1
1
0
0
1
1
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
1
0
1
1
0
0
1
0
0
0
1
1
0
0
0
1
1
1
0
0
1
1
1
1
1
1
1
0
1
0
0
0
0
1
0
1
0
0
1
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
1
0
0
0
1
0
1
1
1
0
0
0
0
0
0
0
0
1
1
0
0
1
1
1
1
1
1
0
0
0
0
0
1
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
1
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
1
0
1
1
1
0
0
0
1
0
0
0
1
0
1
1
1
0
1
0
0
0
1
0
1
1
1
0
0
0
0
0
0
0
1
0
0
0
0
1
1
0
1
0
0
0
1
0
1
0
0
0
0
0
0
0
0
1
0
1
1
1
0
1
0
0
0
0
0
0
0
1
1
0
0
0
1
0
1
1
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
1
1
1
1
0
1
1
0
1
1
1
1
0
1
0
0
0
1
0
0
0
1
0
1
1
1
0
1
0
0
0
0
1
1
1
0
0
0
1
0
0
0
1
0
0
0
1
0
1
0
0
0
1
1
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
1
0
0
0
1
0
1
0
0
0
0
0
0
0
0
1
1
1
1
0
0
0
0
0
0
1
0
0
1
1
0
1
1
1
1
1
0
0
1
1
0
0
1
1
0
1
1
0
0
0
0
0
0
1
0
1
0
0
1
1
0
0
0
0
0
0
0
0
0
1
0
0
0
1
1
0
0
0
1
1
1
1
1
1
0
0
1
0
1
0
0
0
0
0
0
1
1
0
0
0
0
0
1
0
1
1
0
1
1
0
1
0
0
0
0
0
1
1
0
1
0
1
1
0
0
0
1
0
0
1
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
1
0
0
1
1
0
0
0
1
0
0
0
0
1
0
0
0
0
1
1
0
1
1
1
1
1
1
0
1
1
1
0
0
1
0
0
0
0
0
0
0
0
0
1
0
1
1
1
1
0
0
0
0
0
0
1
0
0
1
0
0
0
1
1
1
0
1
0
0
0
1
0
1
1
0
0
1
0
1
0
1
0
0
0
1
0
0
0
0
0
0
1
1
0
1
0
0
1
0
0
0
1
0
1
0
0
1
1
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
1
0
1
1
0
1
0
1
0
0
0
1
0
1
0
0
0
1
1
1
0
0
0
1
1
0
0
0
0
0
0
0
0
1
0
0
1
0
1
0
1
0
0
1
0
1
0
1
1
0
1
1
0
0
0
0
1
1
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
1
1
1
1
1
0
0
0
1
0
1
1
0
1
1
1
0
0
1
0
0
0
0
0
1
1
1
0
0
0
0
1
1
0
0
0
1
1
1
0
0
0
0
0
0
1
0
1
1
1
1
1
1
0
1
0
1
0
0
1
1
1
1
0
0
1
0
1
0
1
0
0
0
0
0
0
1
0
0
1
0
0
1
0
1
0
0
1
1
0
0
0
0
0
0
0
1
1
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
1
0
1
0
1
1
0
0
1
0
1
0
0
0
0
0
1
1
0
1
0
0
0
1
0
0
1
0
0
0
0
0
0
0
1
0
0
0
1
0
1
1
0
0
0
0
1
0
1
0
0
1
0
0
0
0
0
1
1
0
1
0
1
1
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
1
1
1
0
1
0
0
0
0
0
0
0
1
1
1
0
0
1
0
0
1
0
0
1
0
0
0
1
0
1
0
0
1
0
0
0
0
1
0
1
0
0
0
1
0
0
0
0
0
1
1
0
1
1
1
0
1
0
1
1
0
0
0
0
0
1
1
0
0
1
0
1
1
0
0
0
0
0
0
0
1
0
0
0
1
0
1
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
1
1
0
0
1
0
0
1
0
0
0
1
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
1
1
0
0
1
0
0
0
0
0
1
0
0
1
1
1
1
0
1
0
1
0
0
0
0
0
0
1
0
1
0
0
0
1
0
0
1
1
0
0
1
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
1
1
1
0
1
0
1
0
1
1
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
1
1
1
1
0
1
1
1
0
0
1
1
1
1
0
0
0
0
1
0
1
0
0
0
0
0
1
0
0
0
0
1
1
0
0
0
1
0
0
1
0
0
1
0
1
0
1
0
0
0
1
0
1
1
0
0
1
1
0
0
1
1
0
1
1
0
0
0
0
1
0
1
0
0
1
0
0
1
1
0
0
0
0
0
1
0
1
0
1
0
1
1
0
1
0
1
0
1
0
0
0
0
1
0
0
1
1
1
0
0
0
1
0
0
1
0
0
0
1
1
0
0
1
1
0
1
0
0
0
0
1
0
1
0
0
0
0
1
1
1
1
0
0
0
1
0
0
1
0
1
0
0
0
0
1
1
0
0
0
0
1
0
0
1
0
1
0
0
0
1
1
1
0
0
1
1
0
1
1
1
1
1
1
0
1
0
0
0
0
0
1
1
1
0
0
0
0
0
0
0
1
1
0
0
1
0
1
0
0
1
0
1
1
0
0
1
1
0
1
1
1
0
0
0
0
0
0
0
1
0
0
1
0
0
0
1
0
1
0
1
0
1
0
0
0
0
1
0
1
1
0
0
1
0
0
1
0
0
1
0
1
0
0
1
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
1
0
1
0
0
1
1
0
1
0
0
1
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
1
0
1
1
1
1
0
0
0
0
1
0
1
0
1
0
0
0
0
1
0
0
0
0
1
0
1
0
0
0
0
0
0
1
1
1
0
0
0
1
0
1
1
0
1
1
0
1
1
0
1
0
0
1
1
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
1
1
0
0
0
1
0
1
1
0
0
0
0
0
1
1
0
1
0
1
1
1
1
1
0
1
0
1
0
0
0
0
1
1
0
1
0
0
1
0
0
0
1
1
0
0
0
1
0
1
1
0
0
0
1
0
0
0
0
1
1
0
0
1
0
0
0
1
0
1
1
0
0
0
0
0
1
1
1
1
0
0
1
0
0
0
1
0
1
1
1
0
0
1
0
1
0
0
0
0
1
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
1
1
0
0
0
1
0
0
1
0
0
0
1
1
1
0
0
1
0
1
1
0
0
0
0
0
1
1
0
0
1
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
1
1
0
1
1
1
0
1
1
0
1
0
0
1
0
0
0
0
0
1
1
1
0
0
0
1
0
0
1
0
0
1
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
0
0
0
0
1
0
1
1
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
1
0
0
1
0
1
1
0
0
1
0
1
1
0
0
0
0
1
0
1
0
1
0
0
1
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
1
1
1
0
1
0
0
1
0
0
0
0
1
0
0
1
0
1
0
0
0
0
0
1
0
1
1
1
0
0
1
0
1
0
0
0
1
0
0
1
1
1
1
0
1
0
1
0
0
1
0
1
1
0
0
0
1
1
1
0
0
0
0
0
0
1
0
1
0
0
0
0
1
0
0
0
1
0
0
0
0
0
1
1
0
1
1
0
0
0
0
1
1
1
0
0
0
1
0
0
0
1
1
1
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
1
0
1
1
0
1
0
1
1
0
1
1
1
1
1
0
0
1
1
0
1
1
1
0
0
1
0
0
0
1
0
0
0
0
0
0
0
1
0
0
1
0
0
1
0
0
1
1
0
0
0
0
0
0
0
0
0
0
1
0
0
1
1
0
0
0
1
0
0
1
0
1
1
1
1
0
0
0
0
0
0
0
1
1
0
1
0
1
0
0
0
0
0
1
0
0
1
1
0
0
0
0
0
0
0
1
1
1
1
0
0
1
1
0
0
0
0
1
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
1
0
1
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
1
1
0
0
1
0
0
1
1
1
0
1
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
1
1
0
0
0
0
1
0
1
1
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
1
1
0
0
1
0
0
1
0
0
0
0
1
0
0
0
1
0
0
1
1
1
0
1
1
0
0
0
1
1
1
0
0
1
0
0
1
0
0
0
0
0
0
0
0
1
0
0
1
1
0
1
1
0
0
0
0
0
0
0
1
1
0
0
1
0
0
0
1
0
0
0
0
0
0
1
0
0
1
0
1
0
1
1
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
1
0
0
0
1
0
1
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
1
1
1
0
0
0
1
0
0
0
0
1
0
1
0
1
0
0
1
1
0
0
0
0
0
1
0
1
0
1
1
0
0
1
1
1
1
0
0
0
0
0
0
0
1
1
0
0
1
1
1
1
0
0
0
0
0
1
0
0
1
0
0
1
1
1
0
0
0
0
0
1
1
0
0
1
1
0
0
0
1
0
1
0
0
1
1
0
0
0
0
0
1
0
0
0
1
1
0
0
0
0
0
0
0
0
1
1
0
1
0
1
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
1
1
0
0
0
0
0
1
1
1
0
1
0
1
0
0
0
1
0
0
1
1
0
1
1
0
0
1
1
0
1
1
0
1
0
0
1
0
0
0
0
0
0
1
1
0
0
0
0
1
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
0
0
0
1
1
0
0
1
1
1
0
0
0
0
0
0
0
1
0
1
1
1
1
1
1
1
0
0
1
0
0
1
1
1
1
1
0
0
0
0
0
0
1
1
0
0
0
0
0
0
1
0
0
1
0
1
0
0
0
1
0
0
0
0
1
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
1
1
0
1
0
0
1
1
1
0
0
0
1
0
0
1
0
0
1
0
1
0
0
1
0
0
1
0
0
0
1
0
0
0
1
0
1
0
1
1
1
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
1
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
1
1
0
1
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
1
0
1
0
0
0
0
1
0
1
0
1
1
0
0
0
0
1
0
0
0
0
0
1
1
0
0
0
1
1
0
0
0
1
0
0
0
0
0
0
1
0
1
0
0
1
0
1
0
0
0
0
1
1
0
0
0
0
0
0
0
0
1
1
1
0
1
1
1
1
0
0
1
0
0
1
0
1
1
1
0
1
1
0
1
0
0
0
0
0
0
1
1
1
0
1
1
1
0
0
1
0
1
1
0
0
0
0
0
1
0
1
1
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
1
1
0
1
1
0
0
1
1
1
1
0
0
0
0
1
0
0
0
0
0
1
0
0
0
1
0
1
0
1
0
1
0
0
1
1
1
0
0
1
1
1
0
1
0
0
0
1
0
1
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
1
0
0
1
0
0
0
1
1
1
0
0
1
1
1
0
0
0
0
1
1
1
0
0
0
1
1
0
0
0
0
0
0
0
0
0
1
0
1
0
1
0
0
0
0
1
0
0
1
1
0
0
1
0
1
0
1
1
0
0
0
1
1
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
1
1
1
1
0
0
0
0
1
0
0
0
0
1
1
0
1
1
0
1
0
0
1
0
0
0
1
0
0
0
1
0
1
1
0
0
0
1
1
1
1
0
0
0
0
0
1
0
1
0
0
1
0
0
0
1
1
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
1
1
0
1
0
1
1
0
1
0
1
1
1
0
0
1
0
1
1
0
0
0
1
0
0
1
0
0
0
1
0
1
0
0
0
1
0
1
1
0
1
0
0
0
1
0
1
1
0
0
1
1
0
0
0
0
1
1
1
0
1
1
0
0
0
0
1
0
1
1
0
0
1
0
0
0
0
0
1
1
1
0
1
1
0
0
0
1
1
1
0
1
0
1
0
1
1
1
0
0
0
0
1
1
1
1
1
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
1
1
1
0
1
1
1
0
0
0
1
0
0
0
1
1
1
0
1
1
0
0
1
0
0
0
0
1
1
0
0
0
1
0
0
1
1
0
1
0
1
1
1
0
0
0
0
0
0
0
0
1
0
0
0
1
1
0
0
1
0
1
0
0
1
0
1
0
0
1
1
1
1
0
1
1
0
0
0
0
1
1
1
0
0
0
0
0
0
0
0
1
0
1
0
0
0
1
1
1
0
0
0
0
1
0
0
0
0
0
1
1
1
0
0
0
0
1
1
1
0
0
0
0
0
0
0
0
1
1
0
0
1
0
1
0
0
0
0
0
0
0
0
1
0
1
0
1
1
1
0
0
0
0
0
0
1
1
0
1
0
1
1
0
1
0
0
0
1
1
0
0
0
1
1
0
0
0
0
0
0
1
0
0
0
0
1
0
1
1
0
1
0
0
1
0
0
1
0
0
0
0
0
1
0
0
0
1
0
0
0
1
1
1
0
0
0
0
1
0
1
1
1
1
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
1
0
0
1
0
1
0
0
0
0
1
1
0
0
0
0
1
0
0
0
0
0
1
0
1
0
0
0
0
0
0
1
0
0
1
1
0
0
0
0
1
0
1
0
1
0
0
0
1
0
0
0
1
0
1
0
1
0
0
0
1
1
0
0
0
0
1
1
1
0
0
1
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
1
1
0
1
1
0
0
0
0
0
0
0
1
1
0
1
0
0
1
1
0
0
0
0
1
1
1
1
1
0
0
1
1
0
0
0
1
1
0
1
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
1
1
1
0
1
1
1
0
0
1
0
0
1
1
0
0
1
0
0
0
0
0
1
1
0
0
1
0
0
1
1
0
0
0
0
1
0
0
0
1
0
0
0
1
1
1
0
1
0
1
0
0
0
0
0
0
1
0
0
0
0
1
1
0
0
1
0
0
0
0
0
1
0
0
1
0
1
0
0
1
1
1
0
1
0
0
1
0
1
1
0
0
0
1
0
0
1
0
1
1
0
1
1
0
0
1
1
0
0
0
0
0
1
1
1
0
1
0
1
1
0
1
1
1
1
0
0
1
0
0
1
0
1
1
1
0
1
0
0
0
0
0
1
1
0
0
0
1
0
0
0
1
1
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
1
0
0
0
1
0
0
1
0
0
0
0
1
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
1
1
1
0
1
0
0
1
0
1
1
1
0
0
1
0
0
1
0
0
0
1
0
1
1
1
0
0
0
0
0
0
0
1
1
1
0
1
0
0
0
0
0
0
0
1
0
1
0
0
0
1
1
0
0
0
0
0
1
0
1
1
0
1
0
1
0
0
1
0
1
1
1
0
1
1
0
0
0
1
0
0
1
0
1
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
1
0
1
0
1
1
0
1
0
0
1
1
0
1
0
1
1
1
1
0
1
0
1
1
0
0
1
0
0
1
1
0
0
0
0
1
0
1
0
0
1
1
1
0
0
1
1
1
0
1
1
0
0
0
1
1
0
0
0
0
0
0
1
0
0
0
0
0
1
1
0
0
0
1
0
0
0
0
1
0
0
0
1
1
0
1
0
1
1
0
1
0
0
0
1
1
0
1
1
1
0
0
0
0
0
0
0
0
0
1
0
1
0
0
1
1
0
0
1
1
0
1
1
1
0
0
0
0
0
0
1
0
0
0
0
0
1
1
0
0
1
0
1
0
0
1
0
1
0
0
1
0
0
1
0
1
0
0
1
0
1
1
0
1
0
0
1
0
0
0
1
1
0
0
1
0
0
0
0
0
0
0
0
0
1
1
0
0
0
1
1
1
0
1
0
0
0
0
1
0
0
1
0
1
1
0
1
1
0
0
0
0
1
0
0
0
1
1
0
0
0
0
0
1
1
0
1
1
1
0
0
0
0
1
0
0
0
1
1
0
0
1
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
1
1
0
0
0
1
1
0
1
0
0
0
1
0
1
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
1
0
0
1
0
0
0
0
1
0
0
1
0
1
0
1
0
0
1
0
1
1
0
0
0
0
0
1
0
0
1
0
0
0
0
0
1
1
0
0
0
1
0
0
0
1
0
0
0
0
0
1
1
1
0
0
0
1
1
1
1
1
0
0
1
0
0
1
0
0
0
0
0
1
1
0
1
0
0
1
1
1
1
0
0
0
0
1
0
1
0
1
1
0
0
0
0
1
1
1
1
0
0
0
0
0
0
0
0
1
0
1
0
1
0
0
1
1
0
0
0
0
1
1
0
0
0
1
1
1
0
0
0
0
1
1
1
1
0
1
1
0
0
1
0
0
0
1
0
0
0
0
0
0
1
1
0
0
0
1
1
0
1
1
0
0
0
1
0
0
1
0
1
0
1
0
0
0
1
0
0
0
0
1
1
0
1
0
0
1
1
0
0
0
1
0
1
0
1
1
0
1
0
0
1
0
0
0
0
0
1
1
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
1
0
0
0
1
0
0
1
0
0
0
0
0
1
0
1
1
1
0
0
1
1
1
1
0
0
0
0
1
0
1
0
1
0
1
0
1
0
1
1
1
0
0
0
0
0
0
0
1
0
1
0
0
1
0
0
0
1
1
1
0
1
0
0
1
0
0
0
0
1
1
1
0
1
1
0
0
1
0
0
1
1
0
1
0
0
0
1
0
0
1
1
0
0
0
0
1
1
1
0
0
0
1
0
1
0
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
0
0
1
0
1
1
0
0
1
0
1
0
0
1
1
0
0
0
1
0
0
0
0
1
0
1
1
1
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
1
0
1
1
1
0
0
0
1
0
0
1
0
0
1
0
0
1
0
0
0
1
1
0
0
1
1
0
1
0
0
0
0
1
0
1
0
0
0
0
0
0
1
1
0
0
0
0
0
0
1
0
0
0
1
0
1
0
0
1
1
1
0
0
1
0
1
1
1
0
1
0
0
0
0
0
0
0
0
1
0
0
0
1
1
0
1
0
0
0
1
1
0
0
1
1
1
0
1
1
0
0
0
0
1
0
0
0
1
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
1
1
1
1
0
0
1
0
0
1
0
0
1
0
0
0
1
0
1
0
0
1
1
0
0
0
0
1
0
0
0
0
0
1
0
0
1
0
0
1
0
0
0
1
0
1
0
1
0
0
0
0
0
1
1
0
0
1
0
0
0
0
0
0
0
0
1
0
0
1
0
0
1
0
1
1
0
0
1
0
0
0
0
1
1
1
0
1
1
0
1
0
0
1
1
0
0
0
1
0
1
0
0
1
1
1
0
1
0
0
1
1
1
1
0
0
0
0
1
0
0
1
0
0
1
0
0
0
1
0
1
1
0
0
1
0
1
1
1
0
0
0
0
0
0
0
0
0
1
0
0
1
1
0
0
0
0
0
0
1
0
1
0
0
1
1
1
0
0
1
0
0
1
0
1
0
0
0
1
0
1
0
0
0
0
0
0
1
1
1
1
1
0
0
0
0
1
0
0
0
1
0
1
0
1
0
0
0
0
1
0
0
0
0
0
0
1
1
1
0
1
1
1
0
0
0
1
1
1
1
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
1
0
0
1
1
0
1
0
0
1
0
0
0
1
0
0
0
0
1
0
0
1
0
1
0
0
0
1
1
0
1
1
0
0
0
1
0
0
0
1
0
1
0
0
1
0
0
0
0
1
1
0
0
1
1
0
0
0
0
1
1
0
0
0
0
0
1
0
0
0
1
1
0
0
0
1
0
0
0
0
0
0
0
1
0
0
1
1
0
1
0
0
0
1
0
0
1
0
1
0
1
1
0
0
0
1
1
0
0
1
0
0
1
0
1
0
1
1
1
0
0
0
1
0
0
0
1
1
0
0
0
0
0
1
0
0
0
1
0
1
0
0
1
1
1
0
0
0
1
1
0
1
0
0
0
0
0
1
0
1
0
0
0
0
0
1
0
0
1
1
0
1
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
1
1
0
0
0
0
0
0
0
1
1
0
0
0
1
0
0
0
0
0
1
1
0
1
0
0
1
0
0
0
0
0
1
0
0
0
1
1
0
0
0
0
0
1
0
0
1
1
0
0
0
1
1
0
0
0
1
0
0
0
0
1
0
0
0
0
0
1
1
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
1
1
1
0
1
0
1
0
0
1
0
0
0
0
1
0
0
0
0
0
1
0
1
0
0
0
0
0
1
1
1
1
0
1
0
0
0
0
0
0
1
1
0
0
0
0
1
1
0
1
1
1
1
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
1
1
0
0
1
0
1
1
0
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
1
0
1
0
0
1
1
1
1
0
0
0
1
0
0
0
0
0
0
0
1
0
0
1
0
1
0
1
1
0
0
0
1
1
0
0
0
0
0
1
1
0
1
1
1
0
0
0
0
0
0
1
1
0
0
1
0
0
0
0
1
1
1
0
0
0
0
0
1
1
1
1
0
0
0
1
0
0
0
1
0
1
0
1
0
0
0
0
0
1
1
1
0
0
0
1
0
0
1
1
1
0
0
0
0
0
1
0
0
0
0
0
1
1
0
0
0
0
1
1
0
0
0
1
1
1
0
1
0
0
0
1
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
1
1
0
0
0
0
0
1
0
1
1
1
0
1
0
1
1
1
1
0
0
0
1
0
0
0
0
0
1
0
0
0
0
1
1
0
1
1
0
1
1
0
1
1
0
1
1
0
0
0
0
0
1
1
1
1
1
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
1
1
1
0
1
0
0
0
0
0
0
0
1
1
0
1
1
0
0
1
1
0
0
1
0
0
1
1
1
1
0
1
0
0
1
0
1
0
1
0
0
1
1
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
1
1
0
1
1
0
1
1
1
0
1
0
1
0
0
0
1
1
0
1
0
0
0
1
0
0
0
0
1
0
0
0
0
1
1
0
0
0
1
0
1
0
0
1
0
0
1
1
1
1
1
0
1
1
1
0
0
0
0
1
1
1
0
1
1
0
0
0
0
0
0
1
0
1
0
1
0
0
0
0
0
0
0
1
1
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
1
0
0
1
0
1
0
0
0
0
1
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
1
0
1
1
0
1
0
1
0
0
1
0
0
1
1
0
0
0
1
1
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
1
1
0
0
1
1
0
1
0
1
0
0
0
0
0
0
1
0
0
1
1
0
1
1
0
0
0
0
0
1
0
1
0
0
0
0
0
1
0
0
1
1
0
0
0
0
1
1
1
0
1
0
0
0
1
1
0
1
1
1
0
0
0
0
1
0
0
0
0
0
0
1
1
0
0
0
1
1
0
1
1
1
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
1
0
0
1
1
1
0
1
0
0
0
0
0
0
1
0
0
0
0
1
0
0
1
0
0
0
0
0
0
1
0
0
0
1
1
0
0
0
1
0
0
0
0
0
0
0
0
1
1
0
0
1
0
1
0
1
1
1
1
0
0
1
1
0
0
1
1
1
0
0
0
1
0
1
0
1
0
1
1
0
0
1
0
1
0
0
0
0
0
0
0
0
1
0
0
1
1
1
1
0
0
0
1
0
0
0
0
1
1
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
1
1
1
0
1
1
0
1
1
1
0
1
1
1
0
1
1
0
0
1
0
0
0
0
0
0
0
1
0
0
0
1
1
0
0
1
0
1
1
1
0
0
0
0
1
1
1
0
0
0
0
0
1
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
1
0
0
0
1
0
0
1
0
0
1
1
0
0
1
1
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
1
0
0
1
0
0
0
1
1
0
0
0
0
0
0
1
1
0
0
0
0
1
0
1
1
1
0
1
1
0
0
0
0
1
0
0
0
0
0
0
1
0
1
0
0
1
1
0
0
1
0
1
0
0
1
1
1
1
1
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
1
0
0
1
1
0
1
1
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
1
0
1
0
0
0
1
0
0
0
0
1
0
0
0
0
0
1
0
1
0
0
1
0
1
0
0
0
1
1
0
0
0
0
0
0
0
1
1
0
1
1
1
0
0
1
0
1
0
0
1
1
0
1
1
0
1
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
1
1
1
0
1
1
1
1
0
0
0
1
0
1
0
0
0
0
1
1
0
0
1
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
1
1
0
0
1
1
0
0
1
0
0
0
0
0
1
1
0
0
1
0
0
0
0
1
1
0
0
1
1
0
0
0
1
1
1
1
1
0
1
0
0
1
0
0
0
1
1
1
0
0
1
1
0
1
0
0
0
0
1
1
1
1
0
1
1
1
0
1
1
0
0
1
0
0
0
0
1
0
0
0
1
0
1
0
0
1
0
1
0
1
1
0
0
0
1
1
1
0
0
0
0
1
1
0
0
0
1
1
1
0
1
0
0
1
0
1
0
0
0
0
0
1
0
0
1
0
1
0
0
0
1
0
0
1
0
1
0
0
1
1
0
0
0
1
0
0
0
0
1
1
0
0
0
0
1
0
0
0
0
1
0
1
0
0
0
0
1
1
0
0
1
0
1
1
1
0
0
1
1
0
1
0
0
0
1
1
0
1
1
1
0
0
1
1
1
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
1
1
1
0
0
0
1
0
0
0
0
0
1
1
1
0
0
1
1
1
0
0
1
1
1
0
0
1
1
1
0
0
0
0
1
1
0
0
0
1
0
1
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
1
0
0
1
0
1
0
1
0
0
0
0
0
0
1
0
0
1
1
0
1
0
1
0
1
1
0
0
0
0
1
1
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
1
0
0
0
1
0
0
1
0
0
0
0
1
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
1
0
1
1
1
1
0
0
0
1
1
0
1
1
0
0
0
0
0
0
1
0
1
0
1
0
1
0
0
0
0
1
0
0
1
0
0
0
0
0
0
1
0
0
0
1
0
0
1
1
1
0
0
0
1
0
0
0
0
1
1
1
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
1
0
0
1
0
0
0
1
1
0
1
1
0
0
0
1
0
0
0
0
0
1
1
0
0
0
0
1
0
1
1
0
0
0
1
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
1
0
0
0
0
0
0
0
1
0
1
0
0
1
0
0
1
0
0
0
1
0
0
1
0
0
0
1
0
0
1
1
1
1
0
1
1
0
1
1
0
0
0
0
0
1
0
0
0
0
1
0
1
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
1
1
1
0
1
0
0
0
0
1
0
1
0
1
1
0
0
0
0
0
0
0
0
1
0
1
0
1
0
1
1
1
0
0
0
1
0
0
0
0
1
0
0
0
1
0
1
0
1
1
0
1
1
0
1
0
1
0
1
0
0
0
0
0
0
0
0
1
1
1
1
1
1
0
1
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
1
1
0
0
0
1
0
1
0
0
0
0
0
0
0
1
0
1
1
0
1
1
0
0
1
0
0
0
0
1
1
0
1
1
1
1
1
1
0
0
1
0
0
0
0
0
0
1
0
0
0
1
1
1
1
0
1
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
1
1
0
0
0
1
1
1
0
0
1
0
0
0
1
1
1
0
0
0
1
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
1
0
0
1
0
0
0
1
1
0
0
1
0
1
1
0
0
1
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
1
1
1
1
0
1
1
1
0
1
0
1
1
0
0
1
0
1
1
1
0
0
0
0
0
0
0
1
1
1
0
1
1
1
0
0
1
0
1
0
1
1
1
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
1
1
0
0
1
0
1
0
1
1
0
1
1
0
1
0
0
1
1
1
0
1
0
1
1
1
1
0
0
1
0
0
1
1
0
0
0
1
0
0
0
0
0
1
0
0
1
0
1
0
0
0
0
1
0
0
1
1
1
1
1
0
0
1
1
0
1
1
0
0
1
0
1
1
1
1
1
0
1
0
1
0
1
0
1
0
0
0
0
1
0
0
1
1
1
1
0
1
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
1
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
1
1
0
0
0
0
0
1
1
0
1
0
1
1
0
0
0
1
0
0
0
1
0
0
0
0
0
1
1
0
0
0
0
0
0
0
1
1
1
1
0
0
0
1
0
0
0
0
0
0
0
1
0
1
1
1
0
0
0
0
0
1
0
0
0
0
0
1
1
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
1
1
0
0
1
0
0
0
0
1
0
0
1
1
0
0
0
0
0
1
1
0
1
0
0
1
0
1
0
0
1
1
0
0
0
0
1
1
1
0
1
0
1
1
0
0
1
1
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
1
1
1
1
0
0
1
0
1
0
0
1
1
0
1
1
1
0
0
0
1
0
0
1
0
0
0
0
0
0
0
1
0
0
1
0
0
1
0
0
0
0
1
1
0
1
1
1
1
1
1
0
0
1
0
1
0
0
0
0
1
0
1
1
0
1
1
0
1
0
1
0
0
0
0
0
1
0
1
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
1
1
0
0
0
0
0
1
1
1
1
0
1
0
0
1
0
0
1
0
0
1
0
1
0
1
0
0
0
0
0
1
1
0
1
0
0
0
1
0
1
0
0
0
0
0
0
0
1
0
0
1
1
1
0
0
0
0
0
0
1
1
0
0
1
0
0
1
0
0
1
1
0
0
1
0
0
0
0
1
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
1
0
0
0
1
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
1
0
0
1
0
0
0
1
0
0
1
0
1
1
1
0
0
1
1
1
0
1
0
0
0
1
1
0
1
0
1
0
0
0
0
0
1
0
0
1
0
0
0
0
1
0
0
0
1
0
1
0
1
0
0
0
0
1
0
1
0
0
0
1
0
0
1
1
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
1
0
0
0
1
1
0
1
0
1
0
1
1
0
0
1
0
1
0
0
1
0
1
0
1
1
1
1
0
0
1
0
1
0
0
1
1
1
0
0
0
1
1
0
0
0
1
0
0
0
0
0
1
0
1
1
0
0
1
1
0
0
0
0
0
0
1
1
0
0
1
0
0
1
0
1
1
1
0
0
0
1
0
1
0
1
0
0
0
0
1
0
0
0
1
0
0
1
0
0
0
1
1
0
1
0
0
1
0
0
0
0
0
1
1
0
0
0
0
1
1
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
1
1
1
0
1
1
1
1
1
1
0
0
0
1
0
0
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
1
0
1
1
1
1
1
0
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
0
1
1
0
0
0
0
0
1
0
1
1
0
0
1
1
1
0
1
0
1
1
1
0
1
0
1
0
0
0
0
0
0
0
0
1
1
0
1
0
1
0
0
0
0
1
1
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
1
0
0
1
0
0
0
0
0
0
1
1
1
0
0
1
0
0
0
1
0
0
1
0
0
1
0
1
0
1
1
1
0
1
1
0
0
0
0
0
1
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
1
1
0
0
0
1
0
0
0
0
1
1
1
0
1
1
0
0
0
0
1
0
1
0
0
0
0
1
1
0
0
0
1
0
0
1
1
0
1
0
0
0
1
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
1
1
1
0
1
1
0
0
0
0
1
0
1
1
0
1
1
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
1
0
1
1
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
1
0
0
0
0
0
0
1
1
1
1
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
1
0
0
1
1
0
0
0
1
0
0
1
1
0
0
1
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
1
0
0
1
1
0
1
0
1
0
0
0
1
0
0
0
1
1
1
1
0
1
0
0
1
0
0
0
1
0
0
1
0
0
0
0
1
0
1
1
0
0
1
1
0
1
1
0
0
1
0
1
0
0
1
1
0
0
0
0
0
1
0
1
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
1
0
1
1
1
0
0
0
0
1
0
0
1
1
1
1
0
0
0
0
0
1
0
1
0
1
0
0
0
0
0
1
1
0
0
1
0
1
0
0
0
0
0
1
0
0
1
0
0
1
0
1
0
0
0
0
1
0
0
0
1
1
0
0
0
0
1
0
1
0
0
0
0
0
1
0
1
0
0
1
0
0
0
0
1
1
0
1
0
1
1
0
0
1
0
0
0
0
0
1
0
0
1
0
1
0
0
0
0
0
1
0
0
1
1
1
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
1
0
1
0
0
1
0
0
0
1
0
1
0
1
1
1
1
0
1
1
0
0
0
0
0
1
0
0
1
0
0
0
1
0
0
0
0
0
1
1
0
0
0
0
1
1
0
0
0
1
0
0
1
0
1
1
0
0
0
0
0
1
0
1
0
0
0
0
1
0
0
0
1
0
1
1
1
0
1
0
1
1
0
0
0
0
1
0
0
0
1
0
0
1
1
1
0
1
0
1
0
1
0
0
0
0
1
0
1
0
0
0
0
1
1
0
1
0
1
1
0
0
0
1
0
1
0
0
0
1
1
1
0
0
0
0
0
0
0
0
0
1
1
0
1
0
0
0
0
0
0
0
1
0
0
0
0
1
1
1
0
0
1
0
1
1
0
0
0
1
1
0
1
0
1
0
0
1
0
0
0
1
0
0
1
1
0
1
0
1
0
0
1
0
1
1
0
0
0
0
0
1
0
0
0
1
1
1
1
0
0
0
0
0
1
0
0
1
1
0
0
0
0
1
0
1
0
0
1
0
1
0
0
0
0
0
1
1
0
0
0
0
0
1
0
0
0
1
0
0
1
1
0
0
0
0
0
1
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
1
0
1
0
0
0
1
0
1
0
0
1
0
0
0
1
0
1
0
0
0
1
0
0
1
0
0
1
0
0
0
1
0
0
0
0
1
0
1
0
1
0
0
0
0
0
1
1
0
0
0
1
0
0
0
1
0
0
1
0
1
0
1
0
0
0
0
0
0
0
0
1
0
1
0
1
0
1
1
0
1
0
1
1
0
1
0
1
0
1
1
1
0
0
1
1
0
0
0
1
0
0
1
0
0
0
0
1
1
1
0
0
1
1
0
0
0
1
0
0
1
0
1
0
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
1
0
1
1
0
0
1
0
0
0
1
0
0
0
0
1
0
0
0
0
0
1
0
1
0
1
0
0
0
0
0
0
1
0
1
0
0
0
1
0
1
1
0
1
1
1
1
0
0
0
1
0
0
0
0
0
1
1
0
1
1
0
1
0
1
1
0
0
1
1
0
1
1
1
0
0
0
0
0
0
0
1
0
0
1
0
0
0
1
0
1
0
0
0
0
0
0
0
1
0
1
0
1
1
0
1
1
0
1
0
0
0
1
0
1
1
0
0
0
0
0
0
0
1
0
1
1
1
0
1
1
0
1
1
0
1
1
1
0
0
1
0
0
0
0
0
1
0
1
0
0
1
1
0
1
1
0
0
1
0
1
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
1
0
1
0
0
0
1
0
0
0
0
0
1
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
1
0
0
1
0
0
0
0
0
0
1
0
1
1
0
1
0
0
1
0
0
0
0
0
1
1
1
0
0
0
0
0
0
1
1
1
0
0
1
0
1
0
0
0
0
0
1
1
0
1
0
0
1
0
0
0
0
0
1
1
0
1
1
0
1
1
0
1
0
0
0
1
1
1
0
0
0
0
0
1
0
0
0
1
0
0
0
0
1
1
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
1
0
0
0
1
1
0
1
1
1
0
0
0
1
1
0
1
1
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
1
0
0
0
0
1
0
1
0
1
0
0
0
1
1
0
1
1
1
1
1
0
0
1
1
1
0
0
1
0
0
1
0
1
0
0
1
0
1
0
0
0
0
0
1
0
1
0
0
1
0
0
0
1
1
1
0
1
1
0
0
1
0
1
0
0
0
0
1
0
0
1
0
0
0
0
0
1
0
1
1
1
1
1
0
0
1
0
0
0
1
1
1
1
0
0
0
0
0
0
1
0
0
1
0
0
0
1
1
0
0
0
0
0
0
0
1
1
0
0
0
0
0
1
0
1
0
0
1
1
0
0
0
1
0
1
0
0
0
0
1
0
0
0
0
0
0
1
0
0
1
1
1
1
0
1
1
0
0
1
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
1
0
0
0
0
1
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
0
0
0
1
0
0
1
1
1
0
0
0
0
0
1
0
0
0
0
1
0
1
0
1
0
1
0
0
1
0
1
0
0
0
1
1
0
1
0
0
0
0
0
0
0
0
1
0
1
1
0
0
0
0
0
0
1
1
0
0
0
0
0
1
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
1
1
0
1
0
0
0
1
1
0
1
1
0
0
0
0
0
1
1
0
0
1
0
0
0
0
0
0
0
1
0
1
1
0
1
0
0
0
1
1
1
1
0
1
1
1
0
0
1
0
0
1
0
0
1
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
1
0
1
1
0
1
1
0
0
1
0
1
0
0
0
0
0
1
0
1
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
1
0
0
1
0
0
1
0
0
0
1
1
1
0
0
0
0
0
0
1
0
0
0
0
1
0
1
0
0
1
0
0
1
1
1
1
1
1
1
0
1
0
0
1
0
0
0
1
0
0
0
0
0
1
0
1
0
0
0
1
0
1
1
0
1
0
1
1
1
0
0
1
1
0
1
0
0
0
1
1
1
0
0
0
0
0
0
0
0
1
0
1
0
0
0
1
0
1
0
0
0
0
1
0
1
0
0
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
1
1
0
0
1
1
1
1
0
1
1
1
0
0
0
0
0
0
0
1
0
0
1
1
1
0
0
1
0
0
0
0
0
0
0
0
0
1
1
1
0
0
0
1
0
1
1
0
1
1
0
1
0
0
0
0
0
0
1
0
0
0
1
1
1
0
0
1
0
1
1
0
0
0
0
0
0
1
1
1
1
0
0
1
1
0
1
1
1
0
0
1
1
0
0
0
0
0
0
1
0
0
0
0
1
1
1
1
0
0
0
0
1
0
1
0
0
0
0
0
1
0
0
1
1
0
0
1
1
0
0
0
0
0
0
1
1
0
0
0
1
1
0
0
1
0
0
0
1
1
0
0
0
1
0
1
1
1
1
1
1
0
1
1
1
1
0
0
1
1
1
0
0
0
1
1
0
1
1
0
0
1
0
0
0
0
0
0
1
0
0
1
0
0
0
1
0
0
0
0
0
0
1
1
1
0
1
1
1
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
0
1
0
0
0
1
1
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
1
1
1
1
0
0
0
0
0
0
0
1
0
0
0
0
1
1
0
1
1
0
1
1
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
1
1
0
0
1
0
1
0
0
0
0
1
0
0
0
0
1
1
1
1
1
0
0
1
0
1
1
1
1
1
1
1
0
0
0
1
0
1
1
0
0
0
0
1
1
0
1
1
0
1
0
0
1
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
1
0
1
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
1
0
0
0
1
1
0
0
0
1
1
0
0
0
0
0
0
1
1
0
1
0
0
1
1
0
0
1
1
1
1
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
1
0
1
0
1
1
0
0
1
1
0
1
0
0
0
1
1
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
1
1
0
0
1
1
0
0
1
1
0
0
1
0
1
1
0
1
0
0
1
0
1
0
1
0
0
0
0
1
1
0
1
0
0
1
1
1
0
0
1
1
0
0
1
1
0
1
0
0
1
1
0
0
1
0
1
0
0
0
1
0
1
1
1
1
0
1
1
0
1
1
0
0
0
0
0
0
0
1
1
1
0
0
1
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
1
0
0
1
1
0
0
0
0
1
0
0
0
1
1
1
0
1
0
0
0
1
0
1
1
1
1
0
1
1
0
0
0
0
0
0
1
0
0
0
0
1
1
0
1
1
1
0
0
1
0
1
0
1
0
0
1
0
0
0
0
0
0
1
1
0
0
0
0
1
0
0
1
0
1
1
1
0
0
0
0
0
0
0
0
1
0
1
0
1
0
0
0
0
0
0
1
0
1
1
0
1
1
0
0
0
1
1
0
0
0
0
0
0
0
0
0
1
1
0
0
0
1
0
0
1
1
1
0
1
0
0
1
0
0
1
0
0
0
1
1
0
1
0
0
0
0
0
1
0
1
0
0
0
0
1
0
0
1
1
0
1
0
1
0
1
1
0
0
0
0
0
1
1
0
0
0
0
1
1
0
1
0
0
1
0
0
0
1
1
1
1
0
0
0
1
0
1
0
1
0
0
0
0
1
1
0
0
1
1
1
0
0
1
0
1
0
1
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
1
1
0
0
1
0
0
0
0
1
0
1
1
1
0
0
1
0
1
0
0
1
0
0
1
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
1
1
0
0
1
1
0
0
1
0
1
0
0
0
0
0
0
0
0
1
1
0
0
1
0
0
0
1
0
0
0
0
0
0
1
0
0
1
0
1
0
0
1
0
0
0
0
1
0
0
0
1
0
0
1
0
1
0
1
0
1
0
0
1
1
0
1
0
1
1
0
0
0
1
1
1
0
0
1
0
0
1
0
1
0
1
0
1
0
0
0
0
1
0
1
1
0
0
1
0
0
1
0
0
0
0
1
1
0
1
0
0
1
0
1
0
0
0
0
1
0
1
0
0
0
1
1
0
1
0
0
0
0
0
0
0
1
1
0
1
1
0
1
0
0
0
0
0
0
0
1
1
0
0
1
0
1
1
0
0
1
1
0
0
0
1
1
0
1
0
0
1
0
1
0
1
0
0
1
0
0
1
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
1
1
0
1
0
1
1
0
1
0
0
1
0
1
0
0
0
0
0
1
1
0
1
0
1
1
1
0
0
1
1
0
0
0
0
0
1
0
1
1
0
1
1
0
1
0
0
1
1
0
1
0
0
0
0
1
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
1
1
0
0
0
0
1
1
0
1
1
0
0
0
0
0
1
1
1
1
0
1
0
1
1
0
0
0
0
0
1
0
0
0
1
1
0
0
1
0
0
1
1
1
0
0
0
0
0
0
1
0
0
0
1
0
1
1
1
0
0
0
1
0
1
0
0
0
0
1
1
