0
1
mirror of https://git.sb/baoshuo/OI-codes.git synced 2024-12-25 19:32:12 +00:00
OI-codes/BZOJ/2243/data/5.out

39426 lines
77 KiB (Stored with Git LFS)
Plaintext

6504
1
1
1
2
1
2
890
4
3
1
1092
3
1
1
2
1
3
1442
2
2
2
2
4
1034
6
1
1
1
188
1
1
1
1
1
1
1
1
1
364
1
652
2
89
3
2
2
1
3
3
2
1
1
2
4
1
2
3
3
2
2
1
1
1
1
1
2
1
1
1
1
1
1
104
2
2
1
1
2
1
1
1
1
1
1
1
1
1
3
1
3
1
1
3
3
2
4
1
1
1
2
2
1
3
1
1
2
2
1
2
1
1
3
1
1
1
1
1
1
3
3
2
2
1
4
1
1
2
1
1
2
3
6
2
2
3
2
3
1
1
1
1
3
3
2
2
57
4
3
3
1
1
2
1
1
1
1
1
1
1
1
1
1
2
1
1
41
1
1
1
1
1
1
1
1
1
5
2
3
3
2
4
2
1
1
3
5
1
1
1
2
1
2
1
1
1
1
2
1
131
4
1
2
1
2
1
7
2
2
178
95
4
1
1
2
3
1
2
2
1
1
3
2
1
2
2
1
1
2
3
1
2
2
1
146
1
3
1
1
2
3
3
2
3
2
4
1
9
1
1
3
1
1
271
1
1
1
2
2
1
1
1
1
5
1
1
1
1
1
2
2
2
2
3
4
2
2
6
2
3
4
3
6
2
2
2
4
4
3
1
2
6
2
6
3
1
3
1
1
15
1
2
1
1
2
4
3
1
1
1
1
1
1
5
1
3
1
7
3
1
1
2
2
3
2
2
3
1
1
1
1
1
1
3
2
2
2
2
1
2
3
1
1
2
1
1
1
1
3
1
1
2
1
1
1
1
2
1
1
1
1
1
2
4
2
2
1
2
2
1
2
1
1
2
1
2
4
2
167
1
2
4
2
4
1
1
2
1
1
1
1
2
1
1
1
3
1
4
2
4
3
1
3
1
3
1
1
1
2
1
1
2
2
1
1
1
2
4
1
4
4
2
1
19
3
2
2
1
1
5
3
3
1
6
9
2
1
3
9
2
8
6
2
2
1
1
1
1
4
1
3
1
1
1
2
1
4
2
4
3
2
3
1
1
2
3
3
2
2
1
2
2
1
3
2
4
3
4
1
5
4
6
4
2
3
1
1
3
1
3
3
2
3
5
2
1
2
2
4
4
2
1
3
2
1
1
1
1
1
1
1
3
2
4
2
2
1
2
2
2
2
1
1
1
1
4
1
1
3
1
1
2
1
4
2
2
2
1
3
2
1
1
1
1
1
1
1
1
1
1
4
4
1
3
4
4
2
1
1
1
1
1
6
2
1
2
2
3
1
2
2
2
5
1
3
2
4
2
1
3
1
1
1
1
2
1
1
2
2
1
2
1
2
1
1
1
3
3
1
2
2
2
1
1
1
1
4
2
2
1
1
1
1
1
3
1
4
2
1
1
1
1
4
1
3
2
3
6
6
3
1
3
1
1
1
1
1
3
2
1
1
2
2
2
7
1
1
3
3
2
4
1
2
1
1
6
2
2
2
1
2
1
4
3
1
4
5
1
5
3
4
4
1
1
4
2
4
1
1
5
1
1
1
2
1
3
4
1
1
1
1
3
3
1
1
1
5
1
1
7
2
2
1
4
5
3
2
2
4
4
3
2
1
3
1
2
2
3
3
1
1
3
1
2
4
6
1
1
1
1
1
1
8
1
1
2
1
1
1
1
1
1
1
2
2
2
2
1
1
2
1
2
1
1
2
7
5
1
3
1
5
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
3
1
1
3
5
3
1
1
1
2
1
1
1
1
2
2
1
1
2
1
1
1
1
3
1
2
2
1
1
2
2
3
2
3
2
1
1
1
1
2
1
3
1
1
2
2
2
1
1
2
2
3
1
1
1
1
1
1
2
1
2
2
1
1
2
2
1
1
4
1
1
2
1
4
1
1
1
1
1
2
1
1
1
1
1
1
1
1
3
1
1
1
1
2
1
3
2
1
1
3
1
2
3
3
2
1
1
7
1
1
2
5
2
1
2
2
1
2
1
1
1
2
1
2
2
1
1
4
3
2
2
1
4
1
3
1
1
2
2
1
2
2
2
3
3
5
2
2
5
3
3
2
5
5
1
2
4
2
1
5
3
3
1
1
1
1
1
2
1
1
1
3
6
3
1
2
1
5
3
1
1
1
1
1
2
1
1
3
1
1
1
1
3
2
3
1
1
1
1
1
2
2
1
3
4
1
1
1
1
1
2
2
1
2
2
2
2
1
1
1
1
1
2
1
1
2
2
2
1
2
1
1
1
1
2
3
1
2
1
1
2
1
2
4
4
4
1
2
1
2
2
1
1
3
1
1
1
1
1
1
2
1
1
1
1
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
1
1
1
2
1
1
1
1
1
1
4
1
2
2
2
3
2
1
2
2
2
1
2
1
3
1
2
18
2
1
4
1
4
2
2
4
1
1
5
6
2
1
1
3
1
3
4
1
3
2
1
1
1
1
1
1
1
1
1
1
1
1
1
6
1
5
4
1
2
2
5
4
3
2
2
6
2
1
4
2
1
4
4
3
3
4
3
1
2
2
1
2
1
2
1
1
1
1
1
2
1
3
4
5
2
2
1
1
2
1
1
1
2
1
2
2
2
1
1
1
1
2
2
2
2
1
3
1
2
1
1
3
1
1
1
1
2
2
1
1
1
1
2
4
4
5
2
2
5
2
2
4
1
3
4
3
1
1
3
1
1
1
1
1
2
1
2
1
4
4
4
2
1
1
1
1
3
2
4
5
4
4
1
3
5
4
2
4
1
4
4
5
2
4
1
1
4
1
1
2
2
2
1
3
6
4
3
1
1
5
4
1
3
5
5
2
1
1
3
4
2
1
1
3
2
2
2
1
1
4
2
3
2
2
1
3
2
2
1
1
6
4
1
2
3
2
1
3
2
6
1
1
1
1
1
3
2
2
3
1
2
1
1
1
1
1
1
2
1
1
3
2
1
1
3
1
1
1
1
2
2
1
1
2
5
1
1
2
1
1
2
1
1
1
3
2
3
2
1
1
1
1
2
1
3
2
1
1
2
3
3
1
3
1
1
4
5
1
2
1
4
4
1
4
3
1
2
3
3
1
1
1
2
3
1
3
2
3
2
2
1
1
4
1
2
1
1
3
3
2
1
2
3
1
3
1
3
1
1
1
1
1
3
1
2
2
1
2
1
2
2
2
1
2
4
4
1
1
1
3
4
2
2
1
1
1
1
1
1
1
1
1
2
2
2
1
1
1
3
2
3
3
5
5
1
1
5
2
3
3
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
18
1
1
1
1
1
1
1
3
1
1
1
2
2
2
1
2
2
1
1
2
2
1
1
3
1
1
1
1
2
1
1
2
2
1
2
2
1
1
2
6
6
3
3
2
5
6
3
4
2
1
1
2
2
1
1
2
1
1
1
1
3
1
2
2
2
1
1
4
1
3
1
3
1
3
1
2
2
1
1
1
1
1
1
1
1
1
1
3
3
2
2
1
3
3
4
2
5
1
1
5
2
2
4
2
1
4
1
1
2
4
1
1
1
1
3
1
2
1
1
2
4
4
1
4
5
1
2
1
2
2
1
4
4
1
4
2
1
2
1
1
3
4
1
3
6
3
2
2
5
2
2
2
1
3
3
2
2
2
2
4
3
2
2
2
2
3
2
1
2
2
2
2
2
2
4
2
2
4
4
2
1
4
4
5
1
1
2
4
4
3
1
2
1
1
1
1
1
1
2
1
1
1
1
2
1
2
1
2
2
1
1
1
4
2
3
1
1
1
2
1
4
1
4
3
5
1
1
3
2
3
3
2
1
1
1
3
2
1
1
3
3
3
6
1
7
1
1
2
4
3
1
2
1
1
1
1
3
1
1
1
2
4
4
1
3
2
1
1
2
1
2
3
2
3
3
2
1
2
1
2
3
2
2
3
4
4
3
1
3
3
1
4
2
1
1
1
3
3
1
1
1
1
1
2
2
2
1
1
1
1
2
2
3
8
3
1
4
1
1
1
1
3
1
1
2
2
2
1
3
1
1
4
3
2
2
2
3
1
1
1
1
7
2
1
3
1
4
8
2
1
1
1
3
1
1
1
1
1
3
2
1
1
1
1
1
1
3
1
1
1
2
1
1
3
1
1
1
1
1
1
3
1
3
3
1
1
3
1
1
1
1
1
1
1
1
2
3
1
1
1
3
2
2
2
2
1
2
2
1
3
1
1
1
1
3
1
2
1
1
1
1
1
3
1
2
3
1
3
1
2
2
2
5
3
1
1
2
1
1
2
2
4
2
1
1
2
1
1
2
3
6
3
2
2
2
5
2
6
1
5
1
1
4
3
2
4
2
3
1
1
3
2
3
4
1
2
1
2
2
4
2
5
1
1
1
1
1
1
1
2
1
2
3
2
5
3
2
1
1
1
1
1
1
2
1
1
3
3
2
3
3
1
3
5
2
3
3
2
1
3
1
1
2
1
1
1
1
2
3
1
1
3
1
3
1
1
1
1
2
1
2
6
3
6
1
2
1
1
5
2
2
3
1
2
1
1
3
2
1
1
3
1
3
2
2
2
2
1
1
1
1
1
3
4
4
2
1
2
1
1
7
4
4
1
5
2
2
1
3
2
1
3
2
1
3
1
4
3
1
2
3
1
5
5
5
5
2
3
3
2
1
1
1
1
4
1
1
1
1
1
1
1
3
2
3
1
2
4
1
2
2
3
7
3
1
2
1
1
2
2
1
2
3
2
1
2
3
2
3
2
3
1
3
3
3
1
3
1
6
2
1
1
2
1
1
2
2
1
1
1
1
1
1
1
2
1
1
1
1
3
2
1
1
1
2
2
1
1
2
1
1
2
2
2
4
5
5
1
3
6
3
3
3
2
1
1
2
1
1
3
1
3
1
3
2
3
7
1
1
1
1
2
2
1
1
1
1
2
2
1
1
1
2
3
1
1
1
2
2
4
2
1
1
6
2
1
3
1
2
1
2
3
1
2
1
2
2
2
1
3
1
4
2
1
2
1
2
1
6
1
1
1
2
1
1
1
2
1
1
2
1
1
1
1
7
1
1
4
1
1
1
1
2
1
1
1
1
1
1
1
1
3
2
3
1
1
3
3
2
1
2
2
2
1
1
1
1
5
5
3
2
4
2
2
2
1
1
1
1
4
5
2
4
1
3
5
1
3
1
1
4
2
1
1
2
1
1
1
1
1
2
1
2
1
1
1
1
2
1
2
6
1
10
1
1
1
1
1
2
3
1
3
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
2
1
2
2
1
1
1
1
2
1
3
6
1
1
1
1
1
2
1
1
3
1
1
2
1
3
2
2
1
3
2
2
2
5
1
1
2
1
1
2
2
5
1
1
1
1
1
1
1
3
2
4
2
2
2
1
1
1
1
2
2
1
1
4
1
5
2
2
1
1
2
3
2
4
2
2
3
6
2
2
4
4
5
1
1
1
1
1
4
2
2
2
4
4
2
1
3
3
2
3
2
2
1
2
1
1
1
1
3
1
1
2
1
2
2
1
1
6
5
3
2
1
2
1
1
1
1
1
2
1
1
1
1
1
2
3
1
1
1
2
3
3
1
1
1
1
1
1
1
3
1
1
1
3
1
1
2
1
1
2
2
1
2
2
2
1
2
1
2
2
3
1
5
4
5
1
1
4
1
1
1
3
2
2
1
2
1
1
1
1
1
1
3
1
2
1
1
1
3
2
7
3
1
19
2
2
3
1
2
3
1
2
9
5
1
4
3
5
6
6
2
2
1
2
1
2
5
1
1
1
2
2
2
3
2
2
2
1
1
2
3
4
1
2
4
4
4
1
5
2
2
4
1
1
4
2
2
1
1
3
2
1
6
6
3
1
1
5
5
2
1
1
2
1
1
1
2
3
2
5
2
3
2
1
5
3
2
1
2
1
1
2
3
1
1
1
1
2
4
1
1
3
2
3
2
2
1
1
1
1
1
1
5
2
2
1
1
1
2
1
1
1
1
1
1
1
2
2
1
1
1
1
1
2
1
1
1
3
2
1
1
3
1
1
1
1
1
1
1
2
1
1
5
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
6
1
1
1
1
2
5
1
1
1
1
1
2
2
2
1
1
1
3
1
3
1
2
1
2
2
4
2
2
6
6
2
2
1
2
1
1
3
2
1
2
2
1
2
2
1
1
3
3
3
5
3
8
3
3
4
1
1
5
3
1
2
1
2
4
2
2
2
5
1
1
2
2
1
1
1
1
1
1
1
1
1
3
1
1
2
2
1
1
1
6
1
1
1
1
1
10
1
2
1
2
1
2
1
1
1
2
1
2
3
1
1
2
1
2
1
1
2
1
2
2
1
3
1
1
1
2
2
2
1
3
1
1
1
1
2
4
2
3
1
3
1
1
1
1
1
1
3
2
1
1
2
1
2
2
3
2
2
2
1
1
2
1
4
1
2
1
2
2
2
1
1
3
1
4
1
1
3
3
1
1
2
1
5
2
1
1
4
13
1
3
1
1
1
2
2
1
1
3
4
3
1
1
4
2
2
6
1
4
5
1
1
6
5
5
1
3
1
2
4
1
4
2
1
2
1
5
4
1
1
4
2
1
1
2
1
1
1
2
2
1
1
3
3
1
3
2
1
1
1
1
1
3
1
1
1
1
2
1
1
1
1
2
1
1
2
1
2
2
1
1
1
1
1
2
1
2
1
3
2
1
2
2
1
1
4
1
3
2
3
1
2
1
1
1
2
1
2
1
1
3
3
1
2
2
3
3
2
2
1
5
3
2
1
2
2
2
5
3
2
1
1
1
4
2
4
1
5
2
1
1
2
2
3
1
3
3
1
5
3
1
4
3
2
3
3
1
2
1
1
1
1
2
3
2
1
4
2
1
2
2
1
4
1
1
1
4
2
1
1
1
1
1
1
3
1
3
3
6
4
6
6
6
4
6
2
2
1
1
1
5
2
2
1
1
1
1
2
2
4
1
2
1
5
4
1
1
4
4
3
1
4
3
1
2
3
2
3
2
1
2
1
1
1
1
1
4
1
1
1
1
2
1
2
1
2
2
1
3
4
3
3
1
1
2
1
2
2
1
1
2
1
2
1
1
1
3
1
1
1
1
4
1
3
1
1
1
1
1
1
1
3
1
1
2
2
4
2
2
1
1
1
2
4
4
2
4
1
1
1
1
1
1
2
1
1
1
1
1
2
1
2
1
1
1
1
1
2
2
3
1
2
1
1
1
1
6
4
3
5
5
3
2
2
2
1
3
1
4
2
2
2
3
4
4
4
1
1
3
3
3
3
2
1
3
3
1
3
1
3
2
3
2
1
1
1
1
4
2
1
1
1
1
2
1
6
2
3
1
1
1
9
1
3
1
2
1
2
1
1
2
2
2
2
2
3
1
4
1
3
2
1
3
2
1
1
1
1
1
1
7
1
1
5
1
1
3
2
1
1
1
1
1
1
1
1
1
1
1
2
3
2
4
3
5
2
2
1
4
2
1
2
2
1
1
2
2
1
3
1
1
3
1
1
2
1
2
2
3
1
4
8
1
6
2
4
6
3
1
1
1
1
3
2
3
2
2
1
3
2
1
2
3
1
1
1
3
1
2
3
4
5
5
1
3
1
3
4
2
1
2
1
1
1
4
3
5
1
5
1
1
5
2
4
1
1
1
1
1
1
3
3
1
3
1
1
1
1
1
1
1
3
3
4
4
2
4
2
1
3
1
1
1
1
1
1
1
1
5
3
1
2
3
1
1
1
2
1
1
6
3
2
1
2
3
2
1
1
1
1
3
3
2
2
1
1
1
1
2
1
1
1
4
1
2
1
2
3
4
1
2
4
1
2
2
1
2
4
6
1
1
1
7
1
2
5
2
2
1
4
1
1
1
1
1
8
2
1
1
1
1
1
1
2
6
6
1
2
3
2
1
2
2
2
2
2
1
1
7
1
1
3
1
5
1
4
3
4
1
4
1
1
1
1
4
2
2
1
2
3
1
1
3
3
2
1
2
1
2
1
1
1
1
5
1
1
1
4
2
2
1
2
1
2
1
1
3
4
1
4
4
1
1
1
1
2
6
1
1
2
1
3
1
1
1
1
1
2
6
1
1
4
1
1
1
2
2
1
2
1
2
2
2
2
4
2
1
1
3
1
1
1
1
1
1
1
1
4
1
3
1
2
3
1
1
3
3
4
3
1
3
1
5
1
4
1
2
2
4
2
4
3
1
1
1
1
1
1
1
3
1
1
1
1
1
1
3
1
1
1
2
1
2
3
5
19
3
1
1
2
3
3
3
1
2
1
1
1
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
3
2
2
1
2
1
2
1
1
1
1
1
1
1
1
1
1
2
1
5
1
4
2
3
5
4
1
5
4
2
1
1
2
2
2
3
2
1
2
1
2
1
1
3
5
5
5
1
4
1
4
1
1
1
6
5
2
1
5
2
3
2
1
1
3
3
1
3
3
3
1
5
2
1
5
1
3
1
1
1
3
4
2
2
3
1
1
1
1
2
4
1
2
1
1
1
1
1
1
1
2
1
1
1
1
3
4
1
2
1
1
1
1
1
1
2
2
2
2
1
2
1
4
2
2
1
3
3
2
2
2
1
1
1
2
1
1
2
1
1
1
1
2
1
2
5
1
3
1
1
1
1
1
1
2
2
1
2
1
1
2
1
2
1
3
3
4
7
1
4
1
1
7
2
4
2
2
1
3
1
2
4
2
4
1
2
1
3
1
2
1
3
3
2
2
3
2
1
2
7
2
4
1
1
1
1
1
1
1
1
1
1
2
3
2
2
4
1
1
2
1
2
1
1
3
1
2
1
2
1
3
2
2
4
1
2
2
3
1
2
1
1
1
2
2
3
1
2
3
1
1
1
1
1
1
1
2
2
1
3
2
1
1
2
1
1
2
2
1
3
4
4
4
2
1
1
1
2
1
1
1
1
1
3
3
1
1
3
4
3
1
1
1
1
2
1
3
1
1
5
5
2
5
1
2
1
1
1
1
3
1
1
1
1
2
1
1
1
1
2
2
1
2
2
1
3
1
1
2
1
1
1
2
1
2
1
3
3
2
3
1
1
1
4
1
3
1
3
4
4
1
1
1
2
1
2
1
1
4
1
2
1
2
1
2
2
2
1
3
2
2
1
1
2
4
3
1
2
3
3
1
2
1
2
2
2
3
1
4
2
1
3
5
1
4
2
1
2
1
2
2
1
4
3
2
2
4
1
1
2
1
2
1
2
1
4
1
1
1
1
3
1
2
1
2
1
2
2
2
1
1
3
1
1
1
1
1
1
1
5
2
3
1
1
2
2
2
1
5
3
1
1
1
2
4
2
4
1
1
4
1
1
1
1
1
5
2
3
2
1
2
1
1
1
2
6
1
1
2
1
5
1
2
4
4
2
1
3
2
4
2
5
1
1
1
3
5
1
2
1
1
1
1
1
2
2
1
1
1
1
1
1
2
1
1
1
1
4
2
5
5
4
1
1
4
1
1
1
1
1
1
2
2
3
1
6
3
3
7
2
5
4
1
1
1
1
1
3
1
2
1
1
4
3
3
2
1
1
1
3
3
1
5
1
1
1
1
4
5
3
1
2
1
2
1
1
1
2
2
3
1
2
1
1
1
1
1
1
1
3
2
2
4
1
3
2
1
3
2
2
1
2
3
4
1
1
2
1
4
1
1
2
4
4
5
1
1
2
2
2
2
2
2
3
1
1
1
1
1
1
1
1
3
3
2
3
4
1
4
1
1
2
4
5
1
2
2
2
2
2
1
2
1
1
1
2
4
1
2
2
2
4
1
1
3
2
3
1
3
1
3
1
1
2
3
5
2
2
5
1
4
4
2
1
4
1
1
2
3
3
1
2
1
1
3
3
2
3
2
3
1
2
1
2
6
1
1
1
1
1
2
1
1
1
1
1
1
1
3
1
1
1
5
1
4
1
2
1
1
4
4
4
1
1
2
2
1
2
2
1
1
2
4
4
6
2
1
1
1
1
1
2
1
1
4
6
3
1
9
3
3
1
3
2
2
3
2
2
1
3
1
2
1
1
4
3
1
2
1
1
2
1
3
5
1
7
4
1
1
3
4
3
1
4
1
5
6
1
1
1
6
2
4
1
1
1
2
2
3
2
2
3
3
1
1
2
1
2
2
1
2
1
1
1
1
1
1
1
1
1
2
3
1
5
1
1
3
4
1
1
1
1
1
5
1
2
4
1
3
5
1
1
3
1
1
1
1
1
2
4
10
3
5
2
7
1
2
2
2
4
2
2
3
8
1
1
6
6
1
1
7
4
4
6
4
3
1
3
3
1
1
4
1
1
2
2
1
2
2
2
1
1
1
1
1
1
2
2
2
6
1
1
1
6
3
1
1
4
1
1
2
4
7
1
2
1
1
3
1
1
1
1
1
1
1
1
1
2
1
3
5
1
1
4
1
1
7
5
8
1
10
1
2
1
1
1
1
1
2
1
2
4
1
1
2
2
2
1
1
1
2
5
3
1
1
2
2
3
5
2
3
2
1
3
2
4
1
1
1
1
1
3
2
1
1
2
1
2
2
1
1
1
1
1
6
1
1
1
2
1
2
1
1
1
1
3
2
3
1
2
1
1
2
1
1
4
2
5
2
1
3
3
6
1
4
1
1
1
1
1
1
2
3
1
3
1
1
1
1
2
1
2
3
1
1
1
4
3
5
4
3
5
1
1
2
3
3
1
1
1
1
1
1
2
3
1
3
4
2
3
3
1
1
3
2
1
4
5
1
1
2
1
1
1
3
1
4
4
1
1
1
1
1
1
2
1
1
2
1
1
4
2
2
2
1
1
3
4
4
2
1
1
4
1
1
6
2
6
2
3
2
1
2
1
1
3
5
3
2
1
1
4
2
1
2
2
1
2
2
1
3
2
2
2
3
2
1
1
3
1
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
1
2
1
1
2
1
4
1
2
1
3
1
3
2
2
3
2
4
1
1
1
1
2
1
4
1
3
2
3
4
1
1
4
1
1
2
1
1
1
3
1
3
1
4
2
1
1
2
2
1
1
1
2
2
2
2
2
3
2
4
1
4
4
6
3
4
1
4
7
2
3
3
3
1
1
2
1
1
1
1
1
2
2
1
1
2
5
2
1
2
1
1
3
1
3
2
1
2
1
5
1
1
2
4
2
2
2
5
5
3
1
2
3
1
1
1
1
1
1
1
3
1
1
1
1
1
1
1
1
3
4
2
2
1
1
1
1
1
1
1
1
1
1
2
2
2
1
2
3
3
4
2
3
2
5
2
3
2
3
1
1
1
1
1
1
1
1
1
3
1
3
2
3
1
1
1
6
3
1
3
1
2
1
2
1
1
1
2
1
2
1
1
1
2
1
1
1
2
1
1
4
2
1
1
3
1
2
3
3
2
4
2
2
2
3
1
1
3
3
3
1
1
1
1
1
1
1
3
1
1
1
1
1
1
2
3
2
1
1
1
1
1
2
1
2
2
2
3
1
1
1
5
4
1
3
3
1
1
1
1
1
1
1
4
1
2
1
1
1
9
3
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
3
1
1
1
1
1
1
1
1
2
1
3
1
3
4
1
1
4
2
2
1
1
1
1
1
6
3
1
2
1
1
1
1
1
4
1
1
2
3
1
1
1
1
2
1
1
2
2
1
1
2
1
1
1
1
1
1
1
1
1
2
3
1
1
1
1
2
5
3
4
2
6
5
5
2
5
4
2
1
1
1
4
2
1
2
5
4
2
1
3
2
1
1
1
2
1
2
1
1
2
1
1
5
3
1
3
1
2
4
1
6
1
1
1
1
1
1
1
2
2
4
2
1
2
3
2
2
1
1
2
2
2
2
6
3
2
1
2
2
8
1
2
5
3
1
1
2
5
2
1
1
9
6
3
7
4
1
4
1
4
1
2
3
2
3
1
2
1
1
1
1
1
1
2
1
1
1
2
1
1
1
1
1
1
2
1
1
1
1
1
1
2
1
1
1
1
2
4
2
1
3
2
1
1
1
3
1
1
1
1
1
1
2
2
2
1
1
2
3
2
3
1
1
2
1
1
3
6
1
4
1
2
2
1
4
1
1
2
1
1
2
1
1
1
3
1
2
2
1
1
1
1
2
1
1
1
2
3
1
2
2
1
1
1
4
3
2
1
5
3
2
2
6
1
1
1
2
1
1
2
2
2
1
3
3
1
1
4
1
3
1
1
6
6
1
1
1
1
2
3
1
1
1
1
1
1
1
1
3
1
1
1
2
1
2
1
1
1
1
3
3
3
1
2
2
1
2
1
1
1
1
1
1
1
1
2
2
3
3
1
1
1
2
1
1
4
1
1
1
1
1
1
4
1
1
1
1
3
3
2
1
1
2
2
1
1
1
1
1
1
2
1
1
2
2
2
2
2
1
1
2
2
2
3
2
1
1
2
2
3
4
3
1
3
1
1
1
1
9
2
2
1
1
1
2
1
1
2
2
3
1
1
1
1
1
1
1
1
2
1
1
1
1
1
1
1
1
3
2
1
2
2
3
1
3
2
1
5
2
2
1
5
1
3
2
1
1
1
2
2
1
2
2
1
2
2
1
3
1
1
2
1
1
3
2
1
1
1
3
7
4
3
2
2
1
2
1
1
2
2
1
1
1
1
3
1
1
1
1
1
1
1
1
1
1
1
1
2
2
1
1
1
1
1
2
1
1
2
2
3
1
1
2
2
1
1
1
2
1
2
2
2
4
4
4
2
2
2
2
2
1
1
3
1
1
1
1
1
4
7
3
3
7
1
1
2
1
1
1
1
2
1
1
4
3
6
1
1
1
1
1
1
2
8
3
4
4
1
2
4
1
1
1
4
1
7
4
1
1
2
1
3
1
1
1
1
2
2
2
1
3
1
1
1
3
2
3
1
2
2
2
1
4
8
2
1
2
2
2
2
4
3
1
3
3
1
1
3
1
1
2
1
1
1
1
2
2
1
1
1
1
1
1
1
1
1
1
3
3
4
5
2
2
3
6
4
1
2
1
3
1
2
1
1
1
5
1
5
1
2
1
2
1
1
2
1
1
1
1
1
3
1
1
1
1
2
5
1
1
2
2
3
1
1
1
2
2
3
1
1
1
1
1
3
1
1
1
2
2
1
1
2
2
1
3
2
4
1
1
1
2
1
1
2
2
2
2
5
1
1
1
1
1
1
3
2
7
2
1
2
3
5
7
2
2
1
2
1
1
1
1
3
4
2
5
4
2
1
1
1
5
1
2
2
5
1
1
1
1
3
2
3
1
1
2
1
3
3
3
3
1
3
1
2
6
3
6
4
4
6
1
1
1
2
2
2
2
2
2
2
2
1
1
1
1
3
3
3
2
1
3
3
3
1
1
1
2
3
1
3
3
3
3
2
1
3
1
2
1
3
2
1
1
2
3
1
1
3
2
3
1
1
2
2
2
1
2
3
1
3
1
4
1
2
3
1
1
1
2
1
3
1
1
3
1
1
1
1
1
1
2
1
1
5
2
3
1
3
1
4
3
2
3
1
2
2
3
1
2
4
1
1
1
2
1
1
1
1
5
1
1
1
1
1
1
2
2
1
2
4
2
1
3
7
2
4
6
1
1
2
1
2
2
2
2
1
1
1
1
1
3
7
1
1
1
2
1
1
1
2
3
2
1
1
2
1
2
1
1
1
1
1
1
2
2
2
1
1
1
1
2
1
1
2
1
3
1
3
2
4
3
1
5
2
2
1
1
1
1
1
1
4
1
2
5
1
3
2
1
4
1
4
1
3
6
2
3
1
3
2
1
2
1
1
1
2
1
1
1
2
2
2
1
4
4
4
1
1
2
1
1
1
1
1
1
1
1
4
2
3
2
1
1
1
1
1
3
2
1
1
1
1
1
1
1
2
1
1
3
4
1
1
1
2
1
2
7
4
1
1
1
2
1
1
1
1
1
1
1
1
1
4
1
2
1
1
5
2
1
1
1
1
2
1
1
1
1
1
1
1
2
1
1
1
2
2
2
1
2
3
4
2
1
1
1
1
3
1
2
1
1
3
2
1
1
3
1
4
6
1
2
2
2
2
1
2
1
2
2
1
5
2
2
1
1
1
4
1
1
4
3
1
1
1
1
1
5
2
3
2
6
3
1
3
1
1
3
1
2
2
1
1
1
4
1
1
1
1
2
2
5
6
1
1
5
1
1
2
3
2
3
1
4
3
3
1
5
1
3
2
2
3
1
5
5
1
3
6
2
1
1
1
1
1
1
3
1
2
3
3
3
2
1
1
1
1
2
1
1
2
1
1
1
2
1
3
1
1
1
3
1
2
3
2
4
1
2
3
2
1
1
1
1
4
1
1
1
1
1
1
1
1
1
1
1
2
2
1
3
2
1
1
1
6
1
1
2
1
2
1
1
3
3
2
2
4
1
3
5
4
5
1
1
2
1
1
1
5
1
3
1
5
2
4
4
5
1
1
2
2
3
3
2
1
2
1
1
5
2
1
1
1
2
3
1
1
1
4
1
1
2
2
5
1
1
1
1
1
2
1
2
1
2
2
2
1
2
1
2
1
1
1
1
1
1
1
1
1
2
4
5
1
1
6
3
1
6
5
1
1
1
2
2
3
2
1
1
1
1
1
1
2
1
2
2
2
1
1
3
1
6
4
2
3
2
1
3
3
4
1
5
3
2
1
1
1
2
2
2
2
1
1
1
1
1
2
2
3
1
4
1
3
1
3
1
10
1
1
1
1
2
2
4
1
1
1
5
1
2
2
1
2
1
2
1
1
4
3
1
1
2
5
1
1
1
1
5
2
3
3
1
1
1
3
1
1
1
2
1
1
2
1
2
3
1
1
1
1
1
1
2
2
1
1
3
2
2
1
1
1
1
1
3
3
2
1
1
1
2
2
1
1
3
2
1
3
1
1
3
1
1
1
1
2
1
4
1
1
2
3
3
2
2
3
3
1
2
2
1
2
2
2
2
2
1
2
1
3
3
1
3
4
3
3
1
2
3
4
1
1
1
1
1
2
3
4
3
2
2
2
2
2
1
1
2
2
1
1
1
2
1
2
2
2
3
1
1
3
2
1
1
1
2
1
1
1
1
1
1
1
1
1
1
2
2
2
3
1
1
1
1
1
2
2
1
2
2
1
2
1
2
3
1
1
1
1
1
1
1
1
3
1
2
1
8
1
1
3
1
2
4
2
7
3
4
2
3
2
1
2
2
1
2
2
4
1
4
5
1
2
1
2
3
2
1
1
1
1
1
1
2
1
3
1
1
1
3
1
1
3
2
1
1
6
1
2
3
2
4
2
6
1
1
2
2
2
1
1
1
1
2
1
1
1
1
3
2
1
2
2
1
3
1
3
1
3
1
1
2
2
1
2
1
2
1
2
2
3
1
4
1
3
2
2
2
2
2
1
1
2
5
1
1
1
1
1
1
2
2
2
4
3
5
2
1
2
1
1
2
6
1
1
1
2
2
1
2
2
5
3
1
5
1
3
2
2
3
1
2
4
4
1
4
1
2
1
2
2
1
2
2
2
2
7
6
8
4
1
1
3
5
1
7
1
3
3
3
1
1
3
2
3
1
1
1
1
1
1
1
1
1
1
1
2
1
2
2
2
2
2
3
2
3
2
1
1
1
1
3
1
5
3
2
1
2
1
3
1
1
1
1
1
1
1
3
1
2
3
1
2
1
3
1
1
1
2
1
1
1
2
4
2
4
1
3
3
2
1
7
5
1
2
1
1
1
5
2
1
3
1
1
2
4
1
3
2
1
6
5
4
1
1
2
2
2
2
2
4
2
2
1
2
1
1
1
2
1
2
7
1
2
1
2
1
1
1
1
6
1
1
5
6
2
2
1
1
1
1
1
1
1
2
1
1
1
1
1
1
1
1
1
1
2
2
8
1
1
1
1
2
1
2
2
1
1
2
2
2
2
1
2
2
1
2
2
2
2
1
2
1
2
2
4
1
2
1
2
1
1
1
3
1
3
1
2
1
2
2
2
1
1
1
1
1
2
1
1
1
1
2
4
4
3
1
3
3
3
1
4
4
1
1
3
1
1
2
3
1
1
1
1
3
3
2
1
1
1
1
1
2
3
1
1
1
2
7
2
3
3
1
1
1
1
1
1
1
1
1
1
1
1
1
5
1
4
1
1
1
1
2
1
2
2
3
4
1
1
1
4
3
1
1
1
1
1
1
7
4
3
1
1
2
2
2
2
1
1
2
2
1
1
1
1
3
3
1
1
4
4
5
2
1
3
1
1
1
1
2
1
4
2
2
1
2
5
1
3
5
3
1
3
3
3
2
2
4
2
3
1
1
2
2
3
1
3
3
3
1
4
1
3
1
3
3
1
2
1
1
1
1
1
4
6
4
2
2
6
2
4
2
1
1
2
1
1
1
1
3
3
5
2
1
1
2
3
1
1
6
2
5
1
2
5
3
4
1
5
4
3
3
4
1
2
1
1
1
1
1
1
1
3
3
3
3
2
1
1
1
2
1
2
2
1
1
1
1
1
1
1
3
2
2
1
5
1
1
1
1
2
2
1
1
3
1
2
1
4
4
3
5
4
4
5
1
1
3
2
4
6
1
4
1
5
4
4
1
1
1
1
2
1
1
1
1
3
1
3
1
1
1
1
2
3
1
1
5
2
1
6
1
3
3
1
1
1
2
2
4
1
2
2
2
2
1
1
1
1
1
2
2
1
4
2
1
3
3
2
1
1
2
1
3
1
2
1
4
4
2
2
2
3
5
6
4
2
1
3
1
1
1
1
2
2
1
1
1
1
2
1
1
3
1
1
1
1
1
1
1
1
1
1
1
3
1
1
1
1
1
2
1
1
3
5
1
4
3
1
1
3
1
2
1
6
3
2
1
1
2
1
3
1
2
1
2
1
1
2
2
1
2
2
1
1
1
1
1
6
1
1
2
1
1
4
5
4
3
4
1
3
1
2
1
2
2
1
2
2
5
1
1
7
3
2
6
5
1
1
1
1
1
4
1
3
1
1
5
7
2
3
4
2
1
3
2
2
2
3
2
1
1
3
3
3
2
1
1
1
1
1
2
3
1
1
5
1
1
1
3
3
1
4
2
2
2
1
1
3
1
1
4
1
1
1
2
2
1
2
1
1
1
1
1
1
1
1
2
1
1
1
3
5
1
3
3
2
1
1
1
1
2
3
1
2
4
5
1
1
1
1
1
2
2
5
2
1
2
5
2
3
5
7
6
5
2
1
1
1
3
3
2
1
1
3
3
4
1
2
3
1
2
1
2
1
2
1
1
1
3
2
1
1
1
5
2
2
1
1
3
1
1
1
3
1
1
3
1
1
1
1
1
2
1
1
3
6
6
4
1
1
1
1
2
4
2
1
2
3
2
1
3
3
2
1
2
1
2
1
1
2
1
1
1
1
1
2
1
1
1
4
5
3
1
1
3
2
1
1
1
3
3
1
2
1
1
1
1
1
1
2
2
1
1
1
2
2
2
1
1
2
1
2
2
2
4
1
1
5
5
4
6
1
2
1
4
1
4
1
1
3
1
1
1
4
1
1
1
1
4
1
1
2
1
1
4
3
2
2
2
1
1
1
1
1
1
2
1
3
1
3
2
1
3
1
5
1
3
2
2
3
1
3
3
1
1
2
2
2
1
2
2
1
1
1
2
1
1
1
2
5
1
1
1
2
1
3
1
1
1
2
1
2
1
2
4
4
1
1
4
3
1
2
3
1
4
1
4
1
3
1
1
1
4
3
4
1
1
1
1
1
1
1
1
2
1
2
1
2
3
3
1
2
2
1
3
2
1
1
1
2
1
1
1
1
1
2
2
2
2
2
2
1
1
2
1
1
2
1
4
4
1
1
1
1
1
1
1
1
1
1
1
4
1
1
1
1
1
1
1
2
1
1
1
1
1
1
1
1
1
2
2
1
2
1
2
1
1
1
2
2
1
1
1
1
1
2
2
2
2
1
1
1
2
3
2
2
3
1
3
1
2
2
1
2
2
1
1
1
1
4
2
1
2
1
1
1
4
1
1
1
1
1
1
7
4
1
9
8
4
1
1
3
5
2
1
1
1
1
4
1
3
4
5
2
3
1
4
1
1
3
1
2
2
2
1
2
2
3
1
1
2
1
2
2
2
2
1
2
1
1
1
1
1
1
4
2
1
1
1
1
1
2
1
2
2
1
1
1
4
1
3
1
2
2
4
1
2
2
1
4
1
1
1
2
2
1
1
3
3
2
1
1
1
3
2
4
1
3
1
5
2
4
1
1
2
2
2
4
2
1
1
1
1
1
2
1
1
4
1
2
1
1
1
2
1
1
2
3
1
1
1
1
2
1
1
2
1
1
1
1
4
2
1
1
1
3
1
1
1
1
5
4
3
3
1
3
3
3
2
2
4
1
1
2
2
5
4
4
1
2
1
2
2
2
1
1
4
3
2
4
2
2
3
4
3
2
6
5
5
3
1
1
4
2
1
2
1
1
2
1
1
4
2
1
2
2
2
2
1
1
1
1
1
1
1
2
1
1
2
4
4
2
4
2
1
1
1
2
2
3
1
4
5
4
2
2
4
1
1
1
1
4
1
3
2
4
3
1
1
2
2
1
1
3
5
1
3
1
1
1
2
1
1
1
1
2
1
2
2
2
2
2
2
2
1
2
1
4
3
1
1
3
7
1
2
1
1
1
1
3
3
2
1
4
1
1
2
4
2
4
1
2
1
3
4
2
1
2
2
1
1
2
1
2
2
4
1
1
2
2
2
2
2
2
1
1
1
3
1
1
2
1
1
1
3
2
5
4
1
3
1
3
3
1
5
1
5
5
5
4
5
5
1
1
2
1
2
1
8
4
5
2
5
1
1
1
6
2
1
1
1
4
1
2
2
1
1
4
1
2
2
2
4
2
1
1
2
1
2
1
1
1
1
3
3
1
1
1
1
1
1
1
1
1
1
1
3
1
1
1
3
2
1
3
1
1
1
1
1
1
3
1
1
1
2
3
3
1
1
2
3
2
1
1
1
2
1
1
2
1
1
1
1
1
1
1
4
1
1
2
1
1
1
4
1
2
2
2
6
5
2
2
2
4
1
1
2
3
1
1
1
1
1
1
2
1
2
2
2
1
2
1
1
1
1
3
2
1
3
1
1
1
3
1
3
3
3
2
1
4
1
1
3
1
1
1
1
2
1
1
1
1
1
1
1
1
1
5
1
1
1
5
1
1
2
1
3
2
1
1
1
3
1
1
1
2
1
3
2
3
1
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
1
2
1
2
1
2
2
2
1
1
4
2
2
1
2
2
3
1
1
1
1
3
2
1
2
1
2
4
2
4
1
3
3
3
4
5
1
1
1
1
2
1
1
1
1
1
1
2
3
1
1
2
3
5
4
1
1
1
2
1
1
1
2
1
3
5
2
1
1
1
2
1
1
4
1
1
1
1
1
1
1
1
1
2
1
1
1
1
1
2
1
2
5
2
3
1
4
1
1
5
1
2
1
1
1
1
1
4
1
3
2
1
1
2
2
2
2
2
1
1
3
1
1
1
1
3
1
1
2
3
1
1
1
3
1
1
3
3
1
3
2
3
1
1
3
2
1
1
1
2
3
1
3
2
3
2
1
1
1
1
3
1
3
1
1
1
1
1
1
1
1
1
5
1
4
2
2
1
4
2
1
3
4
4
1
3
2
2
1
1
1
1
1
1
1
3
3
1
1
1
1
3
1
1
1
2
3
1
2
2
1
2
1
2
5
4
3
1
1
3
1
1
1
1
1
5
2
2
1
2
1
1
1
1
1
1
1
2
2
1
1
1
1
1
1
1
1
2
1
1
5
6
4
1
3
3
2
4
5
1
1
2
1
1
1
1
4
3
2
2
2
1
1
9
3
9
2
1
1
3
2
1
2
3
1
3
5
1
1
4
2
1
1
2
5
1
2
1
6
1
1
2
8
1
2
3
1
1
1
2
2
8
2
1
5
4
4
1
7
1
3
1
3
3
1
1
1
1
3
2
3
1
2
1
4
2
3
1
3
1
1
1
1
2
3
3
4
1
3
1
1
3
2
2
1
1
3
1
1
1
1
1
3
2
1
2
2
1
1
5
1
2
2
1
5
2
2
5
1
2
3
6
2
1
2
1
1
3
5
1
4
1
1
2
2
2
1
1
1
2
2
1
3
2
4
5
1
4
1
1
4
3
3
3
1
1
1
1
2
3
1
1
2
1
2
1
2
2
4
2
3
2
2
2
3
2
1
1
1
1
1
1
1
5
1
5
2
2
1
1
1
2
2
2
2
2
2
3
3
3
3
4
4
6
2
2
1
3
4
1
6
1
2
4
4
3
1
1
2
1
1
1
1
1
1
1
1
1
5
1
3
1
1
1
1
2
1
1
1
2
4
2
1
3
3
4
2
1
2
2
1
1
1
1
1
2
1
1
1
1
2
1
3
1
1
3
1
1
4
3
1
1
1
1
1
1
1
1
2
1
1
1
1
1
1
2
3
2
1
1
1
2
1
2
1
2
3
1
1
1
1
1
1
1
1
2
2
4
3
1
2
1
2
1
2
1
1
2
4
3
1
2
1
4
1
2
2
3
1
1
3
1
4
4
1
1
3
1
1
5
3
5
7
1
1
1
5
2
2
1
1
1
2
1
1
1
2
1
1
1
3
3
2
2
3
2
2
1
2
3
3
3
2
3
1
1
3
1
5
2
7
5
1
1
1
1
2
2
2
3
3
1
2
3
3
4
1
1
1
2
2
3
2
2
1
1
1
1
1
1
3
1
1
3
1
3
1
1
1
5
2
1
1
1
1
2
1
1
4
3
4
2
1
5
3
2
5
1
1
2
4
4
3
2
1
3
1
2
1
1
2
3
1
1
1
1
2
1
1
2
3
3
3
1
3
1
1
1
1
1
2
2
1
2
2
2
1
1
3
1
5
1
3
1
3
2
2
5
2
1
2
8
3
1
1
3
3
2
2
1
2
2
2
2
6
1
2
6
1
1
2
1
1
1
2
2
2
2
1
1
4
1
1
4
2
1
2
3
1
1
2
1
3
2
4
1
4
1
3
3
2
2
1
1
1
1
1
1
3
1
3
2
4
2
4
4
1
1
1
2
1
1
1
2
2
2
1
4
4
1
1
2
4
1
1
1
1
3
2
5
1
2
1
1
4
1
3
3
5
1
3
1
2
5
1
2
1
2
2
1
2
1
1
3
3
1
2
1
1
2
1
2
1
2
2
1
2
2
4
2
3
2
2
1
2
1
1
1
1
1
1
2
3
1
1
1
1
4
3
2
4
5
1
2
2
1
1
1
2
1
1
1
1
1
1
1
1
1
1
5
2
3
2
4
1
3
2
4
1
5
1
4
1
2
1
2
2
1
1
1
2
3
1
1
4
2
1
2
3
2
1
1
4
1
1
2
1
1
1
3
2
5
3
2
1
1
2
1
1
1
1
2
1
1
3
1
1
2
1
3
1
3
1
4
2
1
5
1
2
1
3
2
3
2
2
2
2
2
1
1
1
2
1
1
1
3
1
3
2
1
1
1
1
1
1
2
1
1
3
2
1
1
3
1
1
2
3
2
4
1
1
3
2
1
2
1
1
2
2
1
3
2
2
1
2
2
1
3
1
4
3
2
2
3
1
1
2
1
1
2
1
3
1
2
1
1
3
1
2
1
1
2
1
1
1
1
1
1
1
3
1
4
1
3
1
1
2
1
3
1
1
1
5
2
5
1
8
1
3
7
6
2
6
2
1
3
2
3
3
2
1
1
2
1
1
1
1
1
2
4
2
1
2
2
4
1
1
4
2
1
1
2
2
2
3
2
4
7
3
2
6
1
5
2
4
5
2
3
1
3
6
5
2
2
1
1
2
1
1
1
2
1
1
1
2
3
4
2
1
1
1
1
1
1
1
1
3
1
3
3
2
1
4
2
1
3
3
1
1
1
2
1
2
1
1
1
1
4
4
2
5
5
3
1
1
1
1
1
1
4
1
3
8
1
1
2
1
1
1
1
1
1
2
1
1
6
1
2
1
5
2
3
1
2
1
1
2
2
1
1
2
1
2
2
4
3
1
2
3
2
2
3
1
7
1
2
1
1
2
1
1
1
1
2
3
1
3
2
1
3
5
3
5
3
4
1
2
1
1
1
1
1
1
2
1
4
2
4
1
3
2
6
1
1
2
3
1
1
1
2
3
3
4
5
3
1
1
2
3
2
1
1
1
3
2
2
1
1
2
2
1
2
2
4
2
1
1
1
4
3
5
3
4
1
2
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
5
4
1
4
1
1
3
1
1
1
1
3
1
1
1
1
1
1
3
1
3
1
1
2
1
5
4
1
1
1
1
3
3
1
2
4
2
4
1
3
2
3
3
1
1
2
1
2
1
4
2
1
1
2
1
2
3
3
6
5
2
2
5
1
1
4
2
1
1
1
2
2
2
2
1
1
3
5
3
3
1
1
3
3
2
1
3
1
1
1
5
4
3
1
2
1
1
3
4
2
1
1
1
2
3
2
1
2
1
1
3
2
3
1
1
2
3
1
3
3
1
2
1
2
2
2
2
1
4
3
5
1
1
4
1
1
1
2
2
4
4
1
3
2
2
3
1
1
1
2
5
9
1
1
1
1
1
2
1
4
3
3
1
2
5
4
1
9
3
2
4
1
3
4
5
4
2
1
2
3
3
3
1
1
1
3
2
3
2
1
2
1
1
1
1
1
1
1
3
1
5
1
1
3
2
1
3
3
1
1
1
2
1
1
1
2
1
1
1
1
1
2
1
1
1
1
2
1
4
1
1
3
3
3
2
3
2
1
1
1
2
1
5
4
2
3
4
9
4
3
1
1
1
1
2
1
1
1
1
1
1
1
1
3
1
1
1
3
1
4
1
3
1
3
5
6
1
2
3
2
1
1
5
6
1
1
1
1
1
1
2
1
3
1
2
3
3
1
2
1
1
3
2
1
3
4
1
5
4
2
2
1
2
1
1
2
1
2
4
1
1
1
1
1
1
4
2
4
2
2
1
1
1
1
1
3
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
1
1
3
2
1
3
1
1
3
1
3
2
3
1
1
1
1
1
1
1
3
1
1
1
1
2
3
2
2
2
4
1
3
1
1
2
4
1
4
4
1
2
1
1
2
1
2
2
2
1
2
3
2
3
3
3
2
3
1
4
1
1
1
1
1
1
3
1
1
1
3
1
1
3
1
1
1
2
1
3
4
1
2
1
4
3
3
4
2
4
4
3
3
3
1
1
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
4
1
3
5
2
1
1
1
3
2
1
1
1
2
1
1
3
5
1
2
1
3
1
2
1
1
2
6
1
3
1
2
1
3
1
1
1
1
1
1
2
1
1
2
3
2
4
3
4
4
3
4
1
2
1
2
1
2
2
3
1
1
2
6
2
5
1
4
1
1
1
3
3
2
1
3
2
1
1
3
1
1
1
1
1
1
2
1
1
1
1
1
1
1
3
4
1
1
4
2
3
4
1
1
1
1
1
1
1
3
1
1
1
1
1
4
1
1
1
1
1
1
1
1
2
1
1
3
1
1
1
1
1
1
1
1
2
1
1
4
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
3
2
2
1
2
2
1
1
1
1
1
6
6
3
1
1
4
3
4
1
3
1
1
1
2
1
1
1
3
1
2
4
2
3
1
1
2
1
1
2
1
1
1
2
2
1
2
2
2
1
1
5
3
1
1
1
2
1
1
4
5
1
3
2
1
3
4
3
4
1
4
1
2
2
2
2
1
1
2
1
1
1
3
5
1
5
4
1
2
3
5
2
2
1
3
4
3
1
6
1
1
2
1
1
1
5
2
2
4
3
2
2
1
2
2
1
2
1
2
1
2
3
1
1
1
1
2
1
3
1
1
2
1
1
2
1
2
2
1
1
1
1
1
2
2
1
2
1
2
3
2
5
2
1
2
3
2
1
1
1
2
4
3
1
1
2
4
1
1
5
3
6
3
4
4
2
3
4
4
3
2
1
3
2
2
2
5
3
3
5
1
2
1
2
3
1
3
3
3
3
1
2
2
2
1
2
1
1
1
1
1
1
1
2
7
3
1
2
2
1
2
4
5
3
4
1
1
1
1
1
2
1
1
1
1
1
1
1
1
1
2
3
2
7
4
1
3
1
1
1
3
1
3
2
1
1
3
3
1
1
1
1
1
1
1
1
1
1
2
1
3
1
1
1
1
1
1
1
1
1
6
1
1
1
3
1
2
6
1
3
1
2
3
5
2
2
2
1
1
3
2
2
2
2
2
4
2
2
2
1
1
1
1
3
1
1
1
2
2
2
1
1
1
1
1
5
3
2
2
2
1
4
1
2
1
3
1
3
1
1
1
1
2
1
1
2
2
2
1
1
2
3
2
1
1
1
1
2
2
1
3
2
2
1
1
2
1
1
1
1
4
4
5
3
1
3
2
1
2
1
1
1
2
1
3
1
1
2
1
2
1
1
1
3
1
2
2
1
2
1
1
1
1
1
1
3
1
2
1
3
1
1
2
1
2
1
1
3
5
3
1
1
2
1
4
1
1
3
1
1
6
1
1
1
2
3
2
1
2
1
1
1
2
2
2
2
3
2
2
1
7
1
1
1
1
2
3
3
2
1
1
1
2
3
1
11
3
3
2
3
1
2
1
2
1
1
1
2
1
4
1
3
2
1
1
2
3
2
1
1
2
2
2
6
5
5
1
1
2
2
3
3
1
1
1
1
1
3
3
1
1
1
2
1
6
4
2
1
10
6
6
5
5
4
3
1
1
1
2
3
2
1
1
1
1
2
2
1
1
1
1
2
2
1
2
2
2
2
2
2
2
2
3
1
2
3
2
2
1
2
1
1
1
1
3
1
1
1
1
1
1
1
2
1
5
2
3
1
1
1
1
1
1
1
1
1
2
1
3
1
2
1
2
2
3
1
1
1
1
1
1
1
1
2
2
2
1
1
1
2
1
1
1
2
2
2
2
1
2
2
2
2
1
3
1
1
1
1
1
3
1
1
1
6
1
2
1
2
1
2
2
1
1
3
2
1
1
2
1
3
2
1
2
1
2
2
1
1
1
1
1
1
4
4
2
3
2
3
1
1
3
3
1
1
2
1
3
4
5
2
1
1
2
1
1
1
2
2
4
3
4
2
3
5
3
1
4
4
2
1
1
1
5
2
1
3
4
1
1
1
1
1
2
2
2
1
2
4
2
2
1
3
1
1
1
3
1
2
1
1
1
1
1
1
1
2
2
1
1
1
1
3
1
1
3
1
1
1
1
1
4
2
1
1
1
2
1
1
1
2
2
1
2
2
4
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
3
1
1
1
1
2
1
1
1
1
1
4
2
2
4
4
1
1
1
2
2
2
1
3
1
4
1
2
3
1
4
1
2
1
2
3
1
1
2
2
1
1
1
1
1
3
5
4
3
2
3
4
1
3
4
1
1
1
1
3
4
2
1
1
1
1
1
1
3
2
1
2
3
1
3
1
1
2
1
1
3
1
3
1
1
4
2
1
2
2
1
2
3
2
3
2
2
1
1
2
2
1
1
2
1
1
1
3
1
3
1
1
1
1
9
4
1
3
7
6
3
1
1
1
1
1
2
1
2
5
1
1
1
3
3
1
2
1
3
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
3
1
1
2
3
1
1
2
2
1
2
2
1
1
1
1
1
1
2
2
1
3
3
1
1
1
2
2
3
1
2
1
1
1
1
1
1
1
3
3
1
2
1
1
3
3
5
3
1
1
1
1
1
2
1
2
1
3
2
2
2
1
1
1
1
1
1
1
3
4
2
1
3
2
1
3
1
4
2
1
4
2
1
4
2
2
1
4
6
2
4
4
1
1
4
2
3
8
4
2
3
1
6
2
1
2
2
1
3
1
4
2
3
2
2
2
4
1
1
1
2
1
6
4
1
2
1
1
1
2
5
6
5
5
1
4
4
1
5
4
2
4
4
1
2
3
4
3
3
5
2
2
3
1
2
1
2
2
1
3
3
1
1
4
1
3
1
1
3
3
3
1
3
6
1
6
2
2
3
2
3
5
4
3
2
1
2
1
3
1
1
1
1
3
1
3
3
1
1
1
2
2
1
5
2
1
8
1
3
2
3
5
3
2
2
1
2
1
5
3
1
2
4
2
1
5
3
5
1
3
1
2
1
1
2
2
1
1
3
3
1
2
1
6
4
4
2
2
4
5
2
3
2
1
1
1
1
1
6
3
2
3
3
4
1
4
4
2
2
5
5
7
1
1
2
1
1
3
1
1
1
1
2
3
1
3
2
2
1
3
5
1
4
2
1
1
1
1
2
2
1
1
3
1
1
2
2
1
4
1
1
3
5
3
2
1
1
2
2
2
2
2
1
2
5
2
2
1
1
3
1
1
3
1
1
4
3
4
4
5
5
3
1
3
4
2
3
3
4
1
2
1
1
1
1
1
1
2
5
1
1
4
1
1
2
1
3
5
1
2
2
3
2
3
3
2
4
2
4
1
1
1
1
1
1
1
2
2
1
1
1
1
1
4
1
1
1
1
1
1
1
1
2
1
1
1
1
1
1
3
2
1
3
5
2
1
1
1
1
1
1
1
2
2
1
1
1
1
1
1
1
1
1
2
1
1
10
2
1
7
2
5
2
1
2
1
1
4
4
1
1
5
1
1
3
3
2
3
4
3
1
1
5
1
1
1
3
1
1
5
1
1
1
3
5
1
2
4
2
1
1
1
1
1
1
1
4
1
2
7
4
1
1
3
5
4
4
1
1
1
1
2
2
3
1
2
3
1
4
2
1
1
1
1
1
2
1
1
1
1
1
1
1
1
1
1
1
3
2
3
3
1
2
3
1
2
1
2
1
2
1
3
1
2
3
1
3
2
3
4
1
5
3
2
4
1
3
1
1
1
1
1
2
4
1
1
1
1
1
2
2
4
3
1
3
1
6
3
1
1
1
1
1
1
1
1
2
2
2
2
2
2
1
3
3
3
1
2
3
5
1
1
2
2
2
1
1
1
3
4
3
1
2
4
2
3
2
5
3
5
2
1
3
1
1
1
1
2
1
1
1
1
1
1
2
3
1
1
1
2
1
2
1
1
1
1
3
7
2
3
1
3
1
1
4
4
1
1
1
4
1
1
2
1
1
1
2
2
1
1
2
5
4
2
3
1
2
1
2
1
3
1
1
2
2
1
1
2
1
2
1
1
2
3
3
3
1
2
7
1
6
2
2
3
1
1
1
1
1
1
1
2
1
1
1
1
2
2
1
3
1
2
3
1
3
4
6
1
1
2
2
1
5
4
2
5
1
7
6
1
1
3
2
2
1
1
1
2
2
1
1
2
1
2
2
2
1
4
4
3
1
1
1
1
2
1
2
1
1
2
1
4
1
1
1
1
4
2
3
1
1
1
2
4
2
2
2
1
1
1
1
1
3
1
1
4
2
4
2
4
2
5
2
2
1
2
1
2
3
3
1
1
1
3
4
1
1
4
3
2
4
2
3
1
1
2
3
1
2
2
1
4
1
1
1
1
2
1
1
1
2
4
3
1
4
1
5
2
3
2
2
1
1
2
1
1
1
2
2
2
4
2
2
1
1
2
1
2
2
1
1
1
1
2
1
1
1
2
2
2
1
2
1
4
2
2
3
1
1
1
1
1
1
1
2
3
1
2
1
1
1
2
2
1
3
2
3
4
2
3
4
2
1
1
1
2
3
2
1
2
1
1
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
2
4
2
4
3
1
1
2
2
1
2
1
1
2
1
3
3
2
1
1
2
1
1
2
2
2
1
1
1
2
2
1
2
3
2
2
1
6
1
1
1
1
1
1
3
1
1
1
8
1
5
1
1
2
2
3
4
1
1
2
1
1
3
1
4
3
3
6
1
3
2
2
4
2
3
1
3
1
2
3
4
1
1
1
1
3
3
3
3
1
3
2
2
2
1
2
3
2
3
1
1
2
2
1
1
1
2
5
5
2
3
2
3
1
1
2
1
1
2
2
2
1
2
2
1
6
2
1
1
6
1
1
4
4
4
1
2
1
3
2
2
2
5
3
1
1
1
1
1
1
1
1
1
3
1
2
2
3
1
1
1
2
4
1
2
1
2
1
3
1
1
1
2
1
1
4
3
1
2
1
1
2
1
2
1
3
2
2
1
2
2
1
1
2
1
2
1
3
1
1
9
4
2
3
2
3
2
2
1
2
1
2
2
3
1
2
1
3
1
1
2
1
8
1
1
1
1
2
5
1
1
1
1
2
1
2
4
2
1
6
2
1
2
2
3
1
3
1
1
1
4
3
5
2
5
1
5
1
3
1
3
4
2
1
6
2
2
1
1
2
5
2
1
1
1
2
1
3
3
2
1
1
3
1
1
2
2
6
1
3
2
3
3
3
2
2
1
4
1
1
1
1
3
7
3
1
3
3
1
3
2
1
1
3
1
3
1
1
1
2
2
1
1
2
4
2
2
3
4
2
3
2
1
1
1
1
1
2
2
2
2
1
3
1
4
5
1
7
6
3
3
3
2
2
3
2
2
2
1
4
1
1
1
3
1
1
4
1
1
1
1
1
1
1
1
3
1
1
2
1
2
2
1
2
1
2
2
2
3
1
4
2
3
1
6
9
4
1
1
1
1
1
1
1
2
1
1
1
2
1
3
1
1
1
1
3
1
2
4
7
6
5
4
5
5
7
1
2
2
5
1
1
1
2
2
1
1
1
1
1
1
2
3
1
1
1
1
3
1
1
1
1
1
1
3
3
3
3
3
1
2
2
1
3
2
1
1
2
1
2
1
1
3
1
1
2
2
1
1
1
1
2
1
1
1
5
1
1
2
7
4
3
3
1
4
1
1
2
2
1
3
3
4
2
2
2
2
1
1
2
1
1
1
2
1
2
2
1
1
2
2
1
1
1
1
2
4
2
1
2
1
2
3
1
1
1
3
2
1
1
2
1
1
1
1
2
2
1
1
1
1
2
5
4
1
2
2
5
2
4
1
1
1
1
3
1
1
1
1
1
1
3
3
1
2
1
1
1
1
3
2
1
1
1
1
1
1
1
2
5
4
1
4
2
2
1
1
2
1
2
1
1
1
1
1
1
2
2
4
2
2
2
3
1
2
3
1
2
3
4
1
2
1
1
2
1
2
1
2
2
1
2
2
2
1
1
1
1
2
2
1
2
1
1
1
4
1
1
1
1
2
3
2
2
1
1
1
3
1
2
2
2
3
1
1
2
1
1
1
3
3
2
1
1
2
1
4
1
3
3
4
2
1
3
1
1
1
2
1
5
3
1
1
1
1
1
1
3
5
2
2
2
1
1
1
3
3
2
1
4
1
1
1
1
2
1
1
1
1
1
1
5
3
2
1
1
1
1
1
2
3
3
1
3
1
1
3
5
3
5
3
1
2
2
3
1
2
1
4
1
2
1
1
2
4
3
2
2
2
1
1
2
1
4
3
3
1
2
1
1
1
1
1
4
1
1
1
1
1
2
1
4
1
1
1
1
1
1
1
2
4
2
2
3
1
3
2
2
7
1
2
1
1
1
1
1
1
3
4
1
1
4
1
1
2
1
3
1
3
1
1
6
2
1
1
1
1
2
3
2
7
1
1
2
1
4
4
1
3
1
1
2
1
2
5
2
1
2
3
3
3
3
1
1
3
3
2
1
3
2
2
2
2
1
4
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
3
2
1
2
2
3
1
3
2
2
3
2
3
3
1
1
1
2
1
1
1
1
2
5
1
3
3
1
1
3
1
4
2
5
4
1
1
1
3
7
1
1
1
1
1
2
1
3
3
4
1
2
1
1
1
1
1
1
2
2
2
1
1
1
2
3
4
4
1
1
5
3
1
1
4
3
1
1
1
1
1
2
2
1
2
1
2
2
2
2
1
1
1
2
2
2
2
2
1
1
1
2
1
3
2
3
1
2
1
2
2
1
1
1
4
4
5
2
1
2
5
2
4
2
3
1
1
1
3
1
2
3
3
1
1
1
1
1
1
1
2
1
2
2
1
2
1
1
3
1
2
3
1
1
2
5
5
1
3
2
3
1
1
3
3
1
1
7
1
4
2
2
4
4
3
2
2
4
2
2
1
1
4
4
1
1
2
1
1
2
1
2
1
1
1
3
2
1
2
2
1
1
1
2
3
3
1
1
2
2
5
1
4
2
2
3
2
1
1
1
2
2
3
4
2
1
4
1
1
2
2
2
3
2
3
4
2
2
1
1
3
3
4
1
2
2
1
6
1
4
1
1
1
1
1
1
5
5
2
1
1
1
1
1
1
1
1
3
1
1
2
2
3
3
1
4
2
1
3
2
1
2
3
4
4
4
3
1
4
1
5
4
1
3
1
4
1
9
4
3
6
1
3
1
1
2
2
1
2
2
3
3
2
1
3
2
6
3
1
4
2
4
1
1
2
3
1
3
1
2
1
1
2
1
1
3
1
1
1
1
1
3
4
1
7
5
1
1
1
1
1
1
1
2
4
3
2
1
3
3
2
2
1
2
3
2
2
3
2
2
1
2
1
4
1
2
4
1
2
2
4
1
2
2
6
2
2
2
2
1
2
5
2
3
2
1
3
1
1
2
2
2
1
2
2
4
3
2
1
1
4
1
1
2
1
1
4
1
1
1
2
2
2
1
1
4
4
3
2
3
1
5
3
5
1
1
5
5
1
1
1
4
4
4
1
1
1
1
1
1
1
2
3
1
3
1
3
1
2
1
1
2
1
1
1
2
2
1
1
3
1
2
1
1
1
3
1
1
1
1
1
1
2
1
1
1
1
1
3
1
3
1
5
4
3
5
6
5
2
2
1
1
1
1
2
1
2
1
1
3
2
1
2
2
6
2
4
3
1
1
1
1
2
2
1
2
2
1
1
1
1
3
3
1
1
2
1
1
1
2
1
3
1
5
1
1
1
1
4
2
3
4
5
1
1
5
2
2
4
6
2
4
2
2
2
1
2
1
1
2
1
1
1
1
1
1
3
1
2
1
2
2
3
3
1
1
1
1
1
2
1
1
1
4
1
2
1
3
3
1
1
1
1
1
1
1
4
1
1
1
1
1
6
2
4
2
2
1
3
1
2
3
1
1
1
1
1
1
3
1
1
1
1
1
1
1
1
2
1
1
1
1
4
4
6
2
2
1
2
2
4
1
1
4
3
1
1
1
1
2
2
2
2
1
1
2
3
3
1
1
2
1
2
1
2
2
3
1
2
2
2
1
2
2
4
1
1
1
1
3
1
3
1
1
3
1
4
1
5
1
1
1
1
1
1
1
2
2
1
1
1
1
1
3
5
1
1
2
3
5
2
3
1
3
7
7
3
1
2
2
2
1
2
5
1
3
1
2
4
3
3
1
1
2
1
2
2
1
2
2
1
1
1
1
1
2
1
3
2
1
4
3
4
6
8
5
2
1
4
1
3
2
2
2
5
2
1
1
1
7
3
2
3
3
2
1
3
3
4
5
1
2
1
2
1
1
2
1
2
2
1
3
1
2
1
1
1
3
1
1
1
3
1
3
1
2
3
6
3
1
8
3
2
1
5
1
1
2
3
2
1
1
1
1
1
5
3
6
1
1
5
1
1
2
1
2
2
2
1
1
1
1
1
1
1
3
2
2
2
2
2
1
2
4
1
2
4
4
7
1
1
1
1
3
3
1
3
3
3
1
3
1
1
3
4
7
5
1
1
1
1
5
1
1
2
3
1
2
4
3
6
2
1
1
1
1
1
5
4
1
2
1
1
2
4
1
1
1
1
3
1
2
7
5
1
1
1
2
4
6
4
1
1
1
2
1
1
1
6
1
3
1
2
2
2
1
1
3
2
2
1
1
5
2
1
1
2
3
2
1
1
1
1
1
3
1
1
1
1
2
1
1
3
3
1
6
2
1
3
4
4
2
1
2
4
4
3
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
3
3
1
2
1
1
3
2
1
1
2
3
1
5
5
4
2
3
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
3
2
1
3
1
1
1
1
1
2
1
1
3
1
2
2
3
2
2
2
2
3
1
1
3
2
5
2
2
1
2
4
2
3
2
1
2
2
1
1
1
2
1
1
1
2
2
4
1
1
1
1
6
1
2
1
2
2
4
1
1
1
1
1
1
1
1
1
1
4
1
3
1
7
3
1
5
6
1
1
1
2
1
3
1
3
2
3
1
1
2
1
2
3
1
1
2
1
7
1
4
4
5
1
4
6
6
5
3
5
4
2
4
5
2
2
2
4
2
2
5
1
2
2
1
1
3
1
1
1
3
1
3
1
3
3
2
2
1
2
1
3
1
1
4
1
1
1
5
1
1
1
1
1
2
3
4
3
2
4
4
3
7
7
2
1
1
1
4
6
1
4
3
5
1
2
2
2
5
2
2
2
1
2
1
2
2
3
2
5
5
1
3
4
4
1
4
5
4
3
1
1
1
2
1
3
6
4
1
1
1
1
1
1
1
2
1
1
7
1
2
2
1
2
3
2
3
2
1
1
2
1
3
1
1
5
4
1
2
2
1
1
1
1
1
4
1
1
1
1
2
3
1
2
1
2
1
1
2
1
2
5
2
1
7
2
1
3
1
4
1
1
1
2
1
1
4
3
1
1
3
3
1
1
1
1
1
1
1
1
1
1
1
10
2
4
1
2
1
2
2
3
1
1
1
1
2
5
1
1
1
3
1
4
3
1
1
2
1
1
1
5
2
1
6
1
2
2
3
2
1
2
3
4
1
4
1
1
2
1
2
1
1
1
1
6
1
3
3
1
2
2
2
1
3
3
2
1
2
1
2
6
3
3
2
2
2
1
6
3
2
1
3
1
1
1
1
1
2
1
1
3
1
1
2
2
1
1
4
5
1
4
1
2
3
1
2
2
1
8
2
1
1
1
1
1
1
4
1
1
2
1
1
5
1
1
1
2
2
1
2
1
4
1
2
1
1
1
1
1
1
1
5
1
1
1
1
1
1
1
2
1
3
2
1
1
1
1
2
1
1
2
1
1
8
2
1
1
2
3
1
3
1
3
2
4
1
1
2
2
2
1
3
1
2
3
5
1
1
1
1
2
2
2
2
1
1
1
1
3
1
1
1
1
1
2
1
1
3
1
2
2
2
1
1
1
1
1
3
2
1
1
1
1
1
1
1
1
1
1
1
2
1
1
1
1
2
2
1
3
3
2
3
1
2
4
1
2
2
2
2
1
2
1
1
1
1
1
2
3
1
1
2
3
1
1
1
2
3
2
1
2
2
2
1
1
1
1
1
1
2
2
1
1
2
1
1
1
3
1
2
1
3
1
1
2
2
2
1
2
2
1
2
2
1
1
1
1
1
3
4
2
5
1
4
1
1
1
3
1
3
1
1
1
1
1
1
2
2
2
1
4
5
1
3
3
3
1
2
1
1
3
1
4
4
2
2
4
1
1
1
1
1
1
2
2
3
4
1
7
1
5
4
1
1
3
1
1
1
5
2
1
3
1
1
1
1
3
2
2
1
1
2
1
1
1
1
1
1
2
2
2
2
3
1
1
3
5
1
1
1
1
1
2
2
1
1
1
1
2
1
2
1
4
1
1
3
6
6
1
1
1
1
1
1
2
3
3
2
1
1
2
1
1
2
1
1
1
1
1
1
1
1
1
1
3
1
1
3
2
6
5
3
4
1
2
2
1
3
1
2
1
1
3
3
3
1
2
1
3
1
1
1
1
1
1
4
1
1
5
3
1
1
3
1
1
1
1
2
2
1
1
1
2
1
2
2
2
2
2
2
1
2
2
1
1
1
1
2
3
2
3
2
2
1
1
2
1
2
1
4
1
1
4
3
2
1
1
1
2
1
1
1
1
7
3
1
1
2
3
1
1
1
1
1
1
1
2
5
2
2
6
3
1
2
1
1
1
1
1
1
4
1
1
1
2
2
2
1
4
1
2
2
1
2
1
3
1
1
7
3
6
7
1
1
2
1
2
2
1
2
1
1
1
2
1
2
1
1
2
6
1
1
2
4
1
4
1
2
2
1
2
1
2
1
1
1
1
1
3
1
3
2
1
1
1
1
2
1
1
1
1
3
2
2
4
1
1
1
1
1
1
1
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
3
1
2
1
3
1
1
1
2
1
4
3
1
8
2
1
1
1
2
1
2
2
4
4
6
1
1
6
1
2
1
3
1
2
1
1
1
5
1
1
1
1
1
1
1
1
1
2
1
4
1
5
3
1
5
2
1
1
2
2
1
1
1
2
1
2
1
1
4
1
2
2
3
1
1
1
1
2
1
1
1
3
2
1
1
2
2
1
1
1
1
2
2
2
2
1
1
1
1
1
1
2
2
2
1
1
2
1
3
3
2
3
2
2
5
1
1
1
1
1
4
1
1
1
3
1
1
1
2
4
5
1
6
1
3
2
2
4
3
8
1
1
1
1
1
2
2
5
1
1
5
3
1
1
1
5
1
1
4
5
4
6
1
1
1
1
1
2
1
1
1
1
1
2
3
1
1
1
1
1
1
1
2
1
1
2
2
2
1
1
3
2
4
3
4
1
2
2
2
4
1
1
4
1
1
2
1
1
3
2
2
2
1
2
3
3
2
1
2
1
4
1
2
1
1
2
1
1
2
2
3
2
4
6
3
1
1
3
2
1
1
2
2
2
3
4
2
2
1
2
1
1
4
1
2
1
1
1
1
1
2
1
1
1
4
5
3
5
2
1
1
5
3
1
3
1
3
1
2
1
2
2
3
1
2
5
3
1
1
1
1
4
2
5
3
4
1
1
1
1
1
1
1
1
1
2
1
1
5
2
7
4
5
10
5
2
4
1
2
2
1
1
1
2
3
1
3
1
2
1
1
1
1
1
1
1
1
4
2
1
1
2
4
1
1
1
1
1
1
2
1
1
1
1
2
1
1
1
1
1
1
2
1
1
2
3
3
1
1
4
1
1
1
4
7
1
3
2
3
2
2
2
2
3
2
1
1
1
2
2
2
4
4
3
1
2
4
8
1
1
1
2
2
1
2
3
2
1
1
1
1
1
2
1
1
1
1
2
2
1
1
3
1
2
1
1
1
1
1
1
1
4
2
2
5
2
2
2
1
1
3
1
2
2
1
1
1
1
2
3
2
2
2
1
2
1
1
1
2
1
2
2
2
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
1
3
1
3
1
1
1
1
1
3
1
1
2
2
2
3
1
1
1
1
1
3
2
1
3
5
1
1
1
2
1
1
4
8
4
2
1
3
1
3
3
5
1
6
1
3
7
1
1
1
1
1
1
5
3
1
2
1
2
1
2
3
4
1
2
1
2
1
1
1
2
2
1
1
3
3
4
5
4
1
2
1
3
1
4
1
1
3
2
1
3
1
1
3
2
1
3
1
3
1
2
1
6
3
2
1
2
1
1
1
4
3
3
1
1
1
1
2
2
1
2
3
2
1
1
1
2
3
1
1
3
3
1
1
2
1
2
3
1
1
2
1
4
2
1
4
4
2
1
1
1
2
3
1
5
4
2
2
1
2
1
2
1
1
3
4
1
4
2
3
3
2
1
2
5
2
2
3
2
2
1
3
2
2
2
2
2
2
5
4
2
1
2
3
3
1
1
1
2
1
1
1
3
1
1
1
1
2
2
1
1
1
1
3
2
1
1
1
1
1
1
1
5
2
4
1
1
1
1
1
1
1
1
1
1
1
5
1
1
1
1
1
1
5
1
1
2
1
1
1
1
2
2
2
1
1
8
1
1
4
1
1
6
3
1
1
2
2
1
1
4
4
1
3
2
1
3
2
1
1
1
3
3
1
2
3
4
1
1
2
1
2
1
1
1
1
2
1
1
1
3
1
1
1
3
5
1
3
2
1
1
1
1
1
1
1
1
1
1
3
1
1
1
2
4
2
3
1
2
1
2
1
2
1
1
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
1
1
1
2
1
2
6
1
1
1
1
2
2
1
2
2
1
1
1
1
2
2
3
1
1
1
1
1
8
1
1
5
1
1
2
2
4
2
4
3
4
4
2
1
2
1
1
1
1
1
2
1
2
2
2
1
2
2
1
1
7
4
2
5
1
3
3
2
1
2
1
1
1
2
4
1
4
4
3
4
1
2
4
1
1
3
1
6
3
1
3
1
3
1
1
2
1
3
2
1
1
3
4
1
3
1
1
1
1
1
2
1
2
1
1
1
1
1
1
3
2
1
2
2
1
2
4
1
1
2
2
2
3
1
1
3
2
1
3
2
1
1
1
1
1
1
1
3
1
1
4
1
2
2
1
1
2
3
6
2
1
2
3
2
1
1
4
1
3
2
1
5
3
2
1
3
1
1
1
1
3
1
2
2
2
2
2
1
2
2
2
2
2
5
3
2
1
1
3
4
1
5
4
2
3
1
2
2
1
3
1
2
2
1
3
2
1
3
1
2
4
4
1
3
3
1
1
2
1
1
2
3
2
2
2
1
2
2
1
1
1
1
1
1
1
3
2
1
4
2
1
1
2
1
2
1
1
1
1
3
1
1
1
4
2
1
1
2
3
6
2
2
4
2
3
2
3
3
2
2
2
2
4
1
1
1
1
2
1
2
1
2
2
2
1
2
2
2
1
2
1
1
6
8
6
1
2
3
2
1
3
1
4
1
2
1
2
2
2
1
1
3
4
1
3
3
1
4
2
7
2
7
2
2
2
4
1
2
4
1
1
1
2
1
1
1
1
1
2
1
1
1
2
1
2
1
2
3
3
4
2
4
2
1
1
3
1
1
1
1
1
1
1
1
1
1
3
1
1
1
3
3
2
2
1
1
1
1
3
4
6
3
3
4
1
1
1
2
2
6
1
3
1
1
1
2
1
2
1
2
2
1
4
1
3
1
1
2
1
1
2
1
1
1
1
1
1
3
1
1
1
2
4
2
6
2
5
5
4
1
1
2
1
1
2
1
2
2
2
1
2
1
1
2
2
1
3
1
2
3
3
3
1
3
2
2
1
1
1
1
1
3
2
2
1
2
3
1
2
1
2
1
1
1
1
1
1
1
1
1
1
2
1
1
2
1
2
2
1
3
5
1
1
1
1
3
2
1
3
3
4
1
1
1
1
1
1
1
1
1
1
3
4
1
1
6
2
1
4
2
1
2
2
4
1
1
1
3
1
1
3
2
1
2
1
1
1
1
1
2
4
1
1
1
2
1
2
3
1
1
2
1
2
1
1
3
1
1
1
2
3
1
2
3
5
2
3
3
2
2
1
1
2
1
2
2
1
3
3
3
1
1
1
1
1
1
1
1
1
2
1
1
1
1
2
1
1
2
1
1
1
1
1
1
1
1
1
1
1
2
2
2
1
2
1
1
2
3
1
1
1
4
1
4
1
2
3
1
1
5
1
3
3
1
2
5
2
6
4
2
1
2
6
3
2
1
1
1
5
1
2
2
3
1
2
2
1
2
2
1
2
1
1
3
3
4
2
3
2
5
2
1
2
1
1
4
3
1
3
2
2
1
3
2
3
1
4
4
2
1
1
1
4
1
1
2
1
2
1
1
1
1
3
3
3
1
1
1
3
1
1
1
4
1
1
1
2
2
1
1
1
1
1
2
1
1
1
1
2
1
1
1
1
2
1
1
1
1
1
1
1
1
1
1
1
1
3
2
2
2
3
3
4
1
5
5
1
1
1
1
3
1
2
2
5
1
2
1
1
1
1
3
2
1
2
1
1
1
1
1
1
1
6
3
1
1
1
5
1
1
2
1
5
2
1
2
1
1
1
1
2
2
1
2
1
1
1
3
2
2
2
1
1
2
2
1
4
1
1
2
4
1
4
4
4
1
1
1
2
1
1
1
2
2
3
2
2
2
4
2
2
1
2
2
2
2
1
2
4
1
3
1
1
2
1
1
1
3
1
1
4
1
1
2
1
3
5
2
3
1
1
1
1
3
1
1
3
1
2
2
2
1
3
3
2
2
2
3
1
1
1
1
1
1
2
3
3
2
1
2
1
1
2
1
1
1
1
2
2
2
1
1
2
3
4
1
1
5
1
4
5
1
3
2
5
3
1
2
4
3
2
1
1
2
2
1
1
1
1
2
1
1
5
2
1
2
2
3
3
1
5
2
4
3
1
3
1
2
5
3
1
3
1
4
1
1
1
3
1
3
2
2
2
1
2
5
1
1
1
2
3
2
2
1
3
2
1
3
3
1
2
1
3
2
1
4
4
1
3
3
2
2
2
1
2
1
1
1
1
1
3
2
1
4
2
1
1
1
2
1
3
1
5
3
3
4
3
1
2
1
2
3
1
2
1
1
1
2
3
6
1
2
2
1
2
1
1
1
2
2
1
1
5
1
1
1
1
1
3
2
1
4
2
1
2
3
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
3
1
1
4
3
1
1
1
1
2
1
6
4
2
1
2
4
1
3
1
3
1
3
1
5
4
4
3
2
2
2
1
10
2
1
10
3
9
8
4
2
1
2
1
1
1
1
1
1
3
2
1
2
1
5
1
2
2
1
2
2
2
1
1
4
3
1
3
3
4
1
2
2
2
1
1
1
1
1
1
1
1
2
1
1
1
1
2
3
3
2
1
2
1
1
2
2
2
3
4
1
1
1
2
1
3
2
3
2
2
5
6
5
11
8
7
3
5
4
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
3
1
2
2
4
5
2
3
1
2
2
6
1
3
1
2
2
1
4
1
1
2
2
2
3
3
1
1
1
1
1
3
1
3
3
3
1
2
2
1
2
2
1
1
1
4
4
4
1
1
2
1
1
1
3
1
1
1
1
1
1
1
1
1
2
1
1
2
1
1
1
1
2
1
1
2
2
3
1
1
3
1
2
2
2
1
2
1
1
1
1
2
1
1
1
1
1
1
1
1
1
1
1
3
1
2
1
6
3
6
2
1
1
2
1
1
1
1
1
1
4
3
1
2
3
1
4
3
1
3
1
2
1
2
1
3
2
2
3
1
1
1
2
2
2
2
3
2
5
1
3
3
1
1
7
1
1
1
1
1
3
1
2
1
3
3
1
1
2
1
2
2
4
2
1
4
1
1
2
3
2
2
1
1
1
2
2
4
1
2
1
1
1
2
1
1
2
3
1
1
2
3
4
2
1
1
1
2
1
1
1
1
1
4
1
7
4
2
3
1
1
1
3
2
1
1
2
2
1
3
1
1
2
3
1
1
1
2
1
2
4
3
1
2
1
2
1
1
2
3
1
3
3
3
2
1
1
2
2
2
3
4
1
2
2
2
1
1
2
1
2
3
5
3
2
1
1
1
1
3
4
1
2
1
1
1
1
1
1
1
1
2
1
1
1
1
1
1
1
1
1
2
2
1
2
4
1
2
1
1
1
1
3
2
1
3
1
1
2
1
2
1
1
2
2
1
2
2
1
1
1
5
3
1
2
1
1
4
2
1
1
1
1
2
2
2
1
1
2
2
3
3
1
5
4
1
1
2
1
1
3
1
1
1
7
1
2
1
1
1
1
2
1
1
1
1
5
2
4
1
2
1
1
1
2
1
1
1
1
3
1
1
3
1
1
1
1
1
1
2
1
1
1
2
1
1
1
2
2
1
1
1
1
1
1
1
1
1
2
3
2
1
1
1
3
1
1
1
1
2
1
2
2
1
2
2
4
1
5
1
1
1
3
2
1
1
3
1
1
2
2
1
2
1
3
1
5
2
2
1
1
4
3
1
2
3
1
1
1
1
2
3
2
1
3
4
1
1
2
2
4
1
3
1
2
3
1
1
2
7
1
3
1
2
7
5
1
4
3
3
1
1
1
5
2
4
3
2
4
1
3
1
2
2
3
4
2
1
3
1
1
2
2
2
2
1
1
2
3
2
1
2
3
1
1
4
4
4
1
1
1
1
1
1
1
1
1
1
1
3
2
1
1
1
1
3
1
1
1
2
3
1
2
2
8
1
1
1
1
1
3
3
3
4
4
3
4
7
4
1
1
1
1
1
3
1
2
2
1
1
3
1
3
4
2
4
2
1
1
1
1
1
4
2
4
1
3
3
1
1
1
2
2
1
1
1
1
2
3
1
1
2
3
1
2
1
3
3
3
1
3
5
2
3
1
1
4
1
1
2
1
1
2
5
2
1
1
2
1
1
1
2
3
1
2
2
1
2
1
3
1
1
1
1
3
2
1
2
2
2
1
1
2
1
3
1
6
1
4
1
1
1
2
6
3
3
2
2
6
3
1
1
1
3
1
1
1
1
1
2
1
4
2
1
3
2
3
1
2
2
1
8
2
1
1
1
2
1
1
3
1
1
1
2
2
1
4
1
3
1
2
2
5
5
1
5
2
1
1
2
1
2
1
1
1
8
1
7
4
6
2
4
3
1
3
1
2
1
5
3
1
1
3
3
2
3
6
8
1
2
1
2
1
1
1
1
1
3
3
1
1
1
1
1
3
2
1
2
1
6
1
2
1
1
1
2
2
4
1
4
10
2
1
2
3
2
1
1
5
1
2
1
2
6
1
1
1
1
1
2
1
2
1
2
1
5
1
1
1
1
1
1
1
2
1
1
1
4
3
2
1
1
4
3
1
1
4
1
1
1
1
1
1
1
1
5
4
1
1
4
1
2
2
5
1
3
1
1
1
3
3
3
1
1
2
1
3
2
2
3
3
1
1
1
1
1
1
2
1
2
2
1
2
3
4
1
1
1
2
4
2
1
1
1
1
1
4
1
3
1
1
1
3
4
4
3
2
4
3
2
2
1
2
4
2
4
1
3
2
1
1
1
1
2
1
1
1
2
1
3
2
1
2
1
1
1
1
1
1
1
1
1
3
3
2
1
3
1
1
1
3
3
2
1
1
1
2
2
1
3
3
1
1
2
2
2
3
2
1
1
2
1
5
4
3
5
2
2
3
1
5
2
3
1
1
1
1
2
3
1
2
3
3
1
1
1
1
1
1
1
1
1
4
1
3
2
2
1
4
2
2
1
1
3
6
8
3
5
3
4
6
3
2
1
2
4
2
3
1
1
3
3
1
3
2
1
5
3
1
3
2
2
2
1
1
2
1
2
2
1
1
1
2
1
3
1
1
1
1
1
1
3
2
2
2
2
1
2
1
1
1
2
1
1
3
3
1
1
1
1
4
3
3
4
2
1
1
1
1
1
2
1
1
1
2
2
1
3
1
4
2
1
2
2
2
1
3
3
2
2
3
2
2
1
1
1
1
2
2
5
1
4
3
2
1
1
1
1
1
1
1
2
1
1
3
1
3
1
1
4
1
1
1
1
1
1
1
1
2
2
2
3
1
3
4
1
4
1
1
3
1
1
1
1
1
2
8
1
1
1
2
1
1
1
5
1
2
2
2
2
1
1
2
4
4
7
2
4
2
1
2
1
1
1
1
1
2
1
1
1
1
1
1
1
1
1
3
4
6
4
1
1
2
2
2
1
2
2
2
3
2
1
1
3
1
1
2
2
1
1
3
2
1
3
3
4
1
2
1
1
1
1
1
2
2
2
1
1
1
2
1
2
1
1
1
1
1
2
5
3
2
6
3
6
2
3
1
5
2
2
1
1
1
1
1
2
2
2
2
2
1
1
1
1
1
2
4
2
2
2
1
1
1
1
1
1
2
1
5
4
2
2
1
1
2
1
2
1
1
1
1
3
2
2
1
1
1
2
1
2
2
4
4
1
1
1
1
1
1
1
1
2
1
1
3
3
3
3
1
1
2
2
1
1
1
1
1
1
3
2
2
3
2
2
1
1
1
1
1
5
1
3
1
3
3
1
2
1
2
6
1
1
3
2
2
2
2
1
1
1
1
3
1
2
1
1
2
3
3
1
1
1
3
1
3
2
1
3
2
1
1
1
1
1
2
1
1
2
1
2
2
2
1
1
2
2
1
1
2
2
1
1
1
1
3
6
2
1
2
2
1
1
5
2
4
1
2
2
1
1
1
1
2
2
1
2
4
2
4
1
3
4
4
1
6
1
1
1
1
1
2
1
1
2
4
1
1
7
3
1
1
1
1
1
2
1
2
1
1
2
1
2
2
1
1
2
2
1
2
4
1
6
2
1
2
2
1
1
1
1
4
1
2
2
4
7
2
1
4
1
3
1
2
3
1
2
1
2
2
1
1
2
2
1
1
1
1
2
2
1
2
2
1
1
1
3
3
1
1
3
1
1
2
1
8
1
6
1
3
2
2
2
2
2
1
2
2
1
2
2
1
2
3
1
5
4
1
5
1
1
5
3
1
2
1
1
1
7
1
1
1
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
3
1
1
1
1
7
2
3
2
3
1
4
2
1
4
1
1
2
1
1
1
2
2
1
6
1
1
1
1
1
1
1
1
6
1
2
1
1
5
3
1
2
3
4
4
1
4
2
3
2
3
1
1
1
1
1
1
1
3
2
2
2
2
1
1
1
3
1
3
1
3
1
1
4
2
1
1
5
1
5
5
2
1
2
2
1
2
1
4
1
1
1
1
2
1
1
1
2
2
1
3
4
3
3
2
5
5
4
6
5
1
1
5
2
1
4
2
1
3
1
3
1
2
2
4
3
1
1
1
1
1
1
4
1
2
1
1
2
2
1
1
1
2
1
1
1
4
1
7
1
1
1
1
2
3
2
4
2
7
3
7
4
3
1
3
3
1
2
1
1
1
1
2
1
2
2
1
1
2
2
7
4
2
4
2
1
1
1
2
2
1
5
4
2
1
3
1
2
4
7
3
3
1
1
2
2
2
1
1
1
2
2
1
3
1
1
5
3
1
5
1
3
7
5
1
2
2
3
1
3
1
1
3
4
2
3
3
2
3
1
3
3
2
4
2
1
2
1
2
4
1
3
1
2
2
2
2
1
1
1
2
2
1
1
1
1
1
1
2
1
1
3
1
2
2
1
1
1
2
3
2
1
2
1
1
2
2
2
2
4
5
2
2
2
5
1
3
1
1
2
3
1
2
1
3
2
4
1
2
1
1
1
1
2
3
1
1
2
3
4
4
5
5
5
5
6
2
10
1
3
1
3
1
1
3
3
3
2
1
3
3
2
1
2
2
2
1
1
1
1
1
1
4
1
3
1
1
3
2
3
1
1
1
1
2
2
1
1
1
1
1
1
1
1
1
1
1
1
4
1
1
2
4
4
1
1
4
1
4
2
4
3
1
1
2
5
5
5
1
4
5
4
4
3
1
3
3
1
3
2
1
3
3
4
2
4
2
4
1
1
3
2
1
1
1
1
1
1
1
1
1
1
1
2
4
5
5
1
5
2
5
2
2
6
2
1
1
4
1
1
1
1
8
2
1
4
2
2
1
1
1
1
2
1
2
1
2
3
4
3
1
2
1
2
2
1
3
1
2
2
2
1
2
1
1
1
1
1
1
1
1
1
2
2
1
2
2
2
1
1
3
1
1
1
2
1
1
3
3
1
4
2
2
1
2
3
3
2
4
2
1
2
2
2
2
1
1
2
1
2
1
3
5
2
1
3
2
4
1
3
1
3
2
2
2
3
1
2
1
1
1
3
1
2
2
1
5
1
1
1
1
1
1
1
2
3
1
1
3
6
4
2
1
1
3
1
1
1
1
1
1
1
1
3
5
1
3
7
1
3
1
1
2
1
1
3
1
2
3
5
1
3
3
3
2
2
2
3
1
1
2
1
2
1
1
1
6
6
2
2
5
2
2
2
1
1
1
2
1
3
2
3
2
2
1
1
1
1
1
1
1
2
1
1
2
2
1
2
1
1
1
1
2
2
2
1
1
4
2
1
1
2
1
1
1
1
1
2
5
2
1
4
1
2
2
3
5
1
1
6
5
5
2
2
1
2
1
1
2
1
1
1
1
1
1
1
1
2
2
1
1
1
1
2
1
1
2
2
1
1
1
1
1
1
1
1
3
1
1
3
1
1
1
1
5
2
1
1
2
2
1
1
1
2
1
2
2
2
1
1
1
1
1
2
2
3
1
1
3
1
5
4
3
1
2
3
5
1
1
4
2
1
1
1
2
2
1
1
1
1
2
1
3
1
1
2
4
1
1
1
2
1
1
2
1
1
3
2
3
1
8
5
5
1
2
3
4
3
1
3
2
1
1
3
1
2
2
1
4
1
1
1
1
3
1
1
1
1
1
1
1
1
1
2
2
2
3
1
1
1
1
1
1
1
3
1
1
1
1
1
1
2
1
1
2
1
2
1
2
1
1
1
1
2
1
1
1
1
1
1
1
1
1
3
1
3
3
3
1
1
1
2
1
3
3
3
1
1
4
2
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
1
1
1
1
1
1
1
1
2
2
1
5
4
2
1
1
1
1
1
1
1
1
1
1
3
1
1
1
3
5
4
1
2
1
5
2
1
2
3
2
1
2
1
2
1
1
1
3
3
2
2
2
2
3
3
1
1
1
1
1
1
2
2
1
1
1
1
1
1
1
2
1
1
1
2
1
1
3
2
5
1
2
2
1
1
1
2
4
5
8
3
1
4
3
3
2
1
1
2
1
2
3
3
2
2
2
2
1
1
1
1
1
3
2
3
2
1
2
2
2
4
2
2
1
2
1
1
1
1
2
5
2
2
5
3
1
1
2
3
4
2
1
2
3
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
4
1
1
1
1
2
1
1
1
1
4
2
1
2
2
4
1
5
4
6
3
6
3
1
1
1
1
1
1
1
1
1
2
2
4
1
2
1
3
3
2
1
1
1
2
1
1
1
3
3
7
3
1
2
4
2
1
2
2
2
1
2
1
1
4
1
2
3
2
8
3
6
3
3
1
1
2
2
1
1
1
1
1
1
2
3
2
2
2
2
2
4
4
1
1
2
3
3
2
2
2
1
4
1
1
2
1
1
1
2
1
2
2
1
2
1
4
1
2
6
1
1
1
1
1
2
1
2
2
1
1
2
3
3
2
1
5
2
2
2
1
1
1
2
1
1
1
1
2
6
1
2
4
4
1
3
1
1
1
2
2
1
1
2
2
3
1
1
3
1
1
6
5
1
2
2
4
2
2
1
2
1
3
1
1
1
1
2
1
1
1
1
1
1
2
1
1
1
1
1
2
1
3
2
4
1
1
3
1
2
3
3
1
1
3
3
1
2
3
6
1
1
1
3
1
5
1
8
1
1
1
1
1
1
2
1
2
2
1
1
1
2
3
1
4
3
1
1
1
1
1
3
1
4
1
1
6
1
2
4
4
7
7
2
2
4
3
9
3
2
1
1
1
10
3
1
2
2
2
1
1
4
1
1
2
2
3
1
1
2
2
1
3
1
1
3
1
3
3
6
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
2
2
2
2
2
1
1
2
2
2
2
1
1
1
1
1
4
3
2
1
1
4
1
3
1
3
1
1
8
1
1
2
1
2
2
2
1
4
2
1
2
5
2
5
5
5
1
1
3
5
1
3
2
1
1
1
1
3
2
2
1
1
1
1
2
1
2
2
1
2
1
1
1
1
1
1
1
1
1
3
3
2
2
2
1
2
3
1
3
1
2
2
2
1
1
1
2
2
2
2
2
6
3
2
1
1
1
1
1
1
3
1
1
1
1
1
1
1
1
1
1
2
1
1
3
3
2
1
3
2
4
5
8
2
1
1
2
1
2
1
1
1
1
1
1
1
1
1
1
3
1
1
1
1
1
2
3
4
1
1
1
1
5
1
2
2
3
3
2
1
1
2
1
1
1
4
1
2
1
1
2
1
1
4
2
2
1
2
8
1
1
1
4
4
2
3
3
2
4
1
4
1
6
7
1
1
1
1
1
1
6
1
5
1
2
3
5
2
1
1
1
1
2
3
4
1
2
1
2
2
4
2
1
1
1
2
4
1
1
1
1
1
3
3
2
3
3
1
2
1
1
1
3
2
3
2
1
2
3
1
1
1
1
5
3
1
1
1
1
3
1
2
2
3
1
1
2
4
3
4
3
1
1
1
1
1
1
1
1
1
3
2
1
1
1
2
2
1
2
1
2
1
2
1
4
2
1
1
2
2
2
1
2
1
1
1
2
1
5
5
1
2
3
2
1
1
5
2
6
4
1
1
1
3
2
2
1
2
2
1
1
1
1
1
1
4
1
1
1
1
1
2
1
2
5
3
1
2
1
3
1
1
3
1
1
1
1
5
1
2
1
2
2
7
4
2
5
2
3
1
2
1
8
6
1
2
1
6
2
5
1
1
1
2
3
1
4
1
1
1
1
1
2
1
1
1
1
3
1
1
1
2
2
3
1
1
1
1
1
1
1
1
1
1
1
6
1
2
1
2
2
2
1
2
1
2
1
1
1
1
3
1
1
2
1
2
3
3
4
1
1
1
1
2
4
1
3
1
4
1
1
2
3
2
1
1
2
1
1
3
2
3
1
2
3
2
4
5
1
1
1
2
1
1
1
1
1
1
2
1
3
2
2
1
1
2
3
6
3
6
2
1
5
3
1
4
6
1
2
1
2
1
2
3
1
2
1
6
4
3
2
1
3
1
2
1
2
1
1
1
1
1
1
1
1
2
1
2
1
2
1
3
4
1
4
2
1
4
1
1
1
3
2
1
2
1
3
2
1
1
3
1
2
1
1
1
2
1
1
1
1
2
1
1
1
1
1
2
3
1
1
3
4
1
4
1
1
1
2
1
1
1
9
1
1
2
2
1
1
1
1
2
4
2
2
1
3
1
1
2
3
2
2
4
5
4
1
10
7
8
1
7
1
3
2
1
4
3
5
3
4
3
3
5
1
1
5
1
1
1
1
1
1
1
1
1
2
2
1
2
2
2
2
1
3
1
2
1
1
2
2
2
2
1
1
1
1
1
2
1
1
4
4
1
1
3
1
1
1
2
3
1
1
3
2
2
4
1
3
1
4
1
2
1
1
1
3
2
2
1
1
1
2
3
3
2
2
4
2
4
2
5
1
1
1
2
1
1
1
2
1
1
1
1
1
1
1
1
1
1
3
1
1
1
1
4
3
2
4
1
2
1
1
1
1
2
1
1
1
1
3
1
3
2
2
1
1
1
3
2
2
3
1
1
2
1
3
3
1
3
3
1
3
3
3
6
7
5
5
5
1
3
2
2
1
2
1
1
2
2
1
1
1
1
1
3
4
3
1
1
1
1
4
1
1
1
1
2
4
3
5
4
1
3
4
1
1
2
1
1
2
1
1
1
1
1
1
2
1
6
1
1
3
1
1
3
1
1
1
2
1
5
2
1
4
1
1
1
1
1
2
2
3
2
1
4
2
3
1
3
6
4
2
1
2
1
1
1
1
1
1
2
2
2
1
1
1
3
1
3
1
1
2
2
1
1
1
1
2
2
2
3
1
2
2
1
2
1
2
2
2
1
2
3
1
2
2
1
1
3
2
3
1
1
1
1
2
3
3
2
2
2
2
2
1
2
2
1
1
1
3
2
3
2
2
1
5
1
2
3
2
2
1
3
1
2
1
1
1
1
1
1
2
6
2
1
8
3
1
1
1
1
2
2
1
3
3
2
1
1
1
2
1
1
2
6
1
2
2
2
1
1
2
1
1
2
1
3
2
1
3
1
1
1
4
3
2
1
1
1
1
3
2
2
3
3
2
3
5
1
4
1
1
3
1
7
1
3
1
1
1
2
1
2
3
2
1
3
1
1
1
2
2
2
2
1
2
1
2
3
2
1
1
4
1
4
1
2
1
1
2
2
1
5
2
3
2
3
1
1
4
1
3
1
2
1
2
1
1
1
1
1
2
3
1
1
1
1
1
2
1
2
3
3
2
1
1
3
3
1
1
2
1
1
1
4
2
3
1
2
2
1
2
2
1
5
1
1
1
2
2
2
2
3
5
1
1
1
1
1
1
1
2
1
1
1
1
2
5
2
3
3
4
7
1
2
1
2
4
2
1
4
2
2
1
1
1
1
3
5
2
9
2
6
3
3
2
8
4
3
1
1
2
1
2
2
1
4
2
4
4
3
3
8
4
2
1
3
2
3
3
1
2
2
6
4
1
5
1
2
6
1
1
3
1
2
1
1
1
1
1
1
3
5
1
1
1
3
1
2
2
1
3
2
4
2
3
2
1
2
1
6
1
4
5
3
3
1
1
1
3
6
7
5
1
4
1
1
1
1
2
2
1
1
1
1
3
2
1
1
2
2
4
2
3
1
2
2
1
1
1
1
1
1
1
1
1
3
1
1
1
2
1
3
2
1
5
2
1
1
4
5
1
2
3
4
3
1
7
5
3
6
4
1
1
1
1
1
2
2
3
1
1
1
2
3
1
1
1
1
1
1
1
2
2
1
1
1
1
4
1
3
4
2
1
4
2
2
4
1
1
1
2
2
2
2
5
6
5
7
1
2
1
6
1
3
1
3
1
1
3
1
4
1
2
1
1
4
1
2
1
1
3
1
4
1
5
1
1
1
2
1
1
1
2
1
3
2
2
1
1
4
3
3
3
4
2
3
1
1
1
1
5
1
1
1
1
1
1
1
1
1
1
3
1
4
2
4
2
5
1
3
2
3
5
4
3
3
1
1
1
2
4
2
1
2
1
2
2
5
2
1
1
2
1
1
1
3
1
1
4
2
1
1
1
1
2
1
1
1
4
7
2
2
3
4
2
4
4
1
3
4
1
1
1
1
1
1
1
3
1
2
1
2
1
1
1
1
3
3
2
3
1
1
3
1
2
2
2
5
2
4
1
1
2
1
1
1
1
3
1
1
1
1
1
1
3
1
1
6
3
3
2
3
1
1
3
1
1
2
2
1
1
1
2
1
1
1
2
3
1
3
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
3
1
5
1
1
1
1
3
1
2
1
1
2
1
1
3
1
1
2
1
2
1
2
2
1
1
4
1
1
3
1
1
4
1
4
5
1
2
1
4
1
3
1
1
2
1
2
1
2
2
2
1
3
1
3
2
1
4
2
4
4
2
3
1
2
4
3
3
1
6
4
1
3
2
1
2
1
2
1
3
4
1
1
9
3
1
1
3
1
2
1
3
2
2
1
2
3
2
3
2
1
2
1
1
2
4
2
1
1
2
2
2
1
1
3
1
2
1
1
1
1
1
1
1
2
1
1
4
2
1
1
1
1
1
2
1
1
3
4
2
1
1
3
1
2
1
3
2
5
1
3
1
1
1
2
3
4
2
2
3
1
1
3
1
2
2
1
1
3
1
3
1
1
3
1
2
1
2
3
2
1
1
1
3
1
3
1
2
1
2
1
2
2
1
2
1
2
1
2
5
1
4
1
1
1
1
4
1
3
1
1
1
1
2
1
2
2
1
2
1
1
2
1
1
1
3
1
1
2
1
2
2
3
2
1
1
1
2
1
1
1
1
1
2
4
2
4
1
3
1
4
3
2
2
4
1
1
3
1
1
2
1
1
1
1
2
1
1
1
2
1
1
3
1
1
1
1
1
1
1
2
1
2
1
1
1
1
1
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
4
2
1
1
1
2
4
4
2
3
1
4
5
4
1
1
1
5
1
1
4
1
2
2
2
1
2
1
1
3
1
1
4
1
1
1
1
1
2
3
3
3
4
1
1
1
2
1
3
1
5
2
4
1
1
2
1
1
1
6
5
7
1
2
6
2
2
2
1
1
1
1
2
6
1
2
1
1
1
5
4
1
1
3
2
1
2
1
1
1
1
1
1
1
1
1
2
3
4
4
4
3
2
1
1
4
1
1
4
1
1
2
2
3
2
1
1
1
1
1
1
1
1
2
2
3
1
2
1
1
4
4
1
2
3
1
2
2
2
2
1
2
1
1
3
2
1
2
2
2
3
1
2
1
1
3
1
1
2
1
1
2
1
1
1
1
1
1
3
2
1
1
1
1
3
2
1
2
2
1
3
1
1
2
1
4
1
2
2
2
1
1
1
2
1
1
4
1
4
4
1
1
1
1
2
1
1
1
2
2
2
1
1
2
2
1
1
1
2
1
1
1
1
1
2
2
1
1
1
5
4
5
6
2
8
5
6
2
2
1
2
1
2
2
1
1
3
1
1
1
1
1
1
1
1
3
1
3
1
2
1
2
2
2
1
1
1
2
5
1
3
2
2
2
4
5
2
1
3
3
3
5
4
3
2
3
3
3
2
2
1
4
2
1
2
2
2
3
2
3
2
1
2
4
1
2
4
1
3
2
1
1
1
3
1
3
2
3
5
4
5
2
2
1
4
2
1
1
3
1
1
1
1
7
3
5
2
1
1
2
2
3
1
3
3
1
2
2
2
4
2
2
1
2
2
1
5
1
3
2
4
4
1
1
1
1
2
3
1
3
1
2
2
2
2
6
9
1
3
2
5
1
1
1
4
5
3
5
4
5
1
2
4
1
2
2
1
2
1
1
1
2
1
1
2
3
1
6
9
1
1
2
1
1
2
4
1
1
4
6
2
4
2
2
1
1
1
1
3
1
1
3
1
1
1
1
1
2
3
1
2
1
4
5
2
3
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
3
1
1
1
1
2
1
6
7
4
1
7
1
3
3
2
8
2
1
1
2
1
4
4
6
5
1
2
5
3
1
3
3
3
7
1
1
2
1
2
1
1
1
3
1
1
1
3
1
2
2
1
1
1
5
1
1
1
1
1
1
1
3
1
2
3
1
1
2
1
2
2
2
1
1
1
3
2
2
1
1
2
2
3
1
3
4
1
1
1
5
1
1
1
3
1
1
1
1
1
1
4
1
1
3
3
3
4
2
2
5
1
1
1
1
1
2
3
2
2
3
3
2
2
3
2
2
1
2
3
3
1
1
2
1
2
2
1
4
2
3
3
2
5
3
3
1
2
1
1
3
1
1
3
1
1
1
2
4
4
1
4
1
1
1
1
1
2
6
1
1
4
1
5
2
1
1
1
3
2
5
3
4
3
3
1
1
1
1
1
1
2
1
1
1
1
2
3
1
1
3
3
1
2
1
1
4
1
2
2
1
1
3
4
1
2
1
1
2
3
2
1
1
1
2
2
1
1
1
1
2
1
2
1
2
1
1
3
1
1
1
1
1
1
1
2
1
2
2
6
4
2
5
1
2
1
1
2
1
1
1
1
1
1
3
6
2
3
2
1
1
3
2
1
4
2
6
1
2
4
3
3
1
5
3
1
2
4
1
1
1
1
1
2
1
1
1
2
2
2
1
1
1
1
4
3
1
1
1
1
4
1
2
3
2
1
1
3
6
1
3
3
2
2
1
3
2
4
5
3
4
3
5
3
6
2
9
1
1
1
2
5
1
1
1
1
1
2
1
1
1
2
1
2
1
2
1
1
2
1
1
2
1
1
1
3
1
2
1
2
3
3
3
4
5
2
3
1
1
1
1
1
2
4
2
1
1
1
1
1
1
1
2
1
2
2
2
1
4
2
1
2
2
1
1
1
1
1
1
1
2
1
2
1
1
2
1
2
4
1
1
1
1
1
2
4
2
3
1
2
2
1
1
5
3
3
1
2
2
4
2
1
1
1
2
1
1
1
1
3
3
1
1
3
1
1
1
1
1
1
2
3
1
1
1
1
1
2
2
1
3
4
1
2
2
2
1
4
3
2
1
1
4
3
2
1
1
2
1
2
1
3
4
2
2
8
1
1
5
2
1
1
1
2
4
2
1
1
1
2
1
1
2
2
3
1
1
2
1
1
1
1
2
1
3
2
1
3
4
3
3
1
1
2
4
2
3
1
3
1
2
2
1
2
4
1
3
1
3
1
1
1
2
1
1
1
1
1
2
1
3
1
1
2
1
1
2
2
2
2
4
1
1
1
6
4
1
1
5
1
4
3
2
2
2
2
2
2
1
4
3
2
1
1
1
2
2
1
1
2
2
3
1
2
4
1
1
2
2
7
3
1
2
2
1
1
2
2
2
8
3
3
1
6
1
1
2
1
1
4
5
5
5
5
3
4
1
4
2
4
3
2
3
1
1
1
2
2
2
1
2
3
2
4
1
1
1
2
5
4
4
2
2
4
1
1
1
1
2
2
1
2
1
1
1
3
1
1
2
2
2
1
1
1
1
2
2
2
2
1
1
1
1
1
3
3
1
2
1
2
3
2
1
3
1
1
1
1
1
1
1
1
1
3
1
1
1
1
2
1
3
1
1
1
2
2
6
1
1
1
1
1
1
2
2
2
1
1
1
1
2
2
2
2
1
1
1
1
1
3
1
1
1
4
1
4
2
1
1
1
1
1
1
1
2
2
1
2
2
2
1
2
1
2
1
1
4
2
1
1
1
1
4
1
1
2
1
3
4
1
2
6
2
1
2
6
3
1
1
2
2
1
1
2
2
2
2
3
2
1
1
3
1
2
1
2
1
1
3
4
1
1
4
4
1
1
3
3
4
1
2
5
4
1
7
3
5
1
4
1
1
2
1
4
1
1
4
5
4
4
1
1
1
1
1
1
1
1
2
1
1
4
1
1
3
3
3
1
1
2
2
2
5
2
3
1
2
2
1
2
1
1
2
1
3
1
1
1
1
1
1
1
2
1
1
2
1
1
3
2
1
1
1
1
3
1
2
1
1
1
1
1
1
2
2
4
6
4
1
3
2
2
1
1
1
1
2
1
2
1
1
2
1
1
1
1
1
1
1
2
2
1
1
1
1
1
3
1
1
1
1
1
5
1
1
2
4
1
3
1
6
1
1
3
2
3
1
5
4
1
2
2
2
2
4
1
1
3
1
5
2
1
7
5
4
2
1
5
3
3
1
2
2
1
1
2
1
3
1
3
1
2
1
1
1
2
2
2
5
1
4
2
2
2
1
2
2
2
1
1
1
1
2
4
2
2
2
3
2
3
2
4
1
1
2
1
1
1
1
2
1
1
2
2
3
1
4
1
1
1
1
1
3
1
2
6
6
1
3
1
5
2
2
2
2
4
1
3
1
2
1
3
4
1
1
3
1
1
1
1
1
2
3
1
4
4
3
2
3
1
1
1
4
4
3
1
5
3
5
4
3
2
1
4
1
3
5
2
2
1
1
2
3
1
1
2
2
2
2
2
4
1
2
2
1
3
1
1
2
1
3
2
1
1
2
1
3
1
3
2
3
1
3
1
1
2
5
1
1
1
3
1
3
1
1
1
1
1
1
1
1
2
2
1
4
8
2
3
2
2
1
1
4
1
1
4
1
2
1
2
4
1
1
1
3
2
2
1
3
1
1
1
4
2
1
2
6
1
1
2
4
2
5
3
1
2
1
1
1
2
2
3
1
3
1
1
4
1
3
1
1
1
1
1
2
3
4
3
4
4
1
2
1
3
1
1
1
1
2
2
1
1
2
1
2
1
1
3
3
1
1
1
1
1
1
1
1
2
3
1
2
2
3
2
2
2
2
2
1
2
5
1
3
1
2
1
1
1
2
2
2
1
1
1
2
2
1
2
2
1
1
1
2
3
2
2
1
1
2
1
3
1
2
2
2
1
1
2
1
1
1
3
1
1
1
1
3
2
1
1
3
2
1
1
1
2
3
1
4
5
6
2
1
1
1
1
1
3
4
1
2
1
3
1
3
3
3
2
3
2
1
2
1
5
2
1
1
2
1
1
2
1
2
1
4
4
1
2
1
1
1
2
1
2
1
3
1
1
3
2
1
2
2
1
2
1
2
2
3
1
2
2
2
1
3
4
1
1
1
1
1
1
1
1
2
1
1
1
3
3
2
3
1
5
4
1
2
1
1
1
4
2
1
3
3
1
1
1
1
3
1
2
2
2
2
1
4
2
5
1
1
1
1
1
1
3
2
2
2
4
1
1
6
4
5
6
2
3
1
1
1
1
1
1
1
3
1
3
3
4
6
1
2
2
1
1
1
1
2
1
1
3
2
2
2
1
3
1
4
1
1
1
2
2
1
2
1
2
1
6
1
1
4
4
3
3
3
1
2
1
2
2
3
4
3
1
3
3
2
2
1
2
1
4
1
2
3
10
5
3
1
1
1
4
1
2
2
1
1
1
3
1
1
1
2
1
1
1
1
2
1
2
1
1
3
4
1
1
1
1
3
3
1
3
1
1
1
2
1
1
1
2
1
2
2
2
1
1
2
2
2
2
1
1
2
2
1
2
5
1
1
4
1
1
1
1
1
1
2
3
1
1
2
1
1
3
2
3
1
1
1
3
1
2
2
1
4
3
5
1
4
1
1
2
1
1
1
5
1
1
1
1
1
1
1
1
3
2
3
3
1
5
1
3
2
3
2
3
2
2
2
1
1
4
7
2
1
4
2
1
2
2
4
1
1
3
1
1
4
1
1
2
1
3
2
2
2
1
4
1
1
3
1
1
1
1
2
1
3
1
3
1
1
3
1
1
1
1
1
2
3
3
1
1
2
1
4
3
1
7
1
1
2
1
1
1
2
1
1
3
2
4
2
1
1
1
1
1
4
2
6
3
4
3
4
2
5
4
2
1
1
2
2
2
1
1
2
1
1
2
2
2
1
2
4
1
2
1
1
1
1
1
1
1
1
1
2
2
3
3
3
1
1
1
1
1
1
5
1
1
1
1
4
1
4
1
3
1
1
2
4
1
4
1
1
1
5
2
3
2
1
2
1
1
1
1
3
1
1
3
1
2
1
3
3
1
4
2
1
1
3
3
1
2
2
1
2
1
1
1
1
1
2
1
1
2
1
3
2
2
7
1
2
1
2
1
1
8
2
5
3
1
1
1
1
1
1
1
4
2
1
2
1
3
5
1
2
1
1
2
2
1
2
2
1
1
2
2
1
1
1
1
1
1
1
2
2
1
1
1
1
1
1
2
2
1
1
1
2
1
2
1
3
1
2
2
1
1
1
1
3
1
1
3
3
1
4
3
4
5
5
2
4
5
1
1
1
3
3
1
2
1
2
2
1
2
2
1
3
1
3
1
2
2
3
1
1
1
1
1
1
1
1
1
1
1
1
1
2
4
2
1
3
1
1
1
1
1
2
4
1
2
4
2
1
4
4
3
3
3
3
3
1
1
1
4
1
2
1
1
4
5
1
1
1
2
2
8
1
1
4
1
3
2
1
4
5
2
2
2
1
1
2
1
2
7
1
2
2
1
1
2
1
1
3
4
1
4
2
1
1
1
5
3
1
2
2
1
1
3
2
2
1
2
2
2
4
4
1
1
1
1
3
6
1
1
3
1
1
1
1
1
1
1
1
1
4
1
1
2
1
1
1
2
1
2
3
2
2
1
2
2
2
3
1
1
1
1
1
1
1
1
1
1
1
1
1
3
4
3
1
3
5
2
3
1
3
2
7
3
1
2
5
4
3
2
1
1
4
4
3
7
5
2
5
8
3
3
1
1
2
8
3
1
1
3
5
1
4
3
3
5
5
4
1
1
1
1
3
5
2
4
3
1
2
1
1
1
1
1
1
3
3
2
1
1
1
2
1
2
1
1
1
2
8
3
2
1
3
3
4
1
2
6
3
2
3
1
2
2
3
1
1
1
2
2
3
4
2
5
2
1
3
2
2
3
3
1
2
1
5
3
2
5
1
1
5
3
1
3
1
2
1
1
3
2
4
1
3
6
2
9
1
8
3
3
1
2
1
2
1
3
2
3
1
1
1
1
2
2
1
1
1
2
3
2
1
4
1
1
2
2
1
1
2
1
1
1
3
1
1
2
2
4
3
3
1
3
1
3
1
2
2
6
1
1
6
3
2
5
2
2
3
1
3
2
2
2
1
1
1
1
1
2
1
1
2
6
4
4
1
3
4
2
1
1
2
1
2
1
1
1
2
2
2
1
1
3
2
1
5
1
1
1
1
1
2
3
2
2
1
3
1
1
1
2
1
1
4
4
4
7
6
1
1
3
1
1
2
2
1
1
1
2
1
1
1
2
1
2
2
2
1
2
2
2
1
2
2
3
2
4
2
1
4
6
1
5
1
2
1
2
1
1
1
1
2
5
1
2
1
4
2
3
1
2
7
3
4
5
1
4
3
1
1
4
1
4
2
2
3
3
1
1
1
1
2
1
1
1
1
1
1
1
3
4
1
1
1
2
1
2
2
1
1
1
1
1
1
1
2
7
2
2
1
2
1
1
1
2
3
2
1
2
3
2
1
1
3
1
1
1
1
1
1
1
3
1
1
1
4
1
1
3
1
2
1
2
3
3
1
3
1
3
1
1
2
2
2
3
3
1
1
3
1
1
3
3
3
1
3
3
2
1
2
3
1
1
1
1
2
2
1
1
2
4
2
1
1
1
1
1
4
1
1
1
4
3
1
7
3
2
3
2
5
4
1
1
2
1
1
2
2
2
1
2
1
1
2
2
2
1
2
1
1
4
1
1
1
1
1
1
1
3
1
1
2
2
1
3
2
4
1
1
2
2
2
1
1
1
4
1
2
2
1
2
3
1
4
2
1
2
1
4
1
3
2
5
3
2
2
3
2
5
1
2
2
5
1
1
1
1
1
1
1
1
2
2
1
2
3
1
2
2
4
3
3
1
1
1
1
1
4
5
1
2
2
2
2
1
1
3
1
1
1
2
3
2
2
1
3
2
2
1
3
3
2
4
3
1
1
2
2
1
1
1
1
5
8
9
1
1
2
1
2
4
2
1
6
2
5
1
2
5
4
2
2
4
3
2
3
1
4
1
3
1
3
1
1
5
3
3
1
6
2
2
1
1
1
1
1
1
1
1
3
1
1
5
2
2
1
2
2
1
3
2
2
1
4
6
2
1
1
2
1
1
1
2
1
1
3
1
2
3
4
3
1
2
1
2
1
2
1
1
4
1
3
1
1
1
1
1
3
4
4
3
1
4
3
2
6
7
9
1
1
3
2
4
2
1
1
2
4
1
1
4
2
1
2
1
1
1
1
2
1
1
1
2
1
1
2
5
2
2
1
6
1
4
6
3
2
1
2
3
1
4
1
4
3
3
5
1
2
2
2
1
2
2
2
1
1
1
1
2
2
2
3
5
3
3
1
1
1
1
4
6
6
1
4
1
1
7
6
4
2
1
1
1
1
1
2
1
4
2
1
2
1
1
4
2
4
3
1
5
5
1
3
4
9
2
1
1
3
1
1
3
2
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
4
1
1
7
1
1
1
2
1
1
1
1
2
1
2
6
1
2
2
1
5
3
3
3
1
3
4
1
6
1
4
1
1
1
1
2
7
5
3
1
2
3
1
3
3
2
1
2
2
1
5
1
4
4
9
1
3
2
2
2
3
2
1
4
5
2
2
1
6
1
1
1
1
1
3
1
1
2
3
6
1
3
1
8
2
1
1
1
1
1
1
1
7
4
1
1
1
2
1
2
1
1
1
1
1
2
1
1
1
1
1
1
2
1
3
1
1
4
1
1
2
1
2
1
1
1
1
3
1
2
4
8
2
2
1
5
1
1
1
2
2
3
1
1
1
1
1
1
1
1
1
1
1
3
1
1
3
1
3
1
2
4
3
1
3
1
3
2
3
1
2
2
1
2
1
3
1
1
1
1
1
2
1
2
1
2
1
1
2
2
2
2
1
2
6
4
2
2
2
4
2
2
2
2
1
1
2
2
4
5
1
5
1
2
3
8
2
1
1
1
2
1
1
3
1
2
1
1
2
2
1
1
6
5
2
1
1
1
1
1
1
4
1
1
2
2
2
1
1
1
2
3
2
2
3
2
1
1
1
1
3
1
1
3
2
2
5
4
3
1
2
2
5
4
4
1
3
5
3
1
3
1
2
1
3
4
2
1
3
1
1
1
2
2
3
2
2
1
1
1
1
1
2
1
2
1
1
1
4
4
1
4
1
2
1
1
1
1
3
1
3
4
3
2
2
2
1
1
2
3
2
2
1
3
1
1
1
1
4
2
1
8
2
1
1
3
3
2
2
2
1
1
1
2
3
1
1
1
2
1
1
1
1
3
2
2
2
5
3
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
2
1
1
1
2
1
2
2
1
2
1
1
2
4
1
6
3
5
5
2
2
2
3
3
6
2
4
3
4
7
2
2
4
2
4
2
2
2
4
1
1
3
1
1
1
2
2
2
1
1
1
3
1
2
1
2
1
2
2
1
3
1
1
2
1
1
1
3
1
3
6
6
3
1
1
1
1
2
2
3
1
2
2
4
1
1
1
6
3
1
4
1
1
4
1
1
1
1
1
1
1
1
2
2
1
1
1
4
1
2
1
3
2
1
1
1
1
1
6
4
5
5
5
6
1
2
2
1
1
4
2
2
1
1
1
1
3
1
4
1
4
4
1
1
1
1
2
2
1
1
2
4
1
1
3
3
2
1
3
1
1
1
3
1
3
1
5
4
2
5
5
6
3
6
6
2
3
2
2
2
2
1
1
3
5
1
1
4
5
8
3
3
1
2
1
5
1
1
1
1
1
1
1
1
3
1
3
3
5
5
1
2
1
1
1
2
1
1
2
1
3
3
3
3
1
1
3
3
2
1
2
1
1
1
4
5
3
1
2
1
1
3
1
2
2
4
1
1
1
1
5
1
3
1
2
2
2
1
1
1
1
1
1
1
1
1
1
1
3
1
1
1
1
1
1
1
1
2
1
2
3
1
4
1
2
2
2
1
1
1
1
2
1
1
1
1
1
1
1
1
2
2
1
2
2
1
1
1
1
1
1
2
2
3
4
5
1
1
2
2
3
1
3
1
1
2
2
5
1
1
6
1
1
1
1
1
1
2
4
2
1
2
1
1
2
8
3
1
2
5
3
4
2
2
2
1
5
3
1
1
1
1
1
1
1
5
1
2
5
5
4
1
3
1
1
2
2
4
2
1
1
1
1
1
5
2
2
2
1
1
1
4
1
2
2
3
1
1
1
1
1
2
6
1
2
3
2
3
3
1
2
4
5
5
2
2
1
1
3
1
2
1
2
1
2
3
1
2
2
1
2
1
1
1
1
1
1
5
1
1
3
1
3
2
6
4
1
2
1
2
2
2
2
2
3
2
2
1
1
5
3
1
1
3
3
1
3
1
3
5
1
1
3
7
10
1
1
3
3
3
1
3
1
3
5
7
8
2
2
2
2
4
3
1
1
2
2
1
2
1
1
2
4
4
4
3
3
1
1
1
2
4
4
2
3
2
1
1
4
1
1
1
4
1
1
4
2
1
4
4
2
3
3
2
1
1
1
3
3
3
1
6
2
2
3
3
1
2
6
1
2
3
1
1
1
2
1
3
1
1
2
3
1
4
1
3
1
1
1
2
2
2
5
2
2
4
2
4
5
5
1
6
1
3
4
3
3
2
1
2
1
3
4
1
2
2
2
1
9
5
1
3
4
1
1
1
1
1
1
2
1
1
3
1
1
1
2
1
1
1
3
1
1
2
1
2
3
5
4
2
1
2
1
2
1
1
1
8
1
2
1
1
2
1
3
1
2
1
3
2
1
2
2
1
4
1
3
2
6
5
2
2
5
6
2
8
1
1
2
1
2
3
2
1
1
1
1
4
1
2
2
3
2
4
2
1
2
1
3
7
3
3
2
3
3
1
3
4
3
1
4
6
3
2
1
3
3
1
2
1
2
1
4
6
4
2
2
1
2
1
1
4
1
2
1
2
1
2
4
1
1
4
3
4
4
4
2
3
2
2
1
2
1
2
4
1
4
1
4
4
2
1
2
1
1
4
4
1
1
1
1
1
2
1
1
1
1
1
2
1
3
2
1
4
1
1
1
2
1
1
3
1
1
2
1
2
5
1
1
1
1
1
1
2
2
1
1
1
1
2
2
1
2
1
1
4
1
1
1
1
1
1
1
3
2
1
2
3
2
1
2
1
2
1
1
1
2
1
2
1
3
1
6
6
1
4
5
1
1
1
5
1
3
1
1
2
2
1
1
3
1
1
2
4
2
2
2
1
1
1
1
6
1
1
2
1
3
4
5
1
4
2
2
2
3
1
2
2
1
1
1
1
1
1
2
1
1
4
1
1
1
3
1
1
1
2
4
1
1
2
1
3
4
2
1
1
2
3
3
2
1
1
2
2
1
3
1
1
1
1
2
3
1
2
1
1
1
1
1
1
1
1
1
1
3
2
1
2
2
2
1
1
1
3
3
5
5
2
1
3
2
1
1
2
2
1
1
1
2
2
1
2
6
2
2
2
4
2
4
1
1
1
1
1
1
1
1
2
1
1
1
1
1
1
3
3
1
1
1
2
1
2
2
2
1
2
2
2
3
3
3
1
4
3
3
5
4
1
1
1
1
1
1
6
1
2
4
1
1
3
1
1
1
1
2
1
3
1
2
4
1
2
4
3
1
1
1
2
2
2
4
3
2
3
3
1
3
1
2
1
1
1
1
1
1
2
1
1
1
1
1
1
2
2
3
2
4
3
4
1
1
1
4
1
1
4
1
1
1
1
1
1
2
1
1
1
2
1
1
2
1
1
2
2
2
1
4
5
3
3
1
1
3
4
5
3
5
1
2
1
1
1
1
1
3
1
1
1
3
2
1
1
4
3
4
1
7
5
4
2
4
1
8
6
2
1
1
5
4
4
1
2
2
1
3
3
1
3
1
2
3
3
4
1
1
1
1
2
1
1
1
3
4
3
1
1
4
1
2
2
2
3
3
1
3
2
1
3
2
1
3
3
1
1
1
1
1
2
1
3
1
3
1
1
6
1
3
2
2
2
1
1
1
1
1
1
1
2
1
1
4
4
3
2
7
1
4
1
3
1
1
2
1
1
2
2
1
4
2
3
3
1
1
1
1
1
1
1
1
1
1
1
1
1
3
1
3
1
1
1
1
2
2
3
1
2
1
2
1
3
3
1
3
2
2
2
2
1
2
1
1
1
1
1
1
1
1
1
3
1
2
3
1
3
3
1
1
1
4
2
3
1
1
2
1
1
1
1
1
1
1
2
2
1
2
1
1
1
1
1
2
1
1
2
1
1
1
1
3
1
2
1
1
1
1
1
5
3
2
1
1
1
3
3
1
1
1
2
1
1
1
1
1
2
1
1
2
3
5
1
8
3
5
2
1
1
2
1
1
1
1
1
1
1
2
3
3
1
4
2
2
1
1
2
1
1
3
2
4
1
2
6
6
1
1
2
1
1
1
1
1
2
2
2
1
1
1
2
1
1
1
2
1
2
2
1
1
3
1
1
3
1
5
7
2
2
2
2
4
3
2
1
2
4
3
3
1
1
2
2
1
1
1
1
1
2
1
1
3
3
2
2
1
1
3
4
2
5
6
5
1
3
1
1
3
1
3
1
3
2
2
2
1
1
1
2
1
2
1
2
1
2
4
1
1
1
2
1
1
1
1
6
1
1
2
2
1
2
2
2
2
3
2
2
1
1
1
4
2
1
4
3
1
2
2
1
1
1
4
1
5
3
1
1
1
3
6
3
4
2
3
3
5
7
2
2
6
6
2
4
3
5
3
5
2
1
1
5
1
2
4
1
2
1
1
5
1
5
2
4
4
2
1
1
2
5
1
1
1
1
3
1
3
3
1
1
2
4
5
1
2
1
1
6
2
2
1
4
2
1
1
2
1
1
1
2
2
1
3
5
5
2
1
1
1
1
3
1
1
1
1
2
1
2
1
2
2
3
2
2
2
1
2
1
2
1
2
2
1
1
3
1
1
1
1
2
3
1
1
5
2
1
3
1
1
1
2
2
3
1
5
2
3
2
1
3
1
1
1
2
1
1
1
1
3
2
1
1
1
2
3
2
3
1
2
1
1
4
1
3
4
6
2
4
2
1
2
2
1
3
1
1
1
3
3
1
1
1
1
1
1
1
1
4
2
2
3
1
1
1
1
2
1
1
1
1
1
2
1
2
3
2
1
1
1
1
1
2
1
1
2
1
1
2
1
2
3
1
2
2
3
1
2
1
1
2
1
1
1
1
1
1
1
1
1
1
2
1
1
1
4
2
2
2
2
1
1
1
1
2
1
1
1
3
2
1
1
1
4
1
1
1
2
4
2
2
2
3
5
2
2
1
1
3
3
3
1
2
2
1
1
1
1
1
1
1
1
2
1
3
2
2
1
1
1
4
1
3
3
1
1
2
1
1
4
4
5
4
1
4
3
4
4
3
1
2
1
1
1
1
3
2
1
1
1
1
6
3
5
1
3
2
1
1
1
4
1
3
4
4
2
2
1
1
1
2
1
1
1
1
1
2
3
2
2
3
2
1
6
3
4
5
4
5
2
1
2
4
4
1
3
2
1
5
2
5
1
3
1
1
4
3
5
2
1
1
2
4
6
1
3
8
5
5
5
1
1
1
2
1
4
1
4
1
3
3
3
2
6
4
3
2
3
3
1
1
2
2
1
3
1
1
1
2
2
3
6
1
1
2
1
4
3
5
1
3
3
5
1
1
2
6
1
3
2
3
4
2
2
1
5
3
6
1
1
1
1
1
1
1
2
1
1
1
1
3
1
3
4
1
5
1
3
1
3
2
6
1
1
1
1
1
4
3
2
2
2
3
2
3
1
3
1
1
5
1
5
5
1
1
1
2
1
1
2
1
2
1
2
6
3
3
2
4
5
3
1
6
2
4
1
2
1
4
3
6
2
4
2
1
1
1
3
5
5
1
2
1
1
4
2
5
1
4
4
2
5
1
2
2
2
2
6
2
2
7
2
1
4
5
3
3
2
2
2
1
1
1
1
1
1
1
1
2
1
1
1
2
2
2
1
1
2
2
1
2
1
2
2
2
1
1
1
1
2
1
1
1
2
3
1
2
2
3
1
2
1
1
1
3
1
2
1
5
3
4
4
1
1
1
3
2
3
2
2
2
1
1
1
2
1
3
1
2
2
1
3
2
4
1
5
4
3
1
4
2
1
3
3
1
1
2
1
2
2
2
1
2
1
1
1
1
1
1
3
3
1
1
2
1
2
1
2
3
2
2
1
1
1
1
1
1
1
3
1
4
2
3
2
2
3
2
1
2
1
2
2
3
5
5
2
1
2
2
1
1
1
1
1
2
3
6
1
1
1
1
1
1
1
2
1
1
1
3
1
2
1
3
2
1
2
2
1
2
3
1
1
3
2
1
1
2
3
2
1
4
1
1
3
1
3
8
1
1
4
4
2
2
3
3
4
4
1
4
1
1
3
3
2
1
2
3
1
2
2
1
2
2
1
2
3
1
2
1
2
2
1
3
3
3
2
1
1
1
1
1
2
2
1
1
1
1
3
1
2
2
1
1
2
1
3
1
1
2
3
1
3
1
2
4
1
1
5
1
2
1
1
1
2
1
1
1
1
1
3
3
6
4
6
3
3
4
2
7
6
4
3
5
3
4
1
4
3
2
2
1
2
1
5
1
1
2
2
1
1
1
1
3
2
1
1
1
1
1
3
1
3
3
4
4
1
1
1
2
1
1
1
1
1
1
1
1
1
1
1
1
3
4
1
2
2
4
3
5
1
1
1
1
4
4
2
1
5
2
1
3
1
4
2
1
1
1
1
2
2
1
4
3
1
1
1
1
4
1
6
1
1
1
8
7
1
1
1
1
1
1
1
1
1
3
1
1
1
1
3
3
4
2
7
1
4
5
1
1
1
1
1
1
2
2
1
5
1
3
1
3
3
2
3
1
1
1
2
2
1
3
2
2
1
1
1
1
3
5
3
2
1
4
3
4
4
2
4
2
6
2
6
6
4
1
1
1
2
5
3
3
3
2
1
5
2
2
4
3
4
4
2
1
1
1
2
4
4
2
2
1
1
2
3
2
1
1
3
1
3
2
4
1
3
2
3
1
3
5
2
2
1
2
2
4
2
1
4
1
1
4
1
3
1
1
4
4
1
1
3
1
2
6
2
1
1
5
1
3
5
3
1
3
1
3
3
3
2
3
1
3
1
1
3
2
1
6
3
3
1
2
5
2
1
2
2
2
7
2
8
2
1
2
2
1
1
1
3
2
2
4
4
2
5
2
4
2
4
3
1
5
1
1
6
2
1
1
2
1
2
1
1
2
2
1
1
2
3
2
1
1
1
1
2
1
1
1
1
1
1
2
1
1
5
2
1
4
1
4
3
1
1
1
3
1
1
1
2
2
2
2
1
1
1
4
1
1
2
7
1
3
3
1
5
1
3
2
1
3
2
2
2
1
1
2
1
1
4
2
2
3
3
1
2
2
3
2
2
3
1
5
4
1
1
1
1
2
3
2
3
2
2
3
2
1
1
4
1
1
1
2
2
3
3
4
4
1
1
6
1
4
1
1
1
2
1
1
1
2
2
3
3
3
4
1
9
1
3
3
2
2
1
1
1
4
1
1
1
1
3
4
2
2
1
1
1
2
1
1
1
2
1
1
1
1
1
1
1
2
1
1
1
1
3
4
6
3
3
3
3
2
1
2
2
1
1
2
1
4
1
3
1
1
7
3
3
2
2
1
4
4
4
1
1
2
4
3
2
2
1
2
1
2
4
1
2
3
4
4
2
1
1
2
4
4
2
5
3
6
7
1
6
7
11
9
6
6
5
2
2
1
1
1
1
1
2
1
1
2
2
2
1
2
1
1
1
3
3
3
4
2
2
3
2
1
1
1
1
5
1
1
1
5
1
4
2
3
3
3
1
1
1
1
1
4
3
1
5
8
3
1
6
2
4
2
1
1
1
4
1
9
1
1
1
2
1
1
4
1
6
1
1
2
2
1
1
1
1
1
1
1
1
1
2
1
1
2
1
2
1
3
2
2
3
1
2
3
1
2
2
1
1
4
1
1
1
1
3
5
1
2
1
1
2
1
1
1
2
1
5
1
1
1
1
1
3
2
1
1
2
2
3
3
2
3
1
1
2
2
1
3
3
2
2
1
1
2
5
2
2
2
3
2
1
3
2
1
1
1
2
2
2
3
5
1
1
6
1
1
1
2
8
5
2
3
5
1
4
3
5
1
2
1
1
1
1
1
1
1
1
1
1
2
4
2
2
1
1
1
1
1
2
1
1
8
2
2
2
1
2
1
1
1
1
2
1
1
2
1
1
2
1
1
1
1
1
1
1
1
1
3
3
1
3
1
1
1
2
1
1
3
3
1
3
4
1
1
3
3
1
1
1
1
3
1
1
1
1
2
1
2
1
1
2
1
1
5
1
1
2
1
1
1
1
1
4
2
1
1
3
3
4
3
4
3
1
1
1
2
4
4
1
1
3
3
1
1
1
1
1
3
3
1
1
2
2
1
1
1
2
1
1
2
1
2
1
3
1
2
2
2
2
2
1
1
2
2
2
1
1
1
1
1
1
1
3
1
2
4
2
3
1
1
2
1
1
1
2
3
2
3
2
4
1
2
5
2
1
3
2
1
1
2
1
1
1
2
1
1
1
2
1
1
1
3
1
1
1
3
3
1
1
1
2
2
1
1
3
4
1
3
3
1
1
6
3
3
6
5
5
1
2
3
2
1
1
1
2
3
1
5
2
1
2
1
1
1
1
1
1
1
2
3
1
2
3
2
9
1
1
3
6
2
5
1
4
2
3
2
1
6
3
2
1
2
2
2
4
4
1
3
3
1
1
1
2
3
1
2
1
1
1
2
1
1
2
2
1
1
6
3
4
3
3
3
7
4
1
2
2
2
1
1
1
2
1
1
1
2
2
1
1
1
5
2
4
2
1
1
2
3
3
1
1
3
2
1
1
2
1
1
2
3
6
8
3
1
3
5
2
1
1
2
4
3
2
5
1
1
1
1
3
1
1
1
1
1
1
2
2
1
3
3
2
2
3
2
1
1
3
6
1
1
2
3
2
1
1
3
1
4
1
3
2
2
1
1
1
1
1
1
6
3
3
5
5
5
4
1
6
2
1
4
3
2
2
1
2
3
1
3
3
3
4
9
1
5
1
1
1
1
6
3
1
3
3
1
1
1
1
3
2
2
3
2
1
1
2
1
1
2
5
2
5
1
4
4
2
2
1
2
1
1
3
1
1
1
2
2
1
1
2
4
2
4
1
4
3
2
3
3
2
2
1
2
2
2
3
1
3
3
1
4
1
3
3
2
3
1
1
1
2
2
2
3
3
1
1
3
3
3
1
1
2
2
2
1
2
1
1
1
2
2
2
1
1
4
1
2
2
3
2
1
3
3
2
1
1
2
2
2
2
1
4
3
3
3
1
2
2
3
3
1
1
1
1
1
2
3
3
2
1
1
1
2
1
1
2
1
2
2
4
2
5
1
1
2
1
1
3
2
2
1
1
1
1
1
1
2
5
5
1
2
1
3
4
1
2
2
1
1
4
4
4
5
1
1
3
2
1
1
1
4
3
2
1
1
3
1
1
1
2
1
3
2
1
1
1
1
2
1
3
4
12
9
4
3
2
1
2
5
2
1
1
5
1
3
5
1
1
3
2
3
1
1
1
4
2
1
1
2
1
2
2
2
3
2
2
2
3
2
1
3
2
3
1
1
1
2
2
2
2
2
4
6
3
1
4
2
2
2
2
2
1
1
3
4
1
6
1
1
1
2
5
5
4
3
3
3
5
4
9
4
1
2
1
2
1
1
3
1
2
2
1
3
2
1
1
3
4
3
1
2
1
5
1
2
1
2
1
3
3
3
1
1
1
1
1
1
1
1
2
1
1
2
1
3
2
1
1
2
1
1
2
3
1
1
1
3
3
1
1
3
1
1
1
1
1
1
2
1
2
3
1
1
1
1
1
1
1
1
2
1
1
3
2
3
2
4
2
1
1
1
1
2
2
1
2
1
1
2
2
2
1
2
1
1
4
2
1
1
6
1
1
2
2
1
3
2
1
2
2
2
2
2
4
3
1
3
1
2
1
1
2
2
1
3
1
2
1
1
1
3
2
2
1
1
1
2
1
1
1
1
3
2
1
1
6
3
2
2
2
4
2
1
1
1
1
1
3
2
3
2
1
3
1
1
1
3
1
4
1
1
1
1
1
2
3
5
1
3
1
3
6
3
4
1
3
1
5
2
5
2
3
3
3
5
3
1
3
1
4
4
4
5
3
2
2
1
2
1
1
3
5
1
2
3
2
1
1
1
5
4
2
1
2
1
2
2
1
1
2
2
2
1
1
1
2
3
4
2
4
3
1
2
1
1
3
1
1
1
1
1
2
2
1
1
2
1
1
1
2
2
2
1
1
1
1
1
1
1
5
3
3
3
2
2
1
1
5
5
2
2
1
2
5
1
2
1
4
2
2
2
2
1
1
1
1
2
2
2
1
6
3
4
1
6
1
1
1
1
2
1
3
2
1
4
1
3
1
1
2
1
2
2
1
1
1
1
1
2
2
1
1
1
1
2
1
2
1
2
1
1
3
3
1
3
2
5
2
2
5
3
1
1
1
1
2
4
3
1
1
1
2
2
2
2
1
3
4
5
4
5
5
3
2
2
2
1
1
1
3
1
1
4
3
4
1
1
2
3
1
7
1
1
1
1
1
1
1
5
7
2
1
6
3
2
2
3
1
3
3
3
3
1
3
1
1
1
1
1
1
1
1
3
1
2
4
3
2
1
2
2
2
3
1
2
1
2
4
3
3
1
4
3
1
2
1
2
2
1
1
2
3
2
1
4
1
1
1
1
1
4
2
2
1
2
2
2
1
1
1
1
1
2
1
1
1
1
3
1
1
1
2
2
2
1
2
1
2
2
1
7
3
1
5
1
3
4
1
4
2
2
1
1
2
1
1
2
1
2
1
1
1
2
3
4
2
1
1
1
1
1
1
2
2
2
1
2
1
1
1
1
1
1
1
2
4
5
3
1
5
3
2
1
1
1
2
2
1
2
1
1
2
1
3
2
2
3
3
2
1
6
4
5
5
1
6
1
1
1
1
2
4
1
4
2
2
2
2
1
4
3
2
1
1
2
1
1
1
3
3
3
2
1
2
2
1
1
4
1
2
1
1
1
1
1
1
1
2
1
1
1
2
3
1
2
3
2
1
1
2
2
3
4
1
1
2
1
1
1
1
2
2
1
2
1
1
1
2
2
2
2
2
1
1
3
3
5
4
5
5
2
1
1
3
3
1
1
1
5
1
1
1
1
2
1
2
1
1
1
3
7
3
8
4
2
1
4
1
2
1
1
2
9
5
1
3
1
4
9
3
2
2
2
3
6
4
2
2
1
3
2
3
4
1
2
1
2
2
1
2
5
4
3
2
2
7
4
9
4
2
3
1
1
1
1
1
1
1
5
1
2
1
1
2
1
1
1
1
4
2
3
3
2
1
1
1
4
4
2
1
2
1
2
3
1
2
1
1
1
1
1
2
2
1
2
2
2
1
1
1
3
3
1
3
1
5
4
5
3
2
1
2
2
1
2
3
2
4
5
1
2
3
1
1
3
1
5
3
1
2
1
2
1
1
1
1
2
3
2
3
2
1
4
1
5
2
2
2
1
2
3
4
1
2
2
1
1
2
2
3
2
2
2
2
1
1
4
3
1
9
1
3
1
1
5
5
5
2
1
1
1
1
1
1
1
1
1
1
1
2
1
2
1
1
1
1
1
1
2
4
2
1
1
4
1
1
1
1
1
2
3
1
1
1
2
3
1
1
1
5
1
1
2
3
1
1
1
1
1
3
4
2
1
1
1
2
4
1
2
4
1
1
1
2
1
1
2
1
1
1
1
2
4
6
1
3
2
2
1
4
4
2
2
2
1
3
2
2
3
2
1
1
2
2
2
2
2
1
2
1
7
5
1
1
2
3
1
1
5
1
3
3
1
1
2
3
4
3
1
1
2
4
3
3
4
1
1
4
1
1
1
1
3
3
3
3
2
1
2
1
1
3
2
2
2
2
1
2
1
1
4
2
2
3
4
1
2
2
2
1
2
3
2
2
1
1
4
1
1
1
1
2
3
3
3
2
1
1
1
3
1
2
3
1
1
1
2
1
1
1
1
2
1
1
3
1
1
2
1
2
2
1
2
2
1
1
1
1
1
1
2
2
2
3
3
3
2
2
2
2
2
1
2
3
1
4
2
1
1
6
1
1
1
1
2
4
1
2
1
2
1
1
2
1
1
1
1
1
1
1
2
1
3
2
3
6
2
2
3
3
1
1
1
1
2
1
2
3
6
3
1
1
3
3
2
1
3
2
1
1
1
2
1
3
2
2
2
2
1
1
1
1
1
1
1
1
1
1
2
3
1
1
2
2
2
2
1
3
2
1
2
2
1
2
2
1
1
4
1
1
1
1
1
1
3
6
4
3
1
3
2
2
2
1
2
3
1
2
1
1
2
5
1
1
1
1
1
1
1
1
1
1
2
1
1
3
5
1
1
1
1
1
1
1
1
1
1
2
1
1
3
1
4
2
3
1
2
1
1
1
2
1
3
1
1
1
1
1
1
1
2
1
3
1
1
1
1
2
1
2
1
1
1
1
1
1
1
1
1
1
1
1
5
5
1
1
2
1
1
3
1
3
1
4
1
4
1
2
1
2
1
2
1
2
4
1
4
1
2
1
2
2
2
2
6
3
1
2
1
2
3
3
3
3
2
2
2
2
1
1
1
1
2
3
6
3
1
1
1
1
6
1
7
1
3
2
1
3
5
5
4
4
3
1
1
1
1
2
1
2
4
2
1
2
8
5
1
2
1
1
1
1
1
3
4
5
2
1
2
2
1
2
1
1
2
1
1
2
1
4
2
1
1
1
2
5
3
2
6
1
1
1
1
3
1
2
4
1
2
2
2
5
2
4
1
3
2
3
3
3
2
5
1
2
3
1
2
2
2
1
1
1
2
1
2
2
1
2
2
1
2
1
2
1
3
3
2
1
3
2
5
1
2
1
3
3
3
3
1
1
1
1
1
1
2
2
1
3
5
1
1
1
2
2
2
2
3
2
1
3
2
1
1
3
1
1
1
1
4
2
3
1
2
3
3
1
2
6
1
1
1
3
1
1
1
1
1
2
2
2
1
1
2
1
3
1
3
3
1
1
1
1
3
1
3
3
3
2
1
1
2
4
3
1
1
3
1
6
3
4
1
2
2
2
4
2
1
1
3
2
2
1
2
3
1
3
2
4
1
1
7
2
1
1
2
1
2
1
1
3
1
1
1
1
2
1
1
1
2
2
1
1
1
1
1
1
2
2
3
1
5
3
1
3
1
3
3
1
1
2
2
2
1
2
3
2
1
1
3
1
1
3
1
1
2
2
2
1
1
1
1
1
3
1
1
1
1
1
1
1
3
1
2
2
1
1
2
2
1
1
3
3
2
2
1
1
2
1
1
1
2
1
1
1
4
1
1
2
1
1
1
2
2
2
1
2
3
3
3
3
3
2
2
1
1
2
2
1
1
1
1
3
1
2
3
4
1
2
2
1
3
3
3
4
2
3
2
1
2
1
1
2
2
4
4
3
4
1
1
3
1
1
1
1
1
1
1
1
1
4
2
2
3
4
1
1
1
3
1
3
2
1
1
3
4
1
5
1
3
1
1
1
1
1
4
2
1
2
1
5
1
3
3
4
3
2
2
4
6
3
1
1
2
1
3
2
3
1
2
4
1
3
2
1
1
2
2
1
3
1
2
2
2
3
2
1
2
8
3
1
1
2
3
2
2
1
1
3
1
1
1
1
1
4
1
1
1
4
4
1
2
1
1
6
1
6
1
2
4
4
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
3
3
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
1
2
2
1
2
2
1
1
1
4
1
2
1
4
2
1
1
2
2
1
2
1
1
1
1
2
1
1
1
1
1
1
2
2
3
3
1
1
2
1
2
4
2
1
4
2
3
1
3
9
1
1
1
3
1
2
1
2
1
2
1
2
2
2
1
2
2
2
1
2
2
1
1
2
1
1
4
7
8
4
2
2
1
1
1
1
2
6
5
4
2
2
1
1
2
1
2
1
1
3
3
3
3
1
1
1
2
2
1
1
2
1
2
2
1
1
3
1
2
2
1
3
1
3
3
1
2
1
1
1
1
1
1
1
2
4
1
1
1
1
5
1
1
2
3
3
1
3
1
1
1
1
1
2
2
2
5
2
3
2
2
3
1
3
2
1
1
1
3
1
3
2
1
1
1
2
2
1
2
1
1
7
2
1
6
1
1
1
1
2
1
1
1
1
1
1
3
1
1
3
4
1
1
1
1
1
2
1
1
2
1
1
2
2
1
2
3
1
1
1
2
2
2
8
1
5
7
3
3
1
2
1
1
3
1
7
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
2
2
1
4
1
3
2
2
7
2
2
4
2
1
2
2
3
1
1
3
2
2
1
2
1
2
1
1
2
3
1
1
1
1
2
1
3
5
5
1
1
1
1
1
1
3
2
6
1
1
1
2
2
3
1
1
2
1
1
1
2
1
1
1
1
2
2
7
6
4
6
2
6
3
3
1
3
6
2
1
4
7
7
1
4
1
3
2
2
1
1
2
1
1
1
2
1
2
2
5
3
3
3
2
1
3
1
1
1
3
1
2
3
3
3
2
4
2
6
6
9
1
1
1
2
4
6
1
1
1
2
1
2
1
1
1
1
2
4
6
1
2
3
1
2
5
1
1
1
2
2
1
1
3
1
2
1
1
3
3
1
3
1
4
1
3
2
1
1
1
2
1
2
1
3
1
1
3
1
4
2
1
3
1
1
1
1
1
2
1
1
2
1
1
1
1
1
1
2
2
2
4
2
1
1
1
2
2
1
5
1
1
1
1
1
1
1
1
1
1
1
2
1
1
2
1
2
3
1
1
1
1
5
1
2
3
1
1
1
1
1
2
1
1
1
2
1
2
1
1
1
2
1
1
1
3
1
1
1
1
1
1
1
2
1
1
2
1
1
4
4
1
1
3
1
2
2
1
1
1
1
1
3
2
2
3
5
5
2
2
1
1
3
1
2
4
2
1
3
2
1
1
1
1
1
1
1
1
1
1
3
3
1
3
1
1
1
1
1
1
1
2
1
2
2
1
1
2
2
1
1
2
1
2
3
2
1
1
3
7
1
3
1
1
1
1
1
1
1
3
1
1
1
1
1
1
1
1
2
2
2
1
1
1
2
1
2
2
1
2
2
1
1
1
1
2
2
3
3
2
2
1
1
1
1
1
2
1
2
3
1
3
2
2
1
2
1
2
2
1
3
3
4
2
2
2
4
4
3
4
1
1
2
2
2
1
4
1
1
2
1
1
1
1
1
1
3
1
1
1
1
1
2
1
1
2
1
2
3
3
4
1
4
1
1
1
1
1
1
5
3
1
2
2
1
1
3
2
3
3
3
2
2
1
1
2
1
2
2
1
1
1
1
1
2
2
2
1
1
1
2
1
1
2
1
1
2
1
1
1
1
2
2
3
1
1
5
4
1
1
1
1
1
1
1
2
1
1
1
6
2
1
1
1
1
2
1
1
1
2
2
1
2
1
2
1
1
2
3
2
2
1
2
6
2
2
2
2
1
4
6
1
2
3
4
2
2
3
1
1
1
2
1
1
3
1
2
3
1
2
4
1
2
2
1
1
1
1
3
1
3
8
4
1
1
1
3
2
3
2
2
6
4
3
7
1
4
5
1
2
2
2
2
1
1
3
1
1
1
4
1
2
4
1
1
2
2
2
3
2
1
2
2
5
4
2
4
5
4
4
1
1
1
5
1
3
3
1
1
2
4
2
1
3
1
4
2
3
3
2
1
4
5
2
2
1
4
1
2
3
3
1
2
1
2
2
2
3
1
2
1
3
3
3
2
3
1
1
1
2
4
9
10
9
1
6
4
13
5
1
1
4
2
1
3
1
3
1
2
1
2
3
2
3
1
3
7
4
2
2
2
2
1
1
2
2
1
1
1
1
3
1
4
1
1
1
3
1
1
2
1
1
2
1
2
1
2
3
5
2
3
1
2
4
7
4
3
1
2
1
2
1
3
5
1
1
1
3
5
2
2
2
1
1
1
2
5
1
1
2
1
2
1
1
1
1
1
2
1
2
1
1
2
3
6
1
1
1
1
1
1
1
2
2
1
1
2
1
1
1
4
1
6
4
1
3
6
1
2
1
1
1
3
3
2
2
1
2
4
5
5
6
3
1
1
1
1
1
1
6
2
1
3
2
2
3
2
6
3
1
1
3
1
4
2
1
2
1
3
4
3
3
2
1
5
1
3
1
4
2
3
4
1
1
3
5
1
3
2
1
2
1
2
2
4
1
1
3
1
3
1
1
1
1
1
1
1
1
3
3
1
1
2
1
2
1
2
1
1
1
1
5
5
2
1
1
1
1
1
2
1
4
1
3
2
1
3
2
3
1
2
1
1
1
4
1
6
3
4
2
2
2
2
2
2
1
1
1
1
1
2
4
1
2
1
4
4
4
4
5
1
1
2
1
2
1
3
5
3
4
1
3
1
1
1
2
2
1
1
1
1
1
1
4
4
4
1
1
1
1
3
1
2
1
1
1
1
5
3
2
1
2
2
1
2
1
2
2
5
1
2
1
1
1
1
1
4
2
1
2
3
4
1
5
7
3
1
4
2
2
1
2
5
2
3
1
3
1
3
1
1
2
1
2
3
4
3
1
1
2
2
2
3
1
1
1
3
2
3
1
1
2
2
1
4
5
1
2
1
2
4
4
1
5
1
1
2
2
1
1
1
3
1
1
1
2
1
1
1
1
1
1
2
1
1
1
2
1
1
2
2
1
1
8
1
2
3
2
2
3
1
1
2
2
4
2
1
1
1
1
3
5
3
2
1
3
4
1
2
1
1
1
5
4
3
2
1
1
2
3
1
5
2
1
2
2
2
1
4
3
8
1
1
2
1
6
1
3
6
1
1
2
1
2
1
1
2
1
2
3
2
1
3
1
1
1
1
3
1
3
3
1
1
2
1
3
1
2
1
2
2
6
2
1
1
1
1
1
1
1
1
2
1
1
2
1
2
2
2
2
2
1
1
1
1
2
2
1
2
2
1
2
1
2
2
4
4
4
2
3
2
4
1
2
2
1
1
2
1
1
6
3
1
1
1
1
1
2
3
1
4
1
1
1
2
1
3
1
3
3
2
4
2
1
4
2
4
1
4
3
2
1
2
1
2
1
1
6
2
7
6
1
1
5
2
1
5
3
1
2
1
1
2
1
2
2
1
1
1
2
2
1
4
2
8
8
1
3
3
4
1
6
5
3
1
2
5
1
6
2
2
5
2
3
2
4
1
3
1
4
2
2
1
1
1
1
1
1
1
1
1
1
2
2
2
1
3
3
1
3
2
1
2
1
2
2
1
2
3
1
3
2
2
2
1
1
1
1
1
1
3
1
1
1
4
2
1
1
1
1
1
1
2
2
2
1
1
1
1
1
1
1
3
2
1
1
2
6
3
1
2
1
2
1
1
1
3
2
2
5
2
1
5
3
3
2
4
4
3
7
4
4
5
4
2
2
2
1
1
1
1
2
2
1
1
1
1
2
2
1
1
2
4
1
3
4
1
1
3
1
1
2
3
2
1
1
1
1
3
1
1
1
1
3
1
1
2
3
5
1
4
1
2
2
2
1
1
2
3
5
4
1
3
3
1
6
7
6
3
2
1
5
4
3
1
1
3
3
1
3
1
2
2
3
2
2
4
2
3
4
1
2
1
1
1
1
1
2
2
1
2
2
3
1
1
2
2
4
4
1
3
1
1
1
1
1
1
1
2
1
2
1
2
2
5
3
1
1
1
2
2
1
1
1
3
1
2
1
1
1
1
1
2
1
4
3
2
1
2
3
1
1
1
1
1
1
1
1
1
1
3
1
5
1
2
4
4
3
1
2
3
1
1
1
1
1
1
1
1
1
1
2
1
1
1
1
1
4
1
1
1
2
3
6
4
4
1
1
1
2
1
1
2
5
2
2
1
2
1
1
2
1
1
2
3
2
1
2
2
1
3
2
1
1
1
1
1
3
2
1
3
2
4
3
4
7
3
2
1
3
7
4
4
1
1
2
4
3
5
1
1
1
1
3
6
1
2
3
3
3
1
2
4
1
2
5
3
3
1
1
2
6
4
1
2
2
1
4
4
5
6
3
4
2
2
1
1
1
1
2
2
1
1
2
2
1
1
1
2
6
1
4
1
5
2
3
1
3
2
1
2
1
1
2
2
3
2
2
2
1
1
1
1
1
2
5
5
4
1
1
2
1
2
3
1
1
1
2
4
8
2
8
2
1
2
1
1
1
1
1
3
2
2
1
1
3
6
1
1
1
3
2
3
2
1
1
2
1
1
1
1
1
1
1
1
2
2
1
2
1
1
1
1
1
1
3
3
1
1
2
1
2
3
1
1
2
2
1
2
1
1
1
2
1
1
4
4
1
4
3
1
5
2
6
1
1
1
1
4
1
1
1
4
2
1
1
1
2
1
1
1
1
3
4
1
1
1
1
2
1
1
1
1
3
2
4
3
4
3
1
1
4
3
4
7
1
1
2
1
2
1
1
2
2
1
2
1
2
1
2
2
2
2
3
3
1
3
1
4
6
4
1
5
5
1
7
5
1
2
1
2
1
3
1
2
3
3
4
2
3
2
2
2
1
1
2
2
2
1
1
1
2
2
2
3
1
1
1
1
1
2
1
1
1
1
3
1
1
2
2
3
1
3
2
2
4
3
5
4
2
5
6
2
1
2
2
1
1
2
7
1
4
1
2
2
2
5
2
2
1
3
8
3
1
1
3
3
1
1
1
1
1
1
3
2
2
2
1
1
1
4
1
2
4
1
1
2
4
1
4
1
2
1
2
2
2
2
2
2
1
1
5
4
1
2
1
3
1
5
2
1
1
1
2
3
2
3
1
1
2
1
3
7
1
1
2
1
1
2
1
2
4
2
2
1
3
2
2
2
1
1
1
2
1
1
2
1
2
4
3
2
2
3
1
1
1
1
1
2
2
1
3
2
3
7
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
3
4
4
2
2
4
4
2
3
1
6
2
4
1
8
1
3
5
2
2
1
2
1
2
1
1
3
5
1
3
1
1
1
3
3
1
2
1
1
2
9
8
1
1
5
9
3
1
5
3
2
1
3
1
1
2
1
1
4
1
4
4
1
4
2
3
1
3
4
1
3
2
3
2
1
3
1
1
2
3
2
5
1
1
5
2
5
1
1
1
1
2
1
2
1
1
1
2
1
4
1
7
1
1
2
2
4
2
5
4
4
1
1
2
1
1
2
1
1
2
3
2
2
2
3
1
1
4
3
4
3
3
1
1
2
1
2
1
1
2
2
1
3
3
1
3
1
1
1
1
1
1
1
4
1
1
3
2
5
1
1
1
3
3
5
1
2
1
2
3
1
2
4
3
1
1
2
1
1
1
1
1
4
3
6
3
4
3
2
1
1
3
1
1
1
1
1
1
4
2
1
2
1
3
1
3
1
4
4
2
2
3
1
2
1
2
1
2
2
1
1
3
2
1
2
1
2
4
2
2
1
2
3
4
2
1
5
1
1
2
1
1
1
1
6
1
1
1
1
4
5
1
1
1
3
3
4
4
2
6
1
1
3
3
2
4
2
2
1
1
1
3
1
1
2
5
1
1
1
2
1
1
1
7
5
2
2
1
1
3
3
1
2
2
4
4
4
2
2
1
2
1
3
3
3
3
3
3
1
1
1
1
1
1
3
1
1
1
1
1
4
4
1
2
2
1
2
1
2
1
5
1
1
1
1
1
1
2
1
1
1
1
1
1
1
2
1
2
1
4
2
2
2
1
2
3
1
1
1
4
1
1
1
1
1
1
1
1
1
2
3
1
1
3
3
1
1
1
1
1
1
2
1
4
1
2
5
2
1
1
2
2
2
1
2
1
1
1
1
1
2
2
1
1
1
1
6
4
6
1
2
2
4
3
6
1
3
4
1
1
3
1
2
1
1
2
2
4
3
1
2
1
1
1
1
1
3
3
1
1
1
1
1
3
1
2
2
1
3
1
1
1
1
1
4
3
3
3
2
1
3
1
3
6
1
2
2
1
1
1
1
2
1
1
3
4
3
1
1
1
1
4
3
4
2
2
1
1
2
1
1
1
2
3
1
1
1
1
1
4
1
3
3
1
3
3
1
3
3
1
1
2
2
1
1
2
1
1
3
1
2
4
1
1
1
1
1
2
2
1
1
2
2
2
1
4
2
2
2
2
1
1
4
2
1
3
2
1
2
2
1
1
1
2
1
1
2
1
1
1
1
2
2
1
3
2
1
1
1
2
2
1
1
2
2
3
2
1
2
1
2
1
2
3
3
1
2
2
2
1
1
1
1
4
2
1
1
1
2
4
1
2
1
1
1
3
4
1
3
1
1
1
2
1
3
4
3
2
2
1
1
4
7
2
1
1
1
1
1
2
2
2
1
1
2
1
1
1
2
2
2
1
1
1
4
2
2
1
7
2
1
6
1
2
2
5
1
2
3
1
1
1
3
2
2
5
1
1
1
1
4
1
1
2
2
1
2
2
2
2
1
1
1
3
2
2
5
3
1
4
5
5
1
1
2
1
1
2
2
1
1
2
1
2
1
2
1
1
4
4
1
1
3
1
1
2
1
1
4
3
7
1
1
1
1
1
3
3
2
1
1
2
1
2
2
4
1
3
3
7
1
1
1
2
1
1
1
2
6
5
2
2
1
1
1
1
2
4
1
2
1
1
4
1
2
4
1
3
1
2
1
3
3
4
5
1
6
4
2
1
10
3
4
4
1
2
1
1
1
1
4
4
3
1
1
1
1
2
1
1
2
1
3
1
3
1
2
1
1
2
2
2
2
1
5
2
1
2
2
2
1
1
2
2
2
2
1
1
2
1
1
3
1
2
2
1
1
2
2
2
1
4
1
1
5
6
1
1
1
1
4
2
1
2
1
2
3
6
2
1
1
1
1
4
2
1
1
1
1
1
1
1
2
1
2
2
3
1
1
1
1
1
1
2
1
1
3
1
1
3
1
1
1
2
2
2
2
1
1
2
1
1
1
1
2
1
1
1
1
2
2
3
3
2
1
1
1
1
1
2
1
1
3
3
4
1
1
1
3
1
1
3
3
1
1
3
3
3
1
1
2
6
2
1
1
1
1
1
1
1
3
1
1
3
3
1
2
1
1
3
4
2
4
3
4
2
2
2
3
1
2
2
1
4
1
1
1
2
1
1
2
2
5
4
5
4
3
4
1
1
1
1
1
1
1
1
2
1
1
1
1
1
1
1
1
3
1
3
1
1
3
2
1
2
4
1
2
8
2
5
1
2
3
3
4
1
1
1
1
1
1
1
1
1
1
1
5
1
1
2
1
1
1
1
1
1
1
1
1
2
2
2
1
1
4
2
3
2
1
1
1
1
1
4
4
5
1
5
4
1
1
4
1
3
4
1
1
1
1
2
2
1
1
1
3
2
2
2
1
2
1
7
1
2
2
1
2
2
1
2
1
1
1
4
1
4
6
7
2
1
2
2
2
2
2
1
2
2
1
3
1
2
2
1
6
1
1
1
1
4
1
3
3
2
4
2
1
1
1
1
1
2
2
1
6
6
1
1
1
1
1
2
1
2
1
1
4
2
3
3
4
3
2
4
3
3
3
1
2
2
1
3
1
2
1
2
1
1
1
1
1
2
2
1
1
2
1
1
1
1
2
4
6
1
1
3
6
3
1
5
3
3
2
2
2
1
2
2
1
1
1
2
1
1
1
2
3
1
2
1
2
3
3
4
1
1
3
2
1
2
2
2
1
3
2
3
2
1
1
1
1
1
1
5
3
2
2
2
2
1
1
5
1
1
1
1
3
1
1
3
4
1
1
1
2
2
4
4
1
2
1
1
1
1
1
1
1
1
1
1
2
1
1
2
2
1
2
5
1
1
1
1
1
1
1
1
1
2
1
2
4
2
3
3
1
3
1
2
2
1
4
2
1
1
2
2
1
2
1
1
1
2
2
1
1
2
2
2
1
1
1
1
1
1
4
3
2
4
4
1
1
1
1
1
6
1
6
1
1
2
1
1
2
1
1
3
1
1
4
1
2
2
2
1
1
1
2
1
1
1
1
3
1
1
4
1
1
2
1
3
3
2
2
1
1
1
2
3
7
1
3
5
2
6
4
3
1
1
1
1
2
1
2
2
2
1
1
1
2
2
1
2
3
5
3
2
1
1
1
1
1
1
1
1
2
3
5
6
3
1
2
1
5
2
1
1
1
1
1
2
1
1
1
1
2
1
1
3
2
1
1
1
1
1
4
2
4
5
1
1
1
2
4
4
3
1
1
4
1
1
1
1
1
1
4
4
2
1
1
1
1
2
1
1
2
2
4
1
2
2
1
1
1
2
3
1
2
2
2
1
1
1
1
2
1
4
5
2
2
2
1
2
2
2
3
1
1
1
1
1
1
1
1
3
1
1
1
1
1
3
2
3
1
1
1
1
1
1
1
1
2
2
1
1
1
1
2
1
2
1
3
4
3
3
2
4
6
5
2
1
4
1
1
2
1
1
6
3
3
4
1
2
2
2
3
3
1
1
2
1
2
4
3
3
3
3
2
2
4
3
3
3
1
1
2
2
1
1
1
2
2
2
4
2
2
6
2
11
5
6
5
1
1
1
1
1
1
2
1
5
1
2
2
2
4
6
3
2
1
2
2
2
1
4
1
1
2
5
2
4
5
2
5
5
3
1
2
2
3
3
1
1
2
1
4
1
1
1
1
1
2
1
2
1
1
1
1
2
1
1
1
1
1
1
2
3
5
6
7
1
2
1
1
1
1
1
1
1
1
1
2
1
8
1
1
3
1
2
1
1
3
3
2
2
1
1
1
1
1
2
1
2
1
1
6
2
1
3
1
4
2
1
2
5
7
3
3
5
1
1
3
4
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
4
1
1
1
1
1
2
3
2
1
1
2
2
2
4
1
5
1
2
1
1
1
1
2
2
1
1
1
2
2
2
2
2
1
6
7
2
2
1
3
1
1
2
1
5
2
6
3
1
1
2
1
1
1
1
1
3
3
1
1
1
1
1
2
2
1
2
2
1
1
2
1
1
1
4
5
5
2
2
1
1
1
2
1
2
2
4
2
1
3
4
1
6
1
2
1
1
1
1
2
3
1
2
1
2
1
5
3
1
1
2
3
4
4
3
2
3
1
1
1
1
1
1
1
1
1
1
1
1
3
1
3
1
2
1
2
1
1
1
1
1
1
2
2
2
2
3
2
2
2
1
2
2
5
3
1
2
2
1
1
1
2
3
1
2
5
3
3
1
4
1
1
1
1
2
4
2
1
4
1
2
1
1
1
2
1
1
4
4
2
2
2
1
4
5
1
1
6
4
1
2
2
1
2
2
3
4
3
1
1
2
5
1
1
1
4
2
1
2
1
3
1
4
1
1
4
4
3
1
1
1
3
3
2
1
1
3
1
1
2
1
1
2
1
2
1
2
1
1
1
1
1
1
1
1
3
1
3
3
2
2
3
1
1
3
2
1
2
5
6
1
2
2
2
1
2
1
1
3
1
2
2
3
1
2
1
1
2
1
1
2
4
6
1
1
4
1
2
3
3
2
3
1
2
1
1
1
2
2
3
2
2
1
2
2
5
5
4
1
5
1
3
2
1
1
3
6
6
2
3
1
1
1
1
1
2
1
1
1
2
2
3
3
1
2
2
1
3
1
1
1
2
1
4
1
1
3
2
1
2
2
2
2
2
3
4
1
3
1
3
1
3
3
1
3
3
1
1
1
3
1
4
3
3
3
2
2
1
1
1
2
4
2
1
1
1
1
1
1
1
5
1
4
1
2
2
1
5
3
1
1
1
1
1
3
1
1
4
1
1
1
1
1
1
2
4
2
1
2
3
2
3
2
1
2
2
1
2
2
4
2
2
3
3
4
1
1
1
4
1
4
2
1
1
1
1
3
1
2
3
2
1
2
1
1
1
1
2
2
2
1
3
1
1
1
1
3
1
2
1
1
1
1
1
3
1
1
1
1
2
1
1
1
1
2
2
1
1
1
2
1
4
2
1
2
2
1
1
2
1
1
1
1
1
2
2
1
4
1
1
1
1
1
1
2
1
4
1
1
1
4
2
1
2
1
1
1
1
3
1
1
2
3
3
1
1
3
1
2
1
2
1
1
1
1
2
1
3
2
2
3
1
2
1
1
2
4
3
1
1
1
1
1
1
1
2
1
3
5
1
2
1
2
2
2
3
1
2
1
3
2
1
2
2
2
2
3
1
1
1
3
1
2
3
3
2
4
6
4
1
2
2
2
2
2
1
2
1
1
1
4
3
1
1
1
1
3
1
1
1
2
2
3
6
1
2
2
5
2
2
4
3
2
4
3
2
3
1
1
2
2
1
2
4
2
2
1
2
2
2
1
4
2
1
1
3
4
9
3
3
3
1
5
6
1
1
4
4
10
8
2
7
5
1
3
4
2
4
2
1
1
3
1
2
1
4
4
1
3
2
1
3
1
1
3
1
1
1
1
4
1
2
1
1
1
2
1
1
2
2
2
1
1
1
1
1
1
1
2
2
1
1
1
1
1
3
1
4
2
1
1
1
1
4
1
3
3
1
7
6
6
1
4
6
8
2
2
2
1
2
3
1
2
2
4
5
1
1
3
1
2
1
1
1
1
1
1
3
1
1
1
3
2
1
1
1
1
2
2
2
2
2
1
2
2
1
1
2
1
1
1
1
1
1
2
2
2
2
2
5
3
1
2
2
1
1
1
1
1
1
4
2
1
1
1
2
1
1
1
1
1
1
3
1
4
3
1
2
2
1
1
1
2
1
3
1
5
3
1
1
1
1
1
1
1
2
1
3
1
3
3
6
3
2
3
2
1
2
2
1
1
1
1
2
2
2
2
2
1
1
3
3
3
3
4
2
2
1
1
1
2
1
2
3
1
3
4
1
4
6
3
2
2
4
3
3
5
1
1
1
7
10
1
1
2
1
5
1
2
1
2
2
3
3
2
4
1
7
4
5
1
2
4
1
1
2
2
1
1
1
2
1
2
3
5
1
3
2
1
2
2
3
1
3
1
3
1
1
2
1
2
2
1
4
1
1
1
1
1
3
4
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
1
2
1
1
3
2
1
1
1
1
2
1
1
1
2
1
2
1
6
1
1
2
1
2
2
1
2
1
1
1
1
1
1
1
1
2
2
3
1
1
1
1
1
2
1
1
2
1
1
1
1
2
2
1
1
3
1
4
2
4
6
2
2
2
5
8
2
1
1
4
2
1
5
1
1
4
2
2
7
1
1
1
1
3
2
1
2
2
2
1
6
4
4
3
6
4
1
1
2
6
5
3
3
3
3
1
1
4
1
1
3
2
2
1
5
1
1
1
1
2
2
1
1
5
3
1
1
1
2
1
1
1
3
2
1
2
1
2
1
1
1
6
1
1
1
1
2
4
6
5
2
2
2
1
1
1
1
2
3
3
1
4
7
4
5
3
2
1
2
3
1
1
1
1
3
2
1
2
1
2
1
1
1
1
3
1
4
2
1
4
1
1
1
1
3
1
1
3
1
1
1
3
2
2
1
2
3
3
2
3
5
1
1
2
3
1
1
2
1
1
1
1
2
2
1
2
2
3
1
2
1
6
2
1
4
1
4
1
1
1
1
2
1
2
1
4
1
1
2
2
2
1
1
2
2
2
1
1
1
1
2
1
3
3
2
4
1
2
2
1
1
1
1
1
1
3
1
2
2
1
1
1
1
3
1
1
3
1
1
2
2
3
1
1
1
2
3
1
1
3
1
2
1
2
2
2
2
1
1
1
1
2
1
3
1
2
1
2
3
1
2
1
3
1
2
2
1
1
6
7
2
9
3
4
5
1
1
2
1
1
2
1
1
1
1
3
2
2
1
1
3
5
5
2
4
2
1
1
1
1
1
2
1
3
1
2
1
2
3
3
1
2
2
4
4
4
1
2
4
1
2
1
1
2
1
1
1
3
3
2
2
6
1
1
1
1
2
1
4
2
1
1
2
2
3
2
1
3
1
1
2
3
1
1
1
1
2
1
1
1
1
2
3
4
1
3
1
1
1
1
1
1
1
1
1
1
2
3
2
3
1
3
2
4
3
1
2
2
1
2
1
1
1
1
3
1
2
3
3
1
2
3
1
1
1
1
5
3
2
5
1
1
1
4
1
1
1
1
2
1
2
1
1
1
1
3
2
6
7
4
7
3
1
2
1
3
1
1
2
2
5
2
5
4
1
2
1
2
1
1
2
3
2
2
2
4
2
2
1
1
3
5
1
1
4
2
2
1
1
1
1
2
1
1
4
1
4
1
2
3
3
1
1
1
3
1
2
4
3
4
2
6
1
2
3
2
1
1
1
2
2
2
1
1
1
1
1
1
1
1
2
2
2
3
1
1
3
3
1
3
2
3
1
2
2
2
2
1
1
1
2
1
2
1
1
2
1
2
11
3
6
10
5
1
3
4
2
3
3
1
2
1
1
1
2
1
1
3
3
3
2
2
4
2
1
1
3
1
2
2
2
3
4
3
1
1
3
1
1
3
3
2
1
2
2
3
2
4
2
2
1
1
2
2
2
3
4
4
1
1
2
2
2
2
1
2
1
1
2
2
2
1
4
4
4
7
2
2
2
1
2
4
1
2
1
3
3
2
4
1
4
2
5
3
1
4
6
1
1
1
1
1
2
2
1
5
3
3
5
2
1
1
2
2
4
1
1
1
1
2
4
1
2
1
1
2
1
3
2
1
3
3
1
3
1
1
1
1
1
1
1
2
2
2
3
1
1
1
1
2
1
2
1
3
3
1
2
1
1
1
1
1
2
2
2
3
1
1
1
2
1
1
1
1
1
1
2
1
1
1
1
1
1
3
1
2
1
2
1
1
1
1
1
1
1
1
2
2
5
3
2
1
4
4
1
1
1
3
1
1
1
1
3
1
1
3
4
8
7
4
6
1
5
4
1
1
2
4
2
1
1
4
2
1
1
1
1
1
1
1
3
2
3
2
2
1
1
1
3
6
1
3
1
1
1
4
2
3
4
3
2
1
2
4
5
1
1
1
1
1
1
1
1
1
2
2
2
1
2
4
1
2
2
1
1
1
1
2
1
2
3
2
1
3
1
3
2
1
1
1
1
1
1
1
2
1
1
1
1
1
1
1
1
1
3
4
1
5
5
1
2
3
4
3
4
3
1
6
2
6
3
1
5
5
8
5
5
2
7
2
3
1
1
2
1
4
4
2
3
4
4
2
8
1
6
2
4
1
3
1
2
1
1
3
1
5
2
6
1
1
1
1
1
2
1
3
2
3
1
4
1
2
1
1
2
1
4
1
1
1
1
1
1
1
1
1
1
3
2
1
2
2
2
4
2
2
3
2
1
1
1
5
5
1
1
3
1
3
2
2
1
1
2
1
3
2
1
2
1
1
1
2
1
3
2
1
2
5
2
1
1
1
1
1
1
1
1
1
1
2
1
1
1
1
1
1
2
2
1
4
2
5
1
3
1
2
2
1
1
6
2
4
3
1
1
2
1
2
1
2
3
3
3
3
3
2
1
3
1
4
2
3
3
1
1
1
2
5
1
1
1
1
4
1
2
4
3
1
1
1
4
1
5
11
4
1
6
5
6
11
1
7
1
1
7
1
1
1
1
3
4
3
3
2
1
1
1
2
3
3
2
1
2
4
1
5
3
2
1
5
1
1
1
1
1
1
1
1
2
1
4
1
1
4
1
2
3
1
1
6
1
1
2
2
2
1
2
3
1
1
4
2
1
3
1
1
1
3
2
1
1
1
1
1
2
2
1
1
2
2
1
3
3
1
1
1
1
4
6
3
2
1
2
4
2
4
3
2
2
1
3
5
3
3
1
5
3
2
1
3
3
6
1
1
2
1
1
2
3
3
2
2
5
1
3
2
2
1
1
1
1
2
3
1
1
3
2
2
4
2
1
2
1
3
1
1
1
1
1
4
2
1
1
2
1
3
1
1
1
1
2
3
2
4
1
2
1
1
1
1
1
1
1
1
1
1
1
2
1
1
1
1
1
1
1
1
2
2
1
2
2
4
1
1
1
3
2
1
1
1
3
2
1
2
2
1
1
2
1
1
1
1
1
1
1
1
3
4
2
3
3
2
1
3
3
2
1
1
2
5
1
1
2
1
1
2
3
1
6
3
4
1
1
4
1
5
2
1
5
2
1
1
2
4
2
1
1
3
1
4
4
3
1
2
1
1
1
1
1
1
4
1
1
4
1
6
1
1
4
1
1
3
1
3
1
2
1
2
2
2
3
1
1
1
3
6
1
3
4
1
1
1
4
1
2
1
2
2
1
6
1
4
1
2
1
1
2
5
4
1
1
1
3
3
4
1
1
3
1
3
1
1
1
1
1
1
1
3
1
5
1
1
5
2
2
1
1
2
2
2
1
3
1
1
3
1
3
3
1
1
1
1
1
2
4
5
2
4
3
2
4
3
1
3
1
2
1
1
6
7
6
6
6
2
1
1
2
1
2
1
1
1
3
4
2
3
2
1
2
1
1
1
4
1
1
1
3
1
1
2
1
4
3
7
1
2
1
1
1
1
2
3
4
3
5
1
5
3
1
1
3
1
1
1
1
1
1
3
1
1
1
1
1
1
1
1
1
1
1
2
2
3
2
2
4
1
4
4
1
1
3
3
7
7
5
1
1
1
1
1
1
2
1
3
1
1
5
1
1
6
1
5
1
3
1
2
1
6
2
1
2
1
2
5
1
2
1
1
1
1
3
2
2
3
1
2
2
2
2
1
1
1
2
1
1
1
1
1
1
1
1
1
1
1
1
3
1
5
2
2
1
4
3
2
2
2
2
2
1
1
1
2
4
4
4
3
3
3
4
4
1
2
1
1
1
2
1
1
2
2
2
2
1
2
2
2
3
3
2
1
2
1
3
1
2
1
2
2
2
1
1
2
3
1
1
3
1
1
1
3
1
1
1
1
1
1
1
2
3
1
2
3
4
2
1
1
3
1
1
3
1
1
5
1
5
3
5
7
4
1
2
2
1
1
2
2
2
2
1
5
1
5
2
4
2
3
1
2
1
2
1
2
1
2
2
4
1
1
3
1
8
1
3
4
2
3
2
1
1
2
1
1
5
2
1
2
2
1
3
2
1
3
2
1
2
2
1
1
1
2
3
2
2
1
1
1
1
3
2
1
1
1
1
1
1
3
3
1
2
1
1
1
2
2
1
1
4
1
1
1
3
2
1
3
2
1
4
2
4
1
1
1
2
3
3
1
1
1
4
2
2
6
1
1
1
1
2
4
4
1
3
2
1
2
1
1
2
2
1
1
3
1
1
2
2
1
2
4
2
2
1
1
1
2
2
1
1
3
2
2
1
1
3
2
2
1
1
2
2
2
1
3
1
2
2
2
2
1
4
4
2
3
1
2
1
1
4
1
2
1
2
4
4
1
2
1
1
2
1
4
4
1
7
1
1
2
2
1
2
2
2
2
2
2
1
2
2
1
5
2
2
2
1
3
2
3
1
1
1
1
3
1
1
2
1
1
1
2
1
3
4
1
2
2
3
1
5
1
1
2
3
1
1
1
1
3
1
3
1
2
2
2
2
1
3
7
1
7
8
2
2
4
5
9
2
1
2
1
3
1
2
1
1
1
1
1
2
1
1
1
1
1
2
2
2
1
1
1
2
3
1
1
1
2
2
4
2
1
2
7
9
1
7
1
1
1
1
1
5
7
1
1
1
2
1
5
2
5
2
4
2
2
2
2
2
1
1
1
1
1
1
3
3
3
3
1
4
1
3
1
1
1
1
1
1
3
1
1
1
2
1
1
1
3
3
2
9
2
4
2
1
1
3
1
3
4
2
2
1
1
2
3
1
3
1
2
4
1
1
1
1
1
1
1
2
3
2
3
5
2
2
2
3
2
1
1
1
2
1
1
1
1
2
3
3
1
1
1
1
1
2
1
3
2
3
1
2
3
1
1
3
3
1
2
2
1
1
1
1
1
1
1
2
3
1
4
3
1
2
2
1
1
3
2
1
1
4
1
1
3
3
1
1
1
3
2
2
1
1
3
1
2
1
2
1
1
1
2
1
4
4
2
1
2
4
2
1
1
1
1
2
2
7
1
1
3
2
1
3
1
1
1
3
1
5
4
4
1
1
2
3
3
1
3
3
3
3
3
3
2
1
1
4
1
1
3
4
5
3
2
2
2
1
2
1
2
4
2
1
2
1
1
2
4
1
4
5
2
3
3
4
4
7
4
6
9
1
1
1
1
1
3
1
1
1
1
1
1
1
3
1
2
1
1
1
2
1
3
3
1
4
1
1
4
1
1
4
5
2
1
3
1
2
9
2
3
3
3
1
5
4
1
1
1
1
1
2
3
1
1
6
3
4
1
1
3
1
3
1
1
2
1
1
2
1
1
4
1
1
3
2
2
1
2
1
2
1
3
2
2
2
3
1
1
4
2
2
1
1
3
1
3
2
4
1
1
1
1
3
1
2
3
1
1
2
2
5
3
1
3
2
2
2
1
2
2
2
1
2
5
1
1
3
1
1
2
3
2
1
3
3
1
1
1
1
2
1
1
2
3
1
1
1
4
2
2
1
2
1
2
2
2
2
1
1
1
2
1
2
1
2
1
3
1
4
4
1
1
1
2
2
2
2
1
1
2
3
5
1
1
3
3
2
1
1
3
1
1
1
1
1
1
1
1
1
1
1
3
2
2
2
1
2
1
2
1
1
1
1
2
1
1
2
1
1
5
3
4
4
1
1
1
1
1
2
4
3
1
1
1
1
1
1
2
2
3
2
3
1
2
2
1
1
2
5
2
1
2
1
3
1
1
1
6
3
1
2
4
2
1
3
2
3
2
1
2
1
2
1
2
1
1
1
1
1
2
1
1
4
1
1
3
1
2
1
4
1
1
1
1
1
3
1
1
4
2
1
2
2
1
1
2
1
2
1
1
4
3
1
4
4
2
2
3
1
4
4
1
4
2
1
1
4
1
3
2
2
2
1
1
1
1
1
1
3
3
1
1
1
2
1
3
5
2
3
2
1
1
1
2
3
2
2
1
1
1
2
1
1
1
2
4
1
3
2
2
1
1
1
1
2
2
1
3
1
2
1
2
6
3
4
3
1
1