1
1
1
1
2
1
2
2
2
3
2
3
3
3
4
1
1
1
1
3
4
4
4
5
1
1
2
2
4
5
5
5
5
6
2
2
3
3
5
6
6
6
6
6
6
7
3
4
6
6
7
7
7
7
7
7
7
8
1
4
5
5
5
5
6
7
8
8
8
8
8
8
9
9
1
3
5
6
6
6
7
7
7
8
8
9
9
10
10
1
6
6
6
7
7
7
7
8
10
10
11
11
1
2
5
7
7
7
7
8
8
8
9
11
11
12
12
1
6
7
7
7
7
7
8
8
9
9
9
10
13
13
1
7
7
8
9
9
10
10
11
14
14
1
7
7
7
9
10
10
11
11
15
15
1
7
7
7
7
7
7
8
8
8
10
10
11
12
16
16
7
7
8
8
9
9
9
10
10
11
13
17
17
1
9
9
10
11
11
14
18
18
1
1
7
7
7
10
10
10
15
19
19
1
7
7
7
7
7
7
7
8
8
8
10
11
16
20
20
1
2
7
7
8
8
9
9
9
10
10
11
17
21
21
1
3
7
7
9
9
10
10
11
11
18
22
22
2
4
7
7
7
7
7
8
8
8
10
10
10
11
19
23
23
3
7
7
7
7
7
8
8
9
9
9
10
10
11
20
24
24
7
7
7
7
7
7
8
9
9
10
10
10
10
11
11
21
25
25
1
1
7
7
8
8
9
9
9
10
10
10
10
10
11
11
11
22
26
26
1
1
2
7
9
9
9
10
11
11
11
11
11
12
23
25
25
27
27
2
3
9
9
10
10
10
10
10
11
11
12
13
24
25
25
26
26
28
28
1
1
3
4
7
8
8
9
10
10
10
11
11
12
13
13
14
25
26
26
27
27
29
1
7
7
7
7
7
7
8
8
8
8
8
9
9
9
9
10
10
11
11
12
12
13
14
14
14
26
27
27
28
28
30
1
7
7
8
8
8
9
9
10
10
10
10
10
10
10
11
11
12
12
13
13
13
14
14
14
23
26
27
28
28
29
30
31
1
2
9
9
11
11
11
11
11
11
11
12
13
14
14
15
24
27
28
29
29
30
31
32
1
1
1
2
3
7
10
10
10
11
11
11
12
13
15
16
25
28
29
30
30
31
32
33
1
3
4
7
7
7
7
7
7
7
7
8
8
10
11
11
11
11
11
12
12
14
16
16
16
17
26
29
31
31
32
33
34
1
2
7
7
7
8
8
8
9
9
10
10
10
11
11
11
11
11
11
11
12
13
13
13
13
14
16
17
17
17
17
27
32
32
33
34
35
1
3
7
9
9
9
11
11
11
11
11
12
12
13
13
14
14
14
14
16
17
17
17
28
33
33
33
34
35
35
36
1
2
4
7
7
7
7
7
8
8
10
10
10
10
13
13
14
14
14
14
17
18
29
34
34
34
35
36
36
37
1
3
7
7
7
7
8
8
8
9
9
10
10
10
11
13
13
14
18
19
30
35
35
35
36
37
37
38
1
1
7
7
7
7
7
7
7
8
9
9
9
9
9
11
11
11
12
12
12
14
14
14
19
19
19
20
31
36
36
36
38
38
39
1
2
7
8
9
10
10
10
10
10
10
10
10
11
11
13
13
13
13
14
15
16
16
20
20
20
32
36
36
37
37
39
39
40
2
3
7
7
8
10
10
10
10
11
11
11
11
11
13
14
14
15
16
17
17
19
33
37
37
38
38
40
40
41
3
4
7
7
9
9
9
9
9
10
11
11
11
11
12
12
12
12
14
14
14
15
16
19
19
19
20
34
38
38
39
39
41
41
42
1
7
7
7
7
7
7
8
8
9
10
10
10
10
11
11
11
11
11
12
13
13
13
13
13
14
15
16
16
20
20
20
20
20
21
21
35
39
39
40
42
42
43
1
1
1
2
5
5
5
7
8
8
8
8
9
9
10
10
10
10
10
10
10
11
11
11
12
13
13
14
14
14
15
16
17
17
21
21
22
22
36
40
41
43
43
44
2
3
4
4
5
5
6
6
6
9
9
9
11
11
11
12
12
12
14
14
15
16
21
22
22
23
23
37
41
42
44
44
45
1
3
4
5
7
7
7
7
8
8
9
9
9
9
10
10
12
12
13
13
13
22
23
23
24
24
38
42
43
45
45
46
1
1
1
4
6
8
8
8
8
8
8
8
8
9
9
9
9
9
10
10
10
10
11
11
13
13
13
14
14
14
23
25
25
39
43
44
46
46
47
1
1
1
5
7
9
9
9
9
9
10
10
10
11
11
11
11
13
14
14
14
14
14
24
24
26
26
26
40
44
45
47
47
48
1
1
1
1
4
4
5
5
10
10
10
11
11
11
12
12
12
12
14
15
25
25
27
27
27
41
45
46
47
48
48
49
1
5
5
5
7
11
11
11
11
11
12
13
15
16
16
26
26
28
28
28
42
46
47
48
48
49
49
50
1
1
5
5
6
7
9
10
10
11
11
12
12
12
12
12
12
13
13
13
13
14
14
16
16
16
16
17
19
20
27
27
29
29
29
42
47
48
50
50
51
5
5
7
8
8
9
9
10
10
10
10
11
11
11
12
12
13
13
13
13
13
13
13
13
14
14
14
14
14
14
15
16
17
17
19
19
19
20
20
30
30
30
38
48
49
51
51
52
1
5
5
5
7
8
8
9
9
9
10
11
11
11
11
11
12
12
13
13
14
14
14
14
14
14
14
14
15
15
15
16
16
17
17
19
19
20
31
31
31
39
40
49
50
52
52
53
1
1
1
5
5
5
7
8
10
11
11
11
11
11
11
12
12
12
13
13
14
15
15
15
15
16
16
16
16
16
17
32
32
32
36
40
40
41
46
50
51
53
53
54
1
5
5
5
7
9
10
10
10
10
11
11
11
11
12
12
13
13
13
15
16
16
16
16
16
16
16
17
33
33
33
34
37
41
41
42
46
47
51
52
54
54
55
1
5
5
5
6
7
7
7
9
10
10
11
11
11
11
11
11
12
13
13
13
13
13
17
17
17
17
17
34
34
34
35
36
38
42
42
43
47
48
52
53
55
55
56
1
1
1
5
5
7
8
8
8
9
10
10
11
11
11
12
12
13
13
14
14
14
16
16
16
18
18
35
35
35
36
37
39
43
43
44
47
49
49
53
54
56
56
57
1
5
8
9
9
10
10
11
11
11
12
12
13
13
14
16
16
16
17
17
17
19
36
36
36
37
38
40
43
44
45
48
50
54
55
57
57
58
1
1
5
9
9
9
11
11
11
11
12
13
13
13
13
15
17
17
17
18
18
20
37
37
37
38
39
41
45
48
49
51
54
56
58
58
59
5
5
5
7
9
9
9
12
12
12
13
13
14
14
14
15
16
16
19
20
21
38
38
38
39
40
45
45
52
54
55
57
59
59
60
5
5
5
5
9
10
12
12
12
13
13
13
13
13
14
14
16
16
16
16
16
17
17
19
20
21
22
39
39
39
41
42
53
56
58
60
60
61
1
5
7
7
7
10
10
11
11
11
11
12
12
13
13
14
14
14
14
14
14
14
15
17
17
17
17
17
19
19
19
21
22
23
33
39
40
40
40
41
54
57
59
61
61
62
1
1
5
5
5
7
7
7
8
9
9
9
9
9
9
10
11
11
11
14
14
14
14
14
14
15
15
15
16
17
18
18
19
19
22
22
23
24
24
34
35
35
41
41
41
41
42
55
58
60
62
62
63
1
5
5
7
7
7
7
7
7
7
8
9
10
10
10
11
11
11
11
12
13
14
14
15
15
16
16
16
19
19
23
23
24
25
25
32
35
36
36
42
42
42
56
59
61
63
63
64
1
1
1
1
4
5
5
5
7
7
7
7
7
7
8
8
9
9
10
10
10
10
11
12
13
14
16
16
20
20
24
24
25
26
26
31
33
36
37
37
42
43
43
43
46
46
57
60
62
64
64
65
1
1
1
5
5
5
5
5
7
7
7
7
8
8
9
9
10
10
10
11
11
11
11
13
13
15
17
21
21
26
27
27
32
32
34
37
38
38
43
43
43
44
44
47
58
61
63
65
65
66
1
5
5
5
5
5
5
6
7
9
9
10
10
10
10
10
10
11
11
11
11
12
13
13
13
13
13
16
16
17
17
22
22
27
28
28
33
33
33
35
38
39
39
44
45
45
46
46
46
46
48
59
62
64
66
66
67
1
1
4
4
4
5
5
5
5
5
6
7
7
7
10
10
10
10
11
11
11
11
11
11
11
12
12
12
13
13
14
14
16
16
16
17
17
22
22
23
23
28
29
29
34
34
34
35
36
40
40
45
46
46
46
46
46
47
47
60
63
65
65
67
68
1
4
4
5
5
5
6
7
7
8
8
11
11
11
11
12
12
13
13
13
13
13
13
14
14
16
16
16
18
23
23
24
24
29
30
30
34
35
35
35
36
37
38
46
46
47
47
47
47
47
48
48
61
64
66
66
66
68
69
1
4
5
5
5
6
7
7
8
8
9
9
11
11
11
12
13
13
13
13
14
14
14
19
24
24
25
30
31
31
35
36
36
36
37
40
46
47
48
48
48
48
48
62
65
67
67
69
70
1
4
4
4
5
5
5
5
5
7
7
7
9
9
9
10
11
11
11
11
12
13
14
14
14
16
16
20
25
26
31
32
32
36
37
37
38
40
42
46
47
48
48
49
49
49
49
63
66
68
68
70
71
1
5
5
5
5
5
5
5
5
6
7
8
9
10
11
11
11
11
11
12
12
13
13
14
14
15
21
26
27
31
32
33
33
36
37
37
38
39
43
48
48
49
49
50
50
50
64
67
69
69
71
72
4
5
5
5
5
6
6
7
7
7
9
9
10
11
11
11
11
11
11
12
12
12
12
13
13
13
14
14
15
16
16
16
22
27
28
33
34
34
37
38
38
40
42
49
49
50
50
51
51
51
65
68
70
70
72
73
6
7
7
7
7
7
7
7
7
7
7
8
8
10
10
11
11
11
11
11
12
12
12
13
13
13
13
13
13
13
14
14
14
15
16
17
23
26
28
29
29
30
33
34
35
35
39
42
43
43
49
49
50
51
51
52
52
52
66
69
71
71
73
74
5
7
7
7
7
7
7
7
7
7
7
7
7
7
8
9
9
9
10
10
11
11
11
11
11
11
12
12
13
13
13
13
13
14
14
14
14
16
16
16
17
18
18
24
24
26
27
27
29
30
30
30
31
35
36
36
39
40
43
49
51
52
52
53
53
67
70
72
72
74
75
7
7
7
7
7
7
7
7
7
8
8
8
9
9
9
10
10
10
10
10
11
11
12
12
13
13
13
13
13
13
13
14
14
14
15
17
17
17
18
19
19
27
28
28
28
28
28
30
31
31
31
31
31
32
36
37
37
43
43
49
50
52
53
54
54
68
71
73
73
75
76
1
1
1
5
5
7
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
13
14
14
15
16
16
17
17
17
18
18
19
20
20
28
29
29
29
29
29
29
29
31
32
32
32
33
37
38
38
51
54
55
55
69
72
74
74
76
77
1
1
1
5
5
5
5
5
7
7
7
7
7
7
7
8
8
8
8
8
9
9
10
10
10
10
11
11
11
11
11
12
12
12
13
14
14
14
14
14
16
16
16
16
17
17
20
21
21
22
29
30
30
30
30
30
31
31
32
33
33
33
33
33
33
34
38
39
39
50
52
55
56
56
70
73
75
75
77
78
1
5
7
7
7
8
9
9
9
9
10
10
10
11
11
12
12
13
13
13
13
13
14
15
15
16
16
17
18
18
19
21
22
22
22
23
30
31
31
31
31
31
31
32
32
33
34
34
34
35
39
40
40
49
51
56
57
57
71
74
76
76
79
1
1
7
7
9
10
10
10
11
11
13
13
14
14
14
16
16
18
19
19
20
22
23
23
23
24
29
31
32
32
32
33
33
33
34
35
35
40
41
41
49
52
57
58
58
72
75
77
77
77
80
1
1
4
8
8
9
9
9
10
10
11
13
13
14
14
19
20
20
21
23
24
24
24
25
29
30
31
31
33
33
34
34
34
35
36
41
42
42
43
50
53
58
59
59
73
76
77
78
78
78
81
5
7
7
9
9
9
10
10
10
10
10
10
11
11
11
11
11
13
13
13
13
20
21
21
22
22
24
24
25
25
25
31
32
33
34
35
35
35
36
37
42
43
43
44
49
50
59
60
60
74
77
79
79
79
82
4
4
5
5
7
7
8
8
8
8
9
9
9
9
9
10
10
10
10
10
11
11
12
13
13
13
21
22
22
22
23
24
24
25
25
26
26
32
34
34
35
36
36
37
38
42
43
44
44
48
49
50
51
60
61
61
75
78
80
80
80
83
4
4
4
4
5
5
5
5
5
5
5
7
7
7
8
8
8
8
9
10
10
10
10
11
11
12
12
13
13
22
23
23
24
24
25
26
26
27
27
33
36
36
38
39
43
43
43
44
44
45
45
49
49
50
52
53
61
62
62
76
79
81
81
81
84
4
4
4
5
5
5
5
5
5
7
7
7
7
7
7
8
9
9
9
9
9
10
10
10
11
12
12
13
13
13
14
20
23
24
24
25
25
26
27
27
28
28
29
29
34
39
40
43
44
44
45
46
50
50
50
53
53
62
63
63
77
80
82
82
82
85
4
5
5
5
5
5
5
7
7
7
7
7
7
7
7
8
8
8
9
9
9
10
10
10
10
10
10
10
11
11
11
11
11
12
13
13
13
13
15
17
20
21
24
25
25
25
25
25
27
27
28
29
29
29
29
29
30
31
35
40
41
44
44
46
47
49
53
54
54
63
64
64
78
81
83
83
83
86
2
4
4
4
5
5
5
5
5
5
5
5
5
6
6
6
6
7
7
7
7
7
7
7
8
8
8
8
9
9
9
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
12
12
12
13
13
13
14
16
16
18
21
22
22
23
24
25
26
26
26
29
29
30
30
30
30
31
32
33
33
36
41
42
45
45
47
48
54
55
55
64
65
65
79
82
84
84
84
87
2
3
4
4
4
5
5
6
6
6
6
6
6
7
7
7
7
8
8
8
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
12
12
13
13
13
13
13
14
14
14
16
16
16
17
19
22
23
23
24
24
24
25
26
27
27
27
27
29
29
29
29
30
31
31
31
31
34
34
37
42
43
46
48
49
49
53
55
65
66
66
80
83
85
85
85
88
1
3
4
4
5
5
6
7
7
7
9
9
9
9
10
10
10
10
10
10
10
10
11
11
11
11
11
11
12
12
12
12
13
13
13
13
13
14
14
14
14
14
15
16
16
18
19
20
23
24
24
25
25
25
26
26
26
26
27
27
28
28
28
29
29
29
30
30
31
32
32
32
34
34
34
34
35
38
43
44
47
49
50
54
66
67
67
81
84
86
86
86
89
1
4
4
5
5
7
7
7
8
8
8
8
9
10
10
10
10
11
11
12
12
12
13
13
14
14
14
14
15
15
15
16
19
20
20
24
25
25
25
26
26
26
27
27
27
28
29
29
29
30
31
31
32
32
33
33
33
35
35
36
39
44
45
48
50
51
55
67
68
68
82
85
87
87
90
1
1
1
5
5
5
5
6
6
6
6
8
9
9
10
10
10
11
14
14
15
16
16
16
17
20
20
21
21
21
24
24
25
26
27
27
27
27
27
28
28
28
29
30
30
30
31
32
34
34
34
36
36
40
45
46
49
51
52
68
69
69
83
86
88
89
91
1
1
1
1
1
1
2
5
5
5
5
7
7
7
8
8
8
9
9
10
15
16
17
17
17
18
18
20
21
21
22
22
22
22
23
25
27
27
28
28
29
29
29
29
30
31
31
34
34
35
35
35
41
46
47
49
50
50
52
53
69
70
70
87
89
90
92
1
1
1
1
2
2
3
3
4
4
5
5
6
6
6
7
7
8
8
8
9
11
15
16
17
18
18
18
18
19
19
21
22
22
22
23
23
23
26
26
26
27
29
29
29
30
30
30
30
31
32
32
34
35
36
36
36
42
44
47
48
50
51
51
53
53
54
70
70
71
71
90
91
93
1
2
2
2
3
3
5
5
5
5
5
7
7
7
7
7
7
7
7
7
8
8
8
8
9
9
9
10
16
17
18
19
19
19
20
20
22
23
23
23
24
24
24
28
29
30
31
31
32
32
33
33
34
35
36
37
37
37
43
45
48
49
50
52
54
55
70
71
72
72
91
92
94
1
1
1
2
3
3
3
4
4
5
5
5
6
6
7
7
7
8
8
8
8
8
8
9
9
9
9
9
10
10
10
10
10
13
17
18
19
20
20
20
21
21
22
22
23
24
24
26
29
31
32
33
34
34
34
36
38
38
38
43
44
49
50
51
51
53
55
56
72
73
73
92
93
95
2
2
2
3
4
4
5
5
6
7
7
8
8
8
8
8
9
9
9
9
9
10
10
10
10
10
10
10
10
11
11
11
11
13
17
18
18
20
21
21
21
22
23
23
24
25
25
31
32
32
34
34
35
35
35
37
39
39
39
44
45
45
49
50
51
51
54
57
73
74
74
93
94
96
3
3
3
3
3
4
5
5
6
7
7
7
7
7
7
7
8
8
8
8
8
9
9
9
9
10
10
10
10
10
10
10
10
11
11
12
12
13
13
14
14
17
18
18
21
22
22
23
23
24
24
25
26
26
32
33
33
33
35
36
36
36
40
40
40
44
44
44
46
50
51
52
53
53
55
55
58
74
75
75
94
95
97
1
2
2
2
4
4
4
5
5
5
5
6
7
7
7
7
7
7
7
8
8
8
8
9
9
9
9
9
9
9
9
10
10
10
10
10
11
11
11
12
12
13
13
13
15
15
17
18
19
22
23
23
25
25
25
26
27
27
33
34
34
36
37
37
37
37
41
41
41
45
45
47
52
53
53
54
54
54
56
59
75
76
76
95
96
98
1
1
2
3
3
4
4
4
4
5
5
5
5
5
5
5
5
5
6
7
7
7
7
8
8
8
8
9
9
9
9
9
9
10
10
10
10
10
10
10
10
11
12
12
12
13
13
14
14
16
18
19
20
21
22
23
23
24
24
24
25
26
26
26
28
28
28
29
29
33
37
37
38
38
38
38
42
42
42
45
45
46
48
53
54
54
55
55
57
60
76
77
77
96
97
99
2
2
3
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
7
7
8
8
9
9
9
9
10
10
10
11
11
11
11
11
12
13
13
13
14
15
15
17
17
19
20
21
21
22
23
24
25
25
25
27
29
30
30
30
38
38
39
39
39
43
43
43
45
45
46
47
49
54
54
55
55
56
56
58
61
77
78
78
97
98
100
3
4
4
4
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
8
8
8
9
10
10
10
11
11
11
12
12
12
14
15
16
16
16
17
18
18
18
19
20
20
20
21
22
24
26
26
26
28
30
30
33
37
39
39
40
44
44
44
45
45
46
47
50
54
54
55
55
55
56
56
57
57
59
62
78
79
79
98
99
101
1
1
1
4
4
4
4
5
5
5
5
5
5
5
5
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
9
9
9
10
10
10
12
12
13
13
15
15
16
16
16
17
17
17
18
19
19
19
20
21
22
22
23
25
26
26
27
27
27
29
31
33
38
38
40
41
45
45
45
46
47
51
56
56
56
57
57
58
60
63
79
80
80
99
100
102
1
1
2
2
4
4
5
5
5
5
5
6
6
6
6
6
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
9
9
10
10
12
13
13
14
14
15
16
16
16
17
17
17
18
18
18
18
18
18
18
18
18
18
19
20
20
20
20
20
21
22
23
24
27
27
28
28
28
30
32
33
37
39
41
42
46
46
46
47
52
57
57
57
59
61
63
64
80
81
81
100
101
103
1
1
2
3
3
4
5
5
5
5
5
5
5
6
6
6
6
7
7
7
7
7
7
7
8
8
8
8
8
8
9
9
10
10
13
14
14
15
15
16
17
17
18
18
18
18
19
19
19
19
19
19
19
19
20
20
21
22
22
22
23
24
25
27
27
27
27
28
29
29
29
31
33
38
40
42
43
45
47
47
47
53
60
61
64
65
81
82
101
102
104
3
3
4
5
5
5
5
5
5
5
6
6
6
6
6
7
7
7
7
7
7
8
8
9
9
9
10
10
11
11
14
15
16
16
17
18
18
18
19
19
20
20
20
20
20
20
20
21
22
22
24
24
25
25
26
28
28
29
30
30
30
32
33
33
34
39
41
43
44
45
46
48
48
48
51
51
54
55
55
61
65
66
81
102
103
105
4
5
5
5
5
5
5
6
6
6
6
7
7
7
7
7
7
7
8
8
8
8
8
9
10
10
10
11
11
12
12
13
13
15
16
16
18
18
19
19
21
21
21
21
21
21
22
22
22
24
24
25
26
26
29
29
31
31
31
33
33
34
34
35
37
42
44
45
47
48
48
49
49
54
54
55
56
56
62
66
67
82
103
104
106
4
5
5
5
5
5
6
6
6
6
6
6
7
7
7
7
7
7
7
7
8
8
8
8
8
9
9
9
10
10
11
11
11
12
12
13
13
13
13
14
15
15
16
16
16
18
19
19
19
20
20
21
22
22
22
23
23
24
25
26
27
27
27
28
30
30
32
32
32
33
34
34
36
38
43
45
45
46
48
49
50
50
57
57
63
67
68
104
105
107
5
5
5
5
5
5
6
7
7
8
8
8
8
8
8
8
9
9
9
10
10
11
11
11
12
13
13
13
13
14
14
14
14
14
15
16
17
17
17
18
18
18
19
20
21
21
21
23
23
23
24
26
27
27
28
29
31
31
33
33
33
34
35
37
37
39
44
46
47
50
51
51
55
58
58
64
68
69
105
106
108
4
4
4
4
5
5
5
7
7
8
8
8
8
9
10
10
10
11
12
13
14
14
14
14
15
15
15
16
17
18
18
18
18
18
18
18
19
21
22
23
24
24
24
25
27
27
28
29
29
31
31
32
34
34
34
34
36
37
38
38
39
45
48
51
52
52
56
56
58
65
69
70
106
107
109
1
4
5
5
5
7
7
7
7
7
7
7
8
8
9
9
10
10
10
11
12
13
14
15
15
15
15
16
16
16
18
18
18
19
19
19
19
20
22
23
25
25
25
25
26
27
28
29
31
31
32
33
34
35
35
35
37
38
39
39
45
46
48
49
52
53
53
66
70
71
107
108
110
1
1
4
4
4
5
5
5
5
5
5
6
7
7
7
7
7
7
7
7
7
7
7
8
8
9
9
10
10
10
10
10
11
12
13
14
15
16
16
16
16
16
16
20
20
20
20
20
21
22
23
24
26
26
26
26
26
27
29
30
31
31
32
33
36
36
36
38
38
39
40
40
44
45
46
47
50
53
54
54
58
67
71
72
108
109
111
1
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
8
8
8
8
9
9
9
9
9
10
10
11
11
11
11
12
12
13
14
14
14
16
17
17
17
18
20
21
22
23
23
23
24
24
24
25
27
27
27
27
27
28
30
30
32
33
37
37
37
38
39
39
40
41
41
45
45
47
48
51
54
55
55
68
72
73
109
110
112
1
4
5
5
5
5
5
5
5
5
6
6
6
6
7
7
7
7
7
7
7
7
8
9
9
9
9
10
10
10
10
10
10
11
11
11
11
12
13
14
15
15
15
16
16
17
18
18
18
19
21
22
24
25
25
25
25
26
26
28
28
28
29
30
31
31
33
38
38
38
38
39
40
40
41
42
46
46
48
48
49
52
55
56
56
69
73
74
110
111
113
1
5
5
5
5
5
5
5
6
6
6
6
7
7
7
7
8
8
9
10
10
10
10
10
10
10
10
10
11
11
11
12
12
13
13
13
14
16
16
16
17
18
19
19
19
20
21
22
22
25
25
26
27
29
29
29
30
31
31
32
32
34
39
39
39
39
40
41
41
43
45
48
49
49
50
53
56
57
70
74
75
111
112
114
1
4
4
5
5
6
6
6
6
7
7
7
7
7
8
8
8
9
9
10
10
10
10
11
11
11
12
12
12
12
13
13
13
13
14
14
15
17
17
17
18
19
20
20
20
21
21
24
25
26
27
28
30
30
30
31
31
32
32
34
38
39
40
40
40
40
41
42
44
45
48
49
50
50
51
54
71
75
76
112
113
115
1
1
1
4
4
5
5
5
5
5
7
7
7
7
7
7
7
8
8
8
8
8
9
10
10
10
10
11
11
12
12
12
13
13
13
14
14
14
14
14
14
15
15
16
18
18
18
19
20
21
21
21
22
27
27
28
29
31
31
32
33
38
40
41
41
41
41
43
45
46
49
50
52
55
56
72
76
77
113
114
116
4
4
4
5
5
6
6
7
7
7
7
7
7
8
8
8
8
8
9
9
10
10
11
12
12
12
13
13
13
14
14
14
14
15
16
16
16
17
19
19
19
20
21
22
22
22
23
28
29
30
31
32
32
33
34
39
41
42
42
42
42
44
45
45
47
47
48
50
53
56
56
57
58
73
77
78
114
115
117
4
5
5
5
6
6
7
7
7
8
8
8
8
8
9
9
10
10
11
12
13
13
13
14
14
14
15
15
15
15
16
16
17
17
17
18
19
19
20
20
21
22
23
23
23
29
29
30
31
31
32
33
33
34
40
42
43
43
43
45
48
48
48
55
57
57
58
59
74
78
79
115
116
118
1
1
5
5
5
5
5
5
5
5
6
7
7
7
7
7
7
8
9
9
9
10
10
13
13
13
14
14
15
15
15
16
16
16
16
16
17
18
19
19
19
20
21
21
21
22
22
24
24
24
26
30
30
31
32
33
34
34
35
40
44
44
49
53
56
58
58
59
60
75
79
80
116
117
119
1
4
4
4
4
5
5
5
5
5
5
5
5
6
6
6
6
6
7
7
8
8
8
9
9
9
10
10
13
13
14
15
16
16
16
17
17
19
20
20
21
22
22
23
23
23
24
25
25
25
25
25
26
27
30
30
30
31
31
32
33
34
35
35
36
42
43
43
45
45
50
57
59
59
61
76
80
81
117
118
120
1
1
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
7
7
7
7
7
9
9
9
10
10
10
12
12
14
15
16
16
17
17
18
18
20
21
21
22
22
23
24
25
26
26
26
26
26
26
27
30
30
30
31
31
32
33
34
34
34
34
35
36
36
37
44
46
46
51
58
59
60
61
77
81
82
118
119
121
4
5
5
5
5
5
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
8
8
8
9
9
9
10
10
10
10
10
10
11
11
11
11
13
13
14
16
16
18
18
19
19
19
21
22
23
24
26
26
27
27
27
27
30
31
31
32
33
35
35
35
36
37
37
38
42
45
47
47
52
59
59
61
78
82
83
119
120
122
4
4
4
5
5
5
5
5
6
6
7
7
7
7
7
7
7
7
7
8
8
8
8
8
9
9
10
10
10
10
10
11
11
11
11
12
12
12
12
14
14
14
14
15
19
19
19
20
20
20
23
24
25
25
26
26
27
28
28
28
28
30
31
32
32
34
36
36
36
38
38
39
42
46
48
48
53
60
62
79
83
84
120
121
123
1
1
4
5
5
5
5
5
6
6
6
6
7
7
7
7
7
7
8
8
8
9
9
9
9
9
10
10
10
10
10
11
11
12
12
13
15
15
15
15
15
16
16
16
17
18
19
20
21
21
22
24
26
27
28
29
29
29
30
30
32
33
34
34
34
35
37
39
40
40
43
47
49
49
54
61
63
80
84
85
121
122
124
1
4
4
4
5
5
5
5
5
5
6
6
6
6
6
7
7
7
7
8
8
9
9
10
10
10
10
10
10
11
12
12
13
14
16
16
17
17
17
17
18
21
22
22
25
26
26
27
28
30
30
30
31
32
34
34
35
36
38
40
41
42
44
48
50
50
55
62
64
81
85
86
122
123
125
1
1
4
4
4
4
4
5
5
5
5
5
5
5
5
5
6
6
7
7
9
9
9
9
10
10
11
11
12
15
16
16
16
16
16
17
17
17
18
22
23
23
25
25
25
25
26
27
28
31
31
31
33
36
37
39
41
42
43
45
49
51
51
56
63
65
82
86
87
123
124
126
1
4
5
5
5
5
5
5
5
5
5
5
5
6
6
6
7
7
8
8
10
10
10
10
12
12
15
16
16
16
17
17
17
18
19
23
24
24
25
25
26
26
26
27
28
29
32
32
32
34
38
40
42
43
43
50
52
57
64
66
83
87
88
124
125
127
1
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
7
8
10
10
11
11
11
13
13
15
17
17
18
18
19
23
23
23
25
26
26
27
27
27
28
30
32
32
33
33
33
39
41
43
51
58
59
65
67
84
88
89
125
126
128
4
4
4
4
5
5
5
5
5
6
6
6
6
6
6
6
7
7
7
7
7
7
8
9
11
11
12
12
12
14
14
16
17
18
18
19
25
26
27
28
29
31
31
31
32
33
33
34
34
34
40
42
44
45
59
59
60
61
66
68
85
89
90
126
127
129
1
1
4
4
4
4
5
5
5
5
5
7
7
7
7
7
7
7
7
8
8
8
8
9
12
12
12
12
12
13
13
15
15
15
16
17
19
19
22
25
25
26
26
27
29
30
31
32
33
34
34
35
35
35
41
43
43
45
60
60
62
67
69
86
90
91
127
128
130
1
4
4
5
5
5
5
5
6
6
6
7
7
7
8
8
8
8
8
8
8
9
9
10
10
13
13
13
14
15
16
16
16
16
17
17
17
18
22
23
24
25
26
27
27
28
31
32
33
34
35
35
36
36
42
44
46
60
61
62
68
70
87
91
92
128
129
131
5
5
5
5
5
5
5
5
6
6
7
7
7
7
7
7
7
7
8
8
8
9
9
9
9
10
10
10
10
10
11
13
14
15
15
16
17
17
17
17
17
18
18
18
19
22
23
24
25
25
25
26
28
28
32
33
33
34
37
37
43
45
45
47
60
62
69
71
88
92
93
129
130
132
1
3
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
10
10
10
10
10
10
11
12
12
14
15
16
18
18
18
18
18
18
18
19
20
23
23
24
25
26
26
27
29
29
29
33
38
38
43
44
46
46
48
51
63
70
72
89
93
94
130
131
133
3
4
4
4
4
4
5
5
5
5
5
5
5
5
5
6
6
7
7
7
7
7
7
8
8
8
8
8
8
8
8
9
9
9
9
10
10
10
11
11
11
12
12
12
13
13
13
18
18
19
19
19
19
19
19
20
21
25
25
26
28
28
29
30
30
30
34
39
39
44
44
47
49
52
64
71
73
90
94
95
131
132
134
1
3
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
7
7
7
8
8
8
8
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
11
12
12
13
13
14
14
14
15
19
20
20
20
20
20
22
23
26
29
30
31
31
31
35
40
40
48
50
65
72
74
91
95
96
132
133
135
1
1
1
1
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
8
9
9
10
10
10
10
10
10
10
10
10
10
11
11
12
13
13
14
15
15
15
15
19
20
21
21
21
21
25
25
28
29
30
31
33
35
36
41
41
46
49
51
66
73
75
92
96
97
133
134
136
1
4
4
4
5
5
5
5
5
5
6
6
6
6
6
7
7
7
8
8
8
8
8
8
8
8
9
10
10
10
11
11
11
11
12
12
13
13
14
15
15
16
16
20
22
22
22
22
29
29
29
31
34
35
35
36
37
42
42
44
50
52
67
74
76
93
97
98
134
135
137
1
1
1
3
3
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
6
7
7
7
7
7
7
7
8
8
8
9
9
9
9
9
9
9
9
9
10
12
12
12
12
12
13
13
15
16
17
17
18
20
22
23
23
23
23
24
29
29
31
32
35
36
37
38
43
51
53
68
75
77
94
98
99
135
136
138
1
1
2
3
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
7
7
7
7
8
8
8
8
9
9
9
9
10
10
10
10
10
10
10
10
10
10
11
13
13
13
13
14
16
17
18
18
18
18
23
23
24
24
24
24
25
32
33
35
36
38
39
52
54
69
76
78
95
99
100
136
139
1
2
3
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
7
7
7
7
7
7
7
7
7
8
8
8
8
9
9
9
9
9
10
10
11
11
11
11
11
11
11
11
11
12
14
14
15
17
18
18
18
18
19
19
19
19
24
24
25
25
25
25
26
29
33
36
40
53
55
60
70
77
79
96
101
137
140
1
1
1
1
2
2
3
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
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
12
12
12
12
12
12
12
12
13
13
16
16
18
19
20
20
20
20
20
23
25
26
26
26
27
29
30
41
44
54
56
61
71
78
80
97
102
138
141
3
3
4
4
4
5
5
5
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
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
9
9
10
10
11
11
13
13
13
13
13
13
13
13
14
17
17
20
20
21
21
21
21
21
22
26
27
27
27
29
30
31
31
42
44
45
46
55
57
60
62
72
79
81
98
103
139
142
1
2
4
4
4
4
4
4
4
4
4
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
9
9
9
9
10
10
10
10
10
10
11
12
12
14
14
14
14
14
14
14
14
15
15
15
18
21
21
22
22
22
22
23
27
28
28
30
31
32
36
43
45
45
47
47
56
58
61
61
63
63
73
80
82
99
104
140
143
2
3
4
4
4
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
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
12
13
13
15
15
15
15
15
15
15
15
16
16
16
19
22
23
23
23
23
24
29
29
32
33
36
37
38
44
45
47
48
48
57
59
61
63
64
64
74
81
83
100
105
141
144
1
1
2
2
3
3
4
4
4
4
5
5
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
8
8
8
8
9
9
9
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
12
12
12
13
13
13
13
13
13
14
16
16
16
16
16
16
16
16
17
17
17
20
23
24
24
24
27
30
30
33
33
37
38
39
45
48
49
49
58
60
64
65
65
75
82
84
101
106
137
142
145
1
3
3
3
4
4
4
4
4
4
4
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
8
8
8
8
8
8
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
12
12
12
12
12
12
12
13
13
13
13
13
14
14
15
16
16
17
17
17
17
17
17
17
18
18
21
21
24
25
25
28
31
31
33
34
36
37
46
49
59
61
65
76
83
85
102
107
136
138
143
146
1
1
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
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
11
11
11
11
11
11
11
12
12
12
12
12
13
13
13
13
14
14
14
14
14
15
15
16
17
18
18
18
18
18
18
18
19
20
21
22
25
26
26
29
32
32
35
47
60
62
77
84
86
103
108
139
144
147
1
2
2
3
4
4
4
5
5
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
9
10
10
10
10
10
10
10
11
12
12
12
12
12
12
12
13
13
13
14
14
14
14
15
15
15
15
17
18
18
19
19
19
19
19
19
19
19
20
21
22
23
26
27
27
27
27
27
30
30
30
33
33
35
35
36
47
63
63
78
85
87
99
100
104
109
140
145
148
1
1
1
1
1
1
1
3
3
4
5
5
5
5
5
5
6
6
6
6
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
11
11
11
11
11
12
12
12
13
13
13
13
14
14
14
15
15
15
16
16
16
16
18
20
20
20
20
20
20
20
21
22
23
24
27
28
28
28
28
31
34
34
36
37
45
47
48
61
61
63
64
64
79
86
88
101
110
141
149
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
4
4
4
4
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
8
8
8
8
9
9
9
9
9
9
9
10
10
10
10
10
11
11
11
11
11
11
12
12
12
12
12
13
13
13
13
14
14
14
14
15
15
15
15
15
15
15
16
16
16
16
16
17
17
17
17
19
21
21
21
21
21
21
21
22
24
24
25
28
29
29
29
32
33
35
35
37
38
45
48
49
61
64
65
65
80
87
89
102
111
142
150
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
3
3
3
3
5
5
5
5
5
5
5
5
5
5
5
6
6
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
9
9
9
9
9
10
10
10
10
10
10
11
11
11
12
12
12
12
12
12
12
13
13
13
13
13
13
13
14
14
14
15
15
15
16
16
16
16
16
16
16
17
17
17
17
18
18
18
20
22
22
22
22
23
25
25
29
30
30
33
34
36
37
38
39
39
39
45
45
49
50
61
65
66
66
81
90
103
112
143
151
1
2
2
2
2
2
2
2
3
3
3
3
3
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
8
8
8
8
9
9
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
12
12
13
13
13
13
13
13
13
13
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
18
18
18
19
19
19
19
19
21
23
23
23
23
24
24
25
25
26
28
30
30
31
31
33
34
37
37
37
38
39
40
40
45
46
47
50
51
61
62
63
66
67
67
82
91
104
113
144
152
1
1
1
3
3
3
3
4
4
4
4
4
5
5
5
5
5
5
5
5
5
6
6
6
6
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
11
12
12
12
12
12
12
13
13
13
14
14
14
14
14
14
14
14
14
14
15
15
16
16
16
16
17
17
17
17
17
18
18
18
18
18
18
19
19
19
20
20
20
20
22
23
24
24
24
24
25
25
26
27
28
29
31
31
32
32
34
35
38
38
40
41
41
48
52
64
68
68
83
92
105
114
145
153
2
2
2
4
4
4
4
5
5
5
5
5
5
6
6
6
6
7
7
7
7
7
8
8
8
9
9
9
10
10
10
10
11
11
11
11
11
12
12
12
12
12
13
13
13
13
13
13
14
14
15
15
15
15
15
15
15
16
16
17
17
17
18
18
18
18
18
19
19
19
19
19
19
19
20
20
21
21
21
21
22
23
25
25
25
25
26
27
28
29
30
32
33
33
36
39
41
42
42
49
53
65
69
69
84
93
106
115
146
154
1
1
1
5
5
7
8
8
8
8
8
9
10
12
12
13
13
14
14
14
15
16
16
17
17
18
18
18
19
19
19
20
20
20
20
20
21
22
22
23
24
26
26
26
26
27
29
31
33
34
34
37
40
42
43
70
85
94
107
116
147
155
