0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
0
0
1
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
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
0
0
0
0
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
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
48
0
0
0
48
0
0
0
48
0
0
0
32
0
1
0
0
0
0
0
0
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
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
48
0
0
0
48
0
0
0
48
0
0
0
32
0
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
0
0
0
0
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
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
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
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
48
0
0
0
48
0
0
0
48
0
0
0
32
0
1
0
1
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
0
0
1
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
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
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
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
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
38
0
1
0
37
0
1
0
37
0
1
0
37
0
1
0
37
0
1
0
39
0
1
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
2
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
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
0
0
1
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
38
0
1
0
37
0
1
0
39
0
1
0
0
0
0
0
38
0
1
0
37
0
1
0
37
0
1
0
37
0
1
0
39
0
1
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
2
0
0
0
2
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
38
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
38
0
1
0
37
0
1
0
39
0
1
0
0
0
0
0
0
0
0
0
38
0
1
0
37
0
1
0
39
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
2
0
0
0
2
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
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
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
0
0
0
0
0
0
0
0
0
0
0
39
0
1
0
38
0
1
0
37
0
1
0
37
0
1
0
37
0
1
0
37
0
1
0
39
0
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
1
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
2
0
0
0
1
0
0
0
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
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
38
0
1
0
37
0
1
0
37
0
1
0
37
0
1
0
37
0
1
0
37
0
1
0
37
0
1
0
39
0
1
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
2
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
0
0
1
0
0
0
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
0
0
0
38
0
1
0
37
0
1
0
37
0
1
0
37
0
1
0
37
0
1
0
39
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
2
0
0
0
2
0
0
0
1
0
0
0
1
0
0
0
1
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
1
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
38
0
1
0
37
0
1
0
37
0
1
0
37
0
1
0
39
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
38
0
1
0
37
0
1
0
37
0
1
0
37
0
1
0
37
0
1
0
37
0
1
0
39
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
33
0
1
0
33
0
1
0
32
0
1
0
32
0
1
0
33
0
1
0
33
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
34
0
1
0
34
0
1
0
34
0
1
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
33
0
1
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
34
0
1
0
2
0
0
0
2
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
32
0
1
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
34
0
1
0
2
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
32
0
1
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
34
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
32
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
32
0
1
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
2
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
32
0
1
0
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
32
0
1
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
32
0
1
0
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
2
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
0
4
0
0
0
4
0
0
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
2
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
0
4
0
0
0
4
0
0
0
32
0
1
0
67
0
0
0
67
0
0
0
32
0
1
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
32
0
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
0
0
0
0
0
0
0
0
0
16
0
0
0
16
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
2
0
0
0
2
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
0
4
0
0
0
4
0
0
0
32
0
1
0
67
0
0
0
67
0
0
0
34
0
1
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
34
0
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
0
0
0
0
0
16
0
0
0
16
0
0
0
16
0
0
0
16
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
2
0
0
0
2
0
0
0
2
100
0
0
1
100
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
0
4
0
0
0
4
0
0
0
32
0
1
0
67
0
0
0
67
0
0
0
34
0
1
0
34
0
1
0
32
0
1
0
32
0
1
0
23
0
0
0
23
0
0
0
23
0
0
0
23
0
0
0
32
0
1
0
34
0
1
0
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
0
0
0
16
0
0
0
35
0
1
0
16
0
0
0
16
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
2
0
0
0
2
0
0
0
2
100
0
0
1
100
0
0
1
100
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
0
4
0
0
0
4
0
0
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
1
100
0
0
1
100
0
0
0
0
0
0
0
0
0
0
17
0
0
0
17
0
0
0
17
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
0
0
0
0
0
0
0
0
0
16
0
0
0
16
0
0
0
16
0
0
0
16
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
2
0
0
0
2
100
0
0
2
100
0
0
2
100
0
0
1
100
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
33
0
1
0
1
100
0
0
1
0
0
0
0
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
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
0
0
0
0
0
0
0
0
0
0
0
0
0
16
0
0
0
16
0
0
0
16
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
2
0
0
0
2
100
0
0
2
100
0
0
2
100
0
0
1
100
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
33
0
1
0
1
100
0
0
0
0
0
0
0
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
16
0
0
0
16
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
2
0
0
0
2
100
0
0
2
100
0
0
2
100
0
0
1
100
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
32
0
1
0
1
0
0
0
0
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
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
0
0
2
0
0
0
2
100
0
0
2
100
0
0
1
100
0
0
1
100
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
32
0
1
0
0
0
0
0
0
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
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
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
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
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
17
0
0
0
17
0
0
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
1
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
32
0
1
1
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
4
0
0
0
32
0
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
1
100
0
0
1
100
0
0
2
100
0
0
2
100
0
0
1
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
32
0
1
0
33
0
1
0
32
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
100
0
0
2
100
0
0
2
100
0
0
2
100
0
0
2
100
0
0
1
100
0
0
1
100
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
0
0
1
0
0
0
1
0
0
0
1
0
0
0
2
100
0
0
2
100
0
0
2
100
0
0
2
100
0
0
2
100
0
0
1
0
0
0
1
100
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
100
0
0
2
100
0
0
2
100
0
0
2
100
0
0
2
100
0
0
2
100
0
0
2
100
0
0
1
100
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
0
0
1
0
0
0
1
0
0
0
1
100
0
0
2
100
0
0
2
100
0
0
2
100
0
0
2
100
0
0
2
100
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
17
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
100
0
0
2
100
0
0
2
100
0
0
1
100
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
0
3
0
0
0
3
0
0
0
3
0
0
0
3
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
0
0
1
0
0
0
1
100
0
0
1
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
0
3
0
0
0
3
0
0
0
3
0
0
0
3
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
16
99
0
0
16
99
0
0
32
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
38
0
1
0
37
0
1
0
3
0
0
0
3
0
0
0
3
0
0
0
22
0
0
0
22
0
0
0
3
0
0
0
3
0
0
0
3
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
16
99
0
0
16
99
0
0
16
99
0
0
16
99
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
38
0
1
0
37
0
1
0
37
0
1
0
3
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
3
0
0
0
3
0
0
0
3
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
16
99
0
0
16
99
0
0
16
99
0
0
16
99
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
38
0
1
0
37
0
1
0
37
0
1
0
37
0
1
0
22
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
3
0
0
0
3
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
0
1
0
16
99
0
0
16
99
0
0
32
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
38
0
1
0
37
0
1
0
37
0
1
0
37
0
1
0
37
0
1
0
39
0
1
0
22
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
3
0
0
0
3
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
17
0
0
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
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
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
0
0
1
100
0
0
1
100
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
38
0
1
0
37
0
1
0
37
0
1
0
37
0
1
0
39
0
1
0
2
0
0
0
2
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
3
0
0
0
3
0
0
0
3
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
17
0
0
0
17
0
0
0
17
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
100
0
0
1
100
0
0
1
100
0
0
1
100
0
0
1
0
0
0
0
0
0
0
0
0
0
0
38
0
1
0
37
0
1
0
37
0
1
0
39
0
1
0
2
0
0
0
2
0
0
0
2
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
3
0
0
0
3
0
0
0
3
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
100
0
0
2
100
0
0
2
100
0
0
1
100
0
0
1
0
0
0
0
0
0
0
38
0
1
0
37
0
1
0
37
0
1
0
37
0
1
0
39
0
1
0
2
0
0
0
2
0
0
0
2
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
3
0
0
0
3
0
0
0
3
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
0
0
1
0
0
0
1
0
0
0
2
0
0
0
1
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
1
0
0
0
2
100
0
0
2
100
0
0
2
100
0
0
2
100
0
0
1
0
0
0
0
0
0
0
38
0
1
0
37
0
1
0
37
0
1
0
37
0
1
0
39
0
1
0
2
0
0
0
2
0
0
0
2
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
3
0
0
0
3
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
0
0
1
0
0
0
1
0
0
0
2
0
0
0
2
0
0
0
2
0
0
0
1
0
0
0
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
0
0
0
0
0
0
0
1
0
0
0
2
100
0
0
2
100
0
0
2
100
0
0
2
100
0
0
1
100
0
0
1
0
0
0
38
0
1
0
37
0
1
0
37
0
1
0
39
0
1
0
2
0
0
0
2
0
0
0
2
0
0
0
2
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
22
0
0
0
3
0
0
0
3
0
0
0
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
0
0
1
0
0
0
1
0
0
0
2
0
0
0
2
0
0
0
2
0
0
0
2
0
0
0
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
0
0
0
0
0
0
0
1
0
0
0
1
100
0
0
2
100
0
0
2
100
0
0
2
100
0
0
1
100
0
0
1
0
0
0
38
0
1
0
37
0
1
0
37
0
1
0
39
0
1
0
2
0
0
0
2
0
0
0
2
0
0
0
2
0
0
0
0
7
971.000000
1613.00000
1.00000000
0.100000001
976.000000
1066.00000
1.00000000
0.100000001
1679.00000
1099.00000
1.00000000
0.100000001
1163.00000
1362.00000
1.00000000
0.100000001
1221.00000
2226.00000
1.00000000
0.100000001
126.000000
218.000000
1.00000000
0.100000001
1320.00000
1482.00000
1.00000000
0.100000001
