1
1
1
1
2
1
2
2
2
3
2
3
3
3
4
1
1
1
3
4
4
4
5
1
1
2
4
5
5
5
5
6
1
2
2
3
5
6
6
6
6
6
6
7
2
3
3
6
6
7
7
7
7
7
8
1
1
3
4
5
6
6
7
7
8
8
8
9
1
2
4
5
5
5
5
5
6
7
7
7
8
8
9
10
6
6
6
6
6
7
7
7
7
7
8
9
10
11
1
1
7
7
7
7
8
8
8
8
9
9
10
11
12
1
7
7
7
7
7
7
8
8
9
9
10
10
11
13
7
7
8
8
9
10
10
10
11
11
12
14
7
7
8
9
9
11
11
11
12
13
15
1
7
7
7
7
8
8
9
10
10
10
13
14
16
7
7
7
8
9
9
10
10
11
14
15
17
1
1
7
8
9
10
10
11
11
15
16
18
1
7
7
7
7
8
9
10
11
16
17
19
7
7
7
7
7
8
8
9
10
10
10
17
18
20
1
1
7
7
8
8
9
9
10
10
11
11
18
19
21
1
1
2
7
7
9
9
10
11
11
19
20
22
1
1
2
3
7
7
7
7
7
8
8
10
10
10
20
21
23
1
1
2
2
3
4
7
7
7
7
7
8
8
8
9
9
10
10
10
11
21
22
24
1
1
1
1
2
2
3
3
7
7
7
7
7
8
9
9
9
9
10
11
11
11
11
22
23
25
1
1
1
1
2
2
3
3
4
4
7
7
7
7
7
7
7
8
8
8
8
9
9
10
10
10
10
11
11
11
23
23
24
25
26
1
1
2
3
3
4
7
7
7
7
7
7
7
7
7
8
8
9
9
9
9
9
9
9
9
9
9
10
10
10
10
11
11
11
11
11
12
23
24
24
25
25
25
26
27
2
3
4
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
9
9
9
9
9
9
9
9
9
10
10
10
10
11
11
11
11
11
11
11
11
11
11
11
11
12
13
23
23
23
24
25
25
25
25
25
25
25
25
26
26
26
27
28
3
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
12
13
14
24
24
24
25
25
25
25
25
25
25
26
26
26
26
26
26
26
26
27
27
28
29
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
11
11
11
12
12
13
14
25
25
25
25
25
25
25
26
26
26
26
26
26
26
27
27
27
27
27
27
27
28
28
29
30
7
7
7
7
8
8
8
8
8
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
11
12
12
12
12
13
13
14
23
26
26
26
26
26
26
26
27
27
27
27
27
27
27
28
28
28
28
28
28
28
29
29
30
31
7
8
8
8
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
12
12
12
12
13
13
13
13
14
14
23
24
27
27
27
27
27
28
28
28
28
28
28
28
29
29
29
29
29
30
30
31
32
1
1
8
8
9
9
9
9
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
12
12
12
12
12
12
13
13
13
13
14
14
14
14
23
24
25
28
28
28
28
28
29
29
29
29
29
30
30
30
30
30
31
31
32
33
1
1
1
8
8
9
10
10
10
10
11
11
11
11
11
12
12
12
12
12
13
13
13
13
13
14
14
14
14
24
25
25
26
29
29
29
30
30
30
30
30
31
31
31
31
31
32
32
33
34
1
1
1
1
1
1
9
10
10
10
11
11
12
12
12
13
13
13
14
14
14
14
25
26
26
27
30
30
30
31
31
31
31
31
32
32
32
32
32
33
33
34
35
1
1
1
1
1
1
5
5
10
10
11
12
12
13
13
14
14
26
27
27
28
31
31
31
32
32
32
32
32
33
33
33
33
33
34
34
35
36
1
1
1
1
1
1
4
5
6
6
7
7
8
9
10
10
11
12
14
27
28
28
29
32
32
32
33
33
33
33
34
34
34
34
34
35
35
37
1
1
1
1
1
1
1
1
5
7
7
7
7
7
7
7
8
8
9
10
10
10
10
12
13
28
29
29
30
33
33
33
34
34
34
34
34
34
35
35
35
35
35
36
36
38
1
1
1
1
4
4
4
4
5
5
5
6
7
7
7
7
7
7
7
7
8
8
8
8
8
9
9
10
10
10
10
10
11
13
13
29
30
30
31
32
33
34
34
35
35
35
35
35
35
36
36
36
36
36
37
37
39
1
1
1
5
5
5
5
6
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
11
12
13
13
13
30
31
31
32
34
35
35
35
36
36
36
36
37
37
37
37
37
38
38
40
1
5
5
5
6
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
12
13
13
13
13
13
31
32
35
35
35
36
36
37
37
37
37
38
38
38
38
38
39
39
41
1
1
5
5
5
5
5
7
7
7
7
7
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
12
12
12
13
13
13
13
13
31
33
35
36
36
37
37
38
38
38
38
39
39
39
39
39
40
40
42
1
1
5
5
5
5
5
7
7
8
8
8
8
8
9
9
9
9
9
9
10
10
10
10
10
10
10
11
11
11
11
11
12
12
12
12
12
12
12
13
13
13
13
13
31
34
35
35
35
36
37
37
38
38
39
39
39
39
40
40
40
40
40
41
43
1
5
5
5
5
7
8
8
8
8
9
9
9
9
10
10
10
10
10
10
11
11
11
11
12
12
12
12
12
13
13
13
13
13
13
13
31
33
33
36
36
36
37
38
38
39
39
40
40
40
40
41
41
41
41
41
44
5
5
5
7
8
8
8
8
9
9
9
9
10
10
10
10
10
11
11
11
12
12
12
12
13
13
13
13
13
13
13
13
14
34
35
37
37
37
38
39
39
40
40
41
41
41
42
42
42
42
42
45
5
5
5
7
8
8
8
8
9
9
9
9
10
10
10
10
10
10
11
11
11
12
12
12
13
13
13
13
13
13
15
36
38
38
38
39
40
40
41
41
42
42
43
43
43
46
5
5
5
5
5
7
8
8
9
9
10
10
10
11
11
11
12
12
12
13
13
13
13
13
14
16
37
39
39
39
40
41
42
42
43
44
44
47
5
5
5
5
7
7
7
7
10
10
11
11
12
12
12
13
13
13
13
14
15
16
17
38
40
40
40
41
42
43
43
45
45
48
5
5
5
5
5
5
5
5
5
5
5
5
7
7
7
8
11
12
12
13
13
14
15
16
16
16
16
17
18
39
41
41
41
42
42
43
43
46
46
49
1
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
7
7
7
7
7
7
9
9
9
12
13
13
14
15
16
16
16
16
16
17
17
17
17
18
19
40
42
42
42
43
43
47
47
50
1
2
5
5
5
5
5
5
5
5
5
5
5
5
6
7
7
7
7
7
7
8
8
10
11
11
13
14
14
15
16
16
16
16
17
17
17
17
17
18
18
18
18
19
20
25
25
41
42
43
43
48
48
51
1
2
3
5
5
5
5
5
5
5
5
5
5
6
7
7
7
7
7
7
7
8
9
9
10
10
13
14
15
15
16
16
16
16
17
17
17
17
18
18
18
18
18
19
19
19
20
21
26
26
42
43
43
49
49
52
1
1
2
3
4
5
5
5
5
5
6
7
7
7
7
7
7
7
7
7
8
8
9
9
9
11
13
14
15
16
16
16
17
17
17
17
18
18
18
18
19
19
19
19
20
20
20
21
22
27
27
33
33
43
50
50
53
1
1
1
1
1
2
3
5
5
5
6
7
7
7
7
7
7
7
7
7
8
8
9
9
9
9
9
10
11
11
11
13
14
15
16
17
17
17
18
18
18
18
19
19
20
20
20
20
20
21
21
21
21
22
23
28
28
33
34
43
51
51
54
1
1
1
1
1
3
4
5
5
7
7
7
7
7
7
7
8
8
8
8
9
9
9
9
9
9
10
10
10
11
11
11
11
11
14
15
16
17
18
18
18
19
19
19
20
20
20
21
21
21
21
21
21
21
22
22
22
22
23
24
29
29
33
34
42
52
52
55
1
2
5
5
5
5
7
7
7
7
7
7
8
9
9
9
9
9
9
9
9
9
10
10
10
11
11
11
11
11
11
11
12
15
16
16
17
18
19
20
20
20
20
20
21
21
21
21
21
22
22
22
22
22
22
22
23
23
23
23
23
25
30
30
33
53
53
56
1
2
3
5
5
7
7
7
7
7
7
7
7
7
7
7
8
8
8
9
9
9
9
9
10
10
10
10
10
10
11
11
11
11
11
11
11
11
12
13
16
17
17
18
18
20
20
20
21
21
21
21
21
21
21
21
21
21
21
22
22
22
22
22
23
23
23
23
23
23
23
24
24
24
24
24
26
32
33
34
54
54
57
3
4
5
5
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
12
13
14
17
18
18
18
21
21
21
21
21
21
22
22
22
22
22
22
22
22
22
22
22
23
23
23
23
23
24
24
24
24
24
25
25
25
25
25
27
32
33
33
55
55
58
1
5
5
5
5
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
12
13
14
18
19
20
20
21
22
22
22
22
23
23
23
23
23
23
23
23
23
23
23
23
24
24
24
24
25
25
25
25
25
26
26
26
26
26
28
30
31
34
56
56
59
5
5
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
12
12
12
14
18
20
20
21
21
21
21
22
23
23
23
23
23
23
24
24
24
24
24
24
24
24
24
24
25
25
25
25
26
26
26
26
26
27
27
27
27
29
30
31
32
57
57
60
5
5
5
5
7
7
7
8
8
8
9
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
12
13
13
18
21
21
21
22
22
22
22
23
23
23
23
24
24
24
24
25
25
25
25
25
25
25
25
25
25
26
26
26
26
27
27
27
27
28
28
28
28
30
32
58
58
61
1
1
5
5
5
7
7
7
8
8
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
11
11
11
11
12
13
13
13
14
14
18
21
22
22
23
23
23
23
23
23
24
24
24
25
25
25
25
26
26
26
26
26
26
26
26
26
27
27
27
27
28
28
28
28
29
29
31
31
31
59
59
62
1
1
1
1
1
5
5
5
7
7
7
8
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
11
12
13
13
14
14
14
21
21
22
23
23
24
24
24
24
24
25
25
25
26
26
26
27
27
27
27
27
27
27
27
28
28
28
28
29
29
29
29
29
30
31
32
60
60
63
1
1
1
1
1
1
5
5
7
7
7
7
8
8
9
9
10
10
10
10
10
10
10
11
11
11
12
13
13
14
14
22
23
23
24
25
25
25
25
25
26
26
26
27
27
27
28
28
28
28
28
28
28
28
29
29
29
29
29
30
30
30
31
33
35
35
61
61
64
1
1
1
1
1
5
5
5
7
7
8
9
10
11
11
11
12
14
14
24
24
25
26
26
26
26
26
27
27
27
28
28
28
29
29
29
29
29
29
29
30
30
30
31
31
31
31
32
34
35
35
35
36
62
62
65
1
1
1
1
1
7
7
7
7
7
8
9
9
9
10
10
10
10
12
12
25
25
26
27
27
27
27
27
28
28
28
28
29
29
29
30
30
30
30
30
30
31
31
31
32
32
33
35
35
35
35
36
36
37
63
63
66
1
1
1
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
9
10
10
10
10
10
10
10
10
10
13
26
26
27
28
28
28
28
28
28
28
29
29
30
30
30
31
31
31
31
31
32
32
32
33
33
34
35
35
35
35
36
36
37
37
64
64
67
1
1
1
1
1
4
5
5
5
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
9
9
9
10
10
10
10
10
10
10
10
11
13
13
27
27
28
28
29
29
29
29
29
30
30
31
31
32
32
32
32
33
33
33
34
34
35
35
35
35
35
35
36
36
37
37
38
65
65
68
1
1
5
5
5
5
5
5
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
11
12
16
21
28
28
28
28
29
30
30
31
31
31
32
32
33
33
33
33
34
34
34
35
35
35
35
35
35
35
36
36
36
36
37
37
38
66
66
69
1
1
5
5
5
5
5
6
7
7
7
7
7
7
7
7
8
8
8
8
8
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
11
12
13
13
16
17
21
21
28
29
30
31
31
31
32
32
32
33
33
34
34
34
34
35
35
35
35
35
35
35
35
35
36
36
36
36
37
37
37
37
39
67
67
70
1
1
4
5
5
7
7
7
7
7
8
8
8
8
8
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
11
12
13
13
17
18
21
21
21
29
29
30
31
31
32
32
33
33
33
34
34
35
35
35
35
35
35
35
35
35
35
36
36
36
36
36
36
37
37
37
37
38
38
40
68
68
71
4
5
5
5
5
6
7
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
11
12
13
13
18
19
21
21
29
30
31
32
32
33
33
34
34
34
35
35
35
35
36
36
36
36
36
36
36
37
37
37
37
37
37
38
39
41
69
69
72
5
5
5
5
5
5
7
7
8
8
8
8
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
11
11
11
11
12
13
13
13
13
14
18
19
21
32
33
33
34
34
35
35
35
35
35
36
36
36
37
37
37
37
37
38
38
38
39
40
42
70
70
73
4
4
4
5
5
5
5
5
7
7
7
7
7
8
8
8
9
9
9
9
10
10
10
10
10
10
10
10
10
11
11
11
11
11
12
12
12
12
13
13
13
13
14
15
18
19
21
33
34
34
35
35
35
35
36
36
36
36
37
37
39
39
39
40
41
43
71
71
74
4
4
5
5
5
5
5
5
5
5
5
7
7
8
9
9
10
10
10
11
11
11
11
11
11
11
12
12
12
12
12
13
13
13
14
14
14
14
15
16
18
18
21
34
35
35
36
36
36
37
37
37
37
40
40
41
44
72
72
75
4
4
5
5
5
5
5
5
5
5
5
5
5
6
7
7
7
7
9
10
11
11
11
11
12
12
12
12
12
12
12
13
14
15
15
15
15
16
17
18
18
21
35
36
36
37
37
37
38
38
38
41
41
42
45
73
73
76
1
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
7
7
7
7
7
8
10
10
11
11
11
12
12
12
12
13
13
13
14
14
14
15
16
16
16
16
17
18
18
19
36
37
37
38
38
38
42
42
43
46
74
74
77
1
2
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
7
7
7
7
7
7
7
7
7
8
9
11
11
11
11
12
12
13
13
14
14
14
14
14
15
15
15
16
17
17
17
18
18
18
19
37
38
38
39
43
44
47
75
75
78
1
1
2
3
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
7
7
7
7
7
7
9
9
9
10
11
11
12
12
12
13
13
14
14
14
15
15
15
15
15
16
16
16
16
17
18
18
18
19
20
23
23
23
33
34
38
38
39
44
45
48
76
76
79
1
1
1
1
2
2
3
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
6
6
6
7
7
7
7
7
8
8
10
10
11
11
11
11
12
12
13
13
13
14
14
15
15
15
16
16
16
16
16
17
17
17
18
18
19
19
19
20
21
21
21
23
23
23
24
24
29
34
35
38
39
45
46
49
77
77
80
1
1
2
2
3
3
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
6
6
7
7
7
7
7
7
8
9
9
9
9
10
10
10
10
11
11
11
12
12
13
13
14
14
15
15
16
16
16
17
17
17
17
17
18
18
18
19
20
20
20
21
22
22
22
23
23
23
23
23
24
25
25
29
30
35
35
35
36
39
46
47
50
78
78
81
1
1
1
3
3
4
4
4
5
5
5
5
5
5
5
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
9
9
9
9
9
9
9
9
9
10
11
11
11
11
11
11
12
12
12
13
13
14
14
15
15
16
16
16
17
17
17
18
18
18
18
18
18
18
18
19
19
19
19
20
21
21
21
23
23
23
23
23
23
23
23
24
24
24
25
26
29
29
29
32
35
35
36
37
47
48
51
79
79
82
1
1
1
4
4
4
5
5
5
5
5
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
9
9
9
9
9
9
9
9
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
11
11
11
11
12
12
12
13
13
13
14
14
15
15
16
16
16
16
16
17
17
17
18
18
18
18
18
18
19
19
19
19
19
19
19
19
19
19
19
20
20
20
20
21
22
22
23
23
23
23
23
23
24
24
24
24
24
25
25
25
29
30
30
33
35
35
37
38
48
49
52
80
80
83
1
1
4
4
4
5
5
5
5
5
5
5
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
11
11
11
12
12
13
13
13
14
14
14
15
15
16
16
16
16
16
16
17
17
17
17
17
17
18
18
18
18
18
18
19
19
19
19
19
19
19
20
20
20
20
20
20
20
20
20
20
21
21
21
21
21
22
23
23
23
23
23
23
23
23
24
24
24
25
25
25
25
25
26
29
30
30
34
35
35
38
39
49
50
53
81
81
84
1
1
4
4
4
5
5
5
5
5
5
5
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
12
12
13
13
14
14
14
15
15
16
17
17
17
17
17
17
18
18
18
18
18
18
19
19
19
19
19
19
20
20
20
20
20
20
21
21
21
21
21
21
21
21
21
21
21
22
22
22
22
22
23
23
23
23
23
23
23
24
24
24
24
24
25
25
25
26
26
26
30
35
35
35
39
40
50
51
54
82
82
85
4
4
5
5
5
5
5
5
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
11
12
12
12
12
12
13
13
14
14
15
15
16
16
17
18
18
18
18
18
18
18
18
19
19
19
19
19
19
19
19
20
20
20
20
20
20
21
21
21
21
21
21
22
22
22
22
22
22
22
22
22
22
23
23
23
23
23
23
23
23
23
24
24
24
24
25
25
25
25
26
27
29
29
35
35
35
36
40
41
51
52
55
83
83
86
1
4
5
5
5
6
6
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
11
11
12
12
12
12
12
13
13
13
13
14
14
15
15
16
16
16
16
17
18
19
19
19
19
19
19
19
19
20
20
20
20
20
21
21
21
21
21
22
22
22
22
22
22
23
23
23
23
23
23
23
23
23
23
23
23
24
24
24
24
24
24
25
25
25
26
28
29
29
29
35
35
35
37
41
42
52
53
56
84
84
87
4
5
5
7
7
7
7
7
7
7
7
7
7
7
8
8
8
9
9
9
9
9
9
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
12
12
12
12
13
13
13
14
14
14
14
16
16
16
17
17
17
17
18
19
20
20
20
20
20
21
21
21
22
22
22
22
22
23
23
23
23
23
23
24
24
24
24
24
24
24
24
24
24
25
25
25
25
27
28
28
29
30
35
35
35
38
42
43
53
54
57
85
85
88
1
1
4
5
6
7
7
7
7
7
7
7
8
8
9
9
9
9
10
10
10
10
10
10
10
10
11
11
11
11
11
12
12
12
13
13
14
14
15
16
16
17
17
18
18
18
18
19
21
21
21
21
21
22
22
22
23
23
23
23
23
24
24
24
24
24
25
25
25
25
25
25
25
25
25
25
26
26
28
29
35
39
43
44
54
55
58
86
86
89
1
1
1
1
1
4
7
7
7
7
7
8
8
9
9
9
10
10
10
10
10
11
11
11
11
11
12
12
13
14
15
16
16
17
17
17
18
18
18
18
19
19
19
19
20
22
22
22
22
22
23
23
23
24
24
24
24
25
25
25
25
25
26
26
26
26
26
26
26
29
30
40
44
45
55
56
59
87
87
90
1
1
1
1
1
1
1
5
7
7
9
9
9
9
10
10
10
10
10
11
11
13
13
13
14
14
15
16
17
17
18
18
18
19
19
19
19
20
20
20
21
23
23
23
23
23
24
24
24
25
25
25
25
26
26
26
26
26
26
27
27
27
27
27
29
41
41
56
57
60
88
88
91
1
1
1
1
1
1
5
6
7
7
7
7
7
7
10
10
10
10
10
10
10
10
11
13
13
14
14
14
17
18
18
19
19
19
20
20
20
20
21
21
21
22
24
24
24
24
24
25
25
25
26
26
26
26
26
26
27
27
27
27
28
28
28
28
57
58
61
89
89
92
1
1
1
1
1
4
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
10
10
10
10
11
11
12
12
14
14
18
19
19
19
19
20
20
20
20
21
21
22
22
22
23
23
25
25
25
25
25
26
26
26
27
27
27
27
28
28
28
29
29
29
29
45
58
59
62
90
90
93
1
1
1
1
5
5
5
5
6
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
9
9
9
10
10
10
10
10
12
12
13
13
14
18
18
19
19
19
20
20
20
21
21
22
22
23
23
23
23
23
24
24
25
26
26
26
26
26
27
27
28
28
28
28
29
29
30
30
30
30
44
59
60
63
91
91
94
1
1
1
5
5
5
5
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
11
13
13
14
15
19
19
19
19
20
21
22
22
23
23
23
23
24
24
24
25
25
26
27
27
27
27
27
27
27
28
29
29
30
30
31
31
31
31
31
31
31
31
31
31
60
61
64
92
92
95
1
1
1
1
5
5
5
5
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
11
11
12
13
13
15
16
19
19
19
20
20
20
22
23
23
23
23
24
25
25
25
26
26
27
28
28
28
28
28
28
29
30
30
31
31
31
31
31
31
32
32
32
32
32
32
32
32
61
62
65
93
93
96
1
1
5
5
5
5
5
5
5
5
5
5
5
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
11
11
12
12
13
13
14
16
17
19
19
20
21
21
23
23
23
24
24
25
25
26
26
27
28
28
29
29
29
29
29
29
30
31
31
31
31
32
32
32
32
33
33
33
33
33
33
33
33
62
63
66
94
94
97
1
1
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
11
11
12
12
12
12
12
12
12
13
13
13
13
16
17
19
20
22
22
23
23
23
24
25
26
27
27
27
28
28
29
29
30
30
30
30
30
30
31
31
31
31
31
31
31
32
32
33
33
33
33
34
34
34
34
34
34
63
64
67
95
95
98
1
1
4
5
5
5
5
5
5
5
5
5
5
5
5
5
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
11
11
12
12
12
12
12
12
12
12
13
13
13
13
13
13
13
13
13
16
16
19
23
23
23
23
24
24
25
26
28
28
28
28
28
29
29
30
30
31
31
31
31
31
31
31
31
31
31
32
32
32
32
33
33
34
34
34
34
35
35
35
64
65
68
96
96
99
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
11
11
11
12
12
12
12
12
12
12
13
13
13
13
13
13
13
13
13
14
14
14
14
14
16
16
17
23
23
23
24
25
26
28
29
29
29
29
29
30
30
31
31
31
31
32
32
32
32
32
32
32
32
33
33
33
33
35
35
36
36
36
65
66
69
97
97
100
4
5
5
5
5
5
5
5
5
5
5
5
5
5
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
12
12
12
12
13
13
13
13
13
13
13
13
14
14
14
14
14
14
14
15
15
15
15
16
16
19
23
23
26
29
30
30
30
30
30
31
31
32
32
32
33
33
33
33
33
33
33
34
37
37
37
66
67
70
98
98
101
4
4
5
5
5
5
5
5
5
5
5
6
7
7
7
8
8
8
8
8
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
12
12
12
12
12
13
13
13
13
13
13
13
14
14
14
14
14
15
15
15
15
16
16
16
16
16
19
27
30
31
31
31
31
31
32
32
33
33
33
34
34
34
35
38
38
67
68
71
99
99
102
4
4
4
4
5
5
5
5
5
5
5
5
5
7
7
7
8
9
9
9
9
9
10
10
10
10
10
10
11
11
11
11
12
12
12
12
12
12
13
13
13
13
13
13
14
14
15
15
15
16
16
16
16
16
17
17
17
17
19
28
31
32
32
32
32
32
33
34
35
35
39
39
68
69
72
100
100
103
2
4
5
5
5
5
5
5
5
5
7
7
7
7
9
9
9
9
9
10
10
10
11
11
12
12
12
12
13
13
13
13
13
14
14
14
15
15
16
16
16
16
16
17
17
17
17
18
18
18
18
19
28
32
33
33
33
34
35
36
36
40
69
70
73
101
101
104
2
3
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
7
7
8
8
9
9
9
9
9
10
10
11
11
11
11
11
11
11
12
12
13
13
14
14
14
14
14
15
16
16
16
17
17
17
17
17
18
18
18
18
18
19
19
19
19
19
21
21
21
33
34
34
35
36
36
37
41
70
71
74
102
102
105
3
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
7
7
7
7
9
9
9
9
9
10
10
10
10
10
11
11
12
12
12
12
12
12
13
13
13
14
14
15
15
16
16
16
17
17
17
17
18
18
18
18
18
18
19
19
19
19
19
20
20
20
20
21
21
21
21
21
22
22
34
35
35
36
36
38
42
71
72
75
103
103
106
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
7
7
7
7
8
9
9
9
9
10
10
10
10
11
11
11
12
12
13
13
13
13
14
14
14
14
15
15
15
16
16
16
17
17
18
18
18
19
19
19
19
19
19
19
20
20
20
21
21
21
21
21
21
21
22
22
22
23
23
32
35
36
36
39
43
72
73
76
104
104
107
1
1
1
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
6
6
6
7
7
7
7
8
9
9
9
10
10
10
11
11
11
11
12
12
12
13
13
14
14
14
14
14
15
15
15
15
16
16
17
17
17
17
18
18
18
18
19
19
19
20
20
20
20
20
20
21
21
21
21
21
21
22
22
22
22
22
23
23
23
24
25
27
32
36
40
44
73
74
77
105
105
108
1
2
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
7
7
7
7
7
7
8
9
9
10
11
11
12
12
12
12
13
13
13
14
14
15
15
15
15
16
16
16
16
17
17
17
18
18
18
18
18
18
19
19
19
20
20
20
21
21
21
21
21
21
21
21
21
21
22
22
22
22
23
23
23
23
24
24
26
27
35
41
45
74
75
78
106
106
109
1
2
3
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
7
7
7
7
7
7
7
7
7
7
8
8
9
9
9
12
12
13
13
13
13
14
14
14
15
15
15
16
16
16
17
17
17
18
18
18
19
19
19
19
19
19
20
20
20
21
21
21
21
21
22
22
22
22
22
22
23
23
23
24
24
24
24
29
35
42
46
75
76
79
107
107
110
1
1
1
1
3
4
4
4
4
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
9
9
9
9
9
10
11
11
13
13
14
14
14
14
14
15
15
15
15
16
16
16
17
17
17
18
18
18
19
19
19
19
20
20
20
20
20
20
21
21
21
21
22
22
22
23
23
23
23
24
25
25
25
26
26
29
30
43
47
76
77
80
108
108
111
1
1
1
1
2
4
4
4
5
5
5
5
5
5
5
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
9
9
9
9
9
9
9
9
9
9
9
10
10
10
11
11
11
11
12
14
14
14
14
15
15
15
15
15
16
16
16
16
16
17
17
17
18
18
18
18
19
19
19
20
20
20
21
21
21
21
21
21
21
22
22
23
23
24
24
25
26
26
26
27
30
30
31
44
48
77
78
81
109
109
112
1
1
2
3
4
4
4
4
5
5
5
5
6
6
7
7
7
7
7
7
7
7
8
8
8
8
8
8
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
12
12
13
13
14
14
14
14
14
15
15
15
15
15
16
16
16
16
16
16
17
17
17
17
17
18
19
19
20
20
21
21
21
22
22
22
22
22
22
23
23
24
25
25
25
25
27
31
31
32
45
49
78
79
82
110
110
113
1
3
4
4
4
4
5
5
5
6
6
6
7
7
7
7
7
7
7
7
7
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
12
12
12
13
13
13
14
14
15
15
15
15
15
15
15
16
16
16
16
16
17
17
17
17
17
18
18
18
19
20
20
21
22
22
22
23
23
23
23
24
24
25
25
26
27
28
31
31
32
41
45
46
50
79
80
83
111
111
114
1
1
1
4
4
4
5
5
6
6
6
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
12
12
12
12
12
13
13
13
14
14
14
14
15
15
15
15
16
16
16
16
16
16
16
17
17
17
17
17
18
18
19
19
19
20
21
22
23
23
24
24
24
24
24
25
25
27
29
31
31
33
42
46
47
51
80
81
84
112
112
115
4
4
5
5
5
5
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
12
12
13
13
13
14
14
14
14
14
15
15
15
15
16
16
17
17
17
17
17
17
17
18
18
18
19
19
20
20
20
21
22
23
23
23
24
24
24
24
25
26
31
31
34
43
47
48
52
81
82
85
113
113
116
4
5
5
5
6
7
7
7
7
7
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
11
12
12
12
12
12
12
13
14
14
14
14
15
15
15
15
16
16
16
17
17
17
18
18
18
18
18
19
19
19
20
20
21
21
21
23
24
24
25
26
27
31
31
31
44
44
48
49
53
82
83
86
114
114
117
4
5
7
7
7
7
7
7
7
8
8
8
8
9
9
9
9
9
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
12
12
12
12
13
13
13
13
14
14
15
15
15
16
16
16
16
17
17
17
17
17
18
19
19
19
19
19
20
20
20
21
22
24
24
24
25
27
28
31
31
45
45
49
50
54
83
84
87
115
115
118
1
1
4
5
7
7
7
8
8
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
11
11
11
11
12
12
12
12
13
13
13
14
14
14
14
14
15
15
16
16
17
17
17
17
17
17
17
18
18
18
19
20
20
20
20
20
21
21
21
22
24
25
29
31
46
46
50
51
55
84
85
88
116
116
119
1
1
1
1
1
7
8
8
9
9
9
9
10
10
10
10
10
10
10
11
11
11
11
11
13
13
13
13
13
13
13
14
14
15
15
15
15
16
16
17
17
17
17
18
18
18
18
19
19
19
19
20
21
21
21
21
21
22
22
24
30
47
47
47
52
56
85
86
89
117
117
120
1
1
1
1
1
7
7
9
10
10
10
10
10
11
11
11
11
11
12
13
14
14
14
14
14
14
14
15
16
16
16
17
17
17
17
17
18
18
18
19
19
19
19
19
20
20
20
20
21
21
22
22
22
22
23
23
31
48
53
57
86
87
90
118
118
121
1
1
1
1
4
5
5
5
7
7
7
7
7
8
9
10
10
10
10
11
12
12
12
13
14
14
15
15
15
16
17
17
17
17
18
18
19
19
19
20
20
20
20
20
21
21
21
21
22
23
23
23
23
24
24
25
32
54
58
87
88
91
119
119
122
1
1
1
1
1
4
5
5
5
5
5
5
5
5
6
7
7
7
7
7
7
7
7
7
7
8
8
8
9
9
10
10
10
10
10
12
12
13
14
15
15
15
17
17
18
18
18
19
20
20
20
21
21
21
21
21
22
22
22
22
23
23
24
24
24
24
25
25
25
28
33
55
59
88
89
92
120
120
123
1
1
1
1
1
4
5
5
5
5
5
5
5
5
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
11
12
13
14
15
17
17
18
18
19
19
19
20
21
21
21
21
21
22
22
22
22
23
23
23
23
23
24
25
25
25
26
26
28
28
29
32
34
50
56
60
89
90
93
121
121
124
1
1
1
1
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
11
11
11
11
12
13
14
14
15
15
17
18
18
19
20
20
20
20
21
21
21
21
22
22
23
23
23
23
24
24
24
24
25
26
26
26
27
27
28
28
28
28
29
30
33
35
48
57
61
90
91
94
122
122
125
1
1
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
12
12
12
13
13
14
14
14
14
15
15
15
15
17
18
19
20
21
21
21
21
21
21
22
22
22
23
23
24
24
24
25
25
25
25
26
27
27
27
28
28
28
28
28
28
29
29
30
31
32
34
36
58
62
91
92
95
123
123
126
1
1
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
12
12
13
13
13
13
14
14
14
14
15
15
15
15
15
16
18
20
21
21
21
21
21
22
22
23
23
24
24
24
24
25
25
26
26
26
26
27
28
28
28
28
28
28
28
29
29
29
29
30
30
32
33
35
37
59
63
92
93
96
124
124
127
1
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
12
12
12
12
12
12
13
14
14
14
14
14
14
14
15
15
15
16
17
17
18
18
18
21
22
22
23
23
23
24
24
25
25
25
25
26
26
27
27
27
27
28
28
28
28
28
29
29
29
29
29
30
30
30
30
33
34
36
38
60
64
93
94
97
125
125
128
1
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
12
12
12
12
12
13
13
13
13
13
13
13
14
15
15
15
16
16
17
18
18
18
21
22
23
24
24
25
25
26
26
26
26
27
27
28
28
28
28
28
28
29
29
29
30
30
30
30
31
31
34
35
37
39
61
65
94
95
98
126
126
129
4
4
4
4
4
4
5
5
5
5
5
5
5
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
12
12
12
12
12
12
12
12
12
13
13
13
13
13
14
14
14
14
14
15
15
16
16
16
17
17
19
23
24
24
25
25
26
26
27
27
27
27
28
28
28
28
29
29
29
29
29
30
30
30
31
32
35
35
40
62
66
95
96
99
127
127
130
3
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
6
6
6
7
7
7
7
7
7
7
7
7
8
8
8
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
12
12
12
12
12
12
12
12
13
13
13
13
13
13
13
14
14
14
14
15
15
15
15
15
15
15
16
17
17
17
18
20
25
25
25
26
27
27
28
28
28
28
28
29
29
29
30
30
30
30
32
33
41
63
67
96
97
100
128
128
131
3
3
3
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
6
6
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
9
9
9
9
9
9
10
10
10
10
10
10
11
11
11
11
11
11
12
12
12
12
12
12
12
12
12
13
13
13
13
14
14
14
14
14
15
15
15
15
15
15
15
15
15
16
16
16
16
16
16
16
16
16
16
16
16
17
18
18
19
19
19
19
19
26
27
28
28
29
29
29
29
30
30
30
31
31
37
42
64
68
97
98
101
129
129
132
1
3
3
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
7
7
7
8
8
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
11
11
11
11
12
12
12
12
12
12
12
12
13
13
14
14
14
15
15
15
15
15
16
16
16
16
16
16
16
16
16
16
17
17
17
17
17
17
17
17
17
17
19
19
19
19
19
19
20
20
20
27
28
29
29
30
30
30
31
32
35
43
65
69
98
99
102
130
130
133
1
2
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
6
6
6
7
7
7
7
7
7
7
7
7
7
7
8
9
9
9
10
10
10
10
10
10
11
11
11
11
11
12
12
12
12
12
12
13
13
13
13
14
14
15
15
15
15
15
16
16
16
16
16
17
17
17
17
17
17
17
17
17
17
18
18
18
18
18
18
18
18
19
19
19
19
20
20
20
20
21
21
21
28
29
30
31
31
31
32
33
44
66
70
99
100
103
131
131
134
2
3
3
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
8
8
8
9
10
10
10
10
11
11
11
11
12
12
12
12
12
13
13
13
14
14
14
14
14
15
15
15
15
16
16
16
16
16
16
17
17
18
18
18
18
18
18
18
18
18
19
19
19
19
19
19
19
19
19
19
19
19
20
20
21
21
21
22
29
30
31
32
33
45
67
71
100
101
104
132
132
135
1
3
4
4
4
4
4
4
4
5
5
5
5
5
5
6
6
6
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
9
9
9
10
11
11
12
12
12
13
14
14
14
15
15
15
15
15
15
16
16
16
16
17
17
17
17
17
18
19
19
19
19
19
19
19
19
19
19
19
19
19
20
20
20
20
20
20
20
21
21
21
22
23
27
30
32
34
46
68
72
101
102
105
133
133
136
1
1
1
4
4
4
5
5
5
5
5
5
5
5
6
6
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
9
9
9
10
10
12
12
12
13
14
15
15
15
16
16
16
16
17
17
17
17
18
18
18
18
19
19
19
20
20
20
20
20
20
20
20
21
21
21
21
21
21
23
24
28
31
31
35
47
69
73
102
103
106
134
134
137
1
1
1
1
4
5
5
5
5
5
5
6
6
6
6
6
6
7
7
7
7
7
7
7
8
8
8
8
8
8
9
9
9
9
9
10
10
11
11
11
12
13
14
15
16
17
17
17
18
18
18
18
19
19
20
20
21
21
21
21
21
21
22
22
22
23
25
29
31
36
48
70
74
103
104
107
135
135
138
1
1
1
1
1
2
2
4
5
5
6
7
7
7
7
7
7
7
7
7
8
8
8
8
9
9
9
9
10
10
10
10
10
10
11
11
11
12
12
14
14
15
17
18
18
18
19
19
19
20
21
21
22
22
23
23
23
23
25
30
37
49
71
75
104
105
108
136
136
139
2
2
3
3
4
5
5
5
5
5
6
7
8
8
8
8
8
8
8
8
8
8
8
9
9
10
10
10
10
10
11
11
11
11
12
12
13
13
14
15
15
16
18
18
19
20
21
22
22
23
23
23
24
26
26
28
38
47
50
72
76
105
106
109
137
137
140
1
3
3
4
4
4
5
5
5
5
5
5
5
6
6
6
6
6
6
7
7
7
7
7
7
8
8
8
8
8
9
9
9
9
9
9
10
10
11
11
11
12
12
13
13
14
15
15
16
16
17
17
18
19
21
22
22
22
22
22
27
27
28
39
48
51
73
77
106
107
110
138
138
141
1
1
1
1
1
1
1
4
4
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
9
9
9
9
10
10
10
10
10
10
10
11
11
11
12
13
13
14
15
15
16
17
17
17
18
21
22
22
22
23
28
28
28
40
49
52
74
78
107
108
111
139
139
142
1
2
2
2
4
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
10
10
10
10
10
11
11
11
11
11
11
12
12
13
14
15
15
15
16
17
17
18
19
20
22
22
23
28
29
29
41
50
53
75
79
108
109
112
140
140
143
1
1
1
1
5
5
5
5
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
8
9
9
9
9
10
10
10
10
10
10
10
10
11
11
11
12
12
12
12
12
13
13
14
15
15
15
15
16
17
17
18
19
20
22
23
28
30
30
42
51
54
76
80
109
110
113
141
141
144
1
1
1
1
1
2
4
4
5
5
6
6
6
6
6
6
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
10
10
10
10
10
11
11
11
11
11
11
11
12
12
13
13
13
13
13
14
15
15
15
16
17
18
19
19
21
21
23
28
28
28
35
43
48
50
52
55
77
81
110
111
114
142
142
145
1
1
1
1
1
1
1
2
2
2
4
4
4
5
5
5
5
5
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
9
9
9
9
9
9
9
10
10
10
10
10
10
10
11
11
11
11
12
12
12
12
12
13
13
14
14
14
14
15
15
15
15
16
17
18
19
19
20
21
22
28
28
36
44
49
51
53
56
78
82
111
112
115
143
143
146
1
1
1
1
1
1
2
4
4
4
4
5
5
5
5
5
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
9
9
9
9
9
10
10
10
10
10
10
11
11
11
11
11
11
12
12
12
12
13
13
13
13
13
13
14
14
15
15
15
15
15
16
17
17
18
19
19
19
20
28
37
45
50
52
54
57
79
83
112
113
116
144
144
147
1
1
1
1
1
2
4
4
4
5
5
5
5
5
5
5
5
5
6
6
6
6
7
7
7
7
7
7
8
8
8
8
8
9
9
9
9
9
9
9
9
9
10
10
10
11
11
11
11
11
11
12
12
12
12
13
13
13
13
14
14
14
14
15
15
15
16
16
16
16
17
18
19
19
20
21
21
23
28
38
46
51
53
58
80
84
113
114
117
145
145
148
1
1
1
1
1
1
1
1
2
3
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
9
9
9
10
10
10
10
10
10
10
10
10
11
11
12
12
12
12
12
12
12
13
14
14
14
15
15
15
15
15
16
16
16
17
17
17
18
19
19
19
21
21
22
25
37
39
47
54
59
81
85
114
115
118
146
146
149
1
1
1
1
1
1
2
2
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
9
9
9
9
9
9
10
10
10
10
10
10
10
11
11
11
11
12
12
12
12
13
13
14
15
15
15
15
16
16
16
16
16
17
17
18
19
19
19
19
22
26
35
38
40
48
55
55
60
82
86
115
116
119
147
147
150
1
1
1
1
1
1
1
1
1
1
2
2
2
2
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
11
11
11
12
12
12
12
12
12
13
13
13
14
14
15
15
16
16
16
16
17
17
17
17
18
18
19
19
19
20
23
24
27
36
39
41
49
51
54
61
83
87
116
117
120
148
148
151
1
1
1
1
1
1
2
2
2
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
12
12
12
12
13
13
13
13
13
14
14
15
15
15
16
16
16
17
17
17
18
18
19
19
19
20
21
24
24
25
25
28
37
40
42
50
62
84
88
117
118
121
149
149
152
1
1
1
2
2
3
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
9
9
9
9
9
10
10
10
10
10
10
10
10
10
11
11
11
11
12
12
12
12
12
13
13
13
14
14
14
14
15
15
15
16
16
16
16
17
18
18
18
19
19
20
20
21
22
24
24
25
26
26
27
29
38
41
51
63
85
89
118
119
122
150
150
153
1
1
1
1
1
1
2
2
2
3
3
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
11
11
11
11
12
12
12
12
13
13
13
13
14
15
15
15
16
16
16
16
16
17
17
17
17
19
19
19
19
20
20
21
21
23
24
24
24
25
25
26
27
27
27
30
42
52
64
86
90
119
120
123
151
151
154
1
1
1
1
2
2
3
3
4
4
4
4
4
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
12
12
12
12
12
13
13
14
14
14
15
15
16
16
16
16
16
16
17
17
17
17
18
18
18
20
20
20
21
21
22
22
24
24
24
25
25
26
27
28
28
31
38
53
65
87
91
120
121
124
152
152
155
1
2
2
2
3
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
11
11
11
11
11
12
12
12
12
13
13
13
14
14
15
15
16
16
16
16
17
17
17
17
17
17
17
18
18
19
19
19
21
21
21
22
22
23
24
24
24
24
25
26
26
28
29
32
42
54
66
88
92
121
122
125
153
153
156
1
1
2
2
2
3
3
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
11
11
12
12
12
13
13
13
13
14
14
14
14
15
16
16
16
16
16
17
17
17
17
17
17
17
18
18
18
18
18
19
19
20
20
20
22
22
22
23
23
24
24
24
25
25
26
27
29
30
42
55
67
89
93
122
123
126
154
154
157
1
2
3
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
7
7
7
7
7
8
8
8
8
8
8
8
9
9
9
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
12
12
13
13
13
13
13
13
14
14
14
14
15
15
16
17
17
17
17
17
18
18
18
19
19
19
19
19
20
20
21
23
23
23
24
24
25
25
26
26
30
31
56
68
90
94
123
124
127
155
155
158
4
4
4
4
5
5
5
5
5
5
5
6
6
6
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
9
9
9
9
9
10
10
10
10
10
11
11
11
11
12
12
12
12
12
12
12
12
12
13
13
13
14
14
14
14
15
15
16
16
17
17
17
17
17
18
18
18
18
19
19
20
20
20
21
21
22
24
24
25
25
26
26
32
57
69
91
95
124
125
128
156
156
159
1
4
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
7
7
7
7
8
8
8
8
8
8
8
8
9
9
9
9
10
10
10
10
10
11
11
11
11
12
12
13
13
13
13
13
13
13
14
14
14
14
15
15
16
16
17
17
18
18
18
19
19
20
21
21
22
22
23
25
26
27
32
58
70
92
96
125
126
129
157
157
160
4
4
4
4
4
5
5
5
6
6
6
6
7
7
7
7
8
8
8
8
8
8
9
9
9
9
9
10
10
10
10
10
10
11
11
11
11
12
13
13
13
14
14
14
14
14
14
14
14
14
15
15
15
17
17
18
19
19
19
19
21
22
22
23
24
26
59
71
93
97
126
127
130
158
158
161
4
4
4
4
4
5
5
6
6
7
7
8
8
8
9
9
10
10
10
10
10
10
11
11
11
11
12
12
13
13
13
13
13
14
14
14
15
15
15
15
15
15
16
16
18
18
19
19
20
22
23
25
27
60
72
94
98
127
128
131
159
162
1
4
4
4
5
5
5
5
6
6
8
9
10
10
11
11
11
11
12
12
12
13
13
13
13
14
14
14
15
15
16
16
16
16
16
19
21
23
24
26
61
73
95
99
128
129
132
160
163
1
4
4
5
5
6
6
6
7
9
11
11
12
13
13
13
14
14
14
15
15
15
16
17
17
17
17
17
24
25
25
62
74
96
100
129
133
161
164
1
5
6
7
7
8
8
9
9
10
12
13
14
15
15
16
16
16
16
17
18
18
21
25
26
63
75
97
101
130
134
162
165
2
5
7
7
7
8
9
10
10
10
11
11
12
13
16
17
17
18
19
22
26
64
76
98
102
131
135
163
166
1
3
5
5
7
8
9
10
10
11
12
13
17
17
18
18
23
26
65
77
99
103
132
136
164
167
1
1
1
1
2
4
6
7
8
9
11
11
11
12
13
14
17
17
18
18
24
66
78
100
104
133
137
165
168
1
1
2
2
2
3
4
5
5
8
8
8
9
10
10
10
11
12
12
13
14
15
17
18
24
51
67
79
101
105
134
138
166
169
1
1
1
1
3
3
3
4
4
5
5
6
7
8
8
8
9
9
10
10
11
13
13
13
14
17
17
18
18
24
28
38
52
68
80
102
106
135
139
167
170
1
1
1
1
1
1
1
1
2
3
4
4
4
4
4
5
5
5
5
6
6
7
8
8
9
10
10
10
11
11
11
13
14
14
15
15
17
17
17
17
19
19
19
23
23
24
29
39
53
69
81
103
107
136
140
168
171
1
1
1
1
1
1
1
1
1
1
2
2
2
3
3
3
4
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
7
7
7
7
8
8
8
8
9
10
10
11
11
13
15
16
16
17
17
18
18
19
20
20
20
20
24
24
24
30
40
54
70
82
104
108
137
141
169
172
1
1
1
1
1
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
4
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
8
8
8
8
9
9
10
10
10
10
11
11
12
13
16
17
17
17
17
17
17
19
21
21
21
21
25
25
31
41
55
71
83
105
109
138
142
170
173
1
1
1
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
4
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
9
10
10
10
10
10
12
13
14
16
17
18
18
20
22
22
22
22
26
26
32
32
42
56
72
84
106
110
139
143
171
174
1
1
1
1
2
2
3
3
3
3
4
4
4
4
4
5
5
5
5
5
5
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
9
9
10
11
11
11
11
13
13
14
14
19
19
19
21
23
23
23
23
27
27
28
32
32
33
43
73
85
107
111
140
144
172
175
1
1
1
1
1
1
1
1
2
2
2
2
2
3
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
11
11
12
12
13
13
13
13
13
14
17
17
17
19
19
19
20
22
24
24
24
24
24
24
33
33
34
42
42
54
55
74
86
108
112
141
145
173
176
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
3
3
3
3
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
6
6
6
6
6
7
7
7
7
7
7
8
8
8
8
8
8
8
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
12
12
12
13
13
13
13
13
14
14
17
17
17
19
20
20
21
23
24
24
25
25
25
34
34
35
43
43
55
56
75
87
109
113
142
146
174
177
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
3
3
3
3
3
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
8
8
8
8
8
8
8
9
9
9
9
9
9
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
12
12
12
12
12
13
13
13
13
14
14
14
14
14
15
15
19
19
21
21
22
24
26
35
35
44
44
56
57
76
88
110
114
143
147
175
178
1
1
1
1
1
1
1
2
2
2
2
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
7
7
7
7
7
7
7
7
7
8
8
8
8
8
9
9
9
9
9
10
10
10
10
10
11
11
11
11
11
11
12
12
12
12
12
12
12
12
12
12
13
13
13
13
13
13
13
13
13
14
14
15
15
15
15
19
19
20
22
27
36
45
45
57
58
77
89
111
115
144
148
176
179
1
1
1
1
3
3
3
3
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
7
7
7
8
8
8
8
8
8
9
9
9
9
9
9
9
10
10
10
10
11
11
11
12
12
12
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
14
14
14
14
14
14
15
15
16
16
19
19
20
21
28
37
45
45
46
57
58
59
78
90
112
116
145
149
158
177
180
1
1
2
4
4
4
4
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
8
8
8
9
9
9
9
9
9
10
10
10
11
11
11
11
12
12
12
13
13
13
13
13
13
13
14
14
14
14
14
14
14
14
14
15
15
15
15
16
17
19
19
20
21
27
35
46
47
59
60
79
91
113
117
146
150
159
178
181
1
1
3
4
4
4
4
5
5
5
5
5
6
6
6
6
6
6
6
6
6
7
7
7
7
7
8
8
8
8
8
8
8
9
9
9
10
10
10
11
11
12
12
12
12
13
13
13
14
14
14
15
15
15
15
15
15
15
16
17
18
19
20
21
26
45
45
47
57
58
60
80
92
114
118
147
151
160
179
182
4
4
4
5
5
5
5
5
6
6
7
7
7
7
7
7
7
8
8
8
8
9
9
9
9
9
9
9
10
10
11
11
11
12
12
13
13
13
13
13
14
14
15
15
16
16
16
17
19
19
19
20
21
46
59
81
93
115
119
130
148
152
158
161
180
183
1
4
4
5
5
5
5
5
6
6
6
7
8
8
8
8
8
9
9
9
9
10
10
10
10
11
11
12
12
12
12
13
13
13
13
14
14
14
14
15
15
17
17
17
18
18
19
19
20
20
27
47
60
82
94
116
120
131
149
153
162
181
184
4
4
5
5
5
6
6
7
7
7
9
9
9
9
10
10
10
10
11
11
11
12
12
13
13
13
14
14
15
15
16
18
18
18
18
20
21
21
26
83
95
117
121
132
150
154
163
182
185
3
4
4
4
5
5
6
7
10
10
11
11
11
11
12
12
12
13
13
14
14
15
17
18
18
18
19
19
21
84
96
118
122
129
133
151
155
164
183
186
4
5
5
7
8
11
11
12
12
12
12
13
13
13
18
18
18
18
19
20
85
97
119
123
134
152
156
165
184
187
1
1
8
8
8
10
11
12
12
13
13
13
14
14
17
17
19
20
86
98
120
124
135
153
157
166
185
188
1
2
5
8
9
9
10
12
12
13
13
14
14
15
17
18
18
19
20
21
87
99
125
136
158
167
189
2
3
3
4
4
5
5
6
10
10
10
11
13
13
14
16
18
19
19
19
22
88
100
126
137
159
168
190
3
3
4
4
5
6
6
7
8
9
11
11
11
13
13
14
15
17
17
19
19
20
20
23
89
101
127
138
160
169
191
1
1
1
4
4
4
5
5
5
6
7
7
8
8
9
10
11
12
12
12
13
15
16
17
18
19
19
19
21
24
43
56
90
102
128
139
161
170
192
2
2
4
4
5
5
5
6
6
8
8
8
8
9
9
10
13
13
13
13
14
16
17
19
19
19
22
25
44
45
57
58
91
103
129
140
162
171
193
1
3
3
4
4
5
5
6
7
8
8
9
10
10
10
11
13
13
14
17
17
19
19
20
23
45
45
46
57
58
59
92
104
130
141
163
172
194
1
1
2
4
4
5
5
5
6
7
8
9
10
10
11
11
12
12
12
17
18
19
21
24
35
45
46
47
58
59
60
93
105
131
142
164
173
195
1
1
1
2
2
3
4
4
5
5
6
9
10
10
11
11
12
12
13
13
22
22
36
45
46
47
48
56
57
59
60
61
94
106
132
143
165
174
196
1
1
1
1
2
2
3
3
3
5
6
6
7
7
8
9
9
9
9
10
12
13
13
14
14
14
23
23
25
37
47
48
49
60
61
62
95
107
133
144
166
175
197
1
1
1
1
2
2
2
3
3
4
5
6
6
7
7
8
8
9
9
9
10
12
13
13
14
14
15
24
24
26
35
37
38
43
48
50
61
63
96
108
134
145
167
176
198
1
1
1
1
1
2
2
2
2
3
3
3
4
4
4
4
4
5
7
8
8
9
9
9
9
9
9
10
11
12
12
13
13
13
13
13
15
16
19
19
19
25
25
27
36
38
39
51
64
97
109
135
146
168
177
199
1
1
1
2
2
2
2
2
3
3
3
3
4
4
4
5
5
5
5
6
7
8
9
9
9
9
10
10
10
12
12
13
13
13
14
14
14
14
16
17
19
20
20
26
26
28
37
37
39
40
98
110
136
147
169
178
200
1
1
2
3
3
3
3
3
4
4
5
5
5
5
5
5
5
6
6
6
7
8
9
9
10
11
11
11
14
14
14
14
15
15
15
15
15
15
17
21
21
27
27
29
35
38
40
45
45
57
58
99
111
137
148
170
179
201
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
3
4
4
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
8
8
9
9
9
9
9
9
9
9
10
11
12
12
12
13
13
13
13
15
15
16
16
16
18
19
19
22
28
28
30
41
46
59
100
112
138
149
171
180
202
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
2
2
2
2
2
2
2
2
2
2
2
2
4
4
4
4
5
5
5
5
5
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
11
12
12
13
13
13
13
13
14
14
17
17
17
19
19
19
20
29
29
42
47
60
101
113
139
150
172
181
203
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
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
7
7
7
8
8
8
8
8
8
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
13
14
14
14
15
15
18
18
20
20
21
30
102
114
140
151
173
182
204
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
9
9
9
9
9
9
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
11
11
12
12
12
14
15
15
19
19
21
21
31
103
115
141
152
174
183
205
1
1
1
1
2
2
3
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
7
7
7
7
8
8
8
8
8
8
8
8
8
8
8
8
8
8
10
11
11
11
11
11
12
12
12
12
12
12
12
12
12
13
13
13
20
20
22
32
104
116
142
153
175
184
206
