data.distances.dc Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pacman-main Show documentation
Show all versions of pacman-main Show documentation
The main code for Ms. Pac-Man Vs Ghosts
0
1
0
2
1
0
3
2
1
0
4
3
2
1
0
5
4
3
2
1
0
6
5
4
3
2
1
0
7
6
5
4
3
2
1
0
8
7
6
5
4
3
2
1
0
9
8
7
6
5
4
3
2
1
0
10
9
8
7
6
5
4
3
2
1
0
11
10
9
8
7
6
5
4
3
2
1
0
12
11
10
9
8
7
6
5
4
3
2
1
0
13
12
11
10
9
8
7
6
5
4
3
2
1
0
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
0
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
1
0
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
2
1
0
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
3
2
1
0
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
4
3
2
1
0
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
5
4
3
2
1
0
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
6
5
4
3
2
1
0
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
7
6
5
4
3
2
1
0
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
8
7
6
5
4
3
2
1
0
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
9
8
7
6
5
4
3
2
1
0
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
10
9
8
7
6
5
4
3
2
1
0
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
11
10
9
8
7
6
5
4
3
2
1
0
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
12
11
10
9
8
7
6
5
4
3
2
1
0
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
48
47
46
45
44
43
42
41
40
39
38
37
36
0
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
49
48
47
46
45
44
43
42
41
40
39
38
37
1
0
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
50
49
48
47
46
45
44
43
42
41
40
39
38
2
1
0
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
51
50
49
48
47
46
45
44
43
42
41
40
39
3
2
1
0
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
52
51
50
49
48
47
46
45
44
43
42
41
40
4
3
2
1
0
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
53
52
51
50
49
48
47
46
45
44
43
42
41
5
4
3
2
1
0
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
54
53
52
51
50
49
48
47
46
45
44
43
42
6
5
4
3
2
1
0
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
55
54
53
52
51
50
49
48
47
46
45
44
43
7
6
5
4
3
2
1
0
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
56
55
54
53
52
51
50
49
48
47
46
45
44
8
7
6
5
4
3
2
1
0
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
57
56
55
54
53
52
51
50
49
48
47
46
45
9
8
7
6
5
4
3
2
1
0
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
58
57
56
55
54
53
52
51
50
49
48
47
46
10
9
8
7
6
5
4
3
2
1
0
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
59
58
57
56
55
54
53
52
51
50
49
48
47
11
10
9
8
7
6
5
4
3
2
1
0
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
60
59
58
57
56
55
54
53
52
51
50
49
48
12
11
10
9
8
7
6
5
4
3
2
1
0
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
61
60
59
58
57
56
55
54
53
52
51
50
49
13
12
11
10
9
8
7
6
5
4
3
2
1
0
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
62
61
60
59
58
57
56
55
54
53
52
51
50
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
63
62
61
60
59
58
57
56
55
54
53
52
51
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
64
63
62
61
60
59
58
57
56
55
54
53
52
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
65
64
63
62
61
60
59
58
57
56
55
54
53
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
66
65
64
63
62
61
60
59
58
57
56
55
54
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
67
66
65
64
63
62
61
60
59
58
57
56
55
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
68
67
66
65
64
63
62
61
60
59
58
57
56
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
69
68
67
66
65
64
63
62
61
60
59
58
57
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
70
69
68
67
66
65
64
63
62
61
60
59
58
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
71
70
69
68
67
66
65
64
63
62
61
60
59
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
72
71
70
69
68
67
66
65
64
63
62
61
60
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
73
72
71
70
69
68
67
66
65
64
63
62
61
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
74
73
72
71
70
69
68
67
66
65
64
63
62
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
75
74
73
72
71
70
69
68
67
66
65
64
63
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
76
75
74
73
72
71
70
69
68
67
66
65
64
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
77
76
75
74
73
72
71
70
69
68
67
66
65
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
123
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
78
77
76
75
74
73
72
71
70
69
68
67
66
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
122
123
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
79
78
77
76
75
74
73
72
71
70
69
68
67
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
121
122
123
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
80
79
78
77
76
75
74
73
72
71
70
69
68
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
69
70
71
72
73
74
75
76
77
78
79
80
81
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
0
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
35
36
37
38
39
40
41
42
43
44
45
46
47
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
34
0
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
1
2
3
4
5
6
7
8
9
10
11
12
13
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
68
34
0
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
13
12
11
10
9
8
7
6
5
4
3
2
1
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
82
48
14
0
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
47
46
45
44
43
42
41
40
39
38
37
36
35
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
116
82
48
34
0
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
81
80
79
78
77
76
75
74
73
72
71
70
69
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
119
116
82
68
34
0
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
70
71
72
73
74
75
76
77
78
79
80
81
82
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
1
35
69
83
117
118
0
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
34
35
36
37
38
39
40
41
42
43
44
45
46
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
35
1
33
47
81
115
36
0
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
2
3
4
5
6
7
8
9
10
11
12
13
14
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
67
33
1
15
49
83
68
32
0
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
14
13
12
11
10
9
8
7
6
5
4
3
2
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
83
49
15
1
33
67
84
48
16
0
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
46
45
44
43
42
41
40
39
38
37
36
35
34
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
115
81
47
33
1
35
116
80
48
32
0
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
82
81
80
79
78
77
76
75
74
73
72
71
70
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
118
117
83
69
35
1
117
116
84
68
36
0
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
71
72
73
74
75
76
77
78
79
80
81
82
83
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
2
36
70
84
118
117
1
37
69
85
117
116
0
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
33
34
35
36
37
38
39
40
41
42
43
44
45
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
36
2
32
46
80
114
37
1
31
47
79
115
38
0
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
3
4
5
6
7
8
9
10
11
12
13
14
15
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
66
32
2
16
50
84
67
31
1
17
49
85
68
30
0
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
15
14
13
12
11
10
9
8
7
6
5
4
3
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
84
50
16
2
32
66
85
49
17
1
31
67
86
48
18
0
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
45
44
43
42
41
40
39
38
37
36
35
34
33
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
114
80
46
32
2
36
115
79
47
31
1
37
116
78
48
30
0
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
83
82
81
80
79
78
77
76
75
74
73
72
71
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
117
118
84
70
36
2
116
117
85
69
37
1
115
116
86
68
38
0
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
72
73
74
75
76
77
78
79
80
81
82
83
84
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
3
37
71
85
119
116
2
38
70
86
118
115
1
39
69
87
117
114
0
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
32
33
34
35
36
37
38
39
40
41
42
43
44
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
37
3
31
45
79
113
38
2
30
46
78
114
39
1
29
47
77
115
40
0
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
4
5
6
7
8
9
10
11
12
13
14
15
16
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
65
31
3
17
51
85
66
30
2
18
50
86
67
29
1
19
49
87
68
28
0
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
16
15
14
13
12
11
10
9
8
7
6
5
4
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
85
51
17
3
31
65
86
50
18
2
30
66
87
49
19
1
29
67
88
48
20
0
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
44
43
42
41
40
39
38
37
36
35
34
33
32
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
113
79
45
31
3
37
114
78
46
30
2
38
115
77
47
29
1
39
116
76
48
28
0
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
84
83
82
81
80
79
78
77
76
75
74
73
72
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
116
119
85
71
37
3
115
118
86
70
38
2
114
117
87
69
39
1
113
116
88
68
40
0
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
73
74
75
76
77
78
79
80
81
82
83
84
85
121
122
123
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
4
38
72
86
120
115
3
39
71
87
119
114
2
40
70
88
118
113
1
41
69
89
117
112
0
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
31
32
33
34
35
36
37
38
39
40
41
42
43
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
38
4
30
44
78
112
39
3
29
45
77
113
40
2
28
46
76
114
41
1
27
47
75
115
42
0
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
5
6
7
8
9
10
11
12
13
14
15
16
17
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
64
30
4
18
52
86
65
29
3
19
51
87
66
28
2
20
50
88
67
27
1
21
49
89
68
26
0
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
17
16
15
14
13
12
11
10
9
8
7
6
5
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
86
52
18
4
30
64
87
51
19
3
29
65
88
50
20
2
28
66
89
49
21
1
27
67
90
48
22
0
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
43
42
41
40
39
38
37
36
35
34
33
32
31
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
112
78
44
30
4
38
113
77
45
29
3
39
114
76
46
28
2
40
115
75
47
27
1
41
116
74
48
26
0
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
85
84
83
82
81
80
79
78
77
76
75
74
73
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
115
120
86
72
38
4
114
119
87
71
39
3
113
118
88
70
40
2
112
117
89
69
41
1
111
116
90
68
42
0
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
74
75
76
77
78
79
80
81
82
83
84
85
86
122
123
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
5
39
73
87
121
114
4
40
72
88
120
113
3
41
71
89
119
112
2
42
70
90
118
111
1
43
69
91
117
110
0
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
30
31
32
33
34
35
36
37
38
39
40
41
42
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
39
5
29
43
77
111
40
4
28
44
76
112
41
3
27
45
75
113
42
2
26
46
74
114
43
1
25
47
73
115
44
0
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
6
7
8
9
10
11
12
13
14
15
16
17
18
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
63
29
5
19
53
87
64
28
4
20
52
88
65
27
3
21
51
89
66
26
2
22
50
90
67
25
1
23
49
91
68
24
0
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
18
17
16
15
14
13
12
11
10
9
8
7
6
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
87
53
19
5
29
63
88
52
20
4
28
64
89
51
21
3
27
65
90
50
22
2
26
66
91
49
23
1
25
67
92
48
24
0
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
42
41
40
39
38
37
36
35
34
33
32
31
30
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
111
77
43
29
5
39
112
76
44
28
4
40
113
75
45
27
3
41
114
74
46
26
2
42
115
73
47
25
1
43
116
72
48
24
0
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
86
85
84
83
82
81
80
79
78
77
76
75
74
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
114
121
87
73
39
5
113
120
88
72
40
4
112
119
89
71
41
3
111
118
90
70
42
2
110
117
91
69
43
1
109
116
92
68
44
0
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
75
76
77
78
79
80
81
82
83
84
85
86
87
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
6
40
74
88
121
113
5
41
73
89
120
112
4
42
72
90
119
111
3
43
71
91
118
110
2
44
70
92
117
109
1
45
69
93
116
108
0
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
29
30
31
32
33
34
35
36
37
38
39
40
41
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
40
6
28
42
76
110
41
5
27
43
75
111
42
4
26
44
74
112
43
3
25
45
73
113
44
2
24
46
72
114
45
1
23
47
71
115
46
0
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
7
8
9
10
11
12
13
14
15
16
17
18
19
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
62
28
6
20
54
88
63
27
5
21
53
89
64
26
4
22
52
90
65
25
3
23
51
91
66
24
2
24
50
92
67
23
1
25
49
93
68
22
0
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
19
18
17
16
15
14
13
12
11
10
9
8
7
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
88
54
20
6
28
62
89
53
21
5
27
63
90
52
22
4
26
64
91
51
23
3
25
65
92
50
24
2
24
66
93
49
25
1
23
67
94
48
26
0
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
41
40
39
38
37
36
35
34
33
32
31
30
29
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
110
76
42
28
6
40
111
75
43
27
5
41
112
74
44
26
4
42
113
73
45
25
3
43
114
72
46
24
2
44
115
71
47
23
1
45
115
70
48
22
0
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
87
86
85
84
83
82
81
80
79
78
77
76
75
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
113
121
88
74
40
6
112
120
89
73
41
5
111
119
90
72
42
4
110
118
91
71
43
3
109
117
92
70
44
2
108
116
93
69
45
1
107
115
94
68
46
0
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
76
77
78
79
80
81
82
83
84
85
86
87
88
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
7
41
75
89
120
112
6
42
74
90
119
111
5
43
73
91
118
110
4
44
72
92
117
109
3
45
71
93
116
108
2
46
70
94
115
107
1
47
69
95
114
106
0
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
28
29
30
31
32
33
34
35
36
37
38
39
40
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
41
7
27
41
75
109
42
6
26
42
74
110
43
5
25
43
73
111
44
4
24
44
72
112
45
3
23
45
71
113
46
2
22
46
70
114
47
1
21
47
69
114
48
0
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
8
9
10
11
12
13
14
15
16
17
18
19
20
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
61
27
7
21
55
89
62
26
6
22
54
90
63
25
5
23
53
91
64
24
4
24
52
92
65
23
3
25
51
93
66
22
2
26
50
94
67
21
1
27
49
95
68
20
0
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
20
19
18
17
16
15
14
13
12
11
10
9
8
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
89
55
21
7
27
61
90
54
22
6
26
62
91
53
23
5
25
63
92
52
24
4
24
64
93
51
25
3
23
65
94
50
26
2
22
66
95
49
27
1
21
67
96
48
28
0
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
40
39
38
37
36
35
34
33
32
31
30
29
28
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
109
75
41
27
7
41
110
74
42
26
6
42
111
73
43
25
5
43
112
72
44
24
4
44
113
71
45
23
3
45
114
70
46
22
2
46
114
69
47
21
1
47
113
68
48
20
0
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
88
87
86
85
84
83
82
81
80
79
78
77
76
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
112
120
89
75
41
7
111
119
90
74
42
6
110
118
91
73
43
5
109
117
92
72
44
4
108
116
93
71
45
3
107
115
94
70
46
2
106
114
95
69
47
1
105
113
96
68
48
0
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
75
76
77
78
79
80
81
82
83
84
85
86
87
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
8
42
74
88
119
111
7
43
73
89
118
110
6
44
72
90
117
109
5
45
71
91
116
108
4
46
70
92
115
107
3
47
69
93
114
106
2
48
68
94
113
105
1
49
67
95
112
104
0
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
27
28
29
30
31
32
33
34
35
36
37
38
39
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
42
8
26
40
74
108
43
7
25
41
73
109
44
6
24
42
72
110
45
5
23
43
71
111
46
4
22
44
70
112
47
3
21
45
69
113
48
2
20
46
68
113
49
1
19
47
67
112
50
0
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
9
10
11
12
13
14
15
16
17
18
19
20
21
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
60
26
8
22
56
90
61
25
7
23
55
91
62
24
6
24
54
92
63
23
5
25
53
93
64
22
4
26
52
94
65
21
3
27
51
95
66
20
2
28
50
96
67
19
1
29
49
97
66
18
0
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
21
20
19
18
17
16
15
14
13
12
11
10
9
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
90
56
22
8
26
60
91
55
23
7
25
61
92
54
24
6
24
62
93
53
25
5
23
63
94
52
26
4
22
64
95
51
27
3
21
65
96
50
28
2
20
66
97
49
29
1
19
67
96
48
30
0
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
39
38
37
36
35
34
33
32
31
30
29
28
27
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
108
74
40
26
8
42
109
73
41
25
7
43
110
72
42
24
6
44
111
71
43
23
5
45
112
70
44
22
4
46
113
69
45
21
3
47
113
68
46
20
2
48
112
67
47
19
1
49
111
66
48
18
0
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
87
86
85
84
83
82
81
80
79
78
77
76
75
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
111
119
88
74
42
8
110
118
89
73
43
7
109
117
90
72
44
6
108
116
91
71
45
5
107
115
92
70
46
4
106
114
93
69
47
3
105
113
94
68
48
2
104
112
95
67
49
1
103
111
96
66
50
0
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
74
75
76
77
78
79
80
81
82
83
84
85
86
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
9
43
73
87
118
110
8
44
72
88
117
109
7
45
71
89
116
108
6
46
70
90
115
107
5
47
69
91
114
106
4
48
68
92
113
105
3
49
67
93
112
104
2
50
66
94
111
103
1
51
65
95
110
102
0
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
26
27
28
29
30
31
32
33
34
35
36
37
38
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
43
9
25
39
73
107
44
8
24
40
72
108
45
7
23
41
71
109
46
6
22
42
70
110
47
5
21
43
69
111
48
4
20
44
68
112
49
3
19
45
67
112
50
2
18
46
66
111
51
1
17
47
65
110
52
0
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
10
11
12
13
14
15
16
17
18
19
20
21
22
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
59
25
9
23
57
91
60
24
8
24
56
92
61
23
7
25
55
93
62
22
6
26
54
94
63
21
5
27
53
95
64
20
4
28
52
96
65
19
3
29
51
97
66
18
2
30
50
98
65
17
1
31
49
97
64
16
0
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
22
21
20
19
18
17
16
15
14
13
12
11
10
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
91
57
23
9
25
59
92
56
24
8
24
60
93
55
25
7
23
61
94
54
26
6
22
62
95
53
27
5
21
63
96
52
28
4
20
64
97
51
29
3
19
65
98
50
30
2
18
66
97
49
31
1
17
65
96
48
32
0
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
38
37
36
35
34
33
32
31
30
29
28
27
26
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
107
73
39
25
9
43
108
72
40
24
8
44
109
71
41
23
7
45
110
70
42
22
6
46
111
69
43
21
5
47
112
68
44
20
4
48
112
67
45
19
3
49
111
66
46
18
2
50
110
65
47
17
1
51
109
64
48
16
0
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
86
85
84
83
82
81
80
79
78
77
76
75
74
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
110
118
87
73
43
9
109
117
88
72
44
8
108
116
89
71
45
7
107
115
90
70
46
6
106
114
91
69
47
5
105
113
92
68
48
4
104
112
93
67
49
3
103
111
94
66
50
2
102
110
95
65
51
1
101
109
96
64
52
0
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
73
74
75
76
77
78
79
80
81
82
83
84
85
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
10
44
72
86
117
109
9
45
71
87
116
108
8
46
70
88
115
107
7
47
69
89
114
106
6
48
68
90
113
105
5
49
67
91
112
104
4
50
66
92
111
103
3
51
65
93
110
102
2
52
64
94
109
101
1
51
63
95
108
100
0
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
25
26
27
28
29
30
31
32
33
34
35
36
37
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
44
10
24
38
72
106
45
9
23
39
71
107
46
8
22
40
70
108
47
7
21
41
69
109
48
6
20
42
68
110
49
5
19
43
67
111
50
4
18
44
66
111
51
3
17
45
65
110
52
2
16
46
64
109
51
1
15
47
63
108
50
0
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
11
12
13
14
15
16
17
18
19
20
21
22
23
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
58
24
10
24
58
92
59
23
9
25
57
93
60
22
8
26
56
94
61
21
7
27
55
95
62
20
6
28
54
96
63
19
5
29
53
97
64
18
4
30
52
98
65
17
3
31
51
99
64
16
2
32
50
98
63
15
1
33
49
97
62
14
0
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
23
22
21
20
19
18
17
16
15
14
13
12
11
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
92
58
24
10
24
58
93
57
25
9
23
59
94
56
26
8
22
60
95
55
27
7
21
61
96
54
28
6
20
62
97
53
29
5
19
63
98
52
30
4
18
64
99
51
31
3
17
65
98
50
32
2
16
64
97
49
33
1
15
63
96
48
34
0
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
37
36
35
34
33
32
31
30
29
28
27
26
25
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
106
72
38
24
10
44
107
71
39
23
9
45
108
70
40
22
8
46
109
69
41
21
7
47
110
68
42
20
6
48
111
67
43
19
5
49
111
66
44
18
4
50
110
65
45
17
3
51
109
64
46
16
2
52
108
63
47
15
1
51
107
62
48
14
0
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
85
84
83
82
81
80
79
78
77
76
75
74
73
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
109
117
86
72
44
10
108
116
87
71
45
9
107
115
88
70
46
8
106
114
89
69
47
7
105
113
90
68
48
6
104
112
91
67
49
5
103
111
92
66
50
4
102
110
93
65
51
3
101
109
94
64
52
2
100
108
95
63
51
1
99
107
96
62
50
0
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
72
73
74
75
76
77
78
79
80
81
82
83
84
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
11
45
71
85
116
108
10
46
70
86
115
107
9
47
69
87
114
106
8
48
68
88
113
105
7
49
67
89
112
104
6
50
66
90
111
103
5
51
65
91
110
102
4
52
64
92
109
101
3
51
63
93
108
100
2
50
62
94
107
99
1
49
61
95
106
98
0
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
44
45
46
47
48
49
50
51
52
53
54
55
56
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
39
31
43
57
91
96
38
30
42
58
90
95
37
29
41
59
89
94
36
28
40
60
88
93
35
27
39
61
87
92
34
26
38
62
86
91
33
25
37
63
85
90
32
24
36
64
84
89
31
23
35
65
83
88
30
22
34
66
82
87
29
21
33
67
81
86
28
0
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
43
44
45
46
47
48
49
50
51
52
53
54
55
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
40
30
42
56
90
97
39
29
41
57
89
96
38
28
40
58
88
95
37
27
39
59
87
94
36
26
38
60
86
93
35
25
37
61
85
92
34
24
36
62
84
91
33
23
35
63
83
90
32
22
34
64
82
89
31
21
33
65
81
88
30
20
32
66
80
87
29
1
0
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
42
43
44
45
46
47
48
49
50
51
52
53
54
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
41
29
41
55
89
98
40
28
40
56
88
97
39
27
39
57
87
96
38
26
38
58
86
95
37
25
37
59
85
94
36
24
36
60
84
93
35
23
35
61
83
92
34
22
34
62
82
91
33
21
33
63
81
90
32
20
32
64
80
89
31
19
31
65
79
88
30
2
1
0
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
41
42
43
44
45
46
47
48
49
50
51
52
53
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
42
28
40
54
88
99
41
27
39
55
87
98
40
26
38
56
86
97
39
25
37
57
85
96
38
24
36
58
84
95
37
23
35
59
83
94
36
22
34
60
82
93
35
21
33
61
81
92
34
20
32
62
80
91
33
19
31
63
79
90
32
18
30
64
78
89
31
3
2
1
0
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
40
41
42
43
44
45
46
47
48
49
50
51
52
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
43
27
39
53
87
100
42
26
38
54
86
99
41
25
37
55
85
98
40
24
36
56
84
97
39
23
35
57
83
96
38
22
34
58
82
95
37
21
33
59
81
94
36
20
32
60
80
93
35
19
31
61
79
92
34
18
30
62
78
91
33
17
29
63
77
90
32
4
3
2
1
0
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
39
40
41
42
43
44
45
46
47
48
49
50
51
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
44
26
38
52
86
101
43
25
37
53
85
100
42
24
36
54
84
99
41
23
35
55
83
98
40
22
34
56
82
97
39
21
33
57
81
96
38
20
32
58
80
95
37
19
31
59
79
94
36
18
30
60
78
93
35
17
29
61
77
92
34
16
28
62
76
91
33
5
4
3
2
1
0
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
38
39
40
41
42
43
44
45
46
47
48
49
50
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
45
25
37
51
85
102
44
24
36
52
84
101
43
23
35
53
83
100
42
22
34
54
82
99
41
21
33
55
81
98
40
20
32
56
80
97
39
19
31
57
79
96
38
18
30
58
78
95
37
17
29
59
77
94
36
16
28
60
76
93
35
15
27
61
75
92
34
6
5
4
3
2
1
0
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
37
38
39
40
41
42
43
44
45
46
47
48
49
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
46
24
36
50
84
103
45
23
35
51
83
102
44
22
34
52
82
101
43
21
33
53
81
100
42
20
32
54
80
99
41
19
31
55
79
98
40
18
30
56
78
97
39
17
29
57
77
96
38
16
28
58
76
95
37
15
27
59
75
94
36
14
26
60
74
93
35
7
6
5
4
3
2
1
0
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
36
37
38
39
40
41
42
43
44
45
46
47
48
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
47
23
35
49
83
104
46
22
34
50
82
103
45
21
33
51
81
102
44
20
32
52
80
101
43
19
31
53
79
100
42
18
30
54
78
99
41
17
29
55
77
98
40
16
28
56
76
97
39
15
27
57
75
96
38
14
26
58
74
95
37
13
25
59
73
94
36
8
7
6
5
4
3
2
1
0
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
35
36
37
38
39
40
41
42
43
44
45
46
47
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
48
22
34
48
82
105
47
21
33
49
81
104
46
20
32
50
80
103
45
19
31
51
79
102
44
18
30
52
78
101
43
17
29
53
77
100
42
16
28
54
76
99
41
15
27
55
75
98
40
14
26
56
74
97
39
13
25
57
73
96
38
12
24
58
72
95
37
9
8
7
6
5
4
3
2
1
0
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
34
35
36
37
38
39
40
41
42
43
44
45
46
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
49
21
33
47
81
106
48
20
32
48
80
105
47
19
31
49
79
104
46
18
30
50
78
103
45
17
29
51
77
102
44
16
28
52
76
101
43
15
27
53
75
100
42
14
26
54
74
99
41
13
25
55
73
98
40
12
24
56
72
97
39
11
23
57
71
96
38
10
9
8
7
6
5
4
3
2
1
0
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
33
34
35
36
37
38
39
40
41
42
43
44
45
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
50
20
32
46
80
107
49
19
31
47
79
106
48
18
30
48
78
105
47
17
29
49
77
104
46
16
28
50
76
103
45
15
27
51
75
102
44
14
26
52
74
101
43
13
25
53
73
100
42
12
24
54
72
99
41
11
23
55
71
98
40
10
22
56
70
97
39
11
10
9
8
7
6
5
4
3
2
1
0
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
32
33
34
35
36
37
38
39
40
41
42
43
44
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
51
19
31
45
79
108
50
18
30
46
78
107
49
17
29
47
77
106
48
16
28
48
76
105
47
15
27
49
75
104
46
14
26
50
74
103
45
13
25
51
73
102
44
12
24
52
72
101
43
11
23
53
71
100
42
10
22
54
70
99
41
9
21
55
69
98
40
12
11
10
9
8
7
6
5
4
3
2
1
0
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
31
32
33
34
35
36
37
38
39
40
41
42
43
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
52
18
30
44
78
109
51
17
29
45
77
108
50
16
28
46
76
107
49
15
27
47
75
106
48
14
26
48
74
105
47
13
25
49
73
104
46
12
24
50
72
103
45
11
23
51
71
102
44
10
22
52
70
101
43
9
21
53
69
100
42
8
20
54
68
99
41
13
12
11
10
9
8
7
6
5
4
3
2
1
0
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
30
31
32
33
34
35
36
37
38
39
40
41
42
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
51
17
29
43
77
110
52
16
28
44
76
109
51
15
27
45
75
108
50
14
26
46
74
107
49
13
25
47
73
106
48
12
24
48
72
105
47
11
23
49
71
104
46
10
22
50
70
103
45
9
21
51
69
102
44
8
20
52
68
101
43
7
19
53
67
100
42
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
29
30
31
32
33
34
35
36
37
38
39
40
41
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
50
16
28
42
76
110
51
15
27
43
75
110
52
14
26
44
74
109
51
13
25
45
73
108
50
12
24
46
72
107
49
11
23
47
71
106
48
10
22
48
70
105
47
9
21
49
69
104
46
8
20
50
68
103
45
7
19
51
67
102
44
6
18
52
66
101
43
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
28
29
30
31
32
33
34
35
36
37
38
39
40
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
49
15
27
41
75
109
50
14
26
42
74
110
51
13
25
43
73
110
52
12
24
44
72
109
51
11
23
45
71
108
50
10
22
46
70
107
49
9
21
47
69
106
48
8
20
48
68
105
47
7
19
49
67
104
46
6
18
50
66
103
45
5
17
51
65
102
44
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
27
28
29
30
31
32
33
34
35
36
37
38
39
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
48
14
26
40
74
108
49
13
25
41
73
109
50
12
24
42
72
110
51
11
23
43
71
110
52
10
22
44
70
109
51
9
21
45
69
108
50
8
20
46
68
107
49
7
19
47
67
106
48
6
18
48
66
105
47
5
17
49
65
104
46
4
16
50
64
103
45
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
26
27
28
29
30
31
32
33
34
35
36
37
38
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
47
13
25
39
73
107
48
12
24
40
72
108
49
11
23
41
71
109
50
10
22
42
70
110
51
9
21
43
69
110
52
8
20
44
68
109
51
7
19
45
67
108
50
6
18
46
66
107
49
5
17
47
65
106
48
4
16
48
64
105
47
3
15
49
63
104
46
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
25
26
27
28
29
30
31
32
33
34
35
36
37
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
46
12
24
38
72
106
47
11
23
39
71
107
48
10
22
40
70
108
49
9
21
41
69
109
50
8
20
42
68
110
51
7
19
43
67
110
52
6
18
44
66
109
51
5
17
45
65
108
50
4
16
46
64
107
49
3
15
47
63
106
48
2
14
48
62
105
47
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
24
25
26
27
28
29
30
31
32
33
34
35
36
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
45
11
23
37
71
105
46
10
22
38
70
106
47
9
21
39
69
107
48
8
20
40
68
108
49
7
19
41
67
109
50
6
18
42
66
110
51
5
17
43
65
110
52
4
16
44
64
109
51
3
15
45
63
108
50
2
14
46
62
107
49
1
13
47
61
106
48
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
23
24
25
26
27
28
29
30
31
32
33
34
35
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
46
12
22
36
70
104
47
11
21
37
69
105
48
10
20
38
68
106
49
9
19
39
67
107
50
8
18
40
66
108
51
7
17
41
65
109
52
6
16
42
64
110
53
5
15
43
63
110
52
4
14
44
62
109
51
3
13
45
61
108
50
2
12
46
60
107
49
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
22
23
24
25
26
27
28
29
30
31
32
33
34
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
47
13
21
35
69
103
48
12
20
36
68
104
49
11
19
37
67
105
50
10
18
38
66
106
51
9
17
39
65
107
52
8
16
40
64
108
53
7
15
41
63
109
54
6
14
42
62
110
53
5
13
43
61
109
52
4
12
44
60
108
51
3
11
45
59
107
50
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
21
22
23
24
25
26
27
28
29
30
31
32
33
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
48
14
20
34
68
102
49
13
19
35
67
103
50
12
18
36
66
104
51
11
17
37
65
105
52
10
16
38
64
106
53
9
15
39
63
107
54
8
14
40
62
108
55
7
13
41
61
109
54
6
12
42
60
108
53
5
11
43
59
107
52
4
10
44
58
106
51
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
20
21
22
23
24
25
26
27
28
29
30
31
32
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
49
15
19
33
67
101
50
14
18
34
66
102
51
13
17
35
65
103
52
12
16
36
64
104
53
11
15
37
63
105
54
10
14
38
62
106
55
9
13
39
61
107
56
8
12
40
60
108
55
7
11
41
59
107
54
6
10
42
58
106
53
5
9
43
57
105
52
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
19
20
21
22
23
24
25
26
27
28
29
30
31
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
50
16
18
32
66
100
51
15
17
33
65
101
52
14
16
34
64
102
53
13
15
35
63
103
54
12
14
36
62
104
55
11
13
37
61
105
56
10
12
38
60
106
57
9
11
39
59
107
56
8
10
40
58
106
55
7
9
41
57
105
54
6
8
42
56
104
53
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
18
19
20
21
22
23
24
25
26
27
28
29
30
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
51
17
17
31
65
99
52
16
16
32
64
100
53
15
15
33
63
101
54
14
14
34
62
102
55
13
13
35
61
103
56
12
12
36
60
104
57
11
11
37
59
105
58
10
10
38
58
106
57
9
9
39
57
105
56
8
8
40
56
104
55
7
7
41
55
103
54
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
17
18
19
20
21
22
23
24
25
26
27
28
29
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
52
18
16
30
64
98
53
17
15
31
63
99
54
16
14
32
62
100
55
15
13
33
61
101
56
14
12
34
60
102
57
13
11
35
59
103
58
12
10
36
58
104
59
11
9
37
57
105
58
10
8
38
56
104
57
9
7
39
55
103
56
8
6
40
54
102
55
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
16
17
18
19
20
21
22
23
24
25
26
27
28
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
53
19
15
29
63
97
54
18
14
30
62
98
55
17
13
31
61
99
56
16
12
32
60
100
57
15
11
33
59
101
58
14
10
34
58
102
59
13
9
35
57
103
60
12
8
36
56
104
59
11
7
37
55
103
58
10
6
38
54
102
57
9
5
39
53
101
56
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
15
16
17
18
19
20
21
22
23
24
25
26
27
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
54
20
14
28
62
96
55
19
13
29
61
97
56
18
12
30
60
98
57
17
11
31
59
99
58
16
10
32
58
100
59
15
9
33
57
101
60
14
8
34
56
102
61
13
7
35
55
103
60
12
6
36
54
102
59
11
5
37
53
101
58
10
4
38
52
100
57
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
14
15
16
17
18
19
20
21
22
23
24
25
26
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
55
21
13
27
61
95
56
20
12
28
60
96
57
19
11
29
59
97
58
18
10
30
58
98
59
17
9
31
57
99
60
16
8
32
56
100
61
15
7
33
55
101
62
14
6
34
54
102
61
13
5
35
53
101
60
12
4
36
52
100
59
11
3
37
51
99
58
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
13
14
15
16
17
18
19
20
21
22
23
24
25
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
56
22
12
26
60
94
57
21
11
27
59
95
58
20
10
28
58
96
59
19
9
29
57
97
60
18
8
30
56
98
61
17
7
31
55
99
62
16
6
32
54
100
63
15
5
33
53
101
62
14
4
34
52
100
61
13
3
35
51
99
60
12
2
36
50
98
59
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
12
13
14
15
16
17
18
19
20
21
22
23
24
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
57
23
11
25
59
93
58
22
10
26
58
94
59
21
9
27
57
95
60
20
8
28
56
96
61
19
7
29
55
97
62
18
6
30
54
98
63
17
5
31
53
99
64
16
4
32
52
100
63
15
3
33
51
99
62
14
2
34
50
98
61
13
1
35
49
97
60
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
24
23
22
21
20
19
18
17
16
15
14
13
12
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
93
59
25
11
23
57
94
58
26
10
22
58
95
57
27
9
21
59
96
56
28
8
20
60
97
55
29
7
19
61
98
54
30
6
18
62
99
53
31
5
17
63
100
52
32
4
16
64
99
51
33
3
15
63
98
50
34
2
14
62
97
49
35
1
13
61
96
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
0
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
25
24
23
22
21
20
19
18
17
16
15
14
13
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
94
60
26
12
22
56
95
59
27
11
21
57
96
58
28
10
20
58
97
57
29
9
19
59
98
56
30
8
18
60
99
55
31
7
17
61
100
54
32
6
16
62
101
53
33
5
15
63
100
52
34
4
14
62
99
51
35
3
13
61
98
50
36
2
12
60
97
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
1
0
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
26
25
24
23
22
21
20
19
18
17
16
15
14
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
95
61
27
13
21
55
96
60
28
12
20
56
97
59
29
11
19
57
98
58
30
10
18
58
99
57
31
9
17
59
100
56
32
8
16
60
101
55
33
7
15
61
102
54
34
6
14
62
101
53
35
5
13
61
100
52
36
4
12
60
99
51
37
3
11
59
98
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
2
1
0
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
27
26
25
24
23
22
21
20
19
18
17
16
15
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
96
62
28
14
20
54
97
61
29
13
19
55
98
60
30
12
18
56
99
59
31
11
17
57
100
58
32
10
16
58
101
57
33
9
15
59
102
56
34
8
14
60
103
55
35
7
13
61
102
54
36
6
12
60
101
53
37
5
11
59
100
52
38
4
10
58
99
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
3
2
1
0
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
28
27
26
25
24
23
22
21
20
19
18
17
16
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
97
63
29
15
19
53
98
62
30
14
18
54
99
61
31
13
17
55
100
60
32
12
16
56
101
59
33
11
15
57
102
58
34
10
14
58
103
57
35
9
13
59
104
56
36
8
12
60
103
55
37
7
11
59
102
54
38
6
10
58
101
53
39
5
9
57
100
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
4
3
2
1
0
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
29
28
27
26
25
24
23
22
21
20
19
18
17
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
98
64
30
16
18
52
99
63
31
15
17
53
100
62
32
14
16
54
101
61
33
13
15
55
102
60
34
12
14
56
103
59
35
11
13
57
104
58
36
10
12
58
105
57
37
9
11
59
104
56
38
8
10
58
103
55
39
7
9
57
102
54
40
6
8
56
101
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
5
4
3
2
1
0
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
30
29
28
27
26
25
24
23
22
21
20
19
18
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
99
65
31
17
17
51
100
64
32
16
16
52
101
63
33
15
15
53
102
62
34
14
14
54
103
61
35
13
13
55
104
60
36
12
12
56
105
59
37
11
11
57
106
58
38
10
10
58
105
57
39
9
9
57
104
56
40
8
8
56
103
55
41
7
7
55
102
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
6
5
4
3
2
1
0
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
31
30
29
28
27
26
25
24
23
22
21
20
19
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
100
66
32
18
16
50
101
65
33
17
15
51
102
64
34
16
14
52
103
63
35
15
13
53
104
62
36
14
12
54
105
61
37
13
11
55
106
60
38
12
10
56
107
59
39
11
9
57
106
58
40
10
8
56
105
57
41
9
7
55
104
56
42
8
6
54
103
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
7
6
5
4
3
2
1
0
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
32
31
30
29
28
27
26
25
24
23
22
21
20
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
101
67
33
19
15
49
102
66
34
18
14
50
103
65
35
17
13
51
104
64
36
16
12
52
105
63
37
15
11
53
106
62
38
14
10
54
107
61
39
13
9
55
108
60
40
12
8
56
107
59
41
11
7
55
106
58
42
10
6
54
105
57
43
9
5
53
104
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
8
7
6
5
4
3
2
1
0
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
33
32
31
30
29
28
27
26
25
24
23
22
21
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
102
68
34
20
14
48
103
67
35
19
13
49
104
66
36
18
12
50
105
65
37
17
11
51
106
64
38
16
10
52
107
63
39
15
9
53
108
62
40
14
8
54
109
61
41
13
7
55
108
60
42
12
6
54
107
59
43
11
5
53
106
58
44
10
4
52
105
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
9
8
7
6
5
4
3
2
1
0
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
34
33
32
31
30
29
28
27
26
25
24
23
22
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
103
69
35
21
13
47
104
68
36
20
12
48
105
67
37
19
11
49
106
66
38
18
10
50
107
65
39
17
9
51
108
64
40
16
8
52
109
63
41
15
7
53
110
62
42
14
6
54
109
61
43
13
5
53
108
60
44
12
4
52
107
59
45
11
3
51
106
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
10
9
8
7
6
5
4
3
2
1
0
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
35
34
33
32
31
30
29
28
27
26
25
24
23
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
104
70
36
22
12
46
105
69
37
21
11
47
106
68
38
20
10
48
107
67
39
19
9
49
108
66
40
18
8
50
109
65
41
17
7
51
110
64
42
16
6
52
110
63
43
15
5
53
109
62
44
14
4
52
108
61
45
13
3
51
107
60
46
12
2
50
106
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
11
10
9
8
7
6
5
4
3
2
1
0
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
36
35
34
33
32
31
30
29
28
27
26
25
24
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
105
71
37
23
11
45
106
70
38
22
10
46
107
69
39
21
9
47
108
68
40
20
8
48
109
67
41
19
7
49
110
66
42
18
6
50
110
65
43
17
5
51
109
64
44
16
4
52
108
63
45
15
3
51
107
62
46
14
2
50
106
61
47
13
1
49
105
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
12
11
10
9
8
7
6
5
4
3
2
1
0
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
37
36
35
34
33
32
31
30
29
28
27
26
25
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
106
72
38
24
12
46
107
71
39
23
11
47
108
70
40
22
10
48
109
69
41
21
9
49
110
68
42
20
8
50
110
67
43
19
7
51
109
66
44
18
6
52
108
65
45
17
5
51
107
64
46
16
4
50
106
63
47
15
3
49
105
62
48
14
2
48
104
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
13
12
11
10
9
8
7
6
5
4
3
2
1
0
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
38
37
36
35
34
33
32
31
30
29
28
27
26
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
107
73
39
25
13
47
108
72
40
24
12
48
109
71
41
23
11
49
110
70
42
22
10
50
110
69
43
21
9
51
109
68
44
20
8
52
108
67
45
19
7
51
107
66
46
18
6
50
106
65
47
17
5
49
105
64
48
16
4
48
104
63
49
15
3
47
103
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
39
38
37
36
35
34
33
32
31
30
29
28
27
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
108
74
40
26
14
48
109
73
41
25
13
49
110
72
42
24
12
50
110
71
43
23
11
51
109
70
44
22
10
52
108
69
45
21
9
51
107
68
46
20
8
50
106
67
47
19
7
49
105
66
48
18
6
48
104
65
49
17
5
47
103
64
50
16
4
46
102
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
40
39
38
37
36
35
34
33
32
31
30
29
28
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
109
75
41
27
15
49
110
74
42
26
14
50
110
73
43
25
13
51
109
72
44
24
12
52
108
71
45
23
11
51
107
70
46
22
10
50
106
69
47
21
9
49
105
68
48
20
8
48
104
67
49
19
7
47
103
66
50
18
6
46
102
65
51
17
5
45
101
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
41
40
39
38
37
36
35
34
33
32
31
30
29
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
110
76
42
28
16
50
110
75
43
27
15
51
109
74
44
26
14
52
108
73
45
25
13
51
107
72
46
24
12
50
106
71
47
23
11
49
105
70
48
22
10
48
104
69
49
21
9
47
103
68
50
20
8
46
102
67
51
19
7
45
101
66
52
18
6
44
100
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
42
41
40
39
38
37
36
35
34
33
32
31
30
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
110
77
43
29
17
51
109
76
44
28
16
52
108
75
45
27
15
51
107
74
46
26
14
50
106
73
47
25
13
49
105
72
48
24
12
48
104
71
49
23
11
47
103
70
50
22
10
46
102
69
51
21
9
45
101
68
52
20
8
44
100
67
53
19
7
43
99
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
43
42
41
40
39
38
37
36
35
34
33
32
31
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
109
78
44
30
18
52
108
77
45
29
17
51
107
76
46
28
16
50
106
75
47
27
15
49
105
74
48
26
14
48
104
73
49
25
13
47
103
72
50
24
12
46
102
71
51
23
11
45
101
70
52
22
10
44
100
69
53
21
9
43
99
68
54
20
8
42
98
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
44
43
42
41
40
39
38
37
36
35
34
33
32
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
108
79
45
31
19
51
107
78
46
30
18
50
106
77
47
29
17
49
105
76
48
28
16
48
104
75
49
27
15
47
103
74
50
26
14
46
102
73
51
25
13
45
101
72
52
24
12
44
100
71
53
23
11
43
99
70
54
22
10
42
98
69
55
21
9
41
97
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
45
44
43
42
41
40
39
38
37
36
35
34
33
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
107
80
46
32
20
50
106
79
47
31
19
49
105
78
48
30
18
48
104
77
49
29
17
47
103
76
50
28
16
46
102
75
51
27
15
45
101
74
52
26
14
44
100
73
53
25
13
43
99
72
54
24
12
42
98
71
55
23
11
41
97
70
56
22
10
40
96
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
46
45
44
43
42
41
40
39
38
37
36
35
34
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
106
81
47
33
21
49
105
80
48
32
20
48
104
79
49
31
19
47
103
78
50
30
18
46
102
77
51
29
17
45
101
76
52
28
16
44
100
75
53
27
15
43
99
74
54
26
14
42
98
73
55
25
13
41
97
72
56
24
12
40
96
71
57
23
11
39
95
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
47
46
45
44
43
42
41
40
39
38
37
36
35
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
105
82
48
34
22
48
104
81
49
33
21
47
103
80
50
32
20
46
102
79
51
31
19
45
101
78
52
30
18
44
100
77
53
29
17
43
99
76
54
28
16
42
98
75
55
27
15
41
97
74
56
26
14
40
96
73
57
25
13
39
95
72
58
24
12
38
94
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
48
47
46
45
44
43
42
41
40
39
38
37
36
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
104
83
49
35
23
47
103
82
50
34
22
46
102
81
51
33
21
45
101
80
52
32
20
44
100
79
53
31
19
43
99
78
54
30
18
42
98
77
55
29
17
41
97
76
56
28
16
40
96
75
57
27
15
39
95
74
58
26
14
38
94
73
59
25
13
37
93
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
49
48
47
46
45
44
43
42
41
40
39
38
37
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
103
84
50
36
24
46
102
83
51
35
23
45
101
82
52
34
22
44
100
81
53
33
21
43
99
80
54
32
20
42
98
79
55
31
19
41
97
78
56
30
18
40
96
77
57
29
17
39
95
76
58
28
16
38
94
75
59
27
15
37
93
74
60
26
14
36
92
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
50
49
48
47
46
45
44
43
42
41
40
39
38
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
102
85
51
37
25
45
101
84
52
36
24
44
100
83
53
35
23
43
99
82
54
34
22
42
98
81
55
33
21
41
97
80
56
32
20
40
96
79
57
31
19
39
95
78
58
30
18
38
94
77
59
29
17
37
93
76
60
28
16
36
92
75
61
27
15
35
91
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
51
50
49
48
47
46
45
44
43
42
41
40
39
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
101
86
52
38
26
44
100
85
53
37
25
43
99
84
54
36
24
42
98
83
55
35
23
41
97
82
56
34
22
40
96
81
57
33
21
39
95
80
58
32
20
38
94
79
59
31
19
37
93
78
60
30
18
36
92
77
61
29
17
35
91
76
62
28
16
34
90
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
52
51
50
49
48
47
46
45
44
43
42
41
40
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
100
87
53
39
27
43
99
86
54
38
26
42
98
85
55
37
25
41
97
84
56
36
24
40
96
83
57
35
23
39
95
82
58
34
22
38
94
81
59
33
21
37
93
80
60
32
20
36
92
79
61
31
19
35
91
78
62
30
18
34
90
77
63
29
17
33
89
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
53
52
51
50
49
48
47
46
45
44
43
42
41
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
99
88
54
40
28
42
98
87
55
39
27
41
97
86
56
38
26
40
96
85
57
37
25
39
95
84
58
36
24
38
94
83
59
35
23
37
93
82
60
34
22
36
92
81
61
33
21
35
91
80
62
32
20
34
90
79
63
31
19
33
89
78
64
30
18
32
88
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
54
53
52
51
50
49
48
47
46
45
44
43
42
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
98
89
55
41
29
41
97
88
56
40
28
40
96
87
57
39
27
39
95
86
58
38
26
38
94
85
59
37
25
37
93
84
60
36
24
36
92
83
61
35
23
35
91
82
62
34
22
34
90
81
63
33
21
33
89
80
64
32
20
32
88
79
65
31
19
31
87
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
55
54
53
52
51
50
49
48
47
46
45
44
43
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
97
90
56
42
30
40
96
89
57
41
29
39
95
88
58
40
28
38
94
87
59
39
27
37
93
86
60
38
26
36
92
85
61
37
25
35
91
84
62
36
24
34
90
83
63
35
23
33
89
82
64
34
22
32
88
81
65
33
21
31
87
80
66
32
20
30
86
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
56
55
54
53
52
51
50
49
48
47
46
45
44
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
96
91
57
43
31
39
95
90
58
42
30
38
94
89
59
41
29
37
93
88
60
40
28
36
92
87
61
39
27
35
91
86
62
38
26
34
90
85
63
37
25
33
89
84
64
36
24
32
88
83
65
35
23
31
87
82
66
34
22
30
86
81
67
33
21
29
85
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
84
83
82
81
80
79
78
77
76
75
74
73
72
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
108
116
85
71
45
11
107
115
86
70
46
10
106
114
87
69
47
9
105
113
88
68
48
8
104
112
89
67
49
7
103
111
90
66
50
6
102
110
91
65
51
5
101
109
92
64
52
4
100
108
93
63
51
3
99
107
94
62
50
2
98
106
95
61
49
1
97
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
0
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
71
72
73
74
75
76
77
78
79
80
81
82
83
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
12
46
70
84
115
107
11
47
69
85
114
106
10
48
68
86
113
105
9
49
67
87
112
104
8
50
66
88
111
103
7
51
65
89
110
102
6
52
64
90
109
101
5
51
63
91
108
100
4
50
62
92
107
99
3
49
61
93
106
98
2
48
60
94
105
97
1
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
95
96
97
98
99
100
101
102
103
104
105
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
96
0
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
45
46
47
48
49
50
51
52
53
54
55
56
57
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
38
32
44
58
92
95
37
31
43
59
91
94
36
30
42
60
90
93
35
29
41
61
89
92
34
28
40
62
88
91
33
27
39
63
87
90
32
26
38
64
86
89
31
25
37
65
85
88
30
24
36
66
84
87
29
23
35
67
83
86
28
22
34
68
82
85
27
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
84
26
0
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
33
34
35
36
37
38
39
40
41
42
43
44
45
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
111
110
52
20
32
46
80
109
51
19
31
47
79
108
50
18
30
48
78
107
49
17
29
49
77
106
48
16
28
50
76
105
47
15
27
51
75
104
46
14
26
52
74
103
45
13
25
53
73
102
44
12
24
54
72
101
43
11
23
55
71
100
42
10
22
56
70
99
41
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
87
86
98
40
14
0
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
13
14
15
16
17
18
19
20
21
22
23
24
25
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
58
24
12
26
60
94
59
23
11
27
59
95
60
22
10
28
58
96
61
21
9
29
57
97
62
20
8
30
56
98
63
19
7
31
55
99
64
18
6
32
54
100
65
17
5
33
53
101
64
16
4
34
52
100
63
15
3
35
51
99
62
14
2
36
50
98
61
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
97
60
34
22
0
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
25
24
23
22
21
20
19
18
17
16
15
14
13
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
94
60
26
12
24
58
95
59
27
11
23
59
96
58
28
10
22
60
97
57
29
9
21
61
98
56
30
8
20
62
99
55
31
7
19
63
100
54
32
6
18
64
101
53
33
5
17
65
100
52
34
4
16
64
99
51
35
3
15
63
98
50
36
2
14
62
97
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
61
96
70
58
38
0
110
111
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
45
44
43
42
41
40
39
38
37
36
35
34
33
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
109
80
46
32
20
52
108
79
47
31
19
51
107
78
48
30
18
50
106
77
49
29
17
49
105
76
50
28
16
48
104
75
51
27
15
47
103
74
52
26
14
46
102
73
53
25
13
45
101
72
54
24
12
44
100
71
55
23
11
43
99
70
56
22
10
42
98
86
87
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
41
97
85
78
58
22
0
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
57
56
55
54
53
52
51
50
49
48
47
46
45
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
95
92
58
44
32
38
94
91
59
43
31
37
93
90
60
42
30
36
92
89
61
41
29
35
91
88
62
40
28
34
90
87
63
39
27
33
89
86
64
38
26
32
88
85
65
37
25
31
87
84
66
36
24
30
86
83
67
35
23
29
85
82
68
34
22
28
84
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
27
83
71
85
70
34
14
0
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
83
82
81
80
79
78
77
76
75
74
73
72
71
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
107
115
84
70
46
12
106
114
85
69
47
11
105
113
86
68
48
10
104
112
87
67
49
9
103
111
88
66
50
8
102
110
89
65
51
7
101
109
90
64
52
6
100
108
91
63
51
5
99
107
92
62
50
4
98
106
93
61
49
3
97
105
94
60
48
2
96
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
105
104
103
102
101
100
99
98
97
96
95
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
1
95
83
97
96
60
40
26
0
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
70
71
72
73
74
75
76
77
78
79
80
81
82
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
13
47
69
83
114
106
12
48
68
84
113
105
11
49
67
85
112
104
10
50
66
86
111
103
9
51
65
87
110
102
8
52
64
88
109
101
7
51
63
89
108
100
6
50
62
90
107
99
5
49
61
91
106
98
4
48
60
92
105
97
3
47
59
93
104
96
2
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
94
95
96
97
98
99
100
101
102
103
104
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
95
1
25
39
59
95
96
82
94
0
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
46
47
48
49
50
51
52
53
54
55
56
57
58
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
37
33
45
59
93
94
36
32
44
60
92
93
35
31
43
61
91
92
34
30
42
62
90
91
33
29
41
63
89
90
32
28
40
64
88
89
31
27
39
65
87
88
30
26
38
66
86
87
29
25
37
67
85
86
28
24
36
68
84
85
27
23
35
69
83
84
26
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
83
25
1
15
35
71
84
70
82
24
0
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
34
35
36
37
38
39
40
41
42
43
44
45
46
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
112
111
53
21
33
47
81
110
52
20
32
48
80
109
51
19
31
49
79
108
50
18
30
50
78
107
49
17
29
51
77
106
48
16
28
52
76
105
47
15
27
53
75
104
46
14
26
54
74
103
45
13
25
55
73
102
44
12
24
56
72
101
43
11
23
57
71
100
42
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
88
87
99
41
15
1
23
59
79
86
98
40
16
0
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
14
15
16
17
18
19
20
21
22
23
24
25
26
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
59
25
13
27
61
95
60
24
12
28
60
96
61
23
11
29
59
97
62
22
10
30
58
98
63
21
9
31
57
99
64
20
8
32
56
100
65
19
7
33
55
101
66
18
6
34
54
102
65
17
5
35
53
101
64
16
4
36
52
100
63
15
3
37
51
99
62
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
98
61
35
23
1
39
59
71
97
60
36
24
0
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
26
25
24
23
22
21
20
19
18
17
16
15
14
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
95
61
27
13
25
59
96
60
28
12
24
60
97
59
29
11
23
61
98
58
30
10
22
62
99
57
31
9
21
63
100
56
32
8
20
64
101
55
33
7
19
65
102
54
34
6
18
66
101
53
35
5
17
65
100
52
36
4
16
64
99
51
37
3
15
63
98
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
62
97
71
59
39
1
23
35
61
96
72
60
40
0
111
112
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
46
45
44
43
42
41
40
39
38
37
36
35
34
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
110
81
47
33
21
53
109
80
48
32
20
52
108
79
49
31
19
51
107
78
50
30
18
50
106
77
51
29
17
49
105
76
52
28
16
48
104
75
53
27
15
47
103
74
54
26
14
46
102
73
55
25
13
45
101
72
56
24
12
44
100
71
57
23
11
43
99
87
88
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
42
98
86
79
59
23
1
15
41
97
85
80
60
24
0
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
58
57
56
55
54
53
52
51
50
49
48
47
46
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
94
93
59
45
33
37
93
92
60
44
32
36
92
91
61
43
31
35
91
90
62
42
30
34
90
89
63
41
29
33
89
88
64
40
28
32
88
87
65
39
27
31
87
86
66
38
26
30
86
85
67
37
25
29
85
84
68
36
24
28
84
83
69
35
23
27
83
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
26
82
70
84
71
35
15
1
25
81
69
85
72
36
16
0
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
82
81
80
79
78
77
76
75
74
73
72
71
70
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
106
114
83
69
47
13
105
113
84
68
48
12
104
112
85
67
49
11
103
111
86
66
50
10
102
110
87
65
51
9
101
109
88
64
52
8
100
108
89
63
51
7
99
107
90
62
50
6
98
106
91
61
49
5
97
105
92
60
48
4
96
104
93
59
47
3
95
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
104
103
102
101
100
99
98
97
96
95
94
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
2
94
82
96
95
59
39
25
1
93
81
97
96
60
40
24
0
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
69
70
71
72
73
74
75
76
77
78
79
80
81
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
14
48
68
82
113
105
13
49
67
83
112
104
12
50
66
84
111
103
11
51
65
85
110
102
10
52
64
86
109
101
9
51
63
87
108
100
8
50
62
88
107
99
7
49
61
89
106
98
6
48
60
90
105
97
5
47
59
91
104
96
4
46
58
92
103
95
3
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
93
94
95
96
97
98
99
100
101
102
103
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
94
2
24
38
58
94
95
81
93
1
23
39
59
95
96
80
92
0
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
47
48
49
50
51
52
53
54
55
56
57
58
59
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
36
34
46
60
94
93
35
33
45
61
93
92
34
32
44
62
92
91
33
31
43
63
91
90
32
30
42
64
90
89
31
29
41
65
89
88
30
28
40
66
88
87
29
27
39
67
87
86
28
26
38
68
86
85
27
25
37
69
85
84
26
24
36
70
84
83
25
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
82
24
2
16
36
72
83
69
81
23
1
17
37
73
84
68
80
22
0
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
35
36
37
38
39
40
41
42
43
44
45
46
47
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
54
22
34
48
82
111
53
21
33
49
81
110
52
20
32
50
80
109
51
19
31
51
79
108
50
18
30
52
78
107
49
17
29
53
77
106
48
16
28
54
76
105
47
15
27
55
75
104
46
14
26
56
74
103
45
13
25
57
73
102
44
12
24
58
72
101
43
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
100
42
16
2
24
60
80
87
99
41
17
1
25
59
79
86
98
40
18
0
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
15
16
17
18
19
20
21
22
23
24
25
26
27
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
60
26
14
28
62
96
61
25
13
29
61
97
62
24
12
30
60
98
63
23
11
31
59
99
64
22
10
32
58
100
65
21
9
33
57
101
66
20
8
34
56
102
67
19
7
35
55
103
66
18
6
36
54
102
65
17
5
37
53
101
64
16
4
38
52
100
63
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
99
62
36
24
2
40
60
72
98
61
37
25
1
39
59
73
97
60
38
26
0
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
27
26
25
24
23
22
21
20
19
18
17
16
15
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
96
62
28
14
26
60
97
61
29
13
25
61
98
60
30
12
24
62
99
59
31
11
23
63
100
58
32
10
22
64
101
57
33
9
21
65
102
56
34
8
20
66
103
55
35
7
19
67
102
54
36
6
18
66
101
53
37
5
17
65
100
52
38
4
16
64
99
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
63
98
72
60
40
2
24
36
62
97
73
59
39
1
25
37
61
96
74
58
38
0
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
47
46
45
44
43
42
41
40
39
38
37
36
35
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
111
82
48
34
22
54
110
81
49
33
21
53
109
80
50
32
20
52
108
79
51
31
19
51
107
78
52
30
18
50
106
77
53
29
17
49
105
76
54
28
16
48
104
75
55
27
15
47
103
74
56
26
14
46
102
73
57
25
13
45
101
72
58
24
12
44
100
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
43
99
87
80
60
24
2
16
42
98
86
79
59
25
1
17
41
97
85
78
58
26
0
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
59
58
57
56
55
54
53
52
51
50
49
48
47
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
93
94
60
46
34
36
92
93
61
45
33
35
91
92
62
44
32
34
90
91
63
43
31
33
89
90
64
42
30
32
88
89
65
41
29
31
87
88
66
40
28
30
86
87
67
39
27
29
85
86
68
38
26
28
84
85
69
37
25
27
83
84
70
36
24
26
82
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
25
81
69
83
72
36
16
2
24
80
68
84
73
37
17
1
23
79
67
85
74
38
18
0
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
81
80
79
78
77
76
75
74
73
72
71
70
69
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
105
113
82
68
48
14
104
112
83
67
49
13
103
111
84
66
50
12
102
110
85
65
51
11
101
109
86
64
52
10
100
108
87
63
51
9
99
107
88
62
50
8
98
106
89
61
49
7
97
105
90
60
48
6
96
104
91
59
47
5
95
103
92
58
46
4
94
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
103
102
101
100
99
98
97
96
95
94
93
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
3
93
81
95
94
58
38
24
2
92
80
96
95
59
39
23
1
91
79
97
96
60
40
22
0
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
68
69
70
71
72
73
74
75
76
77
78
79
80
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
15
49
67
81
112
104
14
50
66
82
111
103
13
51
65
83
110
102
12
52
64
84
109
101
11
51
63
85
108
100
10
50
62
86
107
99
9
49
61
87
106
98
8
48
60
88
105
97
7
47
59
89
104
96
6
46
58
90
103
95
5
45
57
91
102
94
4
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
93
3
23
37
57
93
94
80
92
2
22
38
58
94
95
79
91
1
21
39
59
95
96
78
90
0
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
48
49
50
51
52
53
54
55
56
57
58
59
60
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
35
35
47
61
95
92
34
34
46
62
94
91
33
33
45
63
93
90
32
32
44
64
92
89
31
31
43
65
91
88
30
30
42
66
90
87
29
29
41
67
89
86
28
28
40
68
88
85
27
27
39
69
87
84
26
26
38
70
86
83
25
25
37
71
85
82
24
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
81
23
3
17
37
73
82
68
80
22
2
18
38
74
83
67
79
21
1
19
39
75
84
66
78
20
0
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
36
37
38
39
40
41
42
43
44
45
46
47
48
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
114
113
55
23
35
49
83
112
54
22
34
50
82
111
53
21
33
51
81
110
52
20
32
52
80
109
51
19
31
53
79
108
50
18
30
54
78
107
49
17
29
55
77
106
48
16
28
56
76
105
47
15
27
57
75
104
46
14
26
58
74
103
45
13
25
59
73
102
44
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
101
43
17
3
25
59
79
88
100
42
18
2
26
58
78
87
99
41
19
1
27
57
77
86
98
40
20
0
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
16
17
18
19
20
21
22
23
24
25
26
27
28
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
61
27
15
29
63
97
62
26
14
30
62
98
63
25
13
31
61
99
64
24
12
32
60
100
65
23
11
33
59
101
66
22
10
34
58
102
67
21
9
35
57
103
68
20
8
36
56
104
67
19
7
37
55
103
66
18
6
38
54
102
65
17
5
39
53
101
64
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
100
63
37
25
3
39
59
73
99
62
38
26
2
38
58
74
98
61
39
27
1
37
57
75
97
60
40
28
0
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
28
27
26
25
24
23
22
21
20
19
18
17
16
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
97
63
29
15
27
61
98
62
30
14
26
62
99
61
31
13
25
63
100
60
32
12
24
64
101
59
33
11
23
65
102
58
34
10
22
66
103
57
35
9
21
67
104
56
36
8
20
68
103
55
37
7
19
67
102
54
38
6
18
66
101
53
39
5
17
65
100
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
64
99
73
59
39
3
25
37
63
98
74
58
38
2
26
38
62
97
75
57
37
1
27
39
61
96
76
56
36
0
113
114
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
48
47
46
45
44
43
42
41
40
39
38
37
36
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
112
83
49
35
23
55
111
82
50
34
22
54
110
81
51
33
21
53
109
80
52
32
20
52
108
79
53
31
19
51
107
78
54
30
18
50
106
77
55
29
17
49
105
76
56
28
16
48
104
75
57
27
15
47
103
74
58
26
14
46
102
73
59
25
13
45
101
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
44
100
88
79
59
25
3
17
43
99
87
78
58
26
2
18
42
98
86
77
57
27
1
19
41
97
85
76
56
28
0
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
60
59
58
57
56
55
54
53
52
51
50
49
48
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
92
95
61
47
35
35
91
94
62
46
34
34
90
93
63
45
33
33
89
92
64
44
32
32
88
91
65
43
31
31
87
90
66
42
30
30
86
89
67
41
29
29
85
88
68
40
28
28
84
87
69
39
27
27
83
86
70
38
26
26
82
85
71
37
25
25
81
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
24
80
68
82
73
37
17
3
23
79
67
83
74
38
18
2
22
78
66
84
75
39
19
1
21
77
65
85
76
40
20
0
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
80
79
78
77
76
75
74
73
72
71
70
69
68
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
104
112
81
67
49
15
103
111
82
66
50
14
102
110
83
65
51
13
101
109
84
64
52
12
100
108
85
63
51
11
99
107
86
62
50
10
98
106
87
61
49
9
97
105
88
60
48
8
96
104
89
59
47
7
95
103
90
58
46
6
94
102
91
57
45
5
93
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
4
92
80
94
93
57
37
23
3
91
79
95
94
58
38
22
2
90
78
96
95
59
39
21
1
89
77
97
96
60
40
20
0
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
67
68
69
70
71
72
73
74
75
76
77
78
79
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
16
50
66
80
111
103
15
51
65
81
110
102
14
52
64
82
109
101
13
51
63
83
108
100
12
50
62
84
107
99
11
49
61
85
106
98
10
48
60
86
105
97
9
47
59
87
104
96
8
46
58
88
103
95
7
45
57
89
102
94
6
44
56
90
101
93
5
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
91
92
93
94
95
96
97
98
99
100
101
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
92
4
22
36
56
92
93
79
91
3
21
37
57
93
94
78
90
2
20
38
58
94
95
77
89
1
19
39
59
95
96
76
88
0
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
49
50
51
52
53
54
55
56
57
58
59
60
61
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
34
36
48
62
96
91
33
35
47
63
95
90
32
34
46
64
94
89
31
33
45
65
93
88
30
32
44
66
92
87
29
31
43
67
91
86
28
30
42
68
90
85
27
29
41
69
89
84
26
28
40
70
88
83
25
27
39
71
87
82
24
26
38
72
86
81
23
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
80
22
4
18
38
74
81
67
79
21
3
19
39
75
82
66
78
20
2
20
40
76
83
65
77
19
1
21
41
77
84
64
76
18
0
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
37
38
39
40
41
42
43
44
45
46
47
48
49
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
114
56
24
36
50
82
113
55
23
35
51
81
112
54
22
34
52
80
111
53
21
33
53
79
110
52
20
32
54
78
109
51
19
31
55
77
108
50
18
30
56
76
107
49
17
29
57
75
106
48
16
28
58
74
105
47
15
27
59
73
104
46
14
26
60
72
103
45
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
102
44
18
4
26
58
78
89
101
43
19
3
27
57
77
88
100
42
20
2
28
56
76
87
99
41
21
1
29
55
75
86
98
40
22
0
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
17
18
19
20
21
22
23
24
25
26
27
28
29
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
62
28
16
30
62
96
63
27
15
31
61
97
64
26
14
32
60
98
65
25
13
33
59
99
66
24
12
34
58
100
67
23
11
35
57
101
68
22
10
36
56
102
69
21
9
37
55
103
68
20
8
38
54
102
67
19
7
39
53
101
66
18
6
40
52
100
65
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
99
64
38
26
4
38
58
72
98
63
39
27
3
37
57
73
97
62
40
28
2
36
56
74
96
61
41
29
1
35
55
75
95
60
42
30
0
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
29
28
27
26
25
24
23
22
21
20
19
18
17
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
96
62
30
16
28
62
97
61
31
15
27
63
98
60
32
14
26
64
99
59
33
13
25
65
100
58
34
12
24
66
101
57
35
11
23
67
102
56
36
10
22
68
103
55
37
9
21
69
102
54
38
8
20
68
101
53
39
7
19
67
100
52
40
6
18
66
99
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
65
98
72
58
38
4
26
38
64
97
73
57
37
3
27
39
63
96
74
56
36
2
28
40
62
95
75
55
35
1
29
41
61
94
76
54
34
0
114
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
49
48
47
46
45
44
43
42
41
40
39
38
37
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
113
82
50
36
24
56
112
81
51
35
23
55
111
80
52
34
22
54
110
79
53
33
21
53
109
78
54
32
20
52
108
77
55
31
19
51
107
76
56
30
18
50
106
75
57
29
17
49
105
74
58
28
16
48
104
73
59
27
15
47
103
72
60
26
14
46
102
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
45
101
89
78
58
26
4
18
44
100
88
77
57
27
3
19
43
99
87
76
56
28
2
20
42
98
86
75
55
29
1
21
41
97
85
74
54
30
0
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
61
60
59
58
57
56
55
54
53
52
51
50
49
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
91
96
62
48
36
34
90
95
63
47
35
33
89
94
64
46
34
32
88
93
65
45
33
31
87
92
66
44
32
30
86
91
67
43
31
29
85
90
68
42
30
28
84
89
69
41
29
27
83
88
70
40
28
26
82
87
71
39
27
25
81
86
72
38
26
24
80
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
23
79
67
81
74
38
18
4
22
78
66
82
75
39
19
3
21
77
65
83
76
40
20
2
20
76
64
84
77
41
21
1
19
75
63
85
76
42
22
0
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
79
78
77
76
75
74
73
72
71
70
69
68
67
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
103
111
80
66
50
16
102
110
81
65
51
15
101
109
82
64
52
14
100
108
83
63
51
13
99
107
84
62
50
12
98
106
85
61
49
11
97
105
86
60
48
10
96
104
87
59
47
9
95
103
88
58
46
8
94
102
89
57
45
7
93
101
90
56
44
6
92
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
101
100
99
98
97
96
95
94
93
92
91
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
5
91
79
93
92
56
36
22
4
90
78
94
93
57
37
21
3
89
77
95
94
58
38
20
2
88
76
96
95
59
39
19
1
87
75
97
94
60
40
18
0
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
66
67
68
69
70
71
72
73
74
75
76
77
78
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
17
51
65
79
110
102
16
52
64
80
109
101
15
51
63
81
108
100
14
50
62
82
107
99
13
49
61
83
106
98
12
48
60
84
105
97
11
47
59
85
104
96
10
46
58
86
103
95
9
45
57
87
102
94
8
44
56
88
101
93
7
43
55
89
100
92
6
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
90
91
92
93
94
95
96
97
98
99
100
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
91
5
21
35
55
91
92
78
90
4
20
36
56
92
93
77
89
3
19
37
57
93
94
76
88
2
18
38
58
94
95
75
87
1
17
39
59
93
96
74
86
0
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
50
51
52
53
54
55
56
57
58
59
60
61
62
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
33
37
49
63
97
90
32
36
48
64
96
89
31
35
47
65
95
88
30
34
46
66
94
87
29
33
45
67
93
86
28
32
44
68
92
85
27
31
43
69
91
84
26
30
42
70
90
83
25
29
41
71
89
82
24
28
40
72
88
81
23
27
39
73
87
80
22
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
79
21
5
19
39
75
80
66
78
20
4
20
40
76
81
65
77
19
3
21
41
77
82
64
76
18
2
22
42
78
83
63
75
17
1
23
43
77
84
62
74
16
0
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
38
39
40
41
42
43
44
45
46
47
48
49
50
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
57
25
37
51
81
114
56
24
36
52
80
113
55
23
35
53
79
112
54
22
34
54
78
111
53
21
33
55
77
110
52
20
32
56
76
109
51
19
31
57
75
108
50
18
30
58
74
107
49
17
29
59
73
106
48
16
28
60
72
105
47
15
27
59
71
104
46
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
103
45
19
5
27
57
77
90
102
44
20
4
28
56
76
89
101
43
21
3
29
55
75
88
100
42
22
2
30
54
74
87
99
41
23
1
31
53
73
86
98
40
24
0
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
18
19
20
21
22
23
24
25
26
27
28
29
30
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
63
29
17
31
61
95
64
28
16
32
60
96
65
27
15
33
59
97
66
26
14
34
58
98
67
25
13
35
57
99
68
24
12
36
56
100
69
23
11
37
55
101
70
22
10
38
54
102
69
21
9
39
53
101
68
20
8
40
52
100
67
19
7
39
51
99
66
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
98
65
39
27
5
37
57
71
97
64
40
28
4
36
56
72
96
63
41
29
3
35
55
73
95
62
42
30
2
34
54
74
94
61
43
31
1
33
53
75
93
60
44
32
0
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
30
29
28
27
26
25
24
23
22
21
20
19
18
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
95
61
31
17
29
63
96
60
32
16
28
64
97
59
33
15
27
65
98
58
34
14
26
66
99
57
35
13
25
67
100
56
36
12
24
68
101
55
37
11
23
69
102
54
38
10
22
70
101
53
39
9
21
69
100
52
40
8
20
68
99
51
39
7
19
67
98
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
66
97
71
57
37
5
27
39
65
96
72
56
36
4
28
40
64
95
73
55
35
3
29
41
63
94
74
54
34
2
30
42
62
93
75
53
33
1
31
43
61
92
76
52
32
0
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
50
49
48
47
46
45
44
43
42
41
40
39
38
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
114
81
51
37
25
57
113
80
52
36
24
56
112
79
53
35
23
55
111
78
54
34
22
54
110
77
55
33
21
53
109
76
56
32
20
52
108
75
57
31
19
51
107
74
58
30
18
50
106
73
59
29
17
49
105
72
60
28
16
48
104
71
59
27
15
47
103
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
46
102
90
77
57
27
5
19
45
101
89
76
56
28
4
20
44
100
88
75
55
29
3
21
43
99
87
74
54
30
2
22
42
98
86
73
53
31
1
23
41
97
85
72
52
32
0
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
62
61
60
59
58
57
56
55
54
53
52
51
50
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
90
97
63
49
37
33
89
96
64
48
36
32
88
95
65
47
35
31
87
94
66
46
34
30
86
93
67
45
33
29
85
92
68
44
32
28
84
91
69
43
31
27
83
90
70
42
30
26
82
89
71
41
29
25
81
88
72
40
28
24
80
87
73
39
27
23
79
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
22
78
66
80
75
39
19
5
21
77
65
81
76
40
20
4
20
76
64
82
77
41
21
3
19
75
63
83
78
42
22
2
18
74
62
84
77
43
23
1
17
73
61
85
76
44
24
0
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
78
77
76
75
74
73
72
71
70
69
68
67
66
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
102
110
79
65
51
17
101
109
80
64
52
16
100
108
81
63
51
15
99
107
82
62
50
14
98
106
83
61
49
13
97
105
84
60
48
12
96
104
85
59
47
11
95
103
86
58
46
10
94
102
87
57
45
9
93
101
88
56
44
8
92
100
89
55
43
7
91
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
100
99
98
97
96
95
94
93
92
91
90
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
6
90
78
92
91
55
35
21
5
89
77
93
92
56
36
20
4
88
76
94
93
57
37
19
3
87
75
95
94
58
38
18
2
86
74
96
93
59
39
17
1
85
73
97
92
60
40
16
0
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
65
66
67
68
69
70
71
72
73
74
75
76
77
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
18
52
64
78
109
101
17
51
63
79
108
100
16
50
62
80
107
99
15
49
61
81
106
98
14
48
60
82
105
97
13
47
59
83
104
96
12
46
58
84
103
95
11
45
57
85
102
94
10
44
56
86
101
93
9
43
55
87
100
92
8
42
54
88
99
91
7
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
89
90
91
92
93
94
95
96
97
98
99
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
90
6
20
34
54
90
91
77
89
5
19
35
55
91
92
76
88
4
18
36
56
92
93
75
87
3
17
37
57
93
94
74
86
2
16
38
58
92
95
73
85
1
15
39
59
91
96
72
84
0
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
51
52
53
54
55
56
57
58
59
60
61
62
63
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
32
38
50
64
97
89
31
37
49
65
96
88
30
36
48
66
95
87
29
35
47
67
94
86
28
34
46
68
93
85
27
33
45
69
92
84
26
32
44
70
91
83
25
31
43
71
90
82
24
30
42
72
89
81
23
29
41
73
88
80
22
28
40
74
87
79
21
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
78
20
6
20
40
76
79
65
77
19
5
21
41
77
80
64
76
18
4
22
42
78
81
63
75
17
3
23
43
79
82
62
74
16
2
24
44
78
83
61
73
15
1
25
45
77
84
60
72
14
0
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
39
40
41
42
43
44
45
46
47
48
49
50
51
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
58
26
38
52
80
114
57
25
37
53
79
114
56
24
36
54
78
113
55
23
35
55
77
112
54
22
34
56
76
111
53
21
33
57
75
110
52
20
32
58
74
109
51
19
31
59
73
108
50
18
30
60
72
107
49
17
29
59
71
106
48
16
28
58
70
105
47
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
104
46
20
6
28
56
76
90
103
45
21
5
29
55
75
90
102
44
22
4
30
54
74
89
101
43
23
3
31
53
73
88
100
42
24
2
32
52
72
87
99
41
25
1
33
51
71
86
98
40
26
0
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
19
20
21
22
23
24
25
26
27
28
29
30
31
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
64
30
18
32
60
94
65
29
17
33
59
95
66
28
16
34
58
96
67
27
15
35
57
97
68
26
14
36
56
98
69
25
13
37
55
99
70
24
12
38
54
100
71
23
11
39
53
101
70
22
10
40
52
100
69
21
9
39
51
99
68
20
8
38
50
98
67
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
97
66
40
28
6
36
56
70
96
65
41
29
5
35
55
71
95
64
42
30
4
34
54
72
94
63
43
31
3
33
53
73
93
62
44
32
2
32
52
74
92
61
45
33
1
31
51
75
91
60
46
34
0
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
31
30
29
28
27
26
25
24
23
22
21
20
19
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
94
60
32
18
30
64
95
59
33
17
29
65
96
58
34
16
28
66
97
57
35
15
27
67
98
56
36
14
26
68
99
55
37
13
25
69
100
54
38
12
24
70
101
53
39
11
23
71
100
52
40
10
22
70
99
51
39
9
21
69
98
50
38
8
20
68
97
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
67
96
70
56
36
6
28
40
66
95
71
55
35
5
29
41
65
94
72
54
34
4
30
42
64
93
73
53
33
3
31
43
63
92
74
52
32
2
32
44
62
91
75
51
31
1
33
45
61
90
76
50
30
0
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
51
50
49
48
47
46
45
44
43
42
41
40
39
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
114
80
52
38
26
58
114
79
53
37
25
57
113
78
54
36
24
56
112
77
55
35
23
55
111
76
56
34
22
54
110
75
57
33
21
53
109
74
58
32
20
52
108
73
59
31
19
51
107
72
60
30
18
50
106
71
59
29
17
49
105
70
58
28
16
48
104
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
47
103
90
76
56
28
6
20
46
102
90
75
55
29
5
21
45
101
89
74
54
30
4
22
44
100
88
73
53
31
3
23
43
99
87
72
52
32
2
24
42
98
86
71
51
33
1
25
41
97
85
70
50
34
0
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
63
62
61
60
59
58
57
56
55
54
53
52
51
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
89
97
64
50
38
32
88
96
65
49
37
31
87
95
66
48
36
30
86
94
67
47
35
29
85
93
68
46
34
28
84
92
69
45
33
27
83
91
70
44
32
26
82
90
71
43
31
25
81
89
72
42
30
24
80
88
73
41
29
23
79
87
74
40
28
22
78
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
21
77
65
79
76
40
20
6
20
76
64
80
77
41
21
5
19
75
63
81
78
42
22
4
18
74
62
82
79
43
23
3
17
73
61
83
78
44
24
2
16
72
60
84
77
45
25
1
15
71
59
85
76
46
26
0
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
77
76
75
74
73
72
71
70
69
68
67
66
65
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
101
109
78
64
52
18
100
108
79
63
51
17
99
107
80
62
50
16
98
106
81
61
49
15
97
105
82
60
48
14
96
104
83
59
47
13
95
103
84
58
46
12
94
102
85
57
45
11
93
101
86
56
44
10
92
100
87
55
43
9
91
99
88
54
42
8
90
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
99
98
97
96
95
94
93
92
91
90
89
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
7
89
77
91
90
54
34
20
6
88
76
92
91
55
35
19
5
87
75
93
92
56
36
18
4
86
74
94
93
57
37
17
3
85
73
95
92
58
38
16
2
84
72
96
91
59
39
15
1
83
71
97
90
60
40
14
0
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
64
65
66
67
68
69
70
71
72
73
74
75
76
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
19
51
63
77
108
100
18
50
62
78
107
99
17
49
61
79
106
98
16
48
60
80
105
97
15
47
59
81
104
96
14
46
58
82
103
95
13
45
57
83
102
94
12
44
56
84
101
93
11
43
55
85
100
92
10
42
54
86
99
91
9
41
53
87
98
90
8
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
89
7
19
33
53
89
90
76
88
6
18
34
54
90
91
75
87
5
17
35
55
91
92
74
86
4
16
36
56
92
93
73
85
3
15
37
57
91
94
72
84
2
14
38
58
90
95
71
83
1
13
39
59
89
96
70
82
0
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
63
64
65
66
67
68
69
70
71
72
73
74
75
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
20
50
62
76
107
99
19
49
61
77
106
98
18
48
60
78
105
97
17
47
59
79
104
96
16
46
58
80
103
95
15
45
57
81
102
94
14
44
56
82
101
93
13
43
55
83
100
92
12
42
54
84
99
91
11
41
53
85
98
90
10
40
52
86
97
89
9
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
87
88
89
90
91
92
93
94
95
96
97
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
88
8
18
32
52
88
89
75
87
7
17
33
53
89
90
74
86
6
16
34
54
90
91
73
85
5
15
35
55
91
92
72
84
4
14
36
56
90
93
71
83
3
13
37
57
89
94
70
82
2
12
38
58
88
95
69
81
1
0
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
62
63
64
65
66
67
68
69
70
71
72
73
74
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
21
49
61
75
106
98
20
48
60
76
105
97
19
47
59
77
104
96
18
46
58
78
103
95
17
45
57
79
102
94
16
44
56
80
101
93
15
43
55
81
100
92
14
42
54
82
99
91
13
41
53
83
98
90
12
40
52
84
97
89
11
39
51
85
96
88
10
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
86
87
88
89
90
91
92
93
94
95
96
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
87
9
17
31
51
87
88
74
86
8
16
32
52
88
89
73
85
7
15
33
53
89
90
72
84
6
14
34
54
90
91
71
83
5
13
35
55
89
92
70
82
4
12
36
56
88
93
69
81
3
11
37
57
87
94
68
80
2
1
0
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
61
62
63
64
65
66
67
68
69
70
71
72
73
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
22
48
60
74
105
97
21
47
59
75
104
96
20
46
58
76
103
95
19
45
57
77
102
94
18
44
56
78
101
93
17
43
55
79
100
92
16
42
54
80
99
91
15
41
53
81
98
90
14
40
52
82
97
89
13
39
51
83
96
88
12
38
50
84
95
87
11
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
85
86
87
88
89
90
91
92
93
94
95
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
86
10
16
30
50
86
87
73
85
9
15
31
51
87
88
72
84
8
14
32
52
88
89
71
83
7
13
33
53
89
90
70
82
6
12
34
54
88
91
69
81
5
11
35
55
87
92
68
80
4
10
36
56
86
93
67
79
3
2
1
0
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
60
61
62
63
64
65
66
67
68
69
70
71
72
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
23
47
59
73
104
96
22
46
58
74
103
95
21
45
57
75
102
94
20
44
56
76
101
93
19
43
55
77
100
92
18
42
54
78
99
91
17
41
53
79
98
90
16
40
52
80
97
89
15
39
51
81
96
88
14
38
50
82
95
87
13
37
49
83
94
86
12
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
85
11
15
29
49
85
86
72
84
10
14
30
50
86
87
71
83
9
13
31
51
87
88
70
82
8
12
32
52
88
89
69
81
7
11
33
53
87
90
68
80
6
10
34
54
86
91
67
79
5
9
35
55
85
92
66
78
4
3
2
1
0
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
59
60
61
62
63
64
65
66
67
68
69
70
71
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
24
46
58
72
103
95
23
45
57
73
102
94
22
44
56
74
101
93
21
43
55
75
100
92
20
42
54
76
99
91
19
41
53
77
98
90
18
40
52
78
97
89
17
39
51
79
96
88
16
38
50
80
95
87
15
37
49
81
94
86
14
36
48
82
93
85
13
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
84
12
14
28
48
84
85
71
83
11
13
29
49
85
86
70
82
10
12
30
50
86
87
69
81
9
11
31
51
87
88
68
80
8
10
32
52
86
89
67
79
7
9
33
53
85
90
66
78
6
8
34
54
84
91
65
77
5
4
3
2
1
0
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
58
59
60
61
62
63
64
65
66
67
68
69
70
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
25
45
57
71
102
94
24
44
56
72
101
93
23
43
55
73
100
92
22
42
54
74
99
91
21
41
53
75
98
90
20
40
52
76
97
89
19
39
51
77
96
88
18
38
50
78
95
87
17
37
49
79
94
86
16
36
48
80
93
85
15
35
47
81
92
84
14
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
82
83
84
85
86
87
88
89
90
91
92
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
83
13
13
27
47
83
84
70
82
12
12
28
48
84
85
69
81
11
11
29
49
85
86
68
80
10
10
30
50
86
87
67
79
9
9
31
51
85
88
66
78
8
8
32
52
84
89
65
77
7
7
33
53
83
90
64
76
6
5
4
3
2
1
0
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
57
58
59
60
61
62
63
64
65
66
67
68
69
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
26
44
56
70
101
93
25
43
55
71
100
92
24
42
54
72
99
91
23
41
53
73
98
90
22
40
52
74
97
89
21
39
51
75
96
88
20
38
50
76
95
87
19
37
49
77
94
86
18
36
48
78
93
85
17
35
47
79
92
84
16
34
46
80
91
83
15
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
81
82
83
84
85
86
87
88
89
90
91
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
82
14
12
26
46
82
83
69
81
13
11
27
47
83
84
68
80
12
10
28
48
84
85
67
79
11
9
29
49
85
86
66
78
10
8
30
50
84
87
65
77
9
7
31
51
83
88
64
76
8
6
32
52
82
89
63
75
7
6
5
4
3
2
1
0
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
56
57
58
59
60
61
62
63
64
65
66
67
68
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
27
43
55
69
100
92
26
42
54
70
99
91
25
41
53
71
98
90
24
40
52
72
97
89
23
39
51
73
96
88
22
38
50
74
95
87
21
37
49
75
94
86
20
36
48
76
93
85
19
35
47
77
92
84
18
34
46
78
91
83
17
33
45
79
90
82
16
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
81
15
11
25
45
81
82
68
80
14
10
26
46
82
83
67
79
13
9
27
47
83
84
66
78
12
8
28
48
84
85
65
77
11
7
29
49
83
86
64
76
10
6
30
50
82
87
63
75
9
5
31
51
81
88
62
74
8
7
6
5
4
3
2
1
0
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
55
56
57
58
59
60
61
62
63
64
65
66
67
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
28
42
54
68
99
91
27
41
53
69
98
90
26
40
52
70
97
89
25
39
51
71
96
88
24
38
50
72
95
87
23
37
49
73
94
86
22
36
48
74
93
85
21
35
47
75
92
84
20
34
46
76
91
83
19
33
45
77
90
82
18
32
44
78
89
81
17
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
80
16
10
24
44
80
81
67
79
15
9
25
45
81
82
66
78
14
8
26
46
82
83
65
77
13
7
27
47
83
84
64
76
12
6
28
48
82
85
63
75
11
5
29
49
81
86
62
74
10
4
30
50
80
87
61
73
9
8
7
6
5
4
3
2
1
0
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
54
55
56
57
58
59
60
61
62
63
64
65
66
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
29
41
53
67
98
90
28
40
52
68
97
89
27
39
51
69
96
88
26
38
50
70
95
87
25
37
49
71
94
86
24
36
48
72
93
85
23
35
47
73
92
84
22
34
46
74
91
83
21
33
45
75
90
82
20
32
44
76
89
81
19
31
43
77
88
80
18
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
78
79
80
81
82
83
84
85
86
87
88
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
79
17
9
23
43
79
80
66
78
16
8
24
44
80
81
65
77
15
7
25
45
81
82
64
76
14
6
26
46
82
83
63
75
13
5
27
47
81
84
62
74
12
4
28
48
80
85
61
73
11
3
29
49
79
86
60
72
10
9
8
7
6
5
4
3
2
1
0
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
53
54
55
56
57
58
59
60
61
62
63
64
65
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
30
40
52
66
97
89
29
39
51
67
96
88
28
38
50
68
95
87
27
37
49
69
94
86
26
36
48
70
93
85
25
35
47
71
92
84
24
34
46
72
91
83
23
33
45
73
90
82
22
32
44
74
89
81
21
31
43
75
88
80
20
30
42
76
87
79
19
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
77
78
79
80
81
82
83
84
85
86
87
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
78
18
8
22
42
78
79
65
77
17
7
23
43
79
80
64
76
16
6
24
44
80
81
63
75
15
5
25
45
81
82
62
74
14
4
26
46
80
83
61
73
13
3
27
47
79
84
60
72
12
2
28
48
78
85
59
71
11
10
9
8
7
6
5
4
3
2
1
0
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
52
53
54
55
56
57
58
59
60
61
62
63
64
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
31
39
51
65
96
88
30
38
50
66
95
87
29
37
49
67
94
86
28
36
48
68
93
85
27
35
47
69
92
84
26
34
46
70
91
83
25
33
45
71
90
82
24
32
44
72
89
81
23
31
43
73
88
80
22
30
42
74
87
79
21
29
41
75
86
78
20
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
77
19
7
21
41
77
78
64
76
18
6
22
42
78
79
63
75
17
5
23
43
79
80
62
74
16
4
24
44
80
81
61
73
15
3
25
45
79
82
60
72
14
2
26
46
78
83
59
71
13
1
27
47
77
84
58
70
12
11
10
9
8
7
6
5
4
3
2
1
0
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
40
41
42
43
44
45
46
47
48
49
50
51
52
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
59
27
39
53
79
113
58
26
38
54
78
114
57
25
37
55
77
114
56
24
36
56
76
113
55
23
35
57
75
112
54
22
34
58
74
111
53
21
33
59
73
110
52
20
32
60
72
109
51
19
31
59
71
108
50
18
30
58
70
107
49
17
29
57
69
106
48
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
105
47
21
7
29
55
75
89
104
46
22
6
30
54
74
90
103
45
23
5
31
53
73
90
102
44
24
4
32
52
72
89
101
43
25
3
33
51
71
88
100
42
26
2
34
50
70
87
99
41
27
1
35
49
69
86
98
40
39
38
37
36
35
34
33
32
31
30
29
28
0
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
20
21
22
23
24
25
26
27
28
29
30
31
32
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
65
31
19
33
59
93
66
30
18
34
58
94
67
29
17
35
57
95
68
28
16
36
56
96
69
27
15
37
55
97
70
26
14
38
54
98
71
25
13
39
53
99
72
24
12
40
52
100
71
23
11
39
51
99
70
22
10
38
50
98
69
21
9
37
49
97
68
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
96
67
41
29
7
35
55
69
95
66
42
30
6
34
54
70
94
65
43
31
5
33
53
71
93
64
44
32
4
32
52
72
92
63
45
33
3
31
51
73
91
62
46
34
2
30
50
74
90
61
47
35
1
29
49
75
89
60
59
58
57
56
55
54
53
52
51
50
49
48
36
0
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
32
31
30
29
28
27
26
25
24
23
22
21
20
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
93
59
33
19
31
65
94
58
34
18
30
66
95
57
35
17
29
67
96
56
36
16
28
68
97
55
37
15
27
69
98
54
38
14
26
70
99
53
39
13
25
71
100
52
40
12
24
72
99
51
39
11
23
71
98
50
38
10
22
70
97
49
37
9
21
69
96
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
68
95
69
55
35
7
29
41
67
94
70
54
34
6
30
42
66
93
71
53
33
5
31
43
65
92
72
52
32
4
32
44
64
91
73
51
31
3
33
45
63
90
74
50
30
2
34
46
62
89
75
49
29
1
35
47
61
88
87
86
85
84
83
82
81
80
79
78
77
76
48
28
0
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
52
51
50
49
48
47
46
45
44
43
42
41
40
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
113
79
53
39
27
59
114
78
54
38
26
58
114
77
55
37
25
57
113
76
56
36
24
56
112
75
57
35
23
55
111
74
58
34
22
54
110
73
59
33
21
53
109
72
60
32
20
52
108
71
59
31
19
51
107
70
58
30
18
50
106
69
57
29
17
49
105
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
48
104
89
75
55
29
7
21
47
103
90
74
54
30
6
22
46
102
90
73
53
31
5
23
45
101
89
72
52
32
4
24
44
100
88
71
51
33
3
25
43
99
87
70
50
34
2
26
42
98
86
69
49
35
1
27
41
97
96
95
94
93
92
91
90
89
88
87
86
85
68
48
36
0
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
64
63
62
61
60
59
58
57
56
55
54
53
52
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
88
96
65
51
39
31
87
95
66
50
38
30
86
94
67
49
37
29
85
93
68
48
36
28
84
92
69
47
35
27
83
91
70
46
34
26
82
90
71
45
33
25
81
89
72
44
32
24
80
88
73
43
31
23
79
87
74
42
30
22
78
86
75
41
29
21
77
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
20
76
64
78
77
41
21
7
19
75
63
79
78
42
22
6
18
74
62
80
79
43
23
5
17
73
61
81
80
44
24
4
16
72
60
82
79
45
25
3
15
71
59
83
78
46
26
2
14
70
58
84
77
47
27
1
13
69
68
67
66
65
64
63
62
61
60
59
58
57
85
76
48
28
0
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
65
64
63
62
61
60
59
58
57
56
55
54
53
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
89
97
66
52
40
30
88
96
67
51
39
29
87
95
68
50
38
28
86
94
69
49
37
27
85
93
70
48
36
26
84
92
71
47
35
25
83
91
72
46
34
24
82
90
73
45
33
23
81
89
74
44
32
22
80
88
75
43
31
21
79
87
76
42
30
20
78
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
87
86
85
84
83
82
81
80
79
78
77
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
19
77
65
79
78
42
22
8
18
76
64
80
79
43
23
7
17
75
63
81
80
44
24
6
16
74
62
82
81
45
25
5
15
73
61
83
80
46
26
4
14
72
60
84
79
47
27
3
13
71
59
85
78
48
28
2
12
70
69
68
67
66
65
64
63
62
61
60
59
58
86
77
49
29
1
0
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
66
65
64
63
62
61
60
59
58
57
56
55
54
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
90
98
67
53
41
29
89
97
68
52
40
28
88
96
69
51
39
27
87
95
70
50
38
26
86
94
71
49
37
25
85
93
72
48
36
24
84
92
73
47
35
23
83
91
74
46
34
22
82
90
75
45
33
21
81
89
76
44
32
20
80
88
77
43
31
19
79
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
88
87
86
85
84
83
82
81
80
79
78
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
18
78
66
80
79
43
23
9
17
77
65
81
80
44
24
8
16
76
64
82
81
45
25
7
15
75
63
83
82
46
26
6
14
74
62
84
81
47
27
5
13
73
61
85
80
48
28
4
12
72
60
86
79
49
29
3
11
71
70
69
68
67
66
65
64
63
62
61
60
59
87
78
50
30
2
1
0
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
67
66
65
64
63
62
61
60
59
58
57
56
55
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
91
99
68
54
42
28
90
98
69
53
41
27
89
97
70
52
40
26
88
96
71
51
39
25
87
95
72
50
38
24
86
94
73
49
37
23
85
93
74
48
36
22
84
92
75
47
35
21
83
91
76
46
34
20
82
90
77
45
33
19
81
89
78
44
32
18
80
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
17
79
67
81
80
44
24
10
16
78
66
82
81
45
25
9
15
77
65
83
82
46
26
8
14
76
64
84
83
47
27
7
13
75
63
85
82
48
28
6
12
74
62
86
81
49
29
5
11
73
61
87
80
50
30
4
10
72
71
70
69
68
67
66
65
64
63
62
61
60
88
79
51
31
3
2
1
0
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
68
67
66
65
64
63
62
61
60
59
58
57
56
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
92
100
69
55
43
27
91
99
70
54
42
26
90
98
71
53
41
25
89
97
72
52
40
24
88
96
73
51
39
23
87
95
74
50
38
22
86
94
75
49
37
21
85
93
76
48
36
20
84
92
77
47
35
19
83
91
78
46
34
18
82
90
79
45
33
17
81
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
16
80
68
82
81
45
25
11
15
79
67
83
82
46
26
10
14
78
66
84
83
47
27
9
13
77
65
85
84
48
28
8
12
76
64
86
83
49
29
7
11
75
63
87
82
50
30
6
10
74
62
88
81
51
31
5
9
73
72
71
70
69
68
67
66
65
64
63
62
61
89
80
52
32
4
3
2
1
0
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
69
68
67
66
65
64
63
62
61
60
59
58
57
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
93
101
70
56
44
26
92
100
71
55
43
25
91
99
72
54
42
24
90
98
73
53
41
23
89
97
74
52
40
22
88
96
75
51
39
21
87
95
76
50
38
20
86
94
77
49
37
19
85
93
78
48
36
18
84
92
79
47
35
17
83
91
80
46
34
16
82
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
91
90
89
88
87
86
85
84
83
82
81
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
15
81
69
83
82
46
26
12
14
80
68
84
83
47
27
11
13
79
67
85
84
48
28
10
12
78
66
86
85
49
29
9
11
77
65
87
84
50
30
8
10
76
64
88
83
51
31
7
9
75
63
89
82
52
32
6
8
74
73
72
71
70
69
68
67
66
65
64
63
62
90
81
53
33
5
4
3
2
1
0
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
70
69
68
67
66
65
64
63
62
61
60
59
58
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
94
102
71
57
45
25
93
101
72
56
44
24
92
100
73
55
43
23
91
99
74
54
42
22
90
98
75
53
41
21
89
97
76
52
40
20
88
96
77
51
39
19
87
95
78
50
38
18
86
94
79
49
37
17
85
93
80
48
36
16
84
92
81
47
35
15
83
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
92
91
90
89
88
87
86
85
84
83
82
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
14
82
70
84
83
47
27
13
13
81
69
85
84
48
28
12
12
80
68
86
85
49
29
11
11
79
67
87
86
50
30
10
10
78
66
88
85
51
31
9
9
77
65
89
84
52
32
8
8
76
64
90
83
53
33
7
7
75
74
73
72
71
70
69
68
67
66
65
64
63
91
82
54
34
6
5
4
3
2
1
0
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
71
70
69
68
67
66
65
64
63
62
61
60
59
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
95
103
72
58
46
24
94
102
73
57
45
23
93
101
74
56
44
22
92
100
75
55
43
21
91
99
76
54
42
20
90
98
77
53
41
19
89
97
78
52
40
18
88
96
79
51
39
17
87
95
80
50
38
16
86
94
81
49
37
15
85
93
82
48
36
14
84
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
13
83
71
85
84
48
28
14
12
82
70
86
85
49
29
13
11
81
69
87
86
50
30
12
10
80
68
88
87
51
31
11
9
79
67
89
86
52
32
10
8
78
66
90
85
53
33
9
7
77
65
91
84
54
34
8
6
76
75
74
73
72
71
70
69
68
67
66
65
64
92
83
55
35
7
6
5
4
3
2
1
0
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
72
71
70
69
68
67
66
65
64
63
62
61
60
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
96
104
73
59
47
23
95
103
74
58
46
22
94
102
75
57
45
21
93
101
76
56
44
20
92
100
77
55
43
19
91
99
78
54
42
18
90
98
79
53
41
17
89
97
80
52
40
16
88
96
81
51
39
15
87
95
82
50
38
14
86
94
83
49
37
13
85
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
12
84
72
86
85
49
29
15
11
83
71
87
86
50
30
14
10
82
70
88
87
51
31
13
9
81
69
89
88
52
32
12
8
80
68
90
87
53
33
11
7
79
67
91
86
54
34
10
6
78
66
92
85
55
35
9
5
77
76
75
74
73
72
71
70
69
68
67
66
65
93
84
56
36
8
7
6
5
4
3
2
1
0
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
73
72
71
70
69
68
67
66
65
64
63
62
61
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
97
105
74
60
48
22
96
104
75
59
47
21
95
103
76
58
46
20
94
102
77
57
45
19
93
101
78
56
44
18
92
100
79
55
43
17
91
99
80
54
42
16
90
98
81
53
41
15
89
97
82
52
40
14
88
96
83
51
39
13
87
95
84
50
38
12
86
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
95
94
93
92
91
90
89
88
87
86
85
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
11
85
73
87
86
50
30
16
10
84
72
88
87
51
31
15
9
83
71
89
88
52
32
14
8
82
70
90
89
53
33
13
7
81
69
91
88
54
34
12
6
80
68
92
87
55
35
11
5
79
67
93
86
56
36
10
4
78
77
76
75
74
73
72
71
70
69
68
67
66
94
85
57
37
9
8
7
6
5
4
3
2
1
0
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
74
73
72
71
70
69
68
67
66
65
64
63
62
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
98
106
75
61
49
21
97
105
76
60
48
20
96
104
77
59
47
19
95
103
78
58
46
18
94
102
79
57
45
17
93
101
80
56
44
16
92
100
81
55
43
15
91
99
82
54
42
14
90
98
83
53
41
13
89
97
84
52
40
12
88
96
85
51
39
11
87
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
96
95
94
93
92
91
90
89
88
87
86
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
10
86
74
88
87
51
31
17
9
85
73
89
88
52
32
16
8
84
72
90
89
53
33
15
7
83
71
91
90
54
34
14
6
82
70
92
89
55
35
13
5
81
69
93
88
56
36
12
4
80
68
94
87
57
37
11
3
79
78
77
76
75
74
73
72
71
70
69
68
67
95
86
58
38
10
9
8
7
6
5
4
3
2
1
0
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
75
74
73
72
71
70
69
68
67
66
65
64
63
51
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
99
107
76
62
50
20
98
106
77
61
49
19
97
105
78
60
48
18
96
104
79
59
47
17
95
103
80
58
46
16
94
102
81
57
45
15
93
101
82
56
44
14
92
100
83
55
43
13
91
99
84
54
42
12
90
98
85
53
41
11
89
97
86
52
40
10
88
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
97
96
95
94
93
92
91
90
89
88
87
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
9
87
75
89
88
52
32
18
8
86
74
90
89
53
33
17
7
85
73
91
90
54
34
16
6
84
72
92
91
55
35
15
5
83
71
93
90
56
36
14
4
82
70
94
89
57
37
13
3
81
69
95
88
58
38
12
2
80
79
78
77
76
75
74
73
72
71
70
69
68
96
87
59
39
11
10
9
8
7
6
5
4
3
2
1
0
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
76
75
74
73
72
71
70
69
68
67
66
65
64
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
100
108
77
63
51
19
99
107
78
62
50
18
98
106
79
61
49
17
97
105
80
60
48
16
96
104
81
59
47
15
95
103
82
58
46
14
94
102
83
57
45
13
93
101
84
56
44
12
92
100
85
55
43
11
91
99
86
54
42
10
90
98
87
53
41
9
89
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
8
88
76
90
89
53
33
19
7
87
75
91
90
54
34
18
6
86
74
92
91
55
35
17
5
85
73
93
92
56
36
16
4
84
72
94
91
57
37
15
3
83
71
95
90
58
38
14
2
82
70
96
89
59
39
13
1
81
80
79
78
77
76
75
74
73
72
71
70
69
97
88
60
40
12
11
10
9
8
7
6
5
4
3
2
1
0
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
52
51
50
49
48
47
46
45
44
43
42
41
53
54
55
56
57
58
59
60
61
62
63
64
65
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
32
40
52
66
95
87
31
39
51
67
94
86
30
38
50
68
93
85
29
37
49
69
92
84
28
36
48
70
91
83
27
35
47
71
90
82
26
34
46
72
89
81
25
33
45
73
88
80
24
32
44
74
87
79
23
31
43
75
86
78
22
30
42
76
85
77
21
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
76
20
8
22
42
78
77
63
75
19
7
23
43
79
78
62
74
18
6
24
44
80
79
61
73
17
5
25
45
81
80
60
72
16
4
26
46
80
81
59
71
15
3
27
47
79
82
58
70
14
2
28
48
78
83
57
69
13
12
11
10
9
8
7
6
5
4
3
2
1
29
49
77
84
56
57
58
59
60
61
62
63
64
65
66
67
68
0
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
41
42
43
44
45
46
47
48
49
50
51
52
53
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
60
28
40
54
78
112
59
27
39
55
77
113
58
26
38
56
76
114
57
25
37
57
75
114
56
24
36
58
74
113
55
23
35
59
73
112
54
22
34
60
72
111
53
21
33
59
71
110
52
20
32
58
70
109
51
19
31
57
69
108
50
18
30
56
68
107
49
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
106
48
22
8
30
54
74
88
105
47
23
7
31
53
73
89
104
46
24
6
32
52
72
90
103
45
25
5
33
51
71
90
102
44
26
4
34
50
70
89
101
43
27
3
35
49
69
88
100
42
28
2
36
48
68
87
99
41
40
39
38
37
36
35
34
33
32
31
30
29
1
35
47
67
86
87
88
89
90
91
92
93
94
95
96
97
98
30
0
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
21
22
23
24
25
26
27
28
29
30
31
32
33
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
66
32
20
34
58
92
67
31
19
35
57
93
68
30
18
36
56
94
69
29
17
37
55
95
70
28
16
38
54
96
71
27
15
39
53
97
72
26
14
40
52
98
73
25
13
39
51
99
72
24
12
38
50
98
71
23
11
37
49
97
70
22
10
36
48
96
69
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
95
68
42
30
8
34
54
68
94
67
43
31
7
33
53
69
93
66
44
32
6
32
52
70
92
65
45
33
5
31
51
71
91
64
46
34
4
30
50
72
90
63
47
35
3
29
49
73
89
62
48
36
2
28
48
74
88
61
60
59
58
57
56
55
54
53
52
51
50
49
35
1
27
47
75
76
77
78
79
80
81
82
83
84
85
86
87
50
34
0
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
33
32
31
30
29
28
27
26
25
24
23
22
21
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
92
58
34
20
32
66
93
57
35
19
31
67
94
56
36
18
30
68
95
55
37
17
29
69
96
54
38
16
28
70
97
53
39
15
27
71
98
52
40
14
26
72
99
51
39
13
25
73
98
50
38
12
24
72
97
49
37
11
23
71
96
48
36
10
22
70
95
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
69
94
68
54
34
8
30
42
68
93
69
53
33
7
31
43
67
92
70
52
32
6
32
44
66
91
71
51
31
5
33
45
65
90
72
50
30
4
34
46
64
89
73
49
29
3
35
47
63
88
74
48
28
2
36
48
62
87
86
85
84
83
82
81
80
79
78
77
76
75
47
27
1
35
49
50
51
52
53
54
55
56
57
58
59
60
61
76
46
26
0
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
53
52
51
50
49
48
47
46
45
44
43
42
41
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
112
78
54
40
28
60
113
77
55
39
27
59
114
76
56
38
26
58
114
75
57
37
25
57
113
74
58
36
24
56
112
73
59
35
23
55
111
72
60
34
22
54
110
71
59
33
21
53
109
70
58
32
20
52
108
69
57
31
19
51
107
68
56
30
18
50
106
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
49
105
88
74
54
30
8
22
48
104
89
73
53
31
7
23
47
103
90
72
52
32
6
24
46
102
90
71
51
33
5
25
45
101
89
70
50
34
4
26
44
100
88
69
49
35
3
27
43
99
87
68
48
36
2
28
42
98
97
96
95
94
93
92
91
90
89
88
87
86
67
47
35
1
29
30
31
32
33
34
35
36
37
38
39
40
41
85
66
46
34
0
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
65
64
63
62
61
60
59
58
57
56
55
54
53
41
42
43
44
45
46
47
48
49
50
51
52
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
87
95
66
52
40
32
86
94
67
51
39
31
85
93
68
50
38
30
84
92
69
49
37
29
83
91
70
48
36
28
82
90
71
47
35
27
81
89
72
46
34
26
80
88
73
45
33
25
79
87
74
44
32
24
78
86
75
43
31
23
77
85
76
42
30
22
76
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
21
75
63
77
78
42
22
8
20
74
62
78
79
43
23
7
19
73
61
79
80
44
24
6
18
72
60
80
81
45
25
5
17
71
59
81
80
46
26
4
16
70
58
82
79
47
27
3
15
69
57
83
78
48
28
2
14
68
67
66
65
64
63
62
61
60
59
58
57
56
84
77
49
29
1
2
3
4
5
6
7
8
9
10
11
12
13
55
85
76
50
30
0
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
53
52
51
50
49
48
47
46
45
44
43
42
54
55
56
57
58
59
60
61
62
63
64
65
66
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
33
41
53
67
94
86
32
40
52
68
93
85
31
39
51
69
92
84
30
38
50
70
91
83
29
37
49
71
90
82
28
36
48
72
89
81
27
35
47
73
88
80
26
34
46
74
87
79
25
33
45
75
86
78
24
32
44
76
85
77
23
31
43
77
84
76
22
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
75
21
9
23
43
79
76
62
74
20
8
24
44
80
77
61
73
19
7
25
45
81
78
60
72
18
6
26
46
82
79
59
71
17
5
27
47
81
80
58
70
16
4
28
48
80
81
57
69
15
3
29
49
79
82
56
68
14
13
12
11
10
9
8
7
6
5
4
3
2
30
50
78
83
55
56
57
58
59
60
61
62
63
64
65
66
67
1
31
51
77
84
54
0
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
42
43
44
45
46
47
48
49
50
51
52
53
54
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
61
29
41
55
77
111
60
28
40
56
76
112
59
27
39
57
75
113
58
26
38
58
74
114
57
25
37
59
73
114
56
24
36
60
72
113
55
23
35
59
71
112
54
22
34
58
70
111
53
21
33
57
69
110
52
20
32
56
68
109
51
19
31
55
67
108
50
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
107
49
23
9
31
53
73
87
106
48
24
8
32
52
72
88
105
47
25
7
33
51
71
89
104
46
26
6
34
50
70
90
103
45
27
5
35
49
69
90
102
44
28
4
36
48
68
89
101
43
29
3
35
47
67
88
100
42
41
40
39
38
37
36
35
34
33
32
31
30
2
34
46
66
87
88
89
90
91
92
93
94
95
96
97
98
99
31
1
33
45
65
86
32
0
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
22
23
24
25
26
27
28
29
30
31
32
33
34
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
67
33
21
35
57
91
68
32
20
36
56
92
69
31
19
37
55
93
70
30
18
38
54
94
71
29
17
39
53
95
72
28
16
40
52
96
73
27
15
39
51
97
74
26
14
38
50
98
73
25
13
37
49
97
72
24
12
36
48
96
71
23
11
35
47
95
70
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
94
69
43
31
9
33
53
67
93
68
44
32
8
32
52
68
92
67
45
33
7
31
51
69
91
66
46
34
6
30
50
70
90
65
47
35
5
29
49
71
89
64
48
36
4
28
48
72
88
63
49
35
3
27
47
73
87
62
61
60
59
58
57
56
55
54
53
52
51
50
34
2
26
46
74
75
76
77
78
79
80
81
82
83
84
85
86
51
33
1
25
45
75
52
32
0
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
34
33
32
31
30
29
28
27
26
25
24
23
22
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
91
57
35
21
33
67
92
56
36
20
32
68
93
55
37
19
31
69
94
54
38
18
30
70
95
53
39
17
29
71
96
52
40
16
28
72
97
51
39
15
27
73
98
50
38
14
26
74
97
49
37
13
25
73
96
48
36
12
24
72
95
47
35
11
23
71
94
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
70
93
67
53
33
9
31
43
69
92
68
52
32
8
32
44
68
91
69
51
31
7
33
45
67
90
70
50
30
6
34
46
66
89
71
49
29
5
35
47
65
88
72
48
28
4
36
48
64
87
73
47
27
3
35
49
63
86
85
84
83
82
81
80
79
78
77
76
75
74
46
26
2
34
50
51
52
53
54
55
56
57
58
59
60
61
62
75
45
25
1
33
51
76
44
24
0
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
54
53
52
51
50
49
48
47
46
45
44
43
42
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
111
77
55
41
29
61
112
76
56
40
28
60
113
75
57
39
27
59
114
74
58
38
26
58
114
73
59
37
25
57
113
72
60
36
24
56
112
71
59
35
23
55
111
70
58
34
22
54
110
69
57
33
21
53
109
68
56
32
20
52
108
67
55
31
19
51
107
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
50
106
87
73
53
31
9
23
49
105
88
72
52
32
8
24
48
104
89
71
51
33
7
25
47
103
90
70
50
34
6
26
46
102
90
69
49
35
5
27
45
101
89
68
48
36
4
28
44
100
88
67
47
35
3
29
43
99
98
97
96
95
94
93
92
91
90
89
88
87
66
46
34
2
30
31
32
33
34
35
36
37
38
39
40
41
42
86
65
45
33
1
31
85
64
44
32
0
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
66
65
64
63
62
61
60
59
58
57
56
55
54
42
43
44
45
46
47
48
49
50
51
52
53
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
86
94
67
53
41
33
85
93
68
52
40
32
84
92
69
51
39
31
83
91
70
50
38
30
82
90
71
49
37
29
81
89
72
48
36
28
80
88
73
47
35
27
79
87
74
46
34
26
78
86
75
45
33
25
77
85
76
44
32
24
76
84
77
43
31
23
75
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
22
74
62
76
79
43
23
9
21
73
61
77
80
44
24
8
20
72
60
78
81
45
25
7
19
71
59
79
82
46
26
6
18
70
58
80
81
47
27
5
17
69
57
81
80
48
28
4
16
68
56
82
79
49
29
3
15
67
66
65
64
63
62
61
60
59
58
57
56
55
83
78
50
30
2
3
4
5
6
7
8
9
10
11
12
13
14
54
84
77
51
31
1
53
85
76
52
32
0
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
54
53
52
51
50
49
48
47
46
45
44
43
55
56
57
58
59
60
61
62
63
64
65
66
67
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
34
42
54
68
93
85
33
41
53
69
92
84
32
40
52
70
91
83
31
39
51
71
90
82
30
38
50
72
89
81
29
37
49
73
88
80
28
36
48
74
87
79
27
35
47
75
86
78
26
34
46
76
85
77
25
33
45
77
84
76
24
32
44
78
83
75
23
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
74
22
10
24
44
80
75
61
73
21
9
25
45
81
76
60
72
20
8
26
46
82
77
59
71
19
7
27
47
83
78
58
70
18
6
28
48
82
79
57
69
17
5
29
49
81
80
56
68
16
4
30
50
80
81
55
67
15
14
13
12
11
10
9
8
7
6
5
4
3
31
51
79
82
54
55
56
57
58
59
60
61
62
63
64
65
66
2
32
52
78
83
53
1
33
53
77
84
52
0
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
43
44
45
46
47
48
49
50
51
52
53
54
55
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
62
30
42
56
76
110
61
29
41
57
75
111
60
28
40
58
74
112
59
27
39
59
73
113
58
26
38
60
72
114
57
25
37
59
71
114
56
24
36
58
70
113
55
23
35
57
69
112
54
22
34
56
68
111
53
21
33
55
67
110
52
20
32
54
66
109
51
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
108
50
24
10
32
52
72
86
107
49
25
9
33
51
71
87
106
48
26
8
34
50
70
88
105
47
27
7
35
49
69
89
104
46
28
6
36
48
68
90
103
45
29
5
35
47
67
90
102
44
30
4
34
46
66
89
101
43
42
41
40
39
38
37
36
35
34
33
32
31
3
33
45
65
88
89
90
91
92
93
94
95
96
97
98
99
100
32
2
32
44
64
87
33
1
31
43
63
86
34
0
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
23
24
25
26
27
28
29
30
31
32
33
34
35
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
68
34
22
36
56
90
69
33
21
37
55
91
70
32
20
38
54
92
71
31
19
39
53
93
72
30
18
40
52
94
73
29
17
39
51
95
74
28
16
38
50
96
75
27
15
37
49
97
74
26
14
36
48
96
73
25
13
35
47
95
72
24
12
34
46
94
71
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
93
70
44
32
10
32
52
66
92
69
45
33
9
31
51
67
91
68
46
34
8
30
50
68
90
67
47
35
7
29
49
69
89
66
48
36
6
28
48
70
88
65
49
35
5
27
47
71
87
64
50
34
4
26
46
72
86
63
62
61
60
59
58
57
56
55
54
53
52
51
33
3
25
45
73
74
75
76
77
78
79
80
81
82
83
84
85
52
32
2
24
44
74
53
31
1
23
43
75
54
30
0
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
35
34
33
32
31
30
29
28
27
26
25
24
23
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
90
56
36
22
34
68
91
55
37
21
33
69
92
54
38
20
32
70
93
53
39
19
31
71
94
52
40
18
30
72
95
51
39
17
29
73
96
50
38
16
28
74
97
49
37
15
27
75
96
48
36
14
26
74
95
47
35
13
25
73
94
46
34
12
24
72
93
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
71
92
66
52
32
10
32
44
70
91
67
51
31
9
33
45
69
90
68
50
30
8
34
46
68
89
69
49
29
7
35
47
67
88
70
48
28
6
36
48
66
87
71
47
27
5
35
49
65
86
72
46
26
4
34
50
64
85
84
83
82
81
80
79
78
77
76
75
74
73
45
25
3
33
51
52
53
54
55
56
57
58
59
60
61
62
63
74
44
24
2
32
52
75
43
23
1
31
53
76
42
22
0
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
55
54
53
52
51
50
49
48
47
46
45
44
43
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
110
76
56
42
30
62
111
75
57
41
29
61
112
74
58
40
28
60
113
73
59
39
27
59
114
72
60
38
26
58
114
71
59
37
25
57
113
70
58
36
24
56
112
69
57
35
23
55
111
68
56
34
22
54
110
67
55
33
21
53
109
66
54
32
20
52
108
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
51
107
86
72
52
32
10
24
50
106
87
71
51
33
9
25
49
105
88
70
50
34
8
26
48
104
89
69
49
35
7
27
47
103
90
68
48
36
6
28
46
102
90
67
47
35
5
29
45
101
89
66
46
34
4
30
44
100
99
98
97
96
95
94
93
92
91
90
89
88
65
45
33
3
31
32
33
34
35
36
37
38
39
40
41
42
43
87
64
44
32
2
32
86
63
43
31
1
33
85
62
42
30
0
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
67
66
65
64
63
62
61
60
59
58
57
56
55
43
44
45
46
47
48
49
50
51
52
53
54
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
85
93
68
54
42
34
84
92
69
53
41
33
83
91
70
52
40
32
82
90
71
51
39
31
81
89
72
50
38
30
80
88
73
49
37
29
79
87
74
48
36
28
78
86
75
47
35
27
77
85
76
46
34
26
76
84
77
45
33
25
75
83
78
44
32
24
74
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
23
73
61
75
80
44
24
10
22
72
60
76
81
45
25
9
21
71
59
77
82
46
26
8
20
70
58
78
83
47
27
7
19
69
57
79
82
48
28
6
18
68
56
80
81
49
29
5
17
67
55
81
80
50
30
4
16
66
65
64
63
62
61
60
59
58
57
56
55
54
82
79
51
31
3
4
5
6
7
8
9
10
11
12
13
14
15
53
83
78
52
32
2
52
84
77
53
33
1
51
85
76
54
34
0
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
55
54
53
52
51
50
49
48
47
46
45
44
56
57
58
59
60
61
62
63
64
65
66
67
68
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
35
43
55
69
92
84
34
42
54
70
91
83
33
41
53
71
90
82
32
40
52
72
89
81
31
39
51
73
88
80
30
38
50
74
87
79
29
37
49
75
86
78
28
36
48
76
85
77
27
35
47
77
84
76
26
34
46
78
83
75
25
33
45
79
82
74
24
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
73
23
11
25
45
81
74
60
72
22
10
26
46
82
75
59
71
21
9
27
47
83
76
58
70
20
8
28
48
84
77
57
69
19
7
29
49
83
78
56
68
18
6
30
50
82
79
55
67
17
5
31
51
81
80
54
66
16
15
14
13
12
11
10
9
8
7
6
5
4
32
52
80
81
53
54
55
56
57
58
59
60
61
62
63
64
65
3
33
53
79
82
52
2
34
54
78
83
51
1
35
55
77
84
50
0
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
44
45
46
47
48
49
50
51
52
53
54
55
56
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
63
31
43
57
75
109
62
30
42
58
74
110
61
29
41
59
73
111
60
28
40
60
72
112
59
27
39
59
71
113
58
26
38
58
70
114
57
25
37
57
69
114
56
24
36
56
68
113
55
23
35
55
67
112
54
22
34
54
66
111
53
21
33
53
65
110
52
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
109
51
25
11
33
51
71
85
108
50
26
10
34
50
70
86
107
49
27
9
35
49
69
87
106
48
28
8
36
48
68
88
105
47
29
7
35
47
67
89
104
46
30
6
34
46
66
90
103
45
31
5
33
45
65
90
102
44
43
42
41
40
39
38
37
36
35
34
33
32
4
32
44
64
89
90
91
92
93
94
95
96
97
98
99
100
101
33
3
31
43
63
88
34
2
30
42
62
87
35
1
29
41
61
86
36
0
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
24
25
26
27
28
29
30
31
32
33
34
35
36
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
69
35
23
37
55
89
70
34
22
38
54
90
71
33
21
39
53
91
72
32
20
40
52
92
73
31
19
39
51
93
74
30
18
38
50
94
75
29
17
37
49
95
76
28
16
36
48
96
75
27
15
35
47
95
74
26
14
34
46
94
73
25
13
33
45
93
72
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
92
71
45
33
11
31
51
65
91
70
46
34
10
30
50
66
90
69
47
35
9
29
49
67
89
68
48
36
8
28
48
68
88
67
49
35
7
27
47
69
87
66
50
34
6
26
46
70
86
65
51
33
5
25
45
71
85
64
63
62
61
60
59
58
57
56
55
54
53
52
32
4
24
44
72
73
74
75
76
77
78
79
80
81
82
83
84
53
31
3
23
43
73
54
30
2
22
42
74
55
29
1
21
41
75
56
28
0
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
36
35
34
33
32
31
30
29
28
27
26
25
24
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
89
55
37
23
35
69
90
54
38
22
34
70
91
53
39
21
33
71
92
52
40
20
32
72
93
51
39
19
31
73
94
50
38
18
30
74
95
49
37
17
29
75
96
48
36
16
28
76
95
47
35
15
27
75
94
46
34
14
26
74
93
45
33
13
25
73
92
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
72
91
65
51
31
11
33
45
71
90
66
50
30
10
34
46
70
89
67
49
29
9
35
47
69
88
68
48
28
8
36
48
68
87
69
47
27
7
35
49
67
86
70
46
26
6
34
50
66
85
71
45
25
5
33
51
65
84
83
82
81
80
79
78
77
76
75
74
73
72
44
24
4
32
52
53
54
55
56
57
58
59
60
61
62
63
64
73
43
23
3
31
53
74
42
22
2
30
54
75
41
21
1
29
55
76
40
20
0
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
56
55
54
53
52
51
50
49
48
47
46
45
44
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
109
75
57
43
31
63
110
74
58
42
30
62
111
73
59
41
29
61
112
72
60
40
28
60
113
71
59
39
27
59
114
70
58
38
26
58
114
69
57
37
25
57
113
68
56
36
24
56
112
67
55
35
23
55
111
66
54
34
22
54
110
65
53
33
21
53
109
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
52
108
85
71
51
33
11
25
51
107
86
70
50
34
10
26
50
106
87
69
49
35
9
27
49
105
88
68
48
36
8
28
48
104
89
67
47
35
7
29
47
103
90
66
46
34
6
30
46
102
90
65
45
33
5
31
45
101
100
99
98
97
96
95
94
93
92
91
90
89
64
44
32
4
32
33
34
35
36
37
38
39
40
41
42
43
44
88
63
43
31
3
33
87
62
42
30
2
34
86
61
41
29
1
35
85
60
40
28
0
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
68
67
66
65
64
63
62
61
60
59
58
57
56
44
45
46
47
48
49
50
51
52
53
54
55
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
84
92
69
55
43
35
83
91
70
54
42
34
82
90
71
53
41
33
81
89
72
52
40
32
80
88
73
51
39
31
79
87
74
50
38
30
78
86
75
49
37
29
77
85
76
48
36
28
76
84
77
47
35
27
75
83
78
46
34
26
74
82
79
45
33
25
73
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
24
72
60
74
81
45
25
11
23
71
59
75
82
46
26
10
22
70
58
76
83
47
27
9
21
69
57
77
84
48
28
8
20
68
56
78
83
49
29
7
19
67
55
79
82
50
30
6
18
66
54
80
81
51
31
5
17
65
64
63
62
61
60
59
58
57
56
55
54
53
81
80
52
32
4
5
6
7
8
9
10
11
12
13
14
15
16
52
82
79
53
33
3
51
83
78
54
34
2
50
84
77
55
35
1
49
85
76
56
36
0
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
56
55
54
53
52
51
50
49
48
47
46
45
57
58
59
60
61
62
63
64
65
66
67
68
69
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
36
44
56
70
91
83
35
43
55
71
90
82
34
42
54
72
89
81
33
41
53
73
88
80
32
40
52
74
87
79
31
39
51
75
86
78
30
38
50
76
85
77
29
37
49
77
84
76
28
36
48
78
83
75
27
35
47
79
82
74
26
34
46
80
81
73
25
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
72
24
12
26
46
82
73
59
71
23
11
27
47
83
74
58
70
22
10
28
48
84
75
57
69
21
9
29
49
83
76
56
68
20
8
30
50
82
77
55
67
19
7
31
51
81
78
54
66
18
6
32
52
80
79
53
65
17
16
15
14
13
12
11
10
9
8
7
6
5
33
53
79
80
52
53
54
55
56
57
58
59
60
61
62
63
64
4
34
54
78
81
51
3
35
55
77
82
50
2
36
56
76
83
49
1
37
57
75
84
48
0
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
45
46
47
48
49
50
51
52
53
54
55
56
57
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
64
32
44
58
74
108
63
31
43
59
73
109
62
30
42
60
72
110
61
29
41
59
71
111
60
28
40
58
70
112
59
27
39
57
69
113
58
26
38
56
68
114
57
25
37
55
67
114
56
24
36
54
66
113
55
23
35
53
65
112
54
22
34
52
64
111
53
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
110
52
26
12
34
50
70
84
109
51
27
11
35
49
69
85
108
50
28
10
36
48
68
86
107
49
29
9
35
47
67
87
106
48
30
8
34
46
66
88
105
47
31
7
33
45
65
89
104
46
32
6
32
44
64
90
103
45
44
43
42
41
40
39
38
37
36
35
34
33
5
31
43
63
90
91
92
93
94
95
96
97
98
99
100
101
102
34
4
30
42
62
89
35
3
29
41
61
88
36
2
28
40
60
87
37
1
27
39
59
86
38
0
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
25
26
27
28
29
30
31
32
33
34
35
36
37
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
70
36
24
38
54
88
71
35
23
39
53
89
72
34
22
40
52
90
73
33
21
39
51
91
74
32
20
38
50
92
75
31
19
37
49
93
76
30
18
36
48
94
77
29
17
35
47
95
76
28
16
34
46
94
75
27
15
33
45
93
74
26
14
32
44
92
73
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
91
72
46
34
12
30
50
64
90
71
47
35
11
29
49
65
89
70
48
36
10
28
48
66
88
69
49
35
9
27
47
67
87
68
50
34
8
26
46
68
86
67
51
33
7
25
45
69
85
66
52
32
6
24
44
70
84
65
64
63
62
61
60
59
58
57
56
55
54
53
31
5
23
43
71
72
73
74
75
76
77
78
79
80
81
82
83
54
30
4
22
42
72
55
29
3
21
41
73
56
28
2
20
40
74
57
27
1
19
39
75
58
26
0
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
37
36
35
34
33
32
31
30
29
28
27
26
25
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
88
54
38
24
36
70
89
53
39
23
35
71
90
52
40
22
34
72
91
51
39
21
33
73
92
50
38
20
32
74
93
49
37
19
31
75
94
48
36
18
30
76
95
47
35
17
29
77
94
46
34
16
28
76
93
45
33
15
27
75
92
44
32
14
26
74
91
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
73
90
64
50
30
12
34
46
72
89
65
49
29
11
35
47
71
88
66
48
28
10
36
48
70
87
67
47
27
9
35
49
69
86
68
46
26
8
34
50
68
85
69
45
25
7
33
51
67
84
70
44
24
6
32
52
66
83
82
81
80
79
78
77
76
75
74
73
72
71
43
23
5
31
53
54
55
56
57
58
59
60
61
62
63
64
65
72
42
22
4
30
54
73
41
21
3
29
55
74
40
20
2
28
56
75
39
19
1
27
57
74
38
18
0
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
57
56
55
54
53
52
51
50
49
48
47
46
45
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
108
74
58
44
32
64
109
73
59
43
31
63
110
72
60
42
30
62
111
71
59
41
29
61
112
70
58
40
28
60
113
69
57
39
27
59
114
68
56
38
26
58
114
67
55
37
25
57
113
66
54
36
24
56
112
65
53
35
23
55
111
64
52
34
22
54
110
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
53
109
84
70
50
34
12
26
52
108
85
69
49
35
11
27
51
107
86
68
48
36
10
28
50
106
87
67
47
35
9
29
49
105
88
66
46
34
8
30
48
104
89
65
45
33
7
31
47
103
90
64
44
32
6
32
46
102
101
100
99
98
97
96
95
94
93
92
91
90
63
43
31
5
33
34
35
36
37
38
39
40
41
42
43
44
45
89
62
42
30
4
34
88
61
41
29
3
35
87
60
40
28
2
36
86
59
39
27
1
37
85
58
38
26
0
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
69
68
67
66
65
64
63
62
61
60
59
58
57
45
46
47
48
49
50
51
52
53
54
55
56
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
83
91
70
56
44
36
82
90
71
55
43
35
81
89
72
54
42
34
80
88
73
53
41
33
79
87
74
52
40
32
78
86
75
51
39
31
77
85
76
50
38
30
76
84
77
49
37
29
75
83
78
48
36
28
74
82
79
47
35
27
73
81
80
46
34
26
72
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
25
71
59
73
82
46
26
12
24
70
58
74
83
47
27
11
23
69
57
75
84
48
28
10
22
68
56
76
83
49
29
9
21
67
55
77
82
50
30
8
20
66
54
78
81
51
31
7
19
65
53
79
80
52
32
6
18
64
63
62
61
60
59
58
57
56
55
54
53
52
80
79
53
33
5
6
7
8
9
10
11
12
13
14
15
16
17
51
81
78
54
34
4
50
82
77
55
35
3
49
83
76
56
36
2
48
84
75
57
37
1
47
85
74
58
38
0
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
57
56
55
54
53
52
51
50
49
48
47
46
58
59
60
61
62
63
64
65
66
67
68
69
70
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
37
45
57
71
90
82
36
44
56
72
89
81
35
43
55
73
88
80
34
42
54
74
87
79
33
41
53
75
86
78
32
40
52
76
85
77
31
39
51
77
84
76
30
38
50
78
83
75
29
37
49
79
82
74
28
36
48
80
81
73
27
35
47
81
80
72
26
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
71
25
13
27
47
83
72
58
70
24
12
28
48
84
73
57
69
23
11
29
49
83
74
56
68
22
10
30
50
82
75
55
67
21
9
31
51
81
76
54
66
20
8
32
52
80
77
53
65
19
7
33
53
79
78
52
64
18
17
16
15
14
13
12
11
10
9
8
7
6
34
54
78
79
51
52
53
54
55
56
57
58
59
60
61
62
63
5
35
55
77
80
50
4
36
56
76
81
49
3
37
57
75
82
48
2
38
58
74
83
47
1
39
59
73
84
46
0
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
46
47
48
49
50
51
52
53
54
55
56
57
58
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
65
33
45
59
73
107
64
32
44
60
72
108
63
31
43
59
71
109
62
30
42
58
70
110
61
29
41
57
69
111
60
28
40
56
68
112
59
27
39
55
67
113
58
26
38
54
66
114
57
25
37
53
65
113
56
24
36
52
64
112
55
23
35
51
63
111
54
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
110
53
27
13
35
49
69
83
109
52
28
12
36
48
68
84
108
51
29
11
35
47
67
85
107
50
30
10
34
46
66
86
106
49
31
9
33
45
65
87
105
48
32
8
32
44
64
88
104
47
33
7
31
43
63
89
103
46
45
44
43
42
41
40
39
38
37
36
35
34
6
30
42
62
90
91
92
93
94
95
96
97
98
99
100
101
102
35
5
29
41
61
90
36
4
28
40
60
89
37
3
27
39
59
88
38
2
26
38
58
87
39
1
25
37
57
86
40
0
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
26
27
28
29
30
31
32
33
34
35
36
37
38
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
71
37
25
39
53
87
72
36
24
40
52
88
73
35
23
39
51
89
74
34
22
38
50
90
75
33
21
37
49
91
76
32
20
36
48
92
77
31
19
35
47
93
78
30
18
34
46
94
77
29
17
33
45
93
76
28
16
32
44
92
75
27
15
31
43
91
74
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
90
73
47
35
13
29
49
63
89
72
48
36
12
28
48
64
88
71
49
35
11
27
47
65
87
70
50
34
10
26
46
66
86
69
51
33
9
25
45
67
85
68
52
32
8
24
44
68
84
67
53
31
7
23
43
69
83
66
65
64
63
62
61
60
59
58
57
56
55
54
30
6
22
42
70
71
72
73
74
75
76
77
78
79
80
81
82
55
29
5
21
41
71
56
28
4
20
40
72
57
27
3
19
39
73
58
26
2
18
38
74
59
25
1
17
37
73
60
24
0
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
38
37
36
35
34
33
32
31
30
29
28
27
26
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
87
53
39
25
37
71
88
52
40
24
36
72
89
51
39
23
35
73
90
50
38
22
34
74
91
49
37
21
33
75
92
48
36
20
32
76
93
47
35
19
31
77
94
46
34
18
30
78
93
45
33
17
29
77
92
44
32
16
28
76
91
43
31
15
27
75
90
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
74
89
63
49
29
13
35
47
73
88
64
48
28
12
36
48
72
87
65
47
27
11
35
49
71
86
66
46
26
10
34
50
70
85
67
45
25
9
33
51
69
84
68
44
24
8
32
52
68
83
69
43
23
7
31
53
67
82
81
80
79
78
77
76
75
74
73
72
71
70
42
22
6
30
54
55
56
57
58
59
60
61
62
63
64
65
66
71
41
21
5
29
55
72
40
20
4
28
56
73
39
19
3
27
57
74
38
18
2
26
58
73
37
17
1
25
59
72
36
16
0
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
58
57
56
55
54
53
52
51
50
49
48
47
46
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
107
73
59
45
33
65
108
72
60
44
32
64
109
71
59
43
31
63
110
70
58
42
30
62
111
69
57
41
29
61
112
68
56
40
28
60
113
67
55
39
27
59
114
66
54
38
26
58
113
65
53
37
25
57
112
64
52
36
24
56
111
63
51
35
23
55
110
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
54
109
83
69
49
35
13
27
53
108
84
68
48
36
12
28
52
107
85
67
47
35
11
29
51
106
86
66
46
34
10
30
50
105
87
65
45
33
9
31
49
104
88
64
44
32
8
32
48
103
89
63
43
31
7
33
47
102
101
100
99
98
97
96
95
94
93
92
91
90
62
42
30
6
34
35
36
37
38
39
40
41
42
43
44
45
46
90
61
41
29
5
35
89
60
40
28
4
36
88
59
39
27
3
37
87
58
38
26
2
38
86
57
37
25
1
39
85
56
36
24
0
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
70
69
68
67
66
65
64
63
62
61
60
59
58
46
47
48
49
50
51
52
53
54
55
56
57
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
82
90
71
57
45
37
81
89
72
56
44
36
80
88
73
55
43
35
79
87
74
54
42
34
78
86
75
53
41
33
77
85
76
52
40
32
76
84
77
51
39
31
75
83
78
50
38
30
74
82
79
49
37
29
73
81
80
48
36
28
72
80
81
47
35
27
71
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
26
70
58
72
83
47
27
13
25
69
57
73
84
48
28
12
24
68
56
74
83
49
29
11
23
67
55
75
82
50
30
10
22
66
54
76
81
51
31
9
21
65
53
77
80
52
32
8
20
64
52
78
79
53
33
7
19
63
62
61
60
59
58
57
56
55
54
53
52
51
79
78
54
34
6
7
8
9
10
11
12
13
14
15
16
17
18
50
80
77
55
35
5
49
81
76
56
36
4
48
82
75
57
37
3
47
83
74
58
38
2
46
84
73
59
39
1
45
85
72
60
40
0
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
58
57
56
55
54
53
52
51
50
49
48
47
59
60
61
62
63
64
65
66
67
68
69
70
71
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
38
46
58
72
89
81
37
45
57
73
88
80
36
44
56
74
87
79
35
43
55
75
86
78
34
42
54
76
85
77
33
41
53
77
84
76
32
40
52
78
83
75
31
39
51
79
82
74
30
38
50
80
81
73
29
37
49
81
80
72
28
36
48
82
79
71
27
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
70
26
14
28
48
84
71
57
69
25
13
29
49
83
72
56
68
24
12
30
50
82
73
55
67
23
11
31
51
81
74
54
66
22
10
32
52
80
75
53
65
21
9
33
53
79
76
52
64
20
8
34
54
78
77
51
63
19
18
17
16
15
14
13
12
11
10
9
8
7
35
55
77
78
50
51
52
53
54
55
56
57
58
59
60
61
62
6
36
56
76
79
49
5
37
57
75
80
48
4
38
58
74
81
47
3
39
59
73
82
46
2
40
60
72
83
45
1
41
59
71
84
44
0
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
47
48
49
50
51
52
53
54
55
56
57
58
59
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
66
34
46
60
72
106
65
33
45
59
71
107
64
32
44
58
70
108
63
31
43
57
69
109
62
30
42
56
68
110
61
29
41
55
67
111
60
28
40
54
66
112
59
27
39
53
65
113
58
26
38
52
64
112
57
25
37
51
63
111
56
24
36
50
62
110
55
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
109
54
28
14
36
48
68
82
108
53
29
13
35
47
67
83
107
52
30
12
34
46
66
84
106
51
31
11
33
45
65
85
105
50
32
10
32
44
64
86
104
49
33
9
31
43
63
87
103
48
34
8
30
42
62
88
102
47
46
45
44
43
42
41
40
39
38
37
36
35
7
29
41
61
89
90
91
92
93
94
95
96
97
98
99
100
101
36
6
28
40
60
90
37
5
27
39
59
90
38
4
26
38
58
89
39
3
25
37
57
88
40
2
24
36
56
87
41
1
23
35
55
86
42
0
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
27
28
29
30
31
32
33
34
35
36
37
38
39
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
72
38
26
40
52
86
73
37
25
39
51
87
74
36
24
38
50
88
75
35
23
37
49
89
76
34
22
36
48
90
77
33
21
35
47
91
78
32
20
34
46
92
79
31
19
33
45
93
78
30
18
32
44
92
77
29
17
31
43
91
76
28
16
30
42
90
75
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
89
74
48
36
14
28
48
62
88
73
49
35
13
27
47
63
87
72
50
34
12
26
46
64
86
71
51
33
11
25
45
65
85
70
52
32
10
24
44
66
84
69
53
31
9
23
43
67
83
68
54
30
8
22
42
68
82
67
66
65
64
63
62
61
60
59
58
57
56
55
29
7
21
41
69
70
71
72
73
74
75
76
77
78
79
80
81
56
28
6
20
40
70
57
27
5
19
39
71
58
26
4
18
38
72
59
25
3
17
37
73
60
24
2
16
36
72
59
23
1
15
35
71
58
22
0
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
39
38
37
36
35
34
33
32
31
30
29
28
27
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
86
52
40
26
38
72
87
51
39
25
37
73
88
50
38
24
36
74
89
49
37
23
35
75
90
48
36
22
34
76
91
47
35
21
33
77
92
46
34
20
32
78
93
45
33
19
31
79
92
44
32
18
30
78
91
43
31
17
29
77
90
42
30
16
28
76
89
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
75
88
62
48
28
14
36
48
74
87
63
47
27
13
35
49
73
86
64
46
26
12
34
50
72
85
65
45
25
11
33
51
71
84
66
44
24
10
32
52
70
83
67
43
23
9
31
53
69
82
68
42
22
8
30
54
68
81
80
79
78
77
76
75
74
73
72
71
70
69
41
21
7
29
55
56
57
58
59
60
61
62
63
64
65
66
67
70
40
20
6
28
56
71
39
19
5
27
57
72
38
18
4
26
58
73
37
17
3
25
59
72
36
16
2
24
60
71
35
15
1
23
59
70
34
14
0
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
59
58
57
56
55
54
53
52
51
50
49
48
47
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
106
72
60
46
34
66
107
71
59
45
33
65
108
70
58
44
32
64
109
69
57
43
31
63
110
68
56
42
30
62
111
67
55
41
29
61
112
66
54
40
28
60
113
65
53
39
27
59
112
64
52
38
26
58
111
63
51
37
25
57
110
62
50
36
24
56
109
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
55
108
82
68
48
36
14
28
54
107
83
67
47
35
13
29
53
106
84
66
46
34
12
30
52
105
85
65
45
33
11
31
51
104
86
64
44
32
10
32
50
103
87
63
43
31
9
33
49
102
88
62
42
30
8
34
48
101
100
99
98
97
96
95
94
93
92
91
90
89
61
41
29
7
35
36
37
38
39
40
41
42
43
44
45
46
47
90
60
40
28
6
36
90
59
39
27
5
37
89
58
38
26
4
38
88
57
37
25
3
39
87
56
36
24
2
40
86
55
35
23
1
41
85
54
34
22
0
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
71
70
69
68
67
66
65
64
63
62
61
60
59
47
48
49
50
51
52
53
54
55
56
57
58
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
81
89
72
58
46
38
80
88
73
57
45
37
79
87
74
56
44
36
78
86
75
55
43
35
77
85
76
54
42
34
76
84
77
53
41
33
75
83
78
52
40
32
74
82
79
51
39
31
73
81
80
50
38
30
72
80
81
49
37
29
71
79
82
48
36
28
70
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
27
69
57
71
84
48
28
14
26
68
56
72
83
49
29
13
25
67
55
73
82
50
30
12
24
66
54
74
81
51
31
11
23
65
53
75
80
52
32
10
22
64
52
76
79
53
33
9
21
63
51
77
78
54
34
8
20
62
61
60
59
58
57
56
55
54
53
52
51
50
78
77
55
35
7
8
9
10
11
12
13
14
15
16
17
18
19
49
79
76
56
36
6
48
80
75
57
37
5
47
81
74
58
38
4
46
82
73
59
39
3
45
83
72
60
40
2
44
84
71
59
41
1
43
85
70
58
42
0
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
60
61
62
63
64
65
66
67
68
69
70
71
72
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
39
47
59
73
88
80
38
46
58
74
87
79
37
45
57
75
86
78
36
44
56
76
85
77
35
43
55
77
84
76
34
42
54
78
83
75
33
41
53
79
82
74
32
40
52
80
81
73
31
39
51
81
80
72
30
38
50
82
79
71
29
37
49
83
78
70
28
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
69
27
15
29
49
83
70
56
68
26
14
30
50
82
71
55
67
25
13
31
51
81
72
54
66
24
12
32
52
80
73
53
65
23
11
33
53
79
74
52
64
22
10
34
54
78
75
51
63
21
9
35
55
77
76
50
62
20
19
18
17
16
15
14
13
12
11
10
9
8
36
56
76
77
49
50
51
52
53
54
55
56
57
58
59
60
61
7
37
57
75
78
48
6
38
58
74
79
47
5
39
59
73
80
46
4
40
60
72
81
45
3
41
59
71
82
44
2
42
58
70
83
43
1
43
57
69
84
42
0
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
48
49
50
51
52
53
54
55
56
57
58
59
60
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
67
35
47
59
71
105
66
34
46
58
70
106
65
33
45
57
69
107
64
32
44
56
68
108
63
31
43
55
67
109
62
30
42
54
66
110
61
29
41
53
65
111
60
28
40
52
64
112
59
27
39
51
63
111
58
26
38
50
62
110
57
25
37
49
61
109
56
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
108
55
29
15
35
47
67
81
107
54
30
14
34
46
66
82
106
53
31
13
33
45
65
83
105
52
32
12
32
44
64
84
104
51
33
11
31
43
63
85
103
50
34
10
30
42
62
86
102
49
35
9
29
41
61
87
101
48
47
46
45
44
43
42
41
40
39
38
37
36
8
28
40
60
88
89
90
91
92
93
94
95
96
97
98
99
100
37
7
27
39
59
89
38
6
26
38
58
90
39
5
25
37
57
90
40
4
24
36
56
89
41
3
23
35
55
88
42
2
22
34
54
87
43
1
21
33
53
86
44
0
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
47
48
49
50
51
52
53
54
55
56
57
58
59
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
68
36
46
58
70
104
67
35
45
57
69
105
66
34
44
56
68
106
65
33
43
55
67
107
64
32
42
54
66
108
63
31
41
53
65
109
62
30
40
52
64
110
61
29
39
51
63
111
60
28
38
50
62
110
59
27
37
49
61
109
58
26
36
48
60
108
57
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
107
56
30
16
34
46
66
80
106
55
31
15
33
45
65
81
105
54
32
14
32
44
64
82
104
53
33
13
31
43
63
83
103
52
34
12
30
42
62
84
102
51
35
11
29
41
61
85
101
50
36
10
28
40
60
86
100
49
48
47
46
45
44
43
42
41
40
39
38
37
9
27
39
59
87
88
89
90
91
92
93
94
95
96
97
98
99
38
8
26
38
58
88
39
7
25
37
57
89
40
6
24
36
56
89
41
5
23
35
55
88
42
4
22
34
54
87
43
3
21
33
53
86
44
2
20
32
52
85
45
1
0
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
46
47
48
49
50
51
52
53
54
55
56
57
58
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
69
37
45
57
69
103
68
36
44
56
68
104
67
35
43
55
67
105
66
34
42
54
66
106
65
33
41
53
65
107
64
32
40
52
64
108
63
31
39
51
63
109
62
30
38
50
62
110
61
29
37
49
61
109
60
28
36
48
60
108
59
27
35
47
59
107
58
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
106
57
31
17
33
45
65
79
105
56
32
16
32
44
64
80
104
55
33
15
31
43
63
81
103
54
34
14
30
42
62
82
102
53
35
13
29
41
61
83
101
52
36
12
28
40
60
84
100
51
37
11
27
39
59
85
99
50
49
48
47
46
45
44
43
42
41
40
39
38
10
26
38
58
86
87
88
89
90
91
92
93
94
95
96
97
98
39
9
25
37
57
87
40
8
24
36
56
88
41
7
23
35
55
88
42
6
22
34
54
87
43
5
21
33
53
86
44
4
20
32
52
85
45
3
19
31
51
84
46
2
1
0
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
45
46
47
48
49
50
51
52
53
54
55
56
57
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
70
38
44
56
68
102
69
37
43
55
67
103
68
36
42
54
66
104
67
35
41
53
65
105
66
34
40
52
64
106
65
33
39
51
63
107
64
32
38
50
62
108
63
31
37
49
61
109
62
30
36
48
60
108
61
29
35
47
59
107
60
28
34
46
58
106
59
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
105
58
32
18
32
44
64
78
104
57
33
17
31
43
63
79
103
56
34
16
30
42
62
80
102
55
35
15
29
41
61
81
101
54
36
14
28
40
60
82
100
53
37
13
27
39
59
83
99
52
38
12
26
38
58
84
98
51
50
49
48
47
46
45
44
43
42
41
40
39
11
25
37
57
85
86
87
88
89
90
91
92
93
94
95
96
97
40
10
24
36
56
86
41
9
23
35
55
87
42
8
22
34
54
87
43
7
21
33
53
86
44
6
20
32
52
85
45
5
19
31
51
84
46
4
18
30
50
83
47
3
2
1
0
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
44
45
46
47
48
49
50
51
52
53
54
55
56
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
71
39
43
55
67
101
70
38
42
54
66
102
69
37
41
53
65
103
68
36
40
52
64
104
67
35
39
51
63
105
66
34
38
50
62
106
65
33
37
49
61
107
64
32
36
48
60
108
63
31
35
47
59
107
62
30
34
46
58
106
61
29
33
45
57
105
60
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
104
59
33
19
31
43
63
77
103
58
34
18
30
42
62
78
102
57
35
17
29
41
61
79
101
56
36
16
28
40
60
80
100
55
37
15
27
39
59
81
99
54
38
14
26
38
58
82
98
53
39
13
25
37
57
83
97
52
51
50
49
48
47
46
45
44
43
42
41
40
12
24
36
56
84
85
86
87
88
89
90
91
92
93
94
95
96
41
11
23
35
55
85
42
10
22
34
54
86
43
9
21
33
53
86
44
8
20
32
52
85
45
7
19
31
51
84
46
6
18
30
50
83
47
5
17
29
49
82
48
4
3
2
1
0
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
43
44
45
46
47
48
49
50
51
52
53
54
55
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
72
40
42
54
66
100
71
39
41
53
65
101
70
38
40
52
64
102
69
37
39
51
63
103
68
36
38
50
62
104
67
35
37
49
61
105
66
34
36
48
60
106
65
33
35
47
59
107
64
32
34
46
58
106
63
31
33
45
57
105
62
30
32
44
56
104
61
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
103
60
34
20
30
42
62
76
102
59
35
19
29
41
61
77
101
58
36
18
28
40
60
78
100
57
37
17
27
39
59
79
99
56
38
16
26
38
58
80
98
55
39
15
25
37
57
81
97
54
40
14
24
36
56
82
96
53
52
51
50
49
48
47
46
45
44
43
42
41
13
23
35
55
83
84
85
86
87
88
89
90
91
92
93
94
95
42
12
22
34
54
84
43
11
21
33
53
85
44
10
20
32
52
85
45
9
19
31
51
84
46
8
18
30
50
83
47
7
17
29
49
82
48
6
16
28
48
81
47
5
4
3
2
1
0
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
42
43
44
45
46
47
48
49
50
51
52
53
54
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
73
41
41
53
65
99
72
40
40
52
64
100
71
39
39
51
63
101
70
38
38
50
62
102
69
37
37
49
61
103
68
36
36
48
60
104
67
35
35
47
59
105
66
34
34
46
58
106
65
33
33
45
57
105
64
32
32
44
56
104
63
31
31
43
55
103
62
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
102
61
35
21
29
41
61
75
101
60
36
20
28
40
60
76
100
59
37
19
27
39
59
77
99
58
38
18
26
38
58
78
98
57
39
17
25
37
57
79
97
56
40
16
24
36
56
80
96
55
41
15
23
35
55
81
95
54
53
52
51
50
49
48
47
46
45
44
43
42
14
22
34
54
82
83
84
85
86
87
88
89
90
91
92
93
94
43
13
21
33
53
83
44
12
20
32
52
84
45
11
19
31
51
84
46
10
18
30
50
83
47
9
17
29
49
82
48
8
16
28
48
81
47
7
15
27
47
80
46
6
5
4
3
2
1
0
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
41
42
43
44
45
46
47
48
49
50
51
52
53
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
74
42
40
52
64
98
73
41
39
51
63
99
72
40
38
50
62
100
71
39
37
49
61
101
70
38
36
48
60
102
69
37
35
47
59
103
68
36
34
46
58
104
67
35
33
45
57
105
66
34
32
44
56
104
65
33
31
43
55
103
64
32
30
42
54
102
63
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
101
62
36
22
28
40
60
74
100
61
37
21
27
39
59
75
99
60
38
20
26
38
58
76
98
59
39
19
25
37
57
77
97
58
40
18
24
36
56
78
96
57
41
17
23
35
55
79
95
56
42
16
22
34
54
80
94
55
54
53
52
51
50
49
48
47
46
45
44
43
15
21
33
53
81
82
83
84
85
86
87
88
89
90
91
92
93
44
14
20
32
52
82
45
13
19
31
51
83
46
12
18
30
50
83
47
11
17
29
49
82
48
10
16
28
48
81
47
9
15
27
47
80
46
8
14
26
46
79
45
7
6
5
4
3
2
1
0
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
40
41
42
43
44
45
46
47
48
49
50
51
52
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
75
43
39
51
63
97
74
42
38
50
62
98
73
41
37
49
61
99
72
40
36
48
60
100
71
39
35
47
59
101
70
38
34
46
58
102
69
37
33
45
57
103
68
36
32
44
56
104
67
35
31
43
55
103
66
34
30
42
54
102
65
33
29
41
53
101
64
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
100
63
37
23
27
39
59
73
99
62
38
22
26
38
58
74
98
61
39
21
25
37
57
75
97
60
40
20
24
36
56
76
96
59
41
19
23
35
55
77
95
58
42
18
22
34
54
78
94
57
43
17
21
33
53
79
93
56
55
54
53
52
51
50
49
48
47
46
45
44
16
20
32
52
80
81
82
83
84
85
86
87
88
89
90
91
92
45
15
19
31
51
81
46
14
18
30
50
82
47
13
17
29
49
82
48
12
16
28
48
81
47
11
15
27
47
80
46
10
14
26
46
79
45
9
13
25
45
78
44
8
7
6
5
4
3
2
1
0
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
39
40
41
42
43
44
45
46
47
48
49
50
51
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
76
44
38
50
62
96
75
43
37
49
61
97
74
42
36
48
60
98
73
41
35
47
59
99
72
40
34
46
58
100
71
39
33
45
57
101
70
38
32
44
56
102
69
37
31
43
55
103
68
36
30
42
54
102
67
35
29
41
53
101
66
34
28
40
52
100
65
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
99
64
38
24
26
38
58
72
98
63
39
23
25
37
57
73
97
62
40
22
24
36
56
74
96
61
41
21
23
35
55
75
95
60
42
20
22
34
54
76
94
59
43
19
21
33
53
77
93
58
44
18
20
32
52
78
92
57
56
55
54
53
52
51
50
49
48
47
46
45
17
19
31
51
79
80
81
82
83
84
85
86
87
88
89
90
91
46
16
18
30
50
80
47
15
17
29
49
81
48
14
16
28
48
82
49
13
15
27
47
82
48
12
14
26
46
81
47
11
13
25
45
80
46
10
12
24
44
79
45
9
8
7
6
5
4
3
2
1
0
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
38
39
40
41
42
43
44
45
46
47
48
49
50
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
77
45
37
49
61
95
76
44
36
48
60
96
75
43
35
47
59
97
74
42
34
46
58
98
73
41
33
45
57
99
72
40
32
44
56
100
71
39
31
43
55
101
70
38
30
42
54
102
69
37
29
41
53
101
68
36
28
40
52
100
67
35
27
39
51
99
66
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
98
65
39
25
25
37
57
71
97
64
40
24
24
36
56
72
96
63
41
23
23
35
55
73
95
62
42
22
22
34
54
74
94
61
43
21
21
33
53
75
93
60
44
20
20
32
52
76
92
59
45
19
19
31
51
77
91
58
57
56
55
54
53
52
51
50
49
48
47
46
18
18
30
50
78
79
80
81
82
83
84
85
86
87
88
89
90
47
17
17
29
49
79
48
16
16
28
48
80
49
15
15
27
47
81
50
14
14
26
46
82
49
13
13
25
45
81
48
12
12
24
44
80
47
11
11
23
43
79
46
10
9
8
7
6
5
4
3
2
1
0
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
37
38
39
40
41
42
43
44
45
46
47
48
49
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
78
46
36
48
60
94
77
45
35
47
59
95
76
44
34
46
58
96
75
43
33
45
57
97
74
42
32
44
56
98
73
41
31
43
55
99
72
40
30
42
54
100
71
39
29
41
53
101
70
38
28
40
52
100
69
37
27
39
51
99
68
36
26
38
50
98
67
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
97
66
40
26
24
36
56
70
96
65
41
25
23
35
55
71
95
64
42
24
22
34
54
72
94
63
43
23
21
33
53
73
93
62
44
22
20
32
52
74
92
61
45
21
19
31
51
75
91
60
46
20
18
30
50
76
90
59
58
57
56
55
54
53
52
51
50
49
48
47
19
17
29
49
77
78
79
80
81
82
83
84
85
86
87
88
89
48
18
16
28
48
78
49
17
15
27
47
79
50
16
14
26
46
80
51
15
13
25
45
81
50
14
12
24
44
80
49
13
11
23
43
79
48
12
10
22
42
78
47
11
10
9
8
7
6
5
4
3
2
1
0
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
36
37
38
39
40
41
42
43
44
45
46
47
48
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
79
47
35
47
59
93
78
46
34
46
58
94
77
45
33
45
57
95
76
44
32
44
56
96
75
43
31
43
55
97
74
42
30
42
54
98
73
41
29
41
53
99
72
40
28
40
52
100
71
39
27
39
51
99
70
38
26
38
50
98
69
37
25
37
49
97
68
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
96
67
41
27
23
35
55
69
95
66
42
26
22
34
54
70
94
65
43
25
21
33
53
71
93
64
44
24
20
32
52
72
92
63
45
23
19
31
51
73
91
62
46
22
18
30
50
74
90
61
47
21
17
29
49
75
89
60
59
58
57
56
55
54
53
52
51
50
49
48
20
16
28
48
76
77
78
79
80
81
82
83
84
85
86
87
88
49
19
15
27
47
77
50
18
14
26
46
78
51
17
13
25
45
79
52
16
12
24
44
80
51
15
11
23
43
79
50
14
10
22
42
78
49
13
9
21
41
77
48
12
11
10
9
8
7
6
5
4
3
2
1
0
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
35
36
37
38
39
40
41
42
43
44
45
46
47
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
80
46
34
46
58
92
79
45
33
45
57
93
78
44
32
44
56
94
77
43
31
43
55
95
76
42
30
42
54
96
75
41
29
41
53
97
74
40
28
40
52
98
73
39
27
39
51
99
72
38
26
38
50
98
71
37
25
37
49
97
70
36
24
36
48
96
69
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
95
68
42
28
22
34
54
68
94
67
43
27
21
33
53
69
93
66
44
26
20
32
52
70
92
65
45
25
19
31
51
71
91
64
46
24
18
30
50
72
90
63
47
23
17
29
49
73
89
62
48
22
16
28
48
74
88
61
60
59
58
57
56
55
54
53
52
51
50
49
21
15
27
47
75
76
77
78
79
80
81
82
83
84
85
86
87
50
20
14
26
46
76
51
19
13
25
45
77
52
18
12
24
44
78
53
17
11
23
43
79
52
16
10
22
42
78
51
15
9
21
41
77
50
14
8
20
40
76
49
13
12
11
10
9
8
7
6
5
4
3
2
1
0
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
34
35
36
37
38
39
40
41
42
43
44
45
46
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
79
45
33
45
57
91
80
44
32
44
56
92
79
43
31
43
55
93
78
42
30
42
54
94
77
41
29
41
53
95
76
40
28
40
52
96
75
39
27
39
51
97
74
38
26
38
50
98
73
37
25
37
49
97
72
36
24
36
48
96
71
35
23
35
47
95
70
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
94
69
43
29
21
33
53
67
93
68
44
28
20
32
52
68
92
67
45
27
19
31
51
69
91
66
46
26
18
30
50
70
90
65
47
25
17
29
49
71
89
64
48
24
16
28
48
72
88
63
49
23
15
27
47
73
87
62
61
60
59
58
57
56
55
54
53
52
51
50
22
14
26
46
74
75
76
77
78
79
80
81
82
83
84
85
86
51
21
13
25
45
75
52
20
12
24
44
76
53
19
11
23
43
77
54
18
10
22
42
78
53
17
9
21
41
77
52
16
8
20
40
76
51
15
7
19
39
75
50
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
33
34
35
36
37
38
39
40
41
42
43
44
45
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
78
44
32
44
56
90
79
43
31
43
55
91
80
42
30
42
54
92
79
41
29
41
53
93
78
40
28
40
52
94
77
39
27
39
51
95
76
38
26
38
50
96
75
37
25
37
49
97
74
36
24
36
48
96
73
35
23
35
47
95
72
34
22
34
46
94
71
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
93
70
44
30
20
32
52
66
92
69
45
29
19
31
51
67
91
68
46
28
18
30
50
68
90
67
47
27
17
29
49
69
89
66
48
26
16
28
48
70
88
65
49
25
15
27
47
71
87
64
50
24
14
26
46
72
86
63
62
61
60
59
58
57
56
55
54
53
52
51
23
13
25
45
73
74
75
76
77
78
79
80
81
82
83
84
85
52
22
12
24
44
74
53
21
11
23
43
75
54
20
10
22
42
76
55
19
9
21
41
77
54
18
8
20
40
76
53
17
7
19
39
75
52
16
6
18
38
74
51
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
32
33
34
35
36
37
38
39
40
41
42
43
44
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
77
43
31
43
55
89
78
42
30
42
54
90
79
41
29
41
53
91
80
40
28
40
52
92
79
39
27
39
51
93
78
38
26
38
50
94
77
37
25
37
49
95
76
36
24
36
48
96
75
35
23
35
47
95
74
34
22
34
46
94
73
33
21
33
45
93
72
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
92
71
45
31
19
31
51
65
91
70
46
30
18
30
50
66
90
69
47
29
17
29
49
67
89
68
48
28
16
28
48
68
88
67
49
27
15
27
47
69
87
66
50
26
14
26
46
70
86
65
51
25
13
25
45
71
85
64
63
62
61
60
59
58
57
56
55
54
53
52
24
12
24
44
72
73
74
75
76
77
78
79
80
81
82
83
84
53
23
11
23
43
73
54
22
10
22
42
74
55
21
9
21
41
75
56
20
8
20
40
76
55
19
7
19
39
75
54
18
6
18
38
74
53
17
5
17
37
73
52
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
31
32
33
34
35
36
37
38
39
40
41
42
43
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
76
42
30
42
54
88
77
41
29
41
53
89
78
40
28
40
52
90
79
39
27
39
51
91
80
38
26
38
50
92
79
37
25
37
49
93
78
36
24
36
48
94
77
35
23
35
47
95
76
34
22
34
46
94
75
33
21
33
45
93
74
32
20
32
44
92
73
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
91
72
46
32
18
30
50
64
90
71
47
31
17
29
49
65
89
70
48
30
16
28
48
66
88
69
49
29
15
27
47
67
87
68
50
28
14
26
46
68
86
67
51
27
13
25
45
69
85
66
52
26
12
24
44
70
84
65
64
63
62
61
60
59
58
57
56
55
54
53
25
11
23
43
71
72
73
74
75
76
77
78
79
80
81
82
83
54
24
10
22
42
72
55
23
9
21
41
73
56
22
8
20
40
74
57
21
7
19
39
75
56
20
6
18
38
74
55
19
5
17
37
73
54
18
4
16
36
72
53
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
30
31
32
33
34
35
36
37
38
39
40
41
42
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
75
41
29
41
53
87
76
40
28
40
52
88
77
39
27
39
51
89
78
38
26
38
50
90
79
37
25
37
49
91
80
36
24
36
48
92
79
35
23
35
47
93
78
34
22
34
46
94
77
33
21
33
45
93
76
32
20
32
44
92
75
31
19
31
43
91
74
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
90
73
47
33
17
29
49
63
89
72
48
32
16
28
48
64
88
71
49
31
15
27
47
65
87
70
50
30
14
26
46
66
86
69
51
29
13
25
45
67
85
68
52
28
12
24
44
68
84
67
53
27
11
23
43
69
83
66
65
64
63
62
61
60
59
58
57
56
55
54
26
10
22
42
70
71
72
73
74
75
76
77
78
79
80
81
82
55
25
9
21
41
71
56
24
8
20
40
72
57
23
7
19
39
73
58
22
6
18
38
74
57
21
5
17
37
73
56
20
4
16
36
72
55
19
3
15
35
71
54
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
29
30
31
32
33
34
35
36
37
38
39
40
41
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
74
40
28
40
52
86
75
39
27
39
51
87
76
38
26
38
50
88
77
37
25
37
49
89
78
36
24
36
48
90
79
35
23
35
47
91
80
34
22
34
46
92
79
33
21
33
45
93
78
32
20
32
44
92
77
31
19
31
43
91
76
30
18
30
42
90
75
47
46
45
44
43
42
41
40
39
38
37
36
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
89
74
48
34
16
28
48
62
88
73
49
33
15
27
47
63
87
72
50
32
14
26
46
64
86
71
51
31
13
25
45
65
85
70
52
30
12
24
44
66
84
69
53
29
11
23
43
67
83
68
54
28
10
22
42
68
82
67
66
65
64
63
62
61
60
59
58
57
56
55
27
9
21
41
69
70
71
72
73
74
75
76
77
78
79
80
81
56
26
8
20
40
70
57
25
7
19
39
71
58
24
6
18
38
72
59
23
5
17
37
73
58
22
4
16
36
72
57
21
3
15
35
71
56
20
2
14
34
70
55
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
28
29
30
31
32
33
34
35
36
37
38
39
40
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
73
39
27
39
51
85
74
38
26
38
50
86
75
37
25
37
49
87
76
36
24
36
48
88
77
35
23
35
47
89
78
34
22
34
46
90
79
33
21
33
45
91
80
32
20
32
44
92
79
31
19
31
43
91
78
30
18
30
42
90
77
29
17
29
41
89
76
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
88
75
49
35
15
27
47
61
87
74
50
34
14
26
46
62
86
73
51
33
13
25
45
63
85
72
52
32
12
24
44
64
84
71
53
31
11
23
43
65
83
70
54
30
10
22
42
66
82
69
55
29
9
21
41
67
81
68
67
66
65
64
63
62
61
60
59
58
57
56
28
8
20
40
68
69
70
71
72
73
74
75
76
77
78
79
80
57
27
7
19
39
69
58
26
6
18
38
70
59
25
5
17
37
71
60
24
4
16
36
72
59
23
3
15
35
71
58
22
2
14
34
70
57
21
1
13
33
69
56
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
29
30
31
32
33
34
35
36
37
38
39
40
39
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
74
40
28
38
50
84
75
39
27
37
49
85
76
38
26
36
48
86
77
37
25
35
47
87
78
36
24
34
46
88
79
35
23
33
45
89
80
34
22
32
44
90
81
33
21
31
43
91
80
32
20
30
42
90
79
31
19
29
41
89
78
30
18
28
40
88
77
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
87
76
50
36
16
26
46
60
86
75
51
35
15
25
45
61
85
74
52
34
14
24
44
62
84
73
53
33
13
23
43
63
83
72
54
32
12
22
42
64
82
71
55
31
11
21
41
65
81
70
56
30
10
20
40
66
80
69
68
67
66
65
64
63
62
61
60
59
58
57
29
9
19
39
67
68
69
70
71
72
73
74
75
76
77
78
79
58
28
8
18
38
68
59
27
7
17
37
69
60
26
6
16
36
70
61
25
5
15
35
71
60
24
4
14
34
70
59
23
3
13
33
69
58
22
2
12
32
68
57
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
30
31
32
33
34
35
36
37
38
39
40
39
38
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
75
41
29
37
49
83
76
40
28
36
48
84
77
39
27
35
47
85
78
38
26
34
46
86
79
37
25
33
45
87
80
36
24
32
44
88
81
35
23
31
43
89
82
34
22
30
42
90
81
33
21
29
41
89
80
32
20
28
40
88
79
31
19
27
39
87
78
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
86
77
51
37
17
25
45
59
85
76
52
36
16
24
44
60
84
75
53
35
15
23
43
61
83
74
54
34
14
22
42
62
82
73
55
33
13
21
41
63
81
72
56
32
12
20
40
64
80
71
57
31
11
19
39
65
79
70
69
68
67
66
65
64
63
62
61
60
59
58
30
10
18
38
66
67
68
69
70
71
72
73
74
75
76
77
78
59
29
9
17
37
67
60
28
8
16
36
68
61
27
7
15
35
69
62
26
6
14
34
70
61
25
5
13
33
69
60
24
4
12
32
68
59
23
3
11
31
67
58
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
31
32
33
34
35
36
37
38
39
40
39
38
37
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
76
42
30
36
48
82
77
41
29
35
47
83
78
40
28
34
46
84
79
39
27
33
45
85
80
38
26
32
44
86
81
37
25
31
43
87
82
36
24
30
42
88
83
35
23
29
41
89
82
34
22
28
40
88
81
33
21
27
39
87
80
32
20
26
38
86
79
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
85
78
52
38
18
24
44
58
84
77
53
37
17
23
43
59
83
76
54
36
16
22
42
60
82
75
55
35
15
21
41
61
81
74
56
34
14
20
40
62
80
73
57
33
13
19
39
63
79
72
58
32
12
18
38
64
78
71
70
69
68
67
66
65
64
63
62
61
60
59
31
11
17
37
65
66
67
68
69
70
71
72
73
74
75
76
77
60
30
10
16
36
66
61
29
9
15
35
67
62
28
8
14
34
68
63
27
7
13
33
69
62
26
6
12
32
68
61
25
5
11
31
67
60
24
4
10
30
66
59
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
32
33
34
35
36
37
38
39
40
39
38
37
36
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
77
43
31
35
47
81
78
42
30
34
46
82
79
41
29
33
45
83
80
40
28
32
44
84
81
39
27
31
43
85
82
38
26
30
42
86
83
37
25
29
41
87
84
36
24
28
40
88
83
35
23
27
39
87
82
34
22
26
38
86
81
33
21
25
37
85
80
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
84
79
53
39
19
23
43
57
83
78
54
38
18
22
42
58
82
77
55
37
17
21
41
59
81
76
56
36
16
20
40
60
80
75
57
35
15
19
39
61
79
74
58
34
14
18
38
62
78
73
59
33
13
17
37
63
77
72
71
70
69
68
67
66
65
64
63
62
61
60
32
12
16
36
64
65
66
67
68
69
70
71
72
73
74
75
76
61
31
11
15
35
65
62
30
10
14
34
66
63
29
9
13
33
67
64
28
8
12
32
68
63
27
7
11
31
67
62
26
6
10
30
66
61
25
5
9
29
65
60
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
33
34
35
36
37
38
39
40
39
38
37
36
35
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
78
44
32
34
46
80
79
43
31
33
45
81
80
42
30
32
44
82
81
41
29
31
43
83
82
40
28
30
42
84
83
39
27
29
41
85
84
38
26
28
40
86
85
37
25
27
39
87
84
36
24
26
38
86
83
35
23
25
37
85
82
34
22
24
36
84
81
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
83
80
54
40
20
22
42
56
82
79
55
39
19
21
41
57
81
78
56
38
18
20
40
58
80
77
57
37
17
19
39
59
79
76
58
36
16
18
38
60
78
75
59
35
15
17
37
61
77
74
60
34
14
16
36
62
76
73
72
71
70
69
68
67
66
65
64
63
62
61
33
13
15
35
63
64
65
66
67
68
69
70
71
72
73
74
75
62
32
12
14
34
64
63
31
11
13
33
65
64
30
10
12
32
66
65
29
9
11
31
67
64
28
8
10
30
66
63
27
7
9
29
65
62
26
6
8
28
64
61
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
34
35
36
37
38
39
40
39
38
37
36
35
34
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
45
33
33
45
79
80
44
32
32
44
80
81
43
31
31
43
81
82
42
30
30
42
82
83
41
29
29
41
83
84
40
28
28
40
84
85
39
27
27
39
85
86
38
26
26
38
86
85
37
25
25
37
85
84
36
24
24
36
84
83
35
23
23
35
83
82
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
82
81
55
41
21
21
41
55
81
80
56
40
20
20
40
56
80
79
57
39
19
19
39
57
79
78
58
38
18
18
38
58
78
77
59
37
17
17
37
59
77
76
60
36
16
16
36
60
76
75
61
35
15
15
35
61
75
74
73
72
71
70
69
68
67
66
65
64
63
62
34
14
14
34
62
63
64
65
66
67
68
69
70
71
72
73
74
63
33
13
13
33
63
64
32
12
12
32
64
65
31
11
11
31
65
66
30
10
10
30
66
65
29
9
9
29
65
64
28
8
8
28
64
63
27
7
7
27
63
62
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
35
36
37
38
39
40
39
38
37
36
35
34
33
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
80
46
34
32
44
78
81
45
33
31
43
79
82
44
32
30
42
80
83
43
31
29
41
81
84
42
30
28
40
82
85
41
29
27
39
83
86
40
28
26
38
84
87
39
27
25
37
85
86
38
26
24
36
84
85
37
25
23
35
83
84
36
24
22
34
82
83
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
81
82
56
42
22
20
40
54
80
81
57
41
21
19
39
55
79
80
58
40
20
18
38
56
78
79
59
39
19
17
37
57
77
78
60
38
18
16
36
58
76
77
61
37
17
15
35
59
75
76
62
36
16
14
34
60
74
75
74
73
72
71
70
69
68
67
66
65
64
63
35
15
13
33
61
62
63
64
65
66
67
68
69
70
71
72
73
64
34
14
12
32
62
65
33
13
11
31
63
66
32
12
10
30
64
67
31
11
9
29
65
66
30
10
8
28
64
65
29
9
7
27
63
64
28
8
6
26
62
63
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
36
37
38
39
40
39
38
37
36
35
34
33
32
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
81
47
35
31
43
77
82
46
34
30
42
78
83
45
33
29
41
79
84
44
32
28
40
80
85
43
31
27
39
81
86
42
30
26
38
82
87
41
29
25
37
83
88
40
28
24
36
84
87
39
27
23
35
83
86
38
26
22
34
82
85
37
25
21
33
81
84
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
80
83
57
43
23
19
39
53
79
82
58
42
22
18
38
54
78
81
59
41
21
17
37
55
77
80
60
40
20
16
36
56
76
79
61
39
19
15
35
57
75
78
62
38
18
14
34
58
74
77
63
37
17
13
33
59
73
76
75
74
73
72
71
70
69
68
67
66
65
64
36
16
12
32
60
61
62
63
64
65
66
67
68
69
70
71
72
65
35
15
11
31
61
66
34
14
10
30
62
67
33
13
9
29
63
68
32
12
8
28
64
67
31
11
7
27
63
66
30
10
6
26
62
65
29
9
5
25
61
64
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
37
38
39
40
39
38
37
36
35
34
33
32
31
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
82
48
36
30
42
76
83
47
35
29
41
77
84
46
34
28
40
78
85
45
33
27
39
79
86
44
32
26
38
80
87
43
31
25
37
81
88
42
30
24
36
82
89
41
29
23
35
83
88
40
28
22
34
82
87
39
27
21
33
81
86
38
26
20
32
80
85
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
79
84
58
44
24
18
38
52
78
83
59
43
23
17
37
53
77
82
60
42
22
16
36
54
76
81
61
41
21
15
35
55
75
80
62
40
20
14
34
56
74
79
63
39
19
13
33
57
73
78
64
38
18
12
32
58
72
77
76
75
74
73
72
71
70
69
68
67
66
65
37
17
11
31
59
60
61
62
63
64
65
66
67
68
69
70
71
66
36
16
10
30
60
67
35
15
9
29
61
68
34
14
8
28
62
69
33
13
7
27
63
68
32
12
6
26
62
67
31
11
5
25
61
66
30
10
4
24
60
65
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
38
39
40
39
38
37
36
35
34
33
32
31
30
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
83
49
37
29
41
75
84
48
36
28
40
76
85
47
35
27
39
77
86
46
34
26
38
78
87
45
33
25
37
79
88
44
32
24
36
80
89
43
31
23
35
81
90
42
30
22
34
82
89
41
29
21
33
81
88
40
28
20
32
80
87
39
27
19
31
79
86
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
78
85
59
45
25
17
37
51
77
84
60
44
24
16
36
52
76
83
61
43
23
15
35
53
75
82
62
42
22
14
34
54
74
81
63
41
21
13
33
55
73
80
64
40
20
12
32
56
72
79
65
39
19
11
31
57
71
78
77
76
75
74
73
72
71
70
69
68
67
66
38
18
10
30
58
59
60
61
62
63
64
65
66
67
68
69
70
67
37
17
9
29
59
68
36
16
8
28
60
69
35
15
7
27
61
70
34
14
6
26
62
69
33
13
5
25
61
68
32
12
4
24
60
67
31
11
3
23
59
66
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
39
40
39
38
37
36
35
34
33
32
31
30
29
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
84
50
38
28
40
74
85
49
37
27
39
75
86
48
36
26
38
76
87
47
35
25
37
77
88
46
34
24
36
78
89
45
33
23
35
79
90
44
32
22
34
80
91
43
31
21
33
81
90
42
30
20
32
80
89
41
29
19
31
79
88
40
28
18
30
78
87
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
77
86
60
46
26
16
36
50
76
85
61
45
25
15
35
51
75
84
62
44
24
14
34
52
74
83
63
43
23
13
33
53
73
82
64
42
22
12
32
54
72
81
65
41
21
11
31
55
71
80
66
40
20
10
30
56
70
79
78
77
76
75
74
73
72
71
70
69
68
67
39
19
9
29
57
58
59
60
61
62
63
64
65
66
67
68
69
68
38
18
8
28
58
69
37
17
7
27
59
70
36
16
6
26
60
71
35
15
5
25
61
70
34
14
4
24
60
69
33
13
3
23
59
68
32
12
2
22
58
67
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
40
39
38
37
36
35
34
33
32
31
30
29
28
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
85
51
39
27
39
73
86
50
38
26
38
74
87
49
37
25
37
75
88
48
36
24
36
76
89
47
35
23
35
77
90
46
34
22
34
78
91
45
33
21
33
79
92
44
32
20
32
80
91
43
31
19
31
79
90
42
30
18
30
78
89
41
29
17
29
77
88
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
76
87
61
47
27
15
35
49
75
86
62
46
26
14
34
50
74
85
63
45
25
13
33
51
73
84
64
44
24
12
32
52
72
83
65
43
23
11
31
53
71
82
66
42
22
10
30
54
70
81
67
41
21
9
29
55
69
80
79
78
77
76
75
74
73
72
71
70
69
68
40
20
8
28
56
57
58
59
60
61
62
63
64
65
66
67
68
69
39
19
7
27
57
70
38
18
6
26
58
71
37
17
5
25
59
72
36
16
4
24
60
71
35
15
3
23
59
70
34
14
2
22
58
69
33
13
1
21
57
68
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
41
40
39
38
37
36
35
34
33
32
31
30
29
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
86
52
40
28
40
74
87
51
39
27
39
75
88
50
38
26
38
76
89
49
37
25
37
77
90
48
36
24
36
78
91
47
35
23
35
79
92
46
34
22
34
80
93
45
33
21
33
79
92
44
32
20
32
78
91
43
31
19
31
77
90
42
30
18
30
76
89
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
36
37
38
39
40
41
42
43
44
45
46
47
75
88
62
48
28
16
34
48
74
87
63
47
27
15
33
49
73
86
64
46
26
14
32
50
72
85
65
45
25
13
31
51
71
84
66
44
24
12
30
52
70
83
67
43
23
11
29
53
69
82
68
42
22
10
28
54
68
81
80
79
78
77
76
75
74
73
72
71
70
69
41
21
9
27
55
56
57
58
59
60
61
62
63
64
65
66
67
70
40
20
8
26
56
71
39
19
7
25
57
72
38
18
6
24
58
73
37
17
5
23
59
72
36
16
4
22
58
71
35
15
3
21
57
70
34
14
2
20
56
69
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
42
41
40
39
38
37
36
35
34
33
32
31
30
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
87
53
41
29
41
75
88
52
40
28
40
76
89
51
39
27
39
77
90
50
38
26
38
78
91
49
37
25
37
79
92
48
36
24
36
80
93
47
35
23
35
79
94
46
34
22
34
78
93
45
33
21
33
77
92
44
32
20
32
76
91
43
31
19
31
75
90
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
74
89
63
49
29
17
33
47
73
88
64
48
28
16
32
48
72
87
65
47
27
15
31
49
71
86
66
46
26
14
30
50
70
85
67
45
25
13
29
51
69
84
68
44
24
12
28
52
68
83
69
43
23
11
27
53
67
82
81
80
79
78
77
76
75
74
73
72
71
70
42
22
10
26
54
55
56
57
58
59
60
61
62
63
64
65
66
71
41
21
9
25
55
72
40
20
8
24
56
73
39
19
7
23
57
74
38
18
6
22
58
73
37
17
5
21
57
72
36
16
4
20
56
71
35
15
3
19
55
70
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
43
42
41
40
39
38
37
36
35
34
33
32
31
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
88
54
42
30
42
76
89
53
41
29
41
77
90
52
40
28
40
78
91
51
39
27
39
79
92
50
38
26
38
80
93
49
37
25
37
79
94
48
36
24
36
78
95
47
35
23
35
77
94
46
34
22
34
76
93
45
33
21
33
75
92
44
32
20
32
74
91
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
73
90
64
50
30
18
32
46
72
89
65
49
29
17
31
47
71
88
66
48
28
16
30
48
70
87
67
47
27
15
29
49
69
86
68
46
26
14
28
50
68
85
69
45
25
13
27
51
67
84
70
44
24
12
26
52
66
83
82
81
80
79
78
77
76
75
74
73
72
71
43
23
11
25
53
54
55
56
57
58
59
60
61
62
63
64
65
72
42
22
10
24
54
73
41
21
9
23
55
74
40
20
8
22
56
75
39
19
7
21
57
74
38
18
6
20
56
73
37
17
5
19
55
72
36
16
4
18
54
71
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
44
43
42
41
40
39
38
37
36
35
34
33
32
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
89
55
43
31
43
77
90
54
42
30
42
78
91
53
41
29
41
79
92
52
40
28
40
80
93
51
39
27
39
79
94
50
38
26
38
78
95
49
37
25
37
77
96
48
36
24
36
76
95
47
35
23
35
75
94
46
34
22
34
74
93
45
33
21
33
73
92
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
72
91
65
51
31
19
31
45
71
90
66
50
30
18
30
46
70
89
67
49
29
17
29
47
69
88
68
48
28
16
28
48
68
87
69
47
27
15
27
49
67
86
70
46
26
14
26
50
66
85
71
45
25
13
25
51
65
84
83
82
81
80
79
78
77
76
75
74
73
72
44
24
12
24
52
53
54
55
56
57
58
59
60
61
62
63
64
73
43
23
11
23
53
74
42
22
10
22
54
75
41
21
9
21
55
76
40
20
8
20
56
75
39
19
7
19
55
74
38
18
6
18
54
73
37
17
5
17
53
72
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
45
44
43
42
41
40
39
38
37
36
35
34
33
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
90
56
44
32
44
78
91
55
43
31
43
79
92
54
42
30
42
80
93
53
41
29
41
79
94
52
40
28
40
78
95
51
39
27
39
77
96
50
38
26
38
76
97
49
37
25
37
75
96
48
36
24
36
74
95
47
35
23
35
73
94
46
34
22
34
72
93
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
71
92
66
52
32
20
30
44
70
91
67
51
31
19
29
45
69
90
68
50
30
18
28
46
68
89
69
49
29
17
27
47
67
88
70
48
28
16
26
48
66
87
71
47
27
15
25
49
65
86
72
46
26
14
24
50
64
85
84
83
82
81
80
79
78
77
76
75
74
73
45
25
13
23
51
52
53
54
55
56
57
58
59
60
61
62
63
74
44
24
12
22
52
75
43
23
11
21
53
76
42
22
10
20
54
77
41
21
9
19
55
76
40
20
8
18
54
75
39
19
7
17
53
74
38
18
6
16
52
73
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
46
45
44
43
42
41
40
39
38
37
36
35
34
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
91
57
45
33
45
79
92
56
44
32
44
80
93
55
43
31
43
79
94
54
42
30
42
78
95
53
41
29
41
77
96
52
40
28
40
76
97
51
39
27
39
75
98
50
38
26
38
74
97
49
37
25
37
73
96
48
36
24
36
72
95
47
35
23
35
71
94
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
70
93
67
53
33
21
29
43
69
92
68
52
32
20
28
44
68
91
69
51
31
19
27
45
67
90
70
50
30
18
26
46
66
89
71
49
29
17
25
47
65
88
72
48
28
16
24
48
64
87
73
47
27
15
23
49
63
86
85
84
83
82
81
80
79
78
77
76
75
74
46
26
14
22
50
51
52
53
54
55
56
57
58
59
60
61
62
75
45
25
13
21
51
76
44
24
12
20
52
77
43
23
11
19
53
78
42
22
10
18
54
77
41
21
9
17
53
76
40
20
8
16
52
75
39
19
7
15
51
74
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
47
46
45
44
43
42
41
40
39
38
37
36
35
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
92
58
46
34
46
80
93
57
45
33
45
79
94
56
44
32
44
78
95
55
43
31
43
77
96
54
42
30
42
76
97
53
41
29
41
75
98
52
40
28
40
74
99
51
39
27
39
73
98
50
38
26
38
72
97
49
37
25
37
71
96
48
36
24
36
70
95
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
69
94
68
54
34
22
28
42
68
93
69
53
33
21
27
43
67
92
70
52
32
20
26
44
66
91
71
51
31
19
25
45
65
90
72
50
30
18
24
46
64
89
73
49
29
17
23
47
63
88
74
48
28
16
22
48
62
87
86
85
84
83
82
81
80
79
78
77
76
75
47
27
15
21
49
50
51
52
53
54
55
56
57
58
59
60
61
76
46
26
14
20
50
77
45
25
13
19
51
78
44
24
12
18
52
79
43
23
11
17
53
78
42
22
10
16
52
77
41
21
9
15
51
76
40
20
8
14
50
75
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
48
47
46
45
44
43
42
41
40
39
38
37
36
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
93
59
47
35
47
79
94
58
46
34
46
78
95
57
45
33
45
77
96
56
44
32
44
76
97
55
43
31
43
75
98
54
42
30
42
74
99
53
41
29
41
73
100
52
40
28
40
72
99
51
39
27
39
71
98
50
38
26
38
70
97
49
37
25
37
69
96
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
68
95
69
55
35
23
27
41
67
94
70
54
34
22
26
42
66
93
71
53
33
21
25
43
65
92
72
52
32
20
24
44
64
91
73
51
31
19
23
45
63
90
74
50
30
18
22
46
62
89
75
49
29
17
21
47
61
88
87
86
85
84
83
82
81
80
79
78
77
76
48
28
16
20
48
49
50
51
52
53
54
55
56
57
58
59
60
77
47
27
15
19
49
78
46
26
14
18
50
79
45
25
13
17
51
80
44
24
12
16
52
79
43
23
11
15
51
78
42
22
10
14
50
77
41
21
9
13
49
76
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
49
48
47
46
45
44
43
42
41
40
39
38
37
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
94
60
48
36
46
78
95
59
47
35
45
77
96
58
46
34
44
76
97
57
45
33
43
75
98
56
44
32
42
74
99
55
43
31
41
73
100
54
42
30
40
72
101
53
41
29
39
71
100
52
40
28
38
70
99
51
39
27
37
69
98
50
38
26
36
68
97
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
67
96
70
56
36
24
26
40
66
95
71
55
35
23
25
41
65
94
72
54
34
22
24
42
64
93
73
53
33
21
23
43
63
92
74
52
32
20
22
44
62
91
75
51
31
19
21
45
61
90
76
50
30
18
20
46
60
89
88
87
86
85
84
83
82
81
80
79
78
77
49
29
17
19
47
48
49
50
51
52
53
54
55
56
57
58
59
78
48
28
16
18
48
79
47
27
15
17
49
80
46
26
14
16
50
81
45
25
13
15
51
80
44
24
12
14
50
79
43
23
11
13
49
78
42
22
10
12
48
77
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
50
49
48
47
46
45
44
43
42
41
40
39
38
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
95
61
49
37
45
77
96
60
48
36
44
76
97
59
47
35
43
75
98
58
46
34
42
74
99
57
45
33
41
73
100
56
44
32
40
72
101
55
43
31
39
71
102
54
42
30
38
70
101
53
41
29
37
69
100
52
40
28
36
68
99
51
39
27
35
67
98
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
66
97
71
57
37
25
25
39
65
96
72
56
36
24
24
40
64
95
73
55
35
23
23
41
63
94
74
54
34
22
22
42
62
93
75
53
33
21
21
43
61
92
76
52
32
20
20
44
60
91
77
51
31
19
19
45
59
90
89
88
87
86
85
84
83
82
81
80
79
78
50
30
18
18
46
47
48
49
50
51
52
53
54
55
56
57
58
79
49
29
17
17
47
80
48
28
16
16
48
81
47
27
15
15
49
82
46
26
14
14
50
81
45
25
13
13
49
80
44
24
12
12
48
79
43
23
11
11
47
78
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
51
50
49
48
47
46
45
44
43
42
41
40
39
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
96
62
50
38
44
76
97
61
49
37
43
75
98
60
48
36
42
74
99
59
47
35
41
73
100
58
46
34
40
72
101
57
45
33
39
71
102
56
44
32
38
70
103
55
43
31
37
69
102
54
42
30
36
68
101
53
41
29
35
67
100
52
40
28
34
66
99
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
65
98
72
58
38
26
24
38
64
97
73
57
37
25
23
39
63
96
74
56
36
24
22
40
62
95
75
55
35
23
21
41
61
94
76
54
34
22
20
42
60
93
77
53
33
21
19
43
59
92
78
52
32
20
18
44
58
91
90
89
88
87
86
85
84
83
82
81
80
79
51
31
19
17
45
46
47
48
49
50
51
52
53
54
55
56
57
80
50
30
18
16
46
81
49
29
17
15
47
82
48
28
16
14
48
82
47
27
15
13
49
81
46
26
14
12
48
80
45
25
13
11
47
79
44
24
12
10
46
78
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
52
51
50
49
48
47
46
45
44
43
42
41
40
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
97
63
51
39
43
75
98
62
50
38
42
74
99
61
49
37
41
73
100
60
48
36
40
72
101
59
47
35
39
71
102
58
46
34
38
70
103
57
45
33
37
69
104
56
44
32
36
68
103
55
43
31
35
67
102
54
42
30
34
66
101
53
41
29
33
65
100
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
64
99
73
59
39
27
23
37
63
98
74
58
38
26
22
38
62
97
75
57
37
25
21
39
61
96
76
56
36
24
20
40
60
95
77
55
35
23
19
41
59
94
78
54
34
22
18
42
58
93
79
53
33
21
17
43
57
92
91
90
89
88
87
86
85
84
83
82
81
80
52
32
20
16
44
45
46
47
48
49
50
51
52
53
54
55
56
81
51
31
19
15
45
82
50
30
18
14
46
82
49
29
17
13
47
81
48
28
16
12
48
80
47
27
15
11
47
79
46
26
14
10
46
78
45
25
13
9
45
77
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
53
52
51
50
49
48
47
46
45
44
43
42
41
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
98
64
52
40
42
74
99
63
51
39
41
73
100
62
50
38
40
72
101
61
49
37
39
71
102
60
48
36
38
70
103
59
47
35
37
69
104
58
46
34
36
68
105
57
45
33
35
67
104
56
44
32
34
66
103
55
43
31
33
65
102
54
42
30
32
64
101
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
63
100
74
60
40
28
22
36
62
99
75
59
39
27
21
37
61
98
76
58
38
26
20
38
60
97
77
57
37
25
19
39
59
96
78
56
36
24
18
40
58
95
79
55
35
23
17
41
57
94
80
54
34
22
16
42
56
93
92
91
90
89
88
87
86
85
84
83
82
81
53
33
21
15
43
44
45
46
47
48
49
50
51
52
53
54
55
82
52
32
20
14
44
83
51
31
19
13
45
83
50
30
18
12
46
82
49
29
17
11
47
81
48
28
16
10
48
80
47
27
15
9
47
79
46
26
14
8
46
78
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
54
53
52
51
50
49
48
47
46
45
44
43
42
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
99
65
53
41
41
73
100
64
52
40
40
72
101
63
51
39
39
71
102
62
50
38
38
70
103
61
49
37
37
69
104
60
48
36
36
68
105
59
47
35
35
67
106
58
46
34
34
66
105
57
45
33
33
65
104
56
44
32
32
64
103
55
43
31
31
63
102
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
62
101
75
61
41
29
21
35
61
100
76
60
40
28
20
36
60
99
77
59
39
27
19
37
59
98
78
58
38
26
18
38
58
97
79
57
37
25
17
39
57
96
80
56
36
24
16
40
56
95
81
55
35
23
15
41
55
94
93
92
91
90
89
88
87
86
85
84
83
82
54
34
22
14
42
43
44
45
46
47
48
49
50
51
52
53
54
83
53
33
21
13
43
84
52
32
20
12
44
84
51
31
19
11
45
83
50
30
18
10
46
82
49
29
17
9
47
81
48
28
16
8
48
80
47
27
15
7
47
79
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
55
54
53
52
51
50
49
48
47
46
45
44
43
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
100
66
54
42
40
72
101
65
53
41
39
71
102
64
52
40
38
70
103
63
51
39
37
69
104
62
50
38
36
68
105
61
49
37
35
67
106
60
48
36
34
66
107
59
47
35
33
65
106
58
46
34
32
64
105
57
45
33
31
63
104
56
44
32
30
62
103
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
61
102
76
62
42
30
20
34
60
101
77
61
41
29
19
35
59
100
78
60
40
28
18
36
58
99
79
59
39
27
17
37
57
98
80
58
38
26
16
38
56
97
81
57
37
25
15
39
55
96
82
56
36
24
14
40
54
95
94
93
92
91
90
89
88
87
86
85
84
83
55
35
23
13
41
42
43
44
45
46
47
48
49
50
51
52
53
84
54
34
22
12
42
85
53
33
21
11
43
85
52
32
20
10
44
84
51
31
19
9
45
83
50
30
18
8
46
82
49
29
17
7
47
81
48
28
16
6
48
80
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
56
55
54
53
52
51
50
49
48
47
46
45
44
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
101
67
55
43
39
71
102
66
54
42
38
70
103
65
53
41
37
69
104
64
52
40
36
68
105
63
51
39
35
67
106
62
50
38
34
66
107
61
49
37
33
65
108
60
48
36
32
64
107
59
47
35
31
63
106
58
46
34
30
62
105
57
45
33
29
61
104
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
60
103
77
63
43
31
19
33
59
102
78
62
42
30
18
34
58
101
79
61
41
29
17
35
57
100
80
60
40
28
16
36
56
99
81
59
39
27
15
37
55
98
82
58
38
26
14
38
54
97
83
57
37
25
13
39
53
96
95
94
93
92
91
90
89
88
87
86
85
84
56
36
24
12
40
41
42
43
44
45
46
47
48
49
50
51
52
85
55
35
23
11
41
86
54
34
22
10
42
86
53
33
21
9
43
85
52
32
20
8
44
84
51
31
19
7
45
83
50
30
18
6
46
82
49
29
17
5
47
81
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
57
56
55
54
53
52
51
50
49
48
47
46
45
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
102
68
56
44
38
70
103
67
55
43
37
69
104
66
54
42
36
68
105
65
53
41
35
67
106
64
52
40
34
66
107
63
51
39
33
65
108
62
50
38
32
64
109
61
49
37
31
63
108
60
48
36
30
62
107
59
47
35
29
61
106
58
46
34
28
60
105
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
59
104
78
64
44
32
18
32
58
103
79
63
43
31
17
33
57
102
80
62
42
30
16
34
56
101
81
61
41
29
15
35
55
100
82
60
40
28
14
36
54
99
83
59
39
27
13
37
53
98
84
58
38
26
12
38
52
97
96
95
94
93
92
91
90
89
88
87
86
85
57
37
25
11
39
40
41
42
43
44
45
46
47
48
49
50
51
86
56
36
24
10
40
87
55
35
23
9
41
87
54
34
22
8
42
86
53
33
21
7
43
85
52
32
20
6
44
84
51
31
19
5
45
83
50
30
18
4
46
82
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
58
57
56
55
54
53
52
51
50
49
48
47
46
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
103
69
57
45
37
69
104
68
56
44
36
68
105
67
55
43
35
67
106
66
54
42
34
66
107
65
53
41
33
65
108
64
52
40
32
64
109
63
51
39
31
63
110
62
50
38
30
62
109
61
49
37
29
61
108
60
48
36
28
60
107
59
47
35
27
59
106
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
58
105
79
65
45
33
17
31
57
104
80
64
44
32
16
32
56
103
81
63
43
31
15
33
55
102
82
62
42
30
14
34
54
101
83
61
41
29
13
35
53
100
84
60
40
28
12
36
52
99
85
59
39
27
11
37
51
98
97
96
95
94
93
92
91
90
89
88
87
86
58
38
26
10
38
39
40
41
42
43
44
45
46
47
48
49
50
87
57
37
25
9
39
88
56
36
24
8
40
88
55
35
23
7
41
87
54
34
22
6
42
86
53
33
21
5
43
85
52
32
20
4
44
84
51
31
19
3
45
83
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
59
58
57
56
55
54
53
52
51
50
49
48
47
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
104
70
58
46
36
68
105
69
57
45
35
67
106
68
56
44
34
66
107
67
55
43
33
65
108
66
54
42
32
64
109
65
53
41
31
63
110
64
52
40
30
62
111
63
51
39
29
61
110
62
50
38
28
60
109
61
49
37
27
59
108
60
48
36
26
58
107
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
57
106
80
66
46
34
16
30
56
105
81
65
45
33
15
31
55
104
82
64
44
32
14
32
54
103
83
63
43
31
13
33
53
102
84
62
42
30
12
34
52
101
85
61
41
29
11
35
51
100
86
60
40
28
10
36
50
99
98
97
96
95
94
93
92
91
90
89
88
87
59
39
27
9
37
38
39
40
41
42
43
44
45
46
47
48
49
88
58
38
26
8
38
89
57
37
25
7
39
89
56
36
24
6
40
88
55
35
23
5
41
87
54
34
22
4
42
86
53
33
21
3
43
85
52
32
20
2
44
84
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
60
59
58
57
56
55
54
53
52
51
50
49
48
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
105
71
59
47
35
67
106
70
58
46
34
66
107
69
57
45
33
65
108
68
56
44
32
64
109
67
55
43
31
63
110
66
54
42
30
62
111
65
53
41
29
61
112
64
52
40
28
60
111
63
51
39
27
59
110
62
50
38
26
58
109
61
49
37
25
57
108
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
56
107
81
67
47
35
15
29
55
106
82
66
46
34
14
30
54
105
83
65
45
33
13
31
53
104
84
64
44
32
12
32
52
103
85
63
43
31
11
33
51
102
86
62
42
30
10
34
50
101
87
61
41
29
9
35
49
100
99
98
97
96
95
94
93
92
91
90
89
88
60
40
28
8
36
37
38
39
40
41
42
43
44
45
46
47
48
89
59
39
27
7
37
90
58
38
26
6
38
90
57
37
25
5
39
89
56
36
24
4
40
88
55
35
23
3
41
87
54
34
22
2
42
86
53
33
21
1
43
85
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
72
71
70
69
68
67
66
65
64
63
62
61
60
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
80
88
73
59
47
39
79
87
74
58
46
38
78
86
75
57
45
37
77
85
76
56
44
36
76
84
77
55
43
35
75
83
78
54
42
34
74
82
79
53
41
33
73
81
80
52
40
32
72
80
81
51
39
31
71
79
82
50
38
30
70
78
83
49
37
29
69
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
28
68
56
70
83
49
29
15
27
67
55
71
82
50
30
14
26
66
54
72
81
51
31
13
25
65
53
73
80
52
32
12
24
64
52
74
79
53
33
11
23
63
51
75
78
54
34
10
22
62
50
76
77
55
35
9
21
61
60
59
58
57
56
55
54
53
52
51
50
49
77
76
56
36
8
9
10
11
12
13
14
15
16
17
18
19
20
48
78
75
57
37
7
47
79
74
58
38
6
46
80
73
59
39
5
45
81
72
60
40
4
44
82
71
59
41
3
43
83
70
58
42
2
42
84
69
57
43
1
41
85
84
83
82
81
80
79
78
77
78
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
47
46
45
44
0
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
60
59
58
57
56
55
54
53
52
51
50
49
61
62
63
64
65
66
67
68
69
70
71
72
73
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
40
48
60
74
87
79
39
47
59
75
86
78
38
46
58
76
85
77
37
45
57
77
84
76
36
44
56
78
83
75
35
43
55
79
82
74
34
42
54
80
81
73
33
41
53
81
80
72
32
40
52
82
79
71
31
39
51
83
78
70
30
38
50
84
77
69
29
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
83
84
85
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
68
28
16
30
50
82
69
55
67
27
15
31
51
81
70
54
66
26
14
32
52
80
71
53
65
25
13
33
53
79
72
52
64
24
12
34
54
78
73
51
63
23
11
35
55
77
74
50
62
22
10
36
56
76
75
49
61
21
20
19
18
17
16
15
14
13
12
11
10
9
37
57
75
76
48
49
50
51
52
53
54
55
56
57
58
59
60
8
38
58
74
77
47
7
39
59
73
78
46
6
40
60
72
79
45
5
41
59
71
80
44
4
42
58
70
81
43
3
43
57
69
82
42
2
44
56
68
83
41
1
45
46
47
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
77
76
77
78
79
80
81
82
83
84
40
0
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
41
42
43
44
45
46
47
48
49
50
51
52
53
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
76
44
40
52
64
98
75
43
39
51
63
99
74
42
38
50
62
100
73
41
37
49
61
101
72
40
36
48
60
102
71
39
35
47
59
103
70
38
34
46
58
104
69
37
33
45
57
105
68
36
32
44
56
104
67
35
31
43
55
103
66
34
30
42
54
102
65
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
36
35
34
33
32
31
30
29
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
101
64
38
24
28
40
60
74
100
63
39
23
27
39
59
75
99
62
40
22
26
38
58
76
98
61
41
21
25
37
57
77
97
60
42
20
24
36
56
78
96
59
43
19
23
35
55
79
95
58
44
18
22
34
54
80
94
57
56
55
54
53
52
51
50
49
48
47
46
45
17
21
33
53
81
82
83
84
85
86
87
88
89
90
91
92
93
46
16
20
32
52
82
47
15
19
31
51
82
48
14
18
30
50
81
47
13
17
29
49
80
46
12
16
28
48
79
45
11
15
27
47
78
44
10
14
26
46
77
43
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
76
42
0
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
53
52
51
50
49
48
47
46
45
44
43
42
41
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
98
64
52
40
44
76
99
63
51
39
43
75
100
62
50
38
42
74
101
61
49
37
41
73
102
60
48
36
40
72
103
59
47
35
39
71
104
58
46
34
38
70
105
57
45
33
37
69
104
56
44
32
36
68
103
55
43
31
35
67
102
54
42
30
34
66
101
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
29
30
31
32
33
34
35
36
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
65
100
74
60
40
28
24
38
64
99
75
59
39
27
23
39
63
98
76
58
38
26
22
40
62
97
77
57
37
25
21
41
61
96
78
56
36
24
20
42
60
95
79
55
35
23
19
43
59
94
80
54
34
22
18
44
58
93
92
91
90
89
88
87
86
85
84
83
82
81
53
33
21
17
45
46
47
48
49
50
51
52
53
54
55
56
57
82
52
32
20
16
46
82
51
31
19
15
47
81
50
30
18
14
48
80
49
29
17
13
47
79
48
28
16
12
46
78
47
27
15
11
45
77
46
26
14
10
44
76
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
43
75
38
0
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
73
72
71
70
69
68
67
66
65
64
63
62
61
49
50
51
52
53
54
55
56
57
58
59
60
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
79
87
74
60
48
40
78
86
75
59
47
39
77
85
76
58
46
38
76
84
77
57
45
37
75
83
78
56
44
36
74
82
79
55
43
35
73
81
80
54
42
34
72
80
81
53
41
33
71
79
82
52
40
32
70
78
83
51
39
31
69
77
84
50
38
30
68
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
85
84
83
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
29
67
55
69
82
50
30
16
28
66
54
70
81
51
31
15
27
65
53
71
80
52
32
14
26
64
52
72
79
53
33
13
25
63
51
73
78
54
34
12
24
62
50
74
77
55
35
11
23
61
49
75
76
56
36
10
22
60
59
58
57
56
55
54
53
52
51
50
49
48
76
75
57
37
9
10
11
12
13
14
15
16
17
18
19
20
21
47
77
74
58
38
8
46
78
73
59
39
7
45
79
72
60
40
6
44
80
71
59
41
5
43
81
70
58
42
4
42
82
69
57
43
3
41
83
68
56
44
2
40
84
83
82
81
80
79
78
77
76
77
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
47
46
45
1
39
75
42
0
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
61
60
59
58
57
56
55
54
53
52
51
50
62
63
64
65
66
67
68
69
70
71
72
73
74
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
41
49
61
75
86
78
40
48
60
76
85
77
39
47
59
77
84
76
38
46
58
78
83
75
37
45
57
79
82
74
36
44
56
80
81
73
35
43
55
81
80
72
34
42
54
82
79
71
33
41
53
83
78
70
32
40
52
84
77
69
31
39
51
83
76
68
30
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
82
83
84
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
67
29
17
31
51
81
68
54
66
28
16
32
52
80
69
53
65
27
15
33
53
79
70
52
64
26
14
34
54
78
71
51
63
25
13
35
55
77
72
50
62
24
12
36
56
76
73
49
61
23
11
37
57
75
74
48
60
22
21
20
19
18
17
16
15
14
13
12
11
10
38
58
74
75
47
48
49
50
51
52
53
54
55
56
57
58
59
9
39
59
73
76
46
8
40
60
72
77
45
7
41
59
71
78
44
6
42
58
70
79
43
5
43
57
69
80
42
4
44
56
68
81
41
3
45
55
67
82
40
2
46
47
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
76
75
76
77
78
79
80
81
82
83
39
1
41
74
38
0
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
42
43
44
45
46
47
48
49
50
51
52
53
54
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
77
45
41
53
65
99
76
44
40
52
64
100
75
43
39
51
63
101
74
42
38
50
62
102
73
41
37
49
61
103
72
40
36
48
60
104
71
39
35
47
59
105
70
38
34
46
58
106
69
37
33
45
57
105
68
36
32
44
56
104
67
35
31
43
55
103
66
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
37
36
35
34
33
32
31
30
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
102
65
39
25
29
41
61
75
101
64
40
24
28
40
60
76
100
63
41
23
27
39
59
77
99
62
42
22
26
38
58
78
98
61
43
21
25
37
57
79
97
60
44
20
24
36
56
80
96
59
45
19
23
35
55
81
95
58
57
56
55
54
53
52
51
50
49
48
47
46
18
22
34
54
82
83
84
85
86
87
88
89
90
91
92
93
94
47
17
21
33
53
82
48
16
20
32
52
81
47
15
19
31
51
80
46
14
18
30
50
79
45
13
17
29
49
78
44
12
16
28
48
77
43
11
15
27
47
76
42
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
75
41
1
39
74
40
0
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
54
53
52
51
50
49
48
47
46
45
44
43
42
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
99
65
53
41
45
77
100
64
52
40
44
76
101
63
51
39
43
75
102
62
50
38
42
74
103
61
49
37
41
73
104
60
48
36
40
72
105
59
47
35
39
71
106
58
46
34
38
70
105
57
45
33
37
69
104
56
44
32
36
68
103
55
43
31
35
67
102
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
30
31
32
33
34
35
36
37
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
66
101
75
61
41
29
25
39
65
100
76
60
40
28
24
40
64
99
77
59
39
27
23
41
63
98
78
58
38
26
22
42
62
97
79
57
37
25
21
43
61
96
80
56
36
24
20
44
60
95
81
55
35
23
19
45
59
94
93
92
91
90
89
88
87
86
85
84
83
82
54
34
22
18
46
47
48
49
50
51
52
53
54
55
56
57
58
82
53
33
21
17
47
81
52
32
20
16
48
80
51
31
19
15
47
79
50
30
18
14
46
78
49
29
17
13
45
77
48
28
16
12
44
76
47
27
15
11
43
75
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
42
74
39
1
41
73
40
0
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
74
73
72
71
70
69
68
67
66
65
64
63
62
50
51
52
53
54
55
56
57
58
59
60
61
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
78
86
75
61
49
41
77
85
76
60
48
40
76
84
77
59
47
39
75
83
78
58
46
38
74
82
79
57
45
37
73
81
80
56
44
36
72
80
81
55
43
35
71
79
82
54
42
34
70
78
83
53
41
33
69
77
84
52
40
32
68
76
83
51
39
31
67
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
84
83
82
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
30
66
54
68
81
51
31
17
29
65
53
69
80
52
32
16
28
64
52
70
79
53
33
15
27
63
51
71
78
54
34
14
26
62
50
72
77
55
35
13
25
61
49
73
76
56
36
12
24
60
48
74
75
57
37
11
23
59
58
57
56
55
54
53
52
51
50
49
48
47
75
74
58
38
10
11
12
13
14
15
16
17
18
19
20
21
22
46
76
73
59
39
9
45
77
72
60
40
8
44
78
71
59
41
7
43
79
70
58
42
6
42
80
69
57
43
5
41
81
68
56
44
4
40
82
67
55
45
3
39
83
82
81
80
79
78
77
76
75
76
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
47
46
2
38
74
41
1
37
73
40
0
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
62
61
60
59
58
57
56
55
54
53
52
51
63
64
65
66
67
68
69
70
71
72
73
74
75
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
42
50
62
76
85
77
41
49
61
77
84
76
40
48
60
78
83
75
39
47
59
79
82
74
38
46
58
80
81
73
37
45
57
81
80
72
36
44
56
82
79
71
35
43
55
83
78
70
34
42
54
84
77
69
33
41
53
83
76
68
32
40
52
82
75
67
31
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
81
82
83
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
66
30
18
32
52
80
67
53
65
29
17
33
53
79
68
52
64
28
16
34
54
78
69
51
63
27
15
35
55
77
70
50
62
26
14
36
56
76
71
49
61
25
13
37
57
75
72
48
60
24
12
38
58
74
73
47
59
23
22
21
20
19
18
17
16
15
14
13
12
11
39
59
73
74
46
47
48
49
50
51
52
53
54
55
56
57
58
10
40
60
72
75
45
9
41
59
71
76
44
8
42
58
70
77
43
7
43
57
69
78
42
6
44
56
68
79
41
5
45
55
67
80
40
4
46
54
66
81
39
3
47
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
75
74
75
76
77
78
79
80
81
82
38
2
40
73
37
1
39
72
36
0
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
43
44
45
46
47
48
49
50
51
52
53
54
55
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
78
46
42
54
66
100
77
45
41
53
65
101
76
44
40
52
64
102
75
43
39
51
63
103
74
42
38
50
62
104
73
41
37
49
61
105
72
40
36
48
60
106
71
39
35
47
59
106
70
38
34
46
58
105
69
37
33
45
57
104
68
36
32
44
56
103
67
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
38
37
36
35
34
33
32
31
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
102
66
40
26
30
42
62
76
101
65
41
25
29
41
61
77
100
64
42
24
28
40
60
78
99
63
43
23
27
39
59
79
98
62
44
22
26
38
58
80
97
61
45
21
25
37
57
81
96
60
46
20
24
36
56
82
95
59
58
57
56
55
54
53
52
51
50
49
48
47
19
23
35
55
82
83
84
85
86
87
88
89
90
91
92
93
94
48
18
22
34
54
81
47
17
21
33
53
80
46
16
20
32
52
79
45
15
19
31
51
78
44
14
18
30
50
77
43
13
17
29
49
76
42
12
16
28
48
75
41
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
74
40
2
40
73
39
1
41
72
38
0
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
55
54
53
52
51
50
49
48
47
46
45
44
43
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
100
66
54
42
46
78
101
65
53
41
45
77
102
64
52
40
44
76
103
63
51
39
43
75
104
62
50
38
42
74
105
61
49
37
41
73
106
60
48
36
40
72
106
59
47
35
39
71
105
58
46
34
38
70
104
57
45
33
37
69
103
56
44
32
36
68
102
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
31
32
33
34
35
36
37
38
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
67
101
76
62
42
30
26
40
66
100
77
61
41
29
25
41
65
99
78
60
40
28
24
42
64
98
79
59
39
27
23
43
63
97
80
58
38
26
22
44
62
96
81
57
37
25
21
45
61
95
82
56
36
24
20
46
60
94
93
92
91
90
89
88
87
86
85
84
83
82
55
35
23
19
47
48
49
50
51
52
53
54
55
56
57
58
59
81
54
34
22
18
48
80
53
33
21
17
47
79
52
32
20
16
46
78
51
31
19
15
45
77
50
30
18
14
44
76
49
29
17
13
43
75
48
28
16
12
42
74
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
41
73
40
2
40
72
41
1
39
71
42
0
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
75
74
73
72
71
70
69
68
67
66
65
64
63
51
52
53
54
55
56
57
58
59
60
61
62
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
77
85
76
62
50
42
76
84
77
61
49
41
75
83
78
60
48
40
74
82
79
59
47
39
73
81
80
58
46
38
72
80
81
57
45
37
71
79
82
56
44
36
70
78
83
55
43
35
69
77
84
54
42
34
68
76
83
53
41
33
67
75
82
52
40
32
66
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
83
82
81
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
31
65
53
67
80
52
32
18
30
64
52
68
79
53
33
17
29
63
51
69
78
54
34
16
28
62
50
70
77
55
35
15
27
61
49
71
76
56
36
14
26
60
48
72
75
57
37
13
25
59
47
73
74
58
38
12
24
58
57
56
55
54
53
52
51
50
49
48
47
46
74
73
59
39
11
12
13
14
15
16
17
18
19
20
21
22
23
45
75
72
60
40
10
44
76
71
59
41
9
43
77
70
58
42
8
42
78
69
57
43
7
41
79
68
56
44
6
40
80
67
55
45
5
39
81
66
54
46
4
38
82
81
80
79
78
77
76
75
74
75
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
47
3
37
73
40
2
36
72
39
1
35
71
38
0
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
80
81
82
83
84
85
86
86
85
84
83
82
81
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
59
67
79
80
68
60
58
66
78
79
67
59
57
65
77
78
66
58
56
64
76
77
65
57
55
63
75
76
64
56
54
62
74
75
63
55
53
61
73
74
62
54
52
60
72
73
61
53
51
59
71
72
60
52
50
58
70
71
59
51
49
57
69
70
58
50
48
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
49
47
35
49
69
70
50
36
48
46
34
50
70
71
51
35
47
45
33
51
71
72
52
34
46
44
32
52
72
73
53
33
45
43
31
53
73
74
54
32
44
42
30
54
74
75
55
31
43
41
29
55
75
76
56
30
42
40
39
38
37
36
35
34
33
32
31
30
29
28
56
76
77
57
29
30
31
32
33
34
35
36
37
38
39
40
41
27
57
75
76
58
28
26
58
74
75
59
27
25
59
73
74
60
26
24
60
72
73
61
25
23
61
71
72
62
24
22
62
70
71
63
23
21
63
69
70
64
22
20
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
21
19
55
56
20
18
54
55
19
17
53
54
18
0
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
79
80
81
82
83
84
85
86
86
85
84
83
82
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
58
66
78
81
69
61
57
65
77
80
68
60
56
64
76
79
67
59
55
63
75
78
66
58
54
62
74
77
65
57
53
61
73
76
64
56
52
60
72
75
63
55
51
59
71
74
62
54
50
58
70
73
61
53
49
57
69
72
60
52
48
56
68
71
59
51
47
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
50
46
34
48
68
71
51
37
49
45
33
49
69
72
52
36
48
44
32
50
70
73
53
35
47
43
31
51
71
74
54
34
46
42
30
52
72
75
55
33
45
41
29
53
73
76
56
32
44
40
28
54
74
77
57
31
43
39
38
37
36
35
34
33
32
31
30
29
28
27
55
75
78
58
30
31
32
33
34
35
36
37
38
39
40
41
42
26
56
74
77
59
29
25
57
73
76
60
28
24
58
72
75
61
27
23
59
71
74
62
26
22
60
70
73
63
25
21
61
69
72
64
24
20
62
68
71
65
23
19
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
22
18
54
57
21
17
53
56
20
16
52
55
19
1
0
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
78
79
80
81
82
83
84
85
86
86
85
84
83
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
57
65
77
82
70
62
56
64
76
81
69
61
55
63
75
80
68
60
54
62
74
79
67
59
53
61
73
78
66
58
52
60
72
77
65
57
51
59
71
76
64
56
50
58
70
75
63
55
49
57
69
74
62
54
48
56
68
73
61
53
47
55
67
72
60
52
46
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
51
45
33
47
67
72
52
38
50
44
32
48
68
73
53
37
49
43
31
49
69
74
54
36
48
42
30
50
70
75
55
35
47
41
29
51
71
76
56
34
46
40
28
52
72
77
57
33
45
39
27
53
73
78
58
32
44
38
37
36
35
34
33
32
31
30
29
28
27
26
54
74
79
59
31
32
33
34
35
36
37
38
39
40
41
42
43
25
55
73
78
60
30
24
56
72
77
61
29
23
57
71
76
62
28
22
58
70
75
63
27
21
59
69
74
64
26
20
60
68
73
65
25
19
61
67
72
66
24
18
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
23
17
53
58
22
16
52
57
21
15
51
56
20
2
1
0
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
77
78
79
80
81
82
83
84
85
86
86
85
84
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
56
64
76
83
71
63
55
63
75
82
70
62
54
62
74
81
69
61
53
61
73
80
68
60
52
60
72
79
67
59
51
59
71
78
66
58
50
58
70
77
65
57
49
57
69
76
64
56
48
56
68
75
63
55
47
55
67
74
62
54
46
54
66
73
61
53
45
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
52
44
32
46
66
73
53
39
51
43
31
47
67
74
54
38
50
42
30
48
68
75
55
37
49
41
29
49
69
76
56
36
48
40
28
50
70
77
57
35
47
39
27
51
71
78
58
34
46
38
26
52
72
79
59
33
45
37
36
35
34
33
32
31
30
29
28
27
26
25
53
73
80
60
32
33
34
35
36
37
38
39
40
41
42
43
44
24
54
72
79
61
31
23
55
71
78
62
30
22
56
70
77
63
29
21
57
69
76
64
28
20
58
68
75
65
27
19
59
67
74
66
26
18
60
66
73
67
25
17
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
24
16
52
59
23
15
51
58
22
14
50
57
21
3
2
1
0
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
76
77
78
79
80
81
82
83
84
85
86
86
85
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
55
63
75
84
72
64
54
62
74
83
71
63
53
61
73
82
70
62
52
60
72
81
69
61
51
59
71
80
68
60
50
58
70
79
67
59
49
57
69
78
66
58
48
56
68
77
65
57
47
55
67
76
64
56
46
54
66
75
63
55
45
53
65
74
62
54
44
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
53
43
31
45
65
74
54
40
52
42
30
46
66
75
55
39
51
41
29
47
67
76
56
38
50
40
28
48
68
77
57
37
49
39
27
49
69
78
58
36
48
38
26
50
70
79
59
35
47
37
25
51
71
80
60
34
46
36
35
34
33
32
31
30
29
28
27
26
25
24
52
72
81
61
33
34
35
36
37
38
39
40
41
42
43
44
45
23
53
71
80
62
32
22
54
70
79
63
31
21
55
69
78
64
30
20
56
68
77
65
29
19
57
67
76
66
28
18
58
66
75
67
27
17
59
65
74
68
26
16
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
25
15
51
60
24
14
50
59
23
13
49
58
22
4
3
2
1
0
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
66
65
64
63
75
76
77
78
79
80
81
82
83
84
85
86
86
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
54
62
74
85
73
65
53
61
73
84
72
64
52
60
72
83
71
63
51
59
71
82
70
62
50
58
70
81
69
61
49
57
69
80
68
60
48
56
68
79
67
59
47
55
67
78
66
58
46
54
66
77
65
57
45
53
65
76
64
56
44
52
64
75
63
55
43
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
54
42
30
44
64
75
55
41
53
41
29
45
65
76
56
40
52
40
28
46
66
77
57
39
51
39
27
47
67
78
58
38
50
38
26
48
68
79
59
37
49
37
25
49
69
80
60
36
48
36
24
50
70
81
61
35
47
35
34
33
32
31
30
29
28
27
26
25
24
23
51
71
82
62
34
35
36
37
38
39
40
41
42
43
44
45
46
22
52
70
81
63
33
21
53
69
80
64
32
20
54
68
79
65
31
19
55
67
78
66
30
18
56
66
77
67
29
17
57
65
76
68
28
16
58
64
75
69
27
15
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
26
14
50
61
25
13
49
60
24
12
48
59
23
5
4
3
2
1
0
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
65
64
63
62
74
75
76
77
78
79
80
81
82
83
84
85
86
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
53
61
73
86
74
66
52
60
72
85
73
65
51
59
71
84
72
64
50
58
70
83
71
63
49
57
69
82
70
62
48
56
68
81
69
61
47
55
67
80
68
60
46
54
66
79
67
59
45
53
65
78
66
58
44
52
64
77
65
57
43
51
63
76
64
56
42
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
55
41
29
43
63
76
56
42
54
40
28
44
64
77
57
41
53
39
27
45
65
78
58
40
52
38
26
46
66
79
59
39
51
37
25
47
67
80
60
38
50
36
24
48
68
81
61
37
49
35
23
49
69
82
62
36
48
34
33
32
31
30
29
28
27
26
25
24
23
22
50
70
82
63
35
36
37
38
39
40
41
42
43
44
45
46
47
21
51
69
81
64
34
20
52
68
80
65
33
19
53
67
79
66
32
18
54
66
78
67
31
17
55
65
77
68
30
16
56
64
76
69
29
15
57
63
75
70
28
14
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
27
13
49
62
26
12
48
61
25
11
47
60
24
6
5
4
3
2
1
0
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
64
63
62
61
73
74
75
76
77
78
79
80
81
82
83
84
85
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
52
60
72
86
75
67
51
59
71
86
74
66
50
58
70
85
73
65
49
57
69
84
72
64
48
56
68
83
71
63
47
55
67
82
70
62
46
54
66
81
69
61
45
53
65
80
68
60
44
52
64
79
67
59
43
51
63
78
66
58
42
50
62
77
65
57
41
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
56
40
28
42
62
77
57
43
55
39
27
43
63
78
58
42
54
38
26
44
64
79
59
41
53
37
25
45
65
80
60
40
52
36
24
46
66
81
61
39
51
35
23
47
67
82
62
38
50
34
22
48
68
82
63
37
49
33
32
31
30
29
28
27
26
25
24
23
22
21
49
69
81
64
36
37
38
39
40
41
42
43
44
45
46
47
48
20
50
68
80
65
35
19
51
67
79
66
34
18
52
66
78
67
33
17
53
65
77
68
32
16
54
64
76
69
31
15
55
63
75
70
30
14
56
62
74
71
29
13
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
28
12
48
63
27
11
47
62
26
10
46
61
25
7
6
5
4
3
2
1
0
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
72
73
74
75
76
77
78
79
80
81
82
83
84
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
51
59
71
85
76
68
50
58
70
86
75
67
49
57
69
86
74
66
48
56
68
85
73
65
47
55
67
84
72
64
46
54
66
83
71
63
45
53
65
82
70
62
44
52
64
81
69
61
43
51
63
80
68
60
42
50
62
79
67
59
41
49
61
78
66
58
40
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
57
39
27
41
61
78
58
44
56
38
26
42
62
79
59
43
55
37
25
43
63
80
60
42
54
36
24
44
64
81
61
41
53
35
23
45
65
82
62
40
52
34
22
46
66
82
63
39
51
33
21
47
67
81
64
38
50
32
31
30
29
28
27
26
25
24
23
22
21
20
48
68
80
65
37
38
39
40
41
42
43
44
45
46
47
48
49
19
49
67
79
66
36
18
50
66
78
67
35
17
51
65
77
68
34
16
52
64
76
69
33
15
53
63
75
70
32
14
54
62
74
71
31
13
55
61
73
72
30
12
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
29
11
47
64
28
10
46
63
27
9
45
62
26
8
7
6
5
4
3
2
1
0
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
70
69
68
67
66
65
64
63
62
61
60
59
71
72
73
74
75
76
77
78
79
80
81
82
83
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
50
58
70
84
77
69
49
57
69
85
76
68
48
56
68
86
75
67
47
55
67
86
74
66
46
54
66
85
73
65
45
53
65
84
72
64
44
52
64
83
71
63
43
51
63
82
70
62
42
50
62
81
69
61
41
49
61
80
68
60
40
48
60
79
67
59
39
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
58
38
26
40
60
79
59
45
57
37
25
41
61
80
60
44
56
36
24
42
62
81
61
43
55
35
23
43
63
82
62
42
54
34
22
44
64
82
63
41
53
33
21
45
65
81
64
40
52
32
20
46
66
80
65
39
51
31
30
29
28
27
26
25
24
23
22
21
20
19
47
67
79
66
38
39
40
41
42
43
44
45
46
47
48
49
50
18
48
66
78
67
37
17
49
65
77
68
36
16
50
64
76
69
35
15
51
63
75
70
34
14
52
62
74
71
33
13
53
61
73
72
32
12
54
60
72
73
31
11
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
30
10
46
65
29
9
45
64
28
8
44
63
27
9
8
7
6
5
4
3
2
1
0
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
69
68
67
66
65
64
63
62
61
60
59
58
70
71
72
73
74
75
76
77
78
79
80
81
82
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
49
57
69
83
78
70
48
56
68
84
77
69
47
55
67
85
76
68
46
54
66
86
75
67
45
53
65
86
74
66
44
52
64
85
73
65
43
51
63
84
72
64
42
50
62
83
71
63
41
49
61
82
70
62
40
48
60
81
69
61
39
47
59
80
68
60
38
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
59
37
25
39
59
80
60
46
58
36
24
40
60
81
61
45
57
35
23
41
61
82
62
44
56
34
22
42
62
82
63
43
55
33
21
43
63
81
64
42
54
32
20
44
64
80
65
41
53
31
19
45
65
79
66
40
52
30
29
28
27
26
25
24
23
22
21
20
19
18
46
66
78
67
39
40
41
42
43
44
45
46
47
48
49
50
51
17
47
65
77
68
38
16
48
64
76
69
37
15
49
63
75
70
36
14
50
62
74
71
35
13
51
61
73
72
34
12
52
60
72
73
33
11
53
59
71
74
32
10
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
31
9
45
66
30
8
44
65
29
7
43
64
28
10
9
8
7
6
5
4
3
2
1
0
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
68
67
66
65
64
63
62
61
60
59
58
57
69
70
71
72
73
74
75
76
77
78
79
80
81
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
48
56
68
82
79
71
47
55
67
83
78
70
46
54
66
84
77
69
45
53
65
85
76
68
44
52
64
86
75
67
43
51
63
86
74
66
42
50
62
85
73
65
41
49
61
84
72
64
40
48
60
83
71
63
39
47
59
82
70
62
38
46
58
81
69
61
37
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
60
36
24
38
58
81
61
47
59
35
23
39
59
82
62
46
58
34
22
40
60
82
63
45
57
33
21
41
61
81
64
44
56
32
20
42
62
80
65
43
55
31
19
43
63
79
66
42
54
30
18
44
64
78
67
41
53
29
28
27
26
25
24
23
22
21
20
19
18
17
45
65
77
68
40
41
42
43
44
45
46
47
48
49
50
51
52
16
46
64
76
69
39
15
47
63
75
70
38
14
48
62
74
71
37
13
49
61
73
72
36
12
50
60
72
73
35
11
51
59
71
74
34
10
52
58
70
75
33
9
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
32
8
44
67
31
7
43
66
30
6
42
65
29
11
10
9
8
7
6
5
4
3
2
1
0
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
67
66
65
64
63
62
61
60
59
58
57
56
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
47
55
67
81
80
72
46
54
66
82
79
71
45
53
65
83
78
70
44
52
64
84
77
69
43
51
63
85
76
68
42
50
62
86
75
67
41
49
61
86
74
66
40
48
60
85
73
65
39
47
59
84
72
64
38
46
58
83
71
63
37
45
57
82
70
62
36
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
61
35
23
37
57
82
62
48
60
34
22
38
58
82
63
47
59
33
21
39
59
81
64
46
58
32
20
40
60
80
65
45
57
31
19
41
61
79
66
44
56
30
18
42
62
78
67
43
55
29
17
43
63
77
68
42
54
28
27
26
25
24
23
22
21
20
19
18
17
16
44
64
76
69
41
42
43
44
45
46
47
48
49
50
51
52
53
15
45
63
75
70
40
14
46
62
74
71
39
13
47
61
73
72
38
12
48
60
72
73
37
11
49
59
71
74
36
10
50
58
70
75
35
9
51
57
69
76
34
8
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
70
71
72
73
74
75
76
77
33
7
43
68
32
6
42
67
31
5
41
66
30
12
11
10
9
8
7
6
5
4
3
2
1
0
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
66
65
64
63
62
61
60
59
58
57
56
55
67
68
69
70
71
72
73
74
75
76
77
78
79
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
46
54
66
80
81
73
45
53
65
81
80
72
44
52
64
82
79
71
43
51
63
83
78
70
42
50
62
84
77
69
41
49
61
85
76
68
40
48
60
86
75
67
39
47
59
86
74
66
38
46
58
85
73
65
37
45
57
84
72
64
36
44
56
83
71
63
35
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
62
34
22
36
56
82
63
49
61
33
21
37
57
81
64
48
60
32
20
38
58
80
65
47
59
31
19
39
59
79
66
46
58
30
18
40
60
78
67
45
57
29
17
41
61
77
68
44
56
28
16
42
62
76
69
43
55
27
26
25
24
23
22
21
20
19
18
17
16
15
43
63
75
70
42
43
44
45
46
47
48
49
50
51
52
53
54
14
44
62
74
71
41
13
45
61
73
72
40
12
46
60
72
73
39
11
47
59
71
74
38
10
48
58
70
75
37
9
49
57
69
76
36
8
50
56
68
77
35
7
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
71
72
73
74
75
76
77
78
34
6
42
69
33
5
41
68
32
4
40
67
31
13
12
11
10
9
8
7
6
5
4
3
2
1
0
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
65
64
63
62
61
60
59
58
57
56
55
54
66
67
68
69
70
71
72
73
74
75
76
77
78
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
45
53
65
79
82
74
44
52
64
80
81
73
43
51
63
81
80
72
42
50
62
82
79
71
41
49
61
83
78
70
40
48
60
84
77
69
39
47
59
85
76
68
38
46
58
86
75
67
37
45
57
85
74
66
36
44
56
84
73
65
35
43
55
83
72
64
34
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
63
33
21
35
55
81
64
50
62
32
20
36
56
80
65
49
61
31
19
37
57
79
66
48
60
30
18
38
58
78
67
47
59
29
17
39
59
77
68
46
58
28
16
40
60
76
69
45
57
27
15
41
61
75
70
44
56
26
25
24
23
22
21
20
19
18
17
16
15
14
42
62
74
71
43
44
45
46
47
48
49
50
51
52
53
54
55
13
43
61
73
72
42
12
44
60
72
73
41
11
45
59
71
74
40
10
46
58
70
75
39
9
47
57
69
76
38
8
48
56
68
77
37
7
49
55
67
78
36
6
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
72
73
74
75
76
77
78
79
35
5
41
70
34
4
40
69
33
3
39
68
32
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
64
63
62
61
60
59
58
57
56
55
54
53
65
66
67
68
69
70
71
72
73
74
75
76
77
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
44
52
64
78
83
75
43
51
63
79
82
74
42
50
62
80
81
73
41
49
61
81
80
72
40
48
60
82
79
71
39
47
59
83
78
70
38
46
58
84
77
69
37
45
57
85
76
68
36
44
56
84
75
67
35
43
55
83
74
66
34
42
54
82
73
65
33
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
64
32
20
34
54
80
65
51
63
31
19
35
55
79
66
50
62
30
18
36
56
78
67
49
61
29
17
37
57
77
68
48
60
28
16
38
58
76
69
47
59
27
15
39
59
75
70
46
58
26
14
40
60
74
71
45
57
25
24
23
22
21
20
19
18
17
16
15
14
13
41
61
73
72
44
45
46
47
48
49
50
51
52
53
54
55
56
12
42
60
72
73
43
11
43
59
71
74
42
10
44
58
70
75
41
9
45
57
69
76
40
8
46
56
68
77
39
7
47
55
67
78
38
6
48
54
66
79
37
5
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
73
74
75
76
77
78
79
80
36
4
40
71
35
3
39
70
34
2
38
69
33
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
63
62
61
60
59
58
57
56
55
54
53
52
64
65
66
67
68
69
70
71
72
73
74
75
76
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
43
51
63
77
84
76
42
50
62
78
83
75
41
49
61
79
82
74
40
48
60
80
81
73
39
47
59
81
80
72
38
46
58
82
79
71
37
45
57
83
78
70
36
44
56
84
77
69
35
43
55
83
76
68
34
42
54
82
75
67
33
41
53
81
74
66
32
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
65
31
19
33
53
79
66
52
64
30
18
34
54
78
67
51
63
29
17
35
55
77
68
50
62
28
16
36
56
76
69
49
61
27
15
37
57
75
70
48
60
26
14
38
58
74
71
47
59
25
13
39
59
73
72
46
58
24
23
22
21
20
19
18
17
16
15
14
13
12
40
60
72
73
45
46
47
48
49
50
51
52
53
54
55
56
57
11
41
59
71
74
44
10
42
58
70
75
43
9
43
57
69
76
42
8
44
56
68
77
41
7
45
55
67
78
40
6
46
54
66
79
39
5
47
53
65
80
38
4
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
74
75
76
77
78
79
80
81
37
3
39
72
36
2
38
71
35
1
37
70
34
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
44
45
46
47
48
49
50
51
52
53
54
55
56
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
79
47
43
55
67
101
78
46
42
54
66
102
77
45
41
53
65
103
76
44
40
52
64
104
75
43
39
51
63
105
74
42
38
50
62
106
73
41
37
49
61
106
72
40
36
48
60
105
71
39
35
47
59
104
70
38
34
46
58
103
69
37
33
45
57
102
68
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
39
38
37
36
35
34
33
32
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
101
67
41
27
31
43
63
77
100
66
42
26
30
42
62
78
99
65
43
25
29
41
61
79
98
64
44
24
28
40
60
80
97
63
45
23
27
39
59
81
96
62
46
22
26
38
58
82
95
61
47
21
25
37
57
82
94
60
59
58
57
56
55
54
53
52
51
50
49
48
20
24
36
56
81
82
83
84
85
86
87
88
89
90
91
92
93
47
19
23
35
55
80
46
18
22
34
54
79
45
17
21
33
53
78
44
16
20
32
52
77
43
15
19
31
51
76
42
14
18
30
50
75
41
13
17
29
49
74
40
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
73
39
3
41
72
38
2
42
71
37
1
43
70
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
0
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
56
55
54
53
52
51
50
49
48
47
46
45
44
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
101
67
55
43
47
79
102
66
54
42
46
78
103
65
53
41
45
77
104
64
52
40
44
76
105
63
51
39
43
75
106
62
50
38
42
74
106
61
49
37
41
73
105
60
48
36
40
72
104
59
47
35
39
71
103
58
46
34
38
70
102
57
45
33
37
69
101
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
32
33
34
35
36
37
38
39
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
68
100
77
63
43
31
27
41
67
99
78
62
42
30
26
42
66
98
79
61
41
29
25
43
65
97
80
60
40
28
24
44
64
96
81
59
39
27
23
45
63
95
82
58
38
26
22
46
62
94
82
57
37
25
21
47
61
93
92
91
90
89
88
87
86
85
84
83
82
81
56
36
24
20
48
49
50
51
52
53
54
55
56
57
58
59
60
80
55
35
23
19
47
79
54
34
22
18
46
78
53
33
21
17
45
77
52
32
20
16
44
76
51
31
19
15
43
75
50
30
18
14
42
74
49
29
17
13
41
73
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
40
72
41
3
39
71
42
2
38
70
43
1
37
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
44
0
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
76
75
74
73
72
71
70
69
68
67
66
65
64
52
53
54
55
56
57
58
59
60
61
62
63
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
76
84
77
63
51
43
75
83
78
62
50
42
74
82
79
61
49
41
73
81
80
60
48
40
72
80
81
59
47
39
71
79
82
58
46
38
70
78
83
57
45
37
69
77
84
56
44
36
68
76
83
55
43
35
67
75
82
54
42
34
66
74
81
53
41
33
65
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
32
64
52
66
79
53
33
19
31
63
51
67
78
54
34
18
30
62
50
68
77
55
35
17
29
61
49
69
76
56
36
16
28
60
48
70
75
57
37
15
27
59
47
71
74
58
38
14
26
58
46
72
73
59
39
13
25
57
56
55
54
53
52
51
50
49
48
47
46
45
73
72
60
40
12
13
14
15
16
17
18
19
20
21
22
23
24
44
74
71
59
41
11
43
75
70
58
42
10
42
76
69
57
43
9
41
77
68
56
44
8
40
78
67
55
45
7
39
79
66
54
46
6
38
80
65
53
47
5
37
81
80
79
78
77
76
75
74
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
4
36
72
39
3
35
71
38
2
34
70
37
1
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
69
36
0
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
77
76
75
74
73
72
71
70
69
68
67
66
65
53
54
55
56
57
58
59
60
61
62
63
64
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
75
83
78
64
52
44
74
82
79
63
51
43
73
81
80
62
50
42
72
80
81
61
49
41
71
79
82
60
48
40
70
78
83
59
47
39
69
77
84
58
46
38
68
76
85
57
45
37
67
75
84
56
44
36
66
74
83
55
43
35
65
73
82
54
42
34
64
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
33
63
51
65
80
54
34
20
32
62
50
66
79
55
35
19
31
61
49
67
78
56
36
18
30
60
48
68
77
57
37
17
29
59
47
69
76
58
38
16
28
58
46
70
75
59
39
15
27
57
45
71
74
60
40
14
26
56
55
54
53
52
51
50
49
48
47
46
45
44
72
73
61
41
13
14
15
16
17
18
19
20
21
22
23
24
25
43
73
72
60
42
12
42
74
71
59
43
11
41
75
70
58
44
10
40
76
69
57
45
9
39
77
68
56
46
8
38
78
67
55
47
7
37
79
66
54
48
6
36
80
79
78
77
76
75
74
73
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
5
35
71
40
4
34
70
39
3
33
69
38
2
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
68
37
1
0
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
78
77
76
75
74
73
72
71
70
69
68
67
66
54
55
56
57
58
59
60
61
62
63
64
65
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
74
82
79
65
53
45
73
81
80
64
52
44
72
80
81
63
51
43
71
79
82
62
50
42
70
78
83
61
49
41
69
77
84
60
48
40
68
76
85
59
47
39
67
75
86
58
46
38
66
74
85
57
45
37
65
73
84
56
44
36
64
72
83
55
43
35
63
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
34
62
50
64
81
55
35
21
33
61
49
65
80
56
36
20
32
60
48
66
79
57
37
19
31
59
47
67
78
58
38
18
30
58
46
68
77
59
39
17
29
57
45
69
76
60
40
16
28
56
44
70
75
61
41
15
27
55
54
53
52
51
50
49
48
47
46
45
44
43
71
74
62
42
14
15
16
17
18
19
20
21
22
23
24
25
26
42
72
73
61
43
13
41
73
72
60
44
12
40
74
71
59
45
11
39
75
70
58
46
10
38
76
69
57
47
9
37
77
68
56
48
8
36
78
67
55
49
7
35
79
78
77
76
75
74
73
72
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
6
34
70
41
5
33
69
40
4
32
68
39
3
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
67
38
2
1
0
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
79
78
77
76
75
74
73
72
71
70
69
68
67
55
56
57
58
59
60
61
62
63
64
65
66
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
73
81
80
66
54
46
72
80
81
65
53
45
71
79
82
64
52
44
70
78
83
63
51
43
69
77
84
62
50
42
68
76
85
61
49
41
67
75
86
60
48
40
66
74
86
59
47
39
65
73
85
58
46
38
64
72
84
57
45
37
63
71
83
56
44
36
62
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
35
61
49
63
82
56
36
22
34
60
48
64
81
57
37
21
33
59
47
65
80
58
38
20
32
58
46
66
79
59
39
19
31
57
45
67
78
60
40
18
30
56
44
68
77
61
41
17
29
55
43
69
76
62
42
16
28
54
53
52
51
50
49
48
47
46
45
44
43
42
70
75
63
43
15
16
17
18
19
20
21
22
23
24
25
26
27
41
71
74
62
44
14
40
72
73
61
45
13
39
73
72
60
46
12
38
74
71
59
47
11
37
75
70
58
48
10
36
76
69
57
49
9
35
77
68
56
50
8
34
78
77
76
75
74
73
72
71
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
7
33
69
42
6
32
68
41
5
31
67
40
4
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
66
39
3
2
1
0
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
56
57
58
59
60
61
62
63
64
65
66
67
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
72
80
81
67
55
47
71
79
82
66
54
46
70
78
83
65
53
45
69
77
84
64
52
44
68
76
85
63
51
43
67
75
86
62
50
42
66
74
86
61
49
41
65
73
85
60
48
40
64
72
84
59
47
39
63
71
83
58
46
38
62
70
82
57
45
37
61
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
36
60
48
62
82
57
37
23
35
59
47
63
82
58
38
22
34
58
46
64
81
59
39
21
33
57
45
65
80
60
40
20
32
56
44
66
79
61
41
19
31
55
43
67
78
62
42
18
30
54
42
68
77
63
43
17
29
53
52
51
50
49
48
47
46
45
44
43
42
41
69
76
64
44
16
17
18
19
20
21
22
23
24
25
26
27
28
40
70
75
63
45
15
39
71
74
62
46
14
38
72
73
61
47
13
37
73
72
60
48
12
36
74
71
59
49
11
35
75
70
58
50
10
34
76
69
57
51
9
33
77
76
75
74
73
72
71
70
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
8
32
68
43
7
31
67
42
6
30
66
41
5
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
65
40
4
3
2
1
0
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
81
80
79
78
77
76
75
74
73
72
71
70
69
57
58
59
60
61
62
63
64
65
66
67
68
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
71
79
82
68
56
48
70
78
83
67
55
47
69
77
84
66
54
46
68
76
85
65
53
45
67
75
86
64
52
44
66
74
86
63
51
43
65
73
85
62
50
42
64
72
84
61
49
41
63
71
83
60
48
40
62
70
82
59
47
39
61
69
81
58
46
38
60
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
37
59
47
61
81
58
38
24
36
58
46
62
82
59
39
23
35
57
45
63
82
60
40
22
34
56
44
64
81
61
41
21
33
55
43
65
80
62
42
20
32
54
42
66
79
63
43
19
31
53
41
67
78
64
44
18
30
52
51
50
49
48
47
46
45
44
43
42
41
40
68
77
65
45
17
18
19
20
21
22
23
24
25
26
27
28
29
39
69
76
64
46
16
38
70
75
63
47
15
37
71
74
62
48
14
36
72
73
61
49
13
35
73
72
60
50
12
34
74
71
59
51
11
33
75
70
58
52
10
32
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
9
31
67
44
8
30
66
43
7
29
65
42
6
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
64
41
5
4
3
2
1
0
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
82
81
80
79
78
77
76
75
74
73
72
71
70
58
59
60
61
62
63
64
65
66
67
68
69
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
70
78
83
69
57
49
69
77
84
68
56
48
68
76
85
67
55
47
67
75
86
66
54
46
66
74
86
65
53
45
65
73
85
64
52
44
64
72
84
63
51
43
63
71
83
62
50
42
62
70
82
61
49
41
61
69
81
60
48
40
60
68
80
59
47
39
59
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
38
58
46
60
80
59
39
25
37
57
45
61
81
60
40
24
36
56
44
62
82
61
41
23
35
55
43
63
82
62
42
22
34
54
42
64
81
63
43
21
33
53
41
65
80
64
44
20
32
52
40
66
79
65
45
19
31
51
50
49
48
47
46
45
44
43
42
41
40
39
67
78
66
46
18
19
20
21
22
23
24
25
26
27
28
29
30
38
68
77
65
47
17
37
69
76
64
48
16
36
70
75
63
49
15
35
71
74
62
50
14
34
72
73
61
51
13
33
73
72
60
52
12
32
74
71
59
53
11
31
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
10
30
66
45
9
29
65
44
8
28
64
43
7
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
63
42
6
5
4
3
2
1
0
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
83
82
81
80
79
78
77
76
75
74
73
72
71
59
60
61
62
63
64
65
66
67
68
69
70
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
69
77
84
70
58
50
68
76
85
69
57
49
67
75
86
68
56
48
66
74
86
67
55
47
65
73
85
66
54
46
64
72
84
65
53
45
63
71
83
64
52
44
62
70
82
63
51
43
61
69
81
62
50
42
60
68
80
61
49
41
59
67
79
60
48
40
58
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
39
57
45
59
79
60
40
26
38
56
44
60
80
61
41
25
37
55
43
61
81
62
42
24
36
54
42
62
82
63
43
23
35
53
41
63
82
64
44
22
34
52
40
64
81
65
45
21
33
51
39
65
80
66
46
20
32
50
49
48
47
46
45
44
43
42
41
40
39
38
66
79
67
47
19
20
21
22
23
24
25
26
27
28
29
30
31
37
67
78
66
48
18
36
68
77
65
49
17
35
69
76
64
50
16
34
70
75
63
51
15
33
71
74
62
52
14
32
72
73
61
53
13
31
73
72
60
54
12
30
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
11
29
65
46
10
28
64
45
9
27
63
44
8
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
62
43
7
6
5
4
3
2
1
0
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
84
83
82
81
80
79
78
77
76
75
74
73
72
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
68
76
85
71
59
51
67
75
86
70
58
50
66
74
86
69
57
49
65
73
85
68
56
48
64
72
84
67
55
47
63
71
83
66
54
46
62
70
82
65
53
45
61
69
81
64
52
44
60
68
80
63
51
43
59
67
79
62
50
42
58
66
78
61
49
41
57
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
40
56
44
58
78
61
41
27
39
55
43
59
79
62
42
26
38
54
42
60
80
63
43
25
37
53
41
61
81
64
44
24
36
52
40
62
82
65
45
23
35
51
39
63
82
66
46
22
34
50
38
64
81
67
47
21
33
49
48
47
46
45
44
43
42
41
40
39
38
37
65
80
68
48
20
21
22
23
24
25
26
27
28
29
30
31
32
36
66
79
67
49
19
35
67
78
66
50
18
34
68
77
65
51
17
33
69
76
64
52
16
32
70
75
63
53
15
31
71
74
62
54
14
30
72
73
61
55
13
29
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
12
28
64
47
11
27
63
46
10
26
62
45
9
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
61
44
8
7
6
5
4
3
2
1
0
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
85
84
83
82
81
80
79
78
77
76
75
74
73
61
62
63
64
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
67
75
86
72
60
52
66
74
86
71
59
51
65
73
85
70
58
50
64
72
84
69
57
49
63
71
83
68
56
48
62
70
82
67
55
47
61
69
81
66
54
46
60
68
80
65
53
45
59
67
79
64
52
44
58
66
78
63
51
43
57
65
77
62
50
42
56
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
41
55
43
57
77
62
42
28
40
54
42
58
78
63
43
27
39
53
41
59
79
64
44
26
38
52
40
60
80
65
45
25
37
51
39
61
81
66
46
24
36
50
38
62
82
67
47
23
35
49
37
63
82
68
48
22
34
48
47
46
45
44
43
42
41
40
39
38
37
36
64
81
69
49
21
22
23
24
25
26
27
28
29
30
31
32
33
35
65
80
68
50
20
34
66
79
67
51
19
33
67
78
66
52
18
32
68
77
65
53
17
31
69
76
64
54
16
30
70
75
63
55
15
29
71
74
62
56
14
28
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
13
27
63
48
12
26
62
47
11
25
61
46
10
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
60
45
9
8
7
6
5
4
3
2
1
0
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
86
85
84
83
82
81
80
79
78
77
76
75
74
62
63
64
65
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
66
74
86
73
61
53
65
73
85
72
60
52
64
72
84
71
59
51
63
71
83
70
58
50
62
70
82
69
57
49
61
69
81
68
56
48
60
68
80
67
55
47
59
67
79
66
54
46
58
66
78
65
53
45
57
65
77
64
52
44
56
64
76
63
51
43
55
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
42
54
42
56
76
63
43
29
41
53
41
57
77
64
44
28
40
52
40
58
78
65
45
27
39
51
39
59
79
66
46
26
38
50
38
60
80
67
47
25
37
49
37
61
81
68
48
24
36
48
36
62
82
69
49
23
35
47
46
45
44
43
42
41
40
39
38
37
36
35
63
82
70
50
22
23
24
25
26
27
28
29
30
31
32
33
34
34
64
81
69
51
21
33
65
80
68
52
20
32
66
79
67
53
19
31
67
78
66
54
18
30
68
77
65
55
17
29
69
76
64
56
16
28
70
75
63
57
15
27
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
14
26
62
49
13
25
61
48
12
24
60
47
11
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
59
46
10
9
8
7
6
5
4
3
2
1
0
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
86
86
85
84
83
82
81
80
79
78
77
76
75
63
64
65
66
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
65
73
85
74
62
54
64
72
84
73
61
53
63
71
83
72
60
52
62
70
82
71
59
51
61
69
81
70
58
50
60
68
80
69
57
49
59
67
79
68
56
48
58
66
78
67
55
47
57
65
77
66
54
46
56
64
76
65
53
45
55
63
75
64
52
44
54
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
43
53
41
55
75
64
44
30
42
52
40
56
76
65
45
29
41
51
39
57
77
66
46
28
40
50
38
58
78
67
47
27
39
49
37
59
79
68
48
26
38
48
36
60
80
69
49
25
37
47
35
61
81
70
50
24
36
46
45
44
43
42
41
40
39
38
37
36
35
34
62
82
71
51
23
24
25
26
27
28
29
30
31
32
33
34
35
33
63
81
70
52
22
32
64
80
69
53
21
31
65
79
68
54
20
30
66
78
67
55
19
29
67
77
66
56
18
28
68
76
65
57
17
27
69
75
64
58
16
26
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
15
25
61
50
14
24
60
49
13
23
59
48
12
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
58
47
11
10
9
8
7
6
5
4
3
2
1
0
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
85
86
86
85
84
83
82
81
80
79
78
77
76
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
64
72
84
75
63
55
63
71
83
74
62
54
62
70
82
73
61
53
61
69
81
72
60
52
60
68
80
71
59
51
59
67
79
70
58
50
58
66
78
69
57
49
57
65
77
68
56
48
56
64
76
67
55
47
55
63
75
66
54
46
54
62
74
65
53
45
53
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
44
52
40
54
74
65
45
31
43
51
39
55
75
66
46
30
42
50
38
56
76
67
47
29
41
49
37
57
77
68
48
28
40
48
36
58
78
69
49
27
39
47
35
59
79
70
50
26
38
46
34
60
80
71
51
25
37
45
44
43
42
41
40
39
38
37
36
35
34
33
61
81
72
52
24
25
26
27
28
29
30
31
32
33
34
35
36
32
62
80
71
53
23
31
63
79
70
54
22
30
64
78
69
55
21
29
65
77
68
56
20
28
66
76
67
57
19
27
67
75
66
58
18
26
68
74
65
59
17
25
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
16
24
60
51
15
23
59
50
14
22
58
49
13
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
57
48
12
11
10
9
8
7
6
5
4
3
2
1
0
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
84
85
86
86
85
84
83
82
81
80
79
78
77
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
63
71
83
76
64
56
62
70
82
75
63
55
61
69
81
74
62
54
60
68
80
73
61
53
59
67
79
72
60
52
58
66
78
71
59
51
57
65
77
70
58
50
56
64
76
69
57
49
55
63
75
68
56
48
54
62
74
67
55
47
53
61
73
66
54
46
52
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
45
51
39
53
73
66
46
32
44
50
38
54
74
67
47
31
43
49
37
55
75
68
48
30
42
48
36
56
76
69
49
29
41
47
35
57
77
70
50
28
40
46
34
58
78
71
51
27
39
45
33
59
79
72
52
26
38
44
43
42
41
40
39
38
37
36
35
34
33
32
60
80
73
53
25
26
27
28
29
30
31
32
33
34
35
36
37
31
61
79
72
54
24
30
62
78
71
55
23
29
63
77
70
56
22
28
64
76
69
57
21
27
65
75
68
58
20
26
66
74
67
59
19
25
67
73
66
60
18
24
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
17
23
59
52
16
22
58
51
15
21
57
50
14
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
56
49
13
12
11
10
9
8
7
6
5
4
3
2
1
0
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
83
84
85
86
86
85
84
83
82
81
80
79
78
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
62
70
82
77
65
57
61
69
81
76
64
56
60
68
80
75
63
55
59
67
79
74
62
54
58
66
78
73
61
53
57
65
77
72
60
52
56
64
76
71
59
51
55
63
75
70
58
50
54
62
74
69
57
49
53
61
73
68
56
48
52
60
72
67
55
47
51
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
46
50
38
52
72
67
47
33
45
49
37
53
73
68
48
32
44
48
36
54
74
69
49
31
43
47
35
55
75
70
50
30
42
46
34
56
76
71
51
29
41
45
33
57
77
72
52
28
40
44
32
58
78
73
53
27
39
43
42
41
40
39
38
37
36
35
34
33
32
31
59
79
74
54
26
27
28
29
30
31
32
33
34
35
36
37
38
30
60
78
73
55
25
29
61
77
72
56
24
28
62
76
71
57
23
27
63
75
70
58
22
26
64
74
69
59
21
25
65
73
68
60
20
24
66
72
67
61
19
23
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
18
22
58
53
17
21
57
52
16
20
56
51
15
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
55
50
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
82
83
84
85
86
86
85
84
83
82
81
80
79
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
61
69
81
78
66
58
60
68
80
77
65
57
59
67
79
76
64
56
58
66
78
75
63
55
57
65
77
74
62
54
56
64
76
73
61
53
55
63
75
72
60
52
54
62
74
71
59
51
53
61
73
70
58
50
52
60
72
69
57
49
51
59
71
68
56
48
50
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
47
49
37
51
71
68
48
34
46
48
36
52
72
69
49
33
45
47
35
53
73
70
50
32
44
46
34
54
74
71
51
31
43
45
33
55
75
72
52
30
42
44
32
56
76
73
53
29
41
43
31
57
77
74
54
28
40
42
41
40
39
38
37
36
35
34
33
32
31
30
58
78
75
55
27
28
29
30
31
32
33
34
35
36
37
38
39
29
59
77
74
56
26
28
60
76
73
57
25
27
61
75
72
58
24
26
62
74
71
59
23
25
63
73
70
60
22
24
64
72
69
61
21
23
65
71
68
62
20
22
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
19
21
57
54
18
20
56
53
17
19
55
52
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
54
51
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
81
82
83
84
85
86
86
85
84
83
82
81
80
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
60
68
80
79
67
59
59
67
79
78
66
58
58
66
78
77
65
57
57
65
77
76
64
56
56
64
76
75
63
55
55
63
75
74
62
54
54
62
74
73
61
53
53
61
73
72
60
52
52
60
72
71
59
51
51
59
71
70
58
50
50
58
70
69
57
49
49
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
48
48
36
50
70
69
49
35
47
47
35
51
71
70
50
34
46
46
34
52
72
71
51
33
45
45
33
53
73
72
52
32
44
44
32
54
74
73
53
31
43
43
31
55
75
74
54
30
42
42
30
56
76
75
55
29
41
41
40
39
38
37
36
35
34
33
32
31
30
29
57
77
76
56
28
29
30
31
32
33
34
35
36
37
38
39
40
28
58
76
75
57
27
27
59
75
74
58
26
26
60
74
73
59
25
25
61
73
72
60
24
24
62
72
71
61
23
23
63
71
70
62
22
22
64
70
69
63
21
21
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
20
20
56
55
19
19
55
54
18
18
54
53
17
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
53
52
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
77
78
79
80
81
82
83
84
85
86
87
87
86
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
56
64
76
85
73
65
55
63
75
84
72
64
54
62
74
83
71
63
53
61
73
82
70
62
52
60
72
81
69
61
51
59
71
80
68
60
50
58
70
79
67
59
49
57
69
78
66
58
48
56
68
77
65
57
47
55
67
76
64
56
46
54
66
75
63
55
45
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
54
44
32
46
66
75
55
41
53
43
31
47
67
76
56
40
52
42
30
48
68
77
57
39
51
41
29
49
69
78
58
38
50
40
28
50
70
79
59
37
49
39
27
51
71
80
60
36
48
38
26
52
72
81
61
35
47
37
36
35
34
33
32
31
30
29
28
27
26
25
53
73
82
62
34
35
36
37
38
39
40
41
42
43
44
45
46
24
54
72
81
63
33
23
55
71
80
64
32
22
56
70
79
65
31
21
57
69
78
66
30
20
58
68
77
67
29
19
59
67
76
68
28
18
60
66
75
69
27
17
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
26
16
52
61
25
15
51
60
24
14
50
59
23
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
49
58
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
0
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
64
63
62
61
60
59
58
57
56
55
54
53
65
66
67
68
69
70
71
72
73
74
75
76
77
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
44
52
64
78
85
77
43
51
63
79
84
76
42
50
62
80
83
75
41
49
61
81
82
74
40
48
60
82
81
73
39
47
59
83
80
72
38
46
58
84
79
71
37
45
57
83
78
70
36
44
56
82
77
69
35
43
55
81
76
68
34
42
54
80
75
67
33
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
66
32
20
34
54
78
67
53
65
31
19
35
55
77
68
52
64
30
18
36
56
76
69
51
63
29
17
37
57
75
70
50
62
28
16
38
58
74
71
49
61
27
15
39
59
73
72
48
60
26
14
40
60
72
73
47
59
25
24
23
22
21
20
19
18
17
16
15
14
13
41
59
71
74
46
47
48
49
50
51
52
53
54
55
56
57
58
12
42
58
70
75
45
11
43
57
69
76
44
10
44
56
68
77
43
9
45
55
67
78
42
8
46
54
66
79
41
7
47
53
65
80
40
6
48
52
64
81
39
5
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
75
76
77
78
79
80
81
82
38
4
38
73
37
3
37
72
36
2
36
71
35
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
35
70
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
14
0
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
45
46
47
48
49
50
51
52
53
54
55
56
57
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
78
48
44
56
68
102
77
47
43
55
67
103
76
46
42
54
66
104
75
45
41
53
65
105
74
44
40
52
64
106
73
43
39
51
63
106
72
42
38
50
62
105
71
41
37
49
61
104
70
40
36
48
60
103
69
39
35
47
59
102
68
38
34
46
58
101
67
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
40
39
38
37
36
35
34
33
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
100
66
42
28
32
44
64
78
99
65
43
27
31
43
63
79
98
64
44
26
30
42
62
80
97
63
45
25
29
41
61
81
96
62
46
24
28
40
60
82
95
61
47
23
27
39
59
82
94
60
48
22
26
38
58
81
93
59
58
57
56
55
54
53
52
51
50
49
48
47
21
25
37
57
80
81
82
83
84
85
86
87
88
89
90
91
92
46
20
24
36
56
79
45
19
23
35
55
78
44
18
22
34
54
77
43
17
21
33
53
76
42
16
20
32
52
75
41
15
19
31
51
74
40
14
18
30
50
73
39
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
72
38
4
42
71
37
3
43
70
36
2
44
69
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
1
45
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
48
34
0
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
57
56
55
54
53
52
51
50
49
48
47
46
45
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
102
68
56
44
48
78
103
67
55
43
47
77
104
66
54
42
46
76
105
65
53
41
45
75
106
64
52
40
44
74
106
63
51
39
43
73
105
62
50
38
42
72
104
61
49
37
41
71
103
60
48
36
40
70
102
59
47
35
39
69
101
58
46
34
38
68
100
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
33
34
35
36
37
38
39
40
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
67
99
78
64
44
32
28
42
66
98
79
63
43
31
27
43
65
97
80
62
42
30
26
44
64
96
81
61
41
29
25
45
63
95
82
60
40
28
24
46
62
94
82
59
39
27
23
47
61
93
81
58
38
26
22
48
60
92
91
90
89
88
87
86
85
84
83
82
81
80
57
37
25
21
47
48
49
50
51
52
53
54
55
56
57
58
59
79
56
36
24
20
46
78
55
35
23
19
45
77
54
34
22
18
44
76
53
33
21
17
43
75
52
32
20
16
42
74
51
31
19
15
41
73
50
30
18
14
40
72
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
39
71
42
4
38
70
43
3
37
69
44
2
36
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
45
1
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
57
69
46
0
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
77
76
75
74
73
72
71
70
69
68
67
66
65
53
54
55
56
57
58
59
60
61
62
63
64
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
77
85
78
64
52
44
76
84
79
63
51
43
75
83
80
62
50
42
74
82
81
61
49
41
73
81
82
60
48
40
72
80
83
59
47
39
71
79
84
58
46
38
70
78
83
57
45
37
69
77
82
56
44
36
68
76
81
55
43
35
67
75
80
54
42
34
66
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
33
65
53
67
78
54
34
20
32
64
52
68
77
55
35
19
31
63
51
69
76
56
36
18
30
62
50
70
75
57
37
17
29
61
49
71
74
58
38
16
28
60
48
72
73
59
39
15
27
59
47
73
72
60
40
14
26
58
57
56
55
54
53
52
51
50
49
48
47
46
74
71
59
41
13
14
15
16
17
18
19
20
21
22
23
24
25
45
75
70
58
42
12
44
76
69
57
43
11
43
77
68
56
44
10
42
78
67
55
45
9
41
79
66
54
46
8
40
80
65
53
47
7
39
81
64
52
48
6
38
82
81
80
79
78
77
76
75
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
5
37
73
38
4
36
72
37
3
35
71
36
2
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
70
35
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
23
35
69
34
0
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
86
87
87
86
85
84
83
82
81
80
79
78
77
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
65
73
85
76
64
56
64
72
84
75
63
55
63
71
83
74
62
54
62
70
82
73
61
53
61
69
81
72
60
52
60
68
80
71
59
51
59
67
79
70
58
50
58
66
78
69
57
49
57
65
77
68
56
48
56
64
76
67
55
47
55
63
75
66
54
46
54
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
45
53
41
55
75
66
46
32
44
52
40
56
76
67
47
31
43
51
39
57
77
68
48
30
42
50
38
58
78
69
49
29
41
49
37
59
79
70
50
28
40
48
36
60
80
71
51
27
39
47
35
61
81
72
52
26
38
46
45
44
43
42
41
40
39
38
37
36
35
34
62
82
73
53
25
26
27
28
29
30
31
32
33
34
35
36
37
33
63
81
72
54
24
32
64
80
71
55
23
31
65
79
70
56
22
30
66
78
69
57
21
29
67
77
68
58
20
28
68
76
67
59
19
27
69
75
66
60
18
26
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
17
25
61
52
16
24
60
51
15
23
59
50
14
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
58
49
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
11
23
57
48
14
0
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
78
79
80
81
82
83
84
85
86
87
88
88
87
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
57
65
77
86
74
66
56
64
76
85
73
65
55
63
75
84
72
64
54
62
74
83
71
63
53
61
73
82
70
62
52
60
72
81
69
61
51
59
71
80
68
60
50
58
70
79
67
59
49
57
69
78
66
58
48
56
68
77
65
57
47
55
67
76
64
56
46
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
55
45
33
47
67
76
56
42
54
44
32
48
68
77
57
41
53
43
31
49
69
78
58
40
52
42
30
50
70
79
59
39
51
41
29
51
71
80
60
38
50
40
28
52
72
81
61
37
49
39
27
53
73
82
62
36
48
38
37
36
35
34
33
32
31
30
29
28
27
26
54
74
83
63
35
36
37
38
39
40
41
42
43
44
45
46
47
25
55
73
82
64
34
24
56
72
81
65
33
23
57
71
80
66
32
22
58
70
79
67
31
21
59
69
78
68
30
20
60
68
77
69
29
19
61
67
76
70
28
18
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
27
17
53
62
26
16
52
61
25
15
51
60
24
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
50
59
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
1
15
49
58
24
12
0
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
65
64
63
62
61
60
59
58
57
56
55
54
66
67
68
69
70
71
72
73
74
75
76
77
78
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
45
53
65
79
86
78
44
52
64
80
85
77
43
51
63
81
84
76
42
50
62
82
83
75
41
49
61
83
82
74
40
48
60
84
81
73
39
47
59
83
80
72
38
46
58
82
79
71
37
45
57
81
78
70
36
44
56
80
77
69
35
43
55
79
76
68
34
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
67
33
21
35
55
77
68
54
66
32
20
36
56
76
69
53
65
31
19
37
57
75
70
52
64
30
18
38
58
74
71
51
63
29
17
39
59
73
72
50
62
28
16
40
60
72
73
49
61
27
15
41
59
71
74
48
60
26
25
24
23
22
21
20
19
18
17
16
15
14
42
58
70
75
47
48
49
50
51
52
53
54
55
56
57
58
59
13
43
57
69
76
46
12
44
56
68
77
45
11
45
55
67
78
44
10
46
54
66
79
43
9
47
53
65
80
42
8
48
52
64
81
41
7
47
51
63
82
40
6
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
39
5
37
73
38
4
36
72
37
3
35
71
36
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
34
70
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
15
1
33
69
36
24
16
0
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
46
47
48
49
50
51
52
53
54
55
56
57
58
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
77
49
45
57
69
103
76
48
44
56
68
104
75
47
43
55
67
105
74
46
42
54
66
106
73
45
41
53
65
106
72
44
40
52
64
105
71
43
39
51
63
104
70
42
38
50
62
103
69
41
37
49
61
102
68
40
36
48
60
101
67
39
35
47
59
100
66
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
41
40
39
38
37
36
35
34
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
99
65
43
29
33
45
65
79
98
64
44
28
32
44
64
80
97
63
45
27
31
43
63
81
96
62
46
26
30
42
62
82
95
61
47
25
29
41
61
82
94
60
48
24
28
40
60
81
93
59
47
23
27
39
59
80
92
58
57
56
55
54
53
52
51
50
49
48
47
46
22
26
38
58
79
80
81
82
83
84
85
86
87
88
89
90
91
45
21
25
37
57
78
44
20
24
36
56
77
43
19
23
35
55
76
42
18
22
34
54
75
41
17
21
33
53
74
40
16
20
32
52
73
39
15
19
31
51
72
38
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
71
37
5
43
70
36
4
44
69
35
3
45
68
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
2
46
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
47
33
1
47
68
56
48
32
0
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
58
57
56
55
54
53
52
51
50
49
48
47
46
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
103
69
57
45
49
77
104
68
56
44
48
76
105
67
55
43
47
75
106
66
54
42
46
74
106
65
53
41
45
73
105
64
52
40
44
72
104
63
51
39
43
71
103
62
50
38
42
70
102
61
49
37
41
69
101
60
48
36
40
68
100
59
47
35
39
67
99
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
34
35
36
37
38
39
40
41
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
66
98
79
65
45
33
29
43
65
97
80
64
44
32
28
44
64
96
81
63
43
31
27
45
63
95
82
62
42
30
26
46
62
94
82
61
41
29
25
47
61
93
81
60
40
28
24
48
60
92
80
59
39
27
23
47
59
91
90
89
88
87
86
85
84
83
82
81
80
79
58
38
26
22
46
47
48
49
50
51
52
53
54
55
56
57
58
78
57
37
25
21
45
77
56
36
24
20
44
76
55
35
23
19
43
75
54
34
22
18
42
74
53
33
21
17
41
73
52
32
20
16
40
72
51
31
19
15
39
71
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
38
70
43
5
37
69
44
4
36
68
45
3
35
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
46
2
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
56
68
47
1
33
47
57
68
48
0
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
78
77
76
75
74
73
72
71
70
69
68
67
66
54
55
56
57
58
59
60
61
62
63
64
65
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
78
86
79
65
53
45
77
85
80
64
52
44
76
84
81
63
51
43
75
83
82
62
50
42
74
82
83
61
49
41
73
81
84
60
48
40
72
80
83
59
47
39
71
79
82
58
46
38
70
78
81
57
45
37
69
77
80
56
44
36
68
76
79
55
43
35
67
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
34
66
54
68
77
55
35
21
33
65
53
69
76
56
36
20
32
64
52
70
75
57
37
19
31
63
51
71
74
58
38
18
30
62
50
72
73
59
39
17
29
61
49
73
72
60
40
16
28
60
48
74
71
59
41
15
27
59
58
57
56
55
54
53
52
51
50
49
48
47
75
70
58
42
14
15
16
17
18
19
20
21
22
23
24
25
26
46
76
69
57
43
13
45
77
68
56
44
12
44
78
67
55
45
11
43
79
66
54
46
10
42
80
65
53
47
9
41
81
64
52
48
8
40
82
63
51
47
7
39
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
6
38
73
37
5
37
72
36
4
36
71
35
3
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
70
34
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
24
36
69
33
1
15
25
37
68
32
0
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
87
88
88
87
86
85
84
83
82
81
80
79
78
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
66
74
86
77
65
57
65
73
85
76
64
56
64
72
84
75
63
55
63
71
83
74
62
54
62
70
82
73
61
53
61
69
81
72
60
52
60
68
80
71
59
51
59
67
79
70
58
50
58
66
78
69
57
49
57
65
77
68
56
48
56
64
76
67
55
47
55
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
46
54
42
56
76
67
47
33
45
53
41
57
77
68
48
32
44
52
40
58
78
69
49
31
43
51
39
59
79
70
50
30
42
50
38
60
80
71
51
29
41
49
37
61
81
72
52
28
40
48
36
62
82
73
53
27
39
47
46
45
44
43
42
41
40
39
38
37
36
35
63
83
74
54
26
27
28
29
30
31
32
33
34
35
36
37
38
34
64
82
73
55
25
33
65
81
72
56
24
32
66
80
71
57
23
31
67
79
70
58
22
30
68
78
69
59
21
29
69
77
68
60
20
28
70
76
67
61
19
27
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
18
26
62
53
17
25
61
52
16
24
60
51
15
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
59
50
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
12
24
58
49
15
1
13
25
57
48
16
0
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
79
80
81
82
83
84
85
86
87
88
89
89
88
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
58
66
78
87
75
67
57
65
77
86
74
66
56
64
76
85
73
65
55
63
75
84
72
64
54
62
74
83
71
63
53
61
73
82
70
62
52
60
72
81
69
61
51
59
71
80
68
60
50
58
70
79
67
59
49
57
69
78
66
58
48
56
68
77
65
57
47
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
56
46
34
48
68
77
57
43
55
45
33
49
69
78
58
42
54
44
32
50
70
79
59
41
53
43
31
51
71
80
60
40
52
42
30
52
72
81
61
39
51
41
29
53
73
82
62
38
50
40
28
54
74
83
63
37
49
39
38
37
36
35
34
33
32
31
30
29
28
27
55
75
84
64
36
37
38
39
40
41
42
43
44
45
46
47
48
26
56
74
83
65
35
25
57
73
82
66
34
24
58
72
81
67
33
23
59
71
80
68
32
22
60
70
79
69
31
21
61
69
78
70
30
20
62
68
77
71
29
19
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
28
18
54
63
27
17
53
62
26
16
52
61
25
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
51
60
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
2
16
50
59
25
13
1
17
49
58
26
14
0
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
66
65
64
63
62
61
60
59
58
57
56
55
67
68
69
70
71
72
73
74
75
76
77
78
79
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
46
54
66
80
87
79
45
53
65
81
86
78
44
52
64
82
85
77
43
51
63
83
84
76
42
50
62
84
83
75
41
49
61
83
82
74
40
48
60
82
81
73
39
47
59
81
80
72
38
46
58
80
79
71
37
45
57
79
78
70
36
44
56
78
77
69
35
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
68
34
22
36
56
76
69
55
67
33
21
37
57
75
70
54
66
32
20
38
58
74
71
53
65
31
19
39
59
73
72
52
64
30
18
40
60
72
73
51
63
29
17
41
59
71
74
50
62
28
16
42
58
70
75
49
61
27
26
25
24
23
22
21
20
19
18
17
16
15
43
57
69
76
48
49
50
51
52
53
54
55
56
57
58
59
60
14
44
56
68
77
47
13
45
55
67
78
46
12
46
54
66
79
45
11
47
53
65
80
44
10
48
52
64
81
43
9
47
51
63
82
42
8
46
50
62
82
41
7
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
40
6
36
72
39
5
35
71
38
4
34
70
37
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
33
69
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
16
2
32
68
37
25
17
1
31
67
38
26
18
0
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
47
48
49
50
51
52
53
54
55
56
57
58
59
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
76
50
46
58
70
104
75
49
45
57
69
105
74
48
44
56
68
106
73
47
43
55
67
106
72
46
42
54
66
105
71
45
41
53
65
104
70
44
40
52
64
103
69
43
39
51
63
102
68
42
38
50
62
101
67
41
37
49
61
100
66
40
36
48
60
99
65
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
42
41
40
39
38
37
36
35
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
98
64
44
30
34
46
66
80
97
63
45
29
33
45
65
81
96
62
46
28
32
44
64
82
95
61
47
27
31
43
63
82
94
60
48
26
30
42
62
81
93
59
47
25
29
41
61
80
92
58
46
24
28
40
60
79
91
57
56
55
54
53
52
51
50
49
48
47
46
45
23
27
39
59
78
79
80
81
82
83
84
85
86
87
88
89
90
44
22
26
38
58
77
43
21
25
37
57
76
42
20
24
36
56
75
41
19
23
35
55
74
40
18
22
34
54
73
39
17
21
33
53
72
38
16
20
32
52
71
37
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
70
36
6
44
69
35
5
45
68
34
4
46
67
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
3
47
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
46
32
2
48
67
55
47
31
1
47
67
56
48
30
0
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
59
58
57
56
55
54
53
52
51
50
49
48
47
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
104
70
58
46
50
76
105
69
57
45
49
75
106
68
56
44
48
74
106
67
55
43
47
73
105
66
54
42
46
72
104
65
53
41
45
71
103
64
52
40
44
70
102
63
51
39
43
69
101
62
50
38
42
68
100
61
49
37
41
67
99
60
48
36
40
66
98
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
35
36
37
38
39
40
41
42
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
65
97
80
66
46
34
30
44
64
96
81
65
45
33
29
45
63
95
82
64
44
32
28
46
62
94
82
63
43
31
27
47
61
93
81
62
42
30
26
48
60
92
80
61
41
29
25
47
59
91
79
60
40
28
24
46
58
90
89
88
87
86
85
84
83
82
81
80
79
78
59
39
27
23
45
46
47
48
49
50
51
52
53
54
55
56
57
77
58
38
26
22
44
76
57
37
25
21
43
75
56
36
24
20
42
74
55
35
23
19
41
73
54
34
22
18
40
72
53
33
21
17
39
71
52
32
20
16
38
70
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
37
69
44
6
36
68
45
5
35
67
46
4
34
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
47
3
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
55
67
48
2
32
46
56
67
47
1
31
47
57
66
46
0
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
79
78
77
76
75
74
73
72
71
70
69
68
67
55
56
57
58
59
60
61
62
63
64
65
66
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
79
87
80
66
54
46
78
86
81
65
53
45
77
85
82
64
52
44
76
84
83
63
51
43
75
83
84
62
50
42
74
82
83
61
49
41
73
81
82
60
48
40
72
80
81
59
47
39
71
79
80
58
46
38
70
78
79
57
45
37
69
77
78
56
44
36
68
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
35
67
55
69
76
56
36
22
34
66
54
70
75
57
37
21
33
65
53
71
74
58
38
20
32
64
52
72
73
59
39
19
31
63
51
73
72
60
40
18
30
62
50
74
71
59
41
17
29
61
49
75
70
58
42
16
28
60
59
58
57
56
55
54
53
52
51
50
49
48
76
69
57
43
15
16
17
18
19
20
21
22
23
24
25
26
27
47
77
68
56
44
14
46
78
67
55
45
13
45
79
66
54
46
12
44
80
65
53
47
11
43
81
64
52
48
10
42
82
63
51
47
9
41
82
62
50
46
8
40
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
7
39
72
36
6
38
71
35
5
37
70
34
4
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
69
33
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
25
37
68
32
2
16
26
38
67
31
1
17
27
39
66
30
0
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
88
89
89
88
87
86
85
84
83
82
81
80
79
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
67
75
87
78
66
58
66
74
86
77
65
57
65
73
85
76
64
56
64
72
84
75
63
55
63
71
83
74
62
54
62
70
82
73
61
53
61
69
81
72
60
52
60
68
80
71
59
51
59
67
79
70
58
50
58
66
78
69
57
49
57
65
77
68
56
48
56
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
47
55
43
57
77
68
48
34
46
54
42
58
78
69
49
33
45
53
41
59
79
70
50
32
44
52
40
60
80
71
51
31
43
51
39
61
81
72
52
30
42
50
38
62
82
73
53
29
41
49
37
63
83
74
54
28
40
48
47
46
45
44
43
42
41
40
39
38
37
36
64
84
75
55
27
28
29
30
31
32
33
34
35
36
37
38
39
35
65
83
74
56
26
34
66
82
73
57
25
33
67
81
72
58
24
32
68
80
71
59
23
31
69
79
70
60
22
30
70
78
69
61
21
29
71
77
68
62
20
28
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
19
27
63
54
18
26
62
53
17
25
61
52
16
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
60
51
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
13
25
59
50
16
2
14
26
58
49
17
1
15
27
57
48
18
0
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
80
81
82
83
84
85
86
87
88
89
90
90
89
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
59
67
79
88
76
68
58
66
78
87
75
67
57
65
77
86
74
66
56
64
76
85
73
65
55
63
75
84
72
64
54
62
74
83
71
63
53
61
73
82
70
62
52
60
72
81
69
61
51
59
71
80
68
60
50
58
70
79
67
59
49
57
69
78
66
58
48
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
57
47
35
49
69
78
58
44
56
46
34
50
70
79
59
43
55
45
33
51
71
80
60
42
54
44
32
52
72
81
61
41
53
43
31
53
73
82
62
40
52
42
30
54
74
83
63
39
51
41
29
55
75
84
64
38
50
40
39
38
37
36
35
34
33
32
31
30
29
28
56
76
85
65
37
38
39
40
41
42
43
44
45
46
47
48
49
27
57
75
84
66
36
26
58
74
83
67
35
25
59
73
82
68
34
24
60
72
81
69
33
23
61
71
80
70
32
22
62
70
79
71
31
21
63
69
78
72
30
20
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
29
19
55
64
28
18
54
63
27
17
53
62
26
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
52
61
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
3
17
51
60
26
14
2
18
50
59
27
15
1
19
49
58
28
16
0
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
67
66
65
64
63
62
61
60
59
58
57
56
68
69
70
71
72
73
74
75
76
77
78
79
80
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
47
55
67
81
88
80
46
54
66
82
87
79
45
53
65
83
86
78
44
52
64
84
85
77
43
51
63
83
84
76
42
50
62
82
83
75
41
49
61
81
82
74
40
48
60
80
81
73
39
47
59
79
80
72
38
46
58
78
79
71
37
45
57
77
78
70
36
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
69
35
23
37
57
75
70
56
68
34
22
38
58
74
71
55
67
33
21
39
59
73
72
54
66
32
20
40
60
72
73
53
65
31
19
41
59
71
74
52
64
30
18
42
58
70
75
51
63
29
17
43
57
69
76
50
62
28
27
26
25
24
23
22
21
20
19
18
17
16
44
56
68
77
49
50
51
52
53
54
55
56
57
58
59
60
61
15
45
55
67
78
48
14
46
54
66
79
47
13
47
53
65
80
46
12
48
52
64
81
45
11
47
51
63
82
44
10
46
50
62
82
43
9
45
49
61
81
42
8
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
41
7
35
71
40
6
34
70
39
5
33
69
38
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
32
68
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
17
3
31
67
38
26
18
2
30
66
39
27
19
1
29
65
40
28
20
0
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
48
49
50
51
52
53
54
55
56
57
58
59
60
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
75
51
47
59
71
105
74
50
46
58
70
106
73
49
45
57
69
106
72
48
44
56
68
105
71
47
43
55
67
104
70
46
42
54
66
103
69
45
41
53
65
102
68
44
40
52
64
101
67
43
39
51
63
100
66
42
38
50
62
99
65
41
37
49
61
98
64
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
43
42
41
40
39
38
37
36
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
97
63
45
31
35
47
67
81
96
62
46
30
34
46
66
82
95
61
47
29
33
45
65
82
94
60
48
28
32
44
64
81
93
59
47
27
31
43
63
80
92
58
46
26
30
42
62
79
91
57
45
25
29
41
61
78
90
56
55
54
53
52
51
50
49
48
47
46
45
44
24
28
40
60
77
78
79
80
81
82
83
84
85
86
87
88
89
43
23
27
39
59
76
42
22
26
38
58
75
41
21
25
37
57
74
40
20
24
36
56
73
39
19
23
35
55
72
38
18
22
34
54
71
37
17
21
33
53
70
36
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
69
35
7
45
68
34
6
46
67
33
5
47
66
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
4
48
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
45
31
3
47
66
54
46
30
2
46
66
55
47
29
1
45
65
56
48
28
0
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
60
59
58
57
56
55
54
53
52
51
50
49
48
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
105
71
59
47
51
75
106
70
58
46
50
74
106
69
57
45
49
73
105
68
56
44
48
72
104
67
55
43
47
71
103
66
54
42
46
70
102
65
53
41
45
69
101
64
52
40
44
68
100
63
51
39
43
67
99
62
50
38
42
66
98
61
49
37
41
65
97
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
36
37
38
39
40
41
42
43
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
64
96
81
67
47
35
31
45
63
95
82
66
46
34
30
46
62
94
82
65
45
33
29
47
61
93
81
64
44
32
28
48
60
92
80
63
43
31
27
47
59
91
79
62
42
30
26
46
58
90
78
61
41
29
25
45
57
89
88
87
86
85
84
83
82
81
80
79
78
77
60
40
28
24
44
45
46
47
48
49
50
51
52
53
54
55
56
76
59
39
27
23
43
75
58
38
26
22
42
74
57
37
25
21
41
73
56
36
24
20
40
72
55
35
23
19
39
71
54
34
22
18
38
70
53
33
21
17
37
69
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
36
68
45
7
35
67
46
6
34
66
47
5
33
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
48
4
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
54
66
47
3
31
45
55
66
46
2
30
46
56
65
45
1
29
47
57
64
44
0
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
80
79
78
77
76
75
74
73
72
71
70
69
68
56
57
58
59
60
61
62
63
64
65
66
67
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
80
88
81
67
55
47
79
87
82
66
54
46
78
86
83
65
53
45
77
85
84
64
52
44
76
84
83
63
51
43
75
83
82
62
50
42
74
82
81
61
49
41
73
81
80
60
48
40
72
80
79
59
47
39
71
79
78
58
46
38
70
78
77
57
45
37
69
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
36
68
56
70
75
57
37
23
35
67
55
71
74
58
38
22
34
66
54
72
73
59
39
21
33
65
53
73
72
60
40
20
32
64
52
74
71
59
41
19
31
63
51
75
70
58
42
18
30
62
50
76
69
57
43
17
29
61
60
59
58
57
56
55
54
53
52
51
50
49
77
68
56
44
16
17
18
19
20
21
22
23
24
25
26
27
28
48
78
67
55
45
15
47
79
66
54
46
14
46
80
65
53
47
13
45
81
64
52
48
12
44
82
63
51
47
11
43
82
62
50
46
10
42
81
61
49
45
9
41
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
8
40
71
35
7
39
70
34
6
38
69
33
5
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
68
32
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
26
38
67
31
3
17
27
39
66
30
2
18
28
40
65
29
1
19
29
41
64
28
0
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
89
90
90
89
88
87
86
85
84
83
82
81
80
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
68
76
88
79
67
59
67
75
87
78
66
58
66
74
86
77
65
57
65
73
85
76
64
56
64
72
84
75
63
55
63
71
83
74
62
54
62
70
82
73
61
53
61
69
81
72
60
52
60
68
80
71
59
51
59
67
79
70
58
50
58
66
78
69
57
49
57
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
48
56
44
58
78
69
49
35
47
55
43
59
79
70
50
34
46
54
42
60
80
71
51
33
45
53
41
61
81
72
52
32
44
52
40
62
82
73
53
31
43
51
39
63
83
74
54
30
42
50
38
64
84
75
55
29
41
49
48
47
46
45
44
43
42
41
40
39
38
37
65
85
76
56
28
29
30
31
32
33
34
35
36
37
38
39
40
36
66
84
75
57
27
35
67
83
74
58
26
34
68
82
73
59
25
33
69
81
72
60
24
32
70
80
71
61
23
31
71
79
70
62
22
30
72
78
69
63
21
29
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
20
28
64
55
19
27
63
54
18
26
62
53
17
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
61
52
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
14
26
60
51
17
3
15
27
59
50
18
2
16
28
58
49
19
1
17
29
57
48
20
0
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
81
82
83
84
85
86
87
88
89
90
91
91
90
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
60
68
80
89
77
69
59
67
79
88
76
68
58
66
78
87
75
67
57
65
77
86
74
66
56
64
76
85
73
65
55
63
75
84
72
64
54
62
74
83
71
63
53
61
73
82
70
62
52
60
72
81
69
61
51
59
71
80
68
60
50
58
70
79
67
59
49
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
58
48
36
50
70
79
59
45
57
47
35
51
71
80
60
44
56
46
34
52
72
81
61
43
55
45
33
53
73
82
62
42
54
44
32
54
74
83
63
41
53
43
31
55
75
84
64
40
52
42
30
56
76
85
65
39
51
41
40
39
38
37
36
35
34
33
32
31
30
29
57
77
86
66
38
39
40
41
42
43
44
45
46
47
48
49
50
28
58
76
85
67
37
27
59
75
84
68
36
26
60
74
83
69
35
25
61
73
82
70
34
24
62
72
81
71
33
23
63
71
80
72
32
22
64
70
79
73
31
21
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
30
20
56
65
29
19
55
64
28
18
54
63
27
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
53
62
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
4
18
52
61
27
15
3
19
51
60
28
16
2
20
50
59
29
17
1
21
49
58
30
18
0
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
68
67
66
65
64
63
62
61
60
59
58
57
69
70
71
72
73
74
75
76
77
78
79
80
81
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
48
56
68
82
89
81
47
55
67
83
88
80
46
54
66
84
87
79
45
53
65
83
86
78
44
52
64
82
85
77
43
51
63
81
84
76
42
50
62
80
83
75
41
49
61
79
82
74
40
48
60
78
81
73
39
47
59
77
80
72
38
46
58
76
79
71
37
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
70
36
24
38
58
74
71
57
69
35
23
39
59
73
72
56
68
34
22
40
60
72
73
55
67
33
21
41
59
71
74
54
66
32
20
42
58
70
75
53
65
31
19
43
57
69
76
52
64
30
18
44
56
68
77
51
63
29
28
27
26
25
24
23
22
21
20
19
18
17
45
55
67
78
50
51
52
53
54
55
56
57
58
59
60
61
62
16
46
54
66
79
49
15
47
53
65
80
48
14
48
52
64
81
47
13
47
51
63
82
46
12
46
50
62
82
45
11
45
49
61
81
44
10
44
48
60
80
43
9
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
42
8
34
70
41
7
33
69
40
6
32
68
39
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
31
67
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
18
4
30
66
39
27
19
3
29
65
40
28
20
2
28
64
41
29
21
1
27
63
42
30
22
0
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
49
50
51
52
53
54
55
56
57
58
59
60
61
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
74
52
48
60
72
106
73
51
47
59
71
106
72
50
46
58
70
105
71
49
45
57
69
104
70
48
44
56
68
103
69
47
43
55
67
102
68
46
42
54
66
101
67
45
41
53
65
100
66
44
40
52
64
99
65
43
39
51
63
98
64
42
38
50
62
97
63
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
44
43
42
41
40
39
38
37
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
96
62
46
32
36
48
68
82
95
61
47
31
35
47
67
82
94
60
48
30
34
46
66
81
93
59
47
29
33
45
65
80
92
58
46
28
32
44
64
79
91
57
45
27
31
43
63
78
90
56
44
26
30
42
62
77
89
55
54
53
52
51
50
49
48
47
46
45
44
43
25
29
41
61
76
77
78
79
80
81
82
83
84
85
86
87
88
42
24
28
40
60
75
41
23
27
39
59
74
40
22
26
38
58
73
39
21
25
37
57
72
38
20
24
36
56
71
37
19
23
35
55
70
36
18
22
34
54
69
35
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
68
34
8
46
67
33
7
47
66
32
6
48
65
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
5
47
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
44
30
4
46
65
53
45
29
3
45
65
54
46
28
2
44
64
55
47
27
1
43
63
56
48
26
0
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
61
60
59
58
57
56
55
54
53
52
51
50
49
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
106
72
60
48
52
74
106
71
59
47
51
73
105
70
58
46
50
72
104
69
57
45
49
71
103
68
56
44
48
70
102
67
55
43
47
69
101
66
54
42
46
68
100
65
53
41
45
67
99
64
52
40
44
66
98
63
51
39
43
65
97
62
50
38
42
64
96
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
37
38
39
40
41
42
43
44
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
63
95
82
68
48
36
32
46
62
94
82
67
47
35
31
47
61
93
81
66
46
34
30
48
60
92
80
65
45
33
29
47
59
91
79
64
44
32
28
46
58
90
78
63
43
31
27
45
57
89
77
62
42
30
26
44
56
88
87
86
85
84
83
82
81
80
79
78
77
76
61
41
29
25
43
44
45
46
47
48
49
50
51
52
53
54
55
75
60
40
28
24
42
74
59
39
27
23
41
73
58
38
26
22
40
72
57
37
25
21
39
71
56
36
24
20
38
70
55
35
23
19
37
69
54
34
22
18
36
68
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
35
67
46
8
34
66
47
7
33
65
48
6
32
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
47
5
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
53
65
46
4
30
44
54
65
45
3
29
45
55
64
44
2
28
46
56
63
43
1
27
47
57
62
42
0
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
81
80
79
78
77
76
75
74
73
72
71
70
69
57
58
59
60
61
62
63
64
65
66
67
68
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
81
89
82
68
56
48
80
88
83
67
55
47
79
87
84
66
54
46
78
86
83
65
53
45
77
85
82
64
52
44
76
84
81
63
51
43
75
83
80
62
50
42
74
82
79
61
49
41
73
81
78
60
48
40
72
80
77
59
47
39
71
79
76
58
46
38
70
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
37
69
57
71
74
58
38
24
36
68
56
72
73
59
39
23
35
67
55
73
72
60
40
22
34
66
54
74
71
59
41
21
33
65
53
75
70
58
42
20
32
64
52
76
69
57
43
19
31
63
51
77
68
56
44
18
30
62
61
60
59
58
57
56
55
54
53
52
51
50
78
67
55
45
17
18
19
20
21
22
23
24
25
26
27
28
29
49
79
66
54
46
16
48
80
65
53
47
15
47
81
64
52
48
14
46
82
63
51
47
13
45
82
62
50
46
12
44
81
61
49
45
11
43
80
60
48
44
10
42
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
9
41
70
34
8
40
69
33
7
39
68
32
6
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
67
31
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
27
39
66
30
4
18
28
40
65
29
3
19
29
41
64
28
2
20
30
42
63
27
1
21
31
43
62
26
0
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
90
91
91
90
89
88
87
86
85
84
83
82
81
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
69
77
89
80
68
60
68
76
88
79
67
59
67
75
87
78
66
58
66
74
86
77
65
57
65
73
85
76
64
56
64
72
84
75
63
55
63
71
83
74
62
54
62
70
82
73
61
53
61
69
81
72
60
52
60
68
80
71
59
51
59
67
79
70
58
50
58
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
49
57
45
59
79
70
50
36
48
56
44
60
80
71
51
35
47
55
43
61
81
72
52
34
46
54
42
62
82
73
53
33
45
53
41
63
83
74
54
32
44
52
40
64
84
75
55
31
43
51
39
65
85
76
56
30
42
50
49
48
47
46
45
44
43
42
41
40
39
38
66
86
77
57
29
30
31
32
33
34
35
36
37
38
39
40
41
37
67
85
76
58
28
36
68
84
75
59
27
35
69
83
74
60
26
34
70
82
73
61
25
33
71
81
72
62
24
32
72
80
71
63
23
31
73
79
70
64
22
30
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
21
29
65
56
20
28
64
55
19
27
63
54
18
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
62
53
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
15
27
61
52
18
4
16
28
60
51
19
3
17
29
59
50
20
2
18
30
58
49
21
1
19
31
57
48
22
0
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
82
83
84
85
86
87
88
89
90
91
92
92
91
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
61
69
81
90
78
70
60
68
80
89
77
69
59
67
79
88
76
68
58
66
78
87
75
67
57
65
77
86
74
66
56
64
76
85
73
65
55
63
75
84
72
64
54
62
74
83
71
63
53
61
73
82
70
62
52
60
72
81
69
61
51
59
71
80
68
60
50
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
59
49
37
51
71
80
60
46
58
48
36
52
72
81
61
45
57
47
35
53
73
82
62
44
56
46
34
54
74
83
63
43
55
45
33
55
75
84
64
42
54
44
32
56
76
85
65
41
53
43
31
57
77
86
66
40
52
42
41
40
39
38
37
36
35
34
33
32
31
30
58
78
87
67
39
40
41
42
43
44
45
46
47
48
49
50
51
29
59
77
86
68
38
28
60
76
85
69
37
27
61
75
84
70
36
26
62
74
83
71
35
25
63
73
82
72
34
24
64
72
81
73
33
23
65
71
80
74
32
22
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
31
21
57
66
30
20
56
65
29
19
55
64
28
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
54
63
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
5
19
53
62
28
16
4
20
52
61
29
17
3
21
51
60
30
18
2
22
50
59
31
19
1
23
49
58
32
20
0
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
69
68
67
66
65
64
63
62
61
60
59
58
70
71
72
73
74
75
76
77
78
79
80
81
82
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
49
57
69
83
90
82
48
56
68
84
89
81
47
55
67
83
88
80
46
54
66
82
87
79
45
53
65
81
86
78
44
52
64
80
85
77
43
51
63
79
84
76
42
50
62
78
83
75
41
49
61
77
82
74
40
48
60
76
81
73
39
47
59
75
80
72
38
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
71
37
25
39
59
73
72
58
70
36
24
40
60
72
73
57
69
35
23
41
59
71
74
56
68
34
22
42
58
70
75
55
67
33
21
43
57
69
76
54
66
32
20
44
56
68
77
53
65
31
19
45
55
67
78
52
64
30
29
28
27
26
25
24
23
22
21
20
19
18
46
54
66
79
51
52
53
54
55
56
57
58
59
60
61
62
63
17
47
53
65
80
50
16
48
52
64
81
49
15
47
51
63
82
48
14
46
50
62
82
47
13
45
49
61
81
46
12
44
48
60
80
45
11
43
47
59
79
44
10
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
43
9
33
69
42
8
32
68
41
7
31
67
40
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
30
66
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
19
5
29
65
40
28
20
4
28
64
41
29
21
3
27
63
42
30
22
2
26
62
43
31
23
1
25
61
44
32
24
0
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
50
51
52
53
54
55
56
57
58
59
60
61
62
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
73
53
49
61
73
106
72
52
48
60
72
105
71
51
47
59
71
104
70
50
46
58
70
103
69
49
45
57
69
102
68
48
44
56
68
101
67
47
43
55
67
100
66
46
42
54
66
99
65
45
41
53
65
98
64
44
40
52
64
97
63
43
39
51
63
96
62
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
45
44
43
42
41
40
39
38
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
95
61
47
33
37
49
69
82
94
60
48
32
36
48
68
81
93
59
47
31
35
47
67
80
92
58
46
30
34
46
66
79
91
57
45
29
33
45
65
78
90
56
44
28
32
44
64
77
89
55
43
27
31
43
63
76
88
54
53
52
51
50
49
48
47
46
45
44
43
42
26
30
42
62
75
76
77
78
79
80
81
82
83
84
85
86
87
41
25
29
41
61
74
40
24
28
40
60
73
39
23
27
39
59
72
38
22
26
38
58
71
37
21
25
37
57
70
36
20
24
36
56
69
35
19
23
35
55
68
34
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
67
33
9
47
66
32
8
48
65
31
7
47
64
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
6
46
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
43
29
5
45
64
52
44
28
4
44
64
53
45
27
3
43
63
54
46
26
2
42
62
55
47
25
1
41
61
56
48
24
0
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
62
61
60
59
58
57
56
55
54
53
52
51
50
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
106
73
61
49
53
73
105
72
60
48
52
72
104
71
59
47
51
71
103
70
58
46
50
70
102
69
57
45
49
69
101
68
56
44
48
68
100
67
55
43
47
67
99
66
54
42
46
66
98
65
53
41
45
65
97
64
52
40
44
64
96
63
51
39
43
63
95
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
38
39
40
41
42
43
44
45
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
62
94
82
69
49
37
33
47
61
93
81
68
48
36
32
48
60
92
80
67
47
35
31
47
59
91
79
66
46
34
30
46
58
90
78
65
45
33
29
45
57
89
77
64
44
32
28
44
56
88
76
63
43
31
27
43
55
87
86
85
84
83
82
81
80
79
78
77
76
75
62
42
30
26
42
43
44
45
46
47
48
49
50
51
52
53
54
74
61
41
29
25
41
73
60
40
28
24
40
72
59
39
27
23
39
71
58
38
26
22
38
70
57
37
25
21
37
69
56
36
24
20
36
68
55
35
23
19
35
67
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
34
66
47
9
33
65
48
8
32
64
47
7
31
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
46
6
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
52
64
45
5
29
43
53
64
44
4
28
44
54
63
43
3
27
45
55
62
42
2
26
46
56
61
41
1
25
47
57
60
40
0
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
82
81
80
79
78
77
76
75
74
73
72
71
70
58
59
60
61
62
63
64
65
66
67
68
69
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
82
90
83
69
57
49
81
89
84
68
56
48
80
88
83
67
55
47
79
87
82
66
54
46
78
86
81
65
53
45
77
85
80
64
52
44
76
84
79
63
51
43
75
83
78
62
50
42
74
82
77
61
49
41
73
81
76
60
48
40
72
80
75
59
47
39
71
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
38
70
58
72
73
59
39
25
37
69
57
73
72
60
40
24
36
68
56
74
71
59
41
23
35
67
55
75
70
58
42
22
34
66
54
76
69
57
43
21
33
65
53
77
68
56
44
20
32
64
52
78
67
55
45
19
31
63
62
61
60
59
58
57
56
55
54
53
52
51
79
66
54
46
18
19
20
21
22
23
24
25
26
27
28
29
30
50
80
65
53
47
17
49
81
64
52
48
16
48
82
63
51
47
15
47
82
62
50
46
14
46
81
61
49
45
13
45
80
60
48
44
12
44
79
59
47
43
11
43
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
10
42
69
33
9
41
68
32
8
40
67
31
7
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
66
30
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
28
40
65
29
5
19
29
41
64
28
4
20
30
42
63
27
3
21
31
43
62
26
2
22
32
44
61
25
1
23
33
45
60
24
0
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
91
92
92
91
90
89
88
87
86
85
84
83
82
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
70
78
90
81
69
61
69
77
89
80
68
60
68
76
88
79
67
59
67
75
87
78
66
58
66
74
86
77
65
57
65
73
85
76
64
56
64
72
84
75
63
55
63
71
83
74
62
54
62
70
82
73
61
53
61
69
81
72
60
52
60
68
80
71
59
51
59
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
50
58
46
60
80
71
51
37
49
57
45
61
81
72
52
36
48
56
44
62
82
73
53
35
47
55
43
63
83
74
54
34
46
54
42
64
84
75
55
33
45
53
41
65
85
76
56
32
44
52
40
66
86
77
57
31
43
51
50
49
48
47
46
45
44
43
42
41
40
39
67
87
78
58
30
31
32
33
34
35
36
37
38
39
40
41
42
38
68
86
77
59
29
37
69
85
76
60
28
36
70
84
75
61
27
35
71
83
74
62
26
34
72
82
73
63
25
33
73
81
72
64
24
32
74
80
71
65
23
31
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
22
30
66
57
21
29
65
56
20
28
64
55
19
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
63
54
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
16
28
62
53
19
5
17
29
61
52
20
4
18
30
60
51
21
3
19
31
59
50
22
2
20
32
58
49
23
1
21
33
57
48
24
0
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
83
84
85
86
87
88
89
90
91
92
93
93
92
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
62
70
82
91
79
71
61
69
81
90
78
70
60
68
80
89
77
69
59
67
79
88
76
68
58
66
78
87
75
67
57
65
77
86
74
66
56
64
76
85
73
65
55
63
75
84
72
64
54
62
74
83
71
63
53
61
73
82
70
62
52
60
72
81
69
61
51
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
60
50
38
52
72
81
61
47
59
49
37
53
73
82
62
46
58
48
36
54
74
83
63
45
57
47
35
55
75
84
64
44
56
46
34
56
76
85
65
43
55
45
33
57
77
86
66
42
54
44
32
58
78
87
67
41
53
43
42
41
40
39
38
37
36
35
34
33
32
31
59
79
88
68
40
41
42
43
44
45
46
47
48
49
50
51
52
30
60
78
87
69
39
29
61
77
86
70
38
28
62
76
85
71
37
27
63
75
84
72
36
26
64
74
83
73
35
25
65
73
82
74
34
24
66
72
81
75
33
23
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
81
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
32
22
58
67
31
21
57
66
30
20
56
65
29
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
55
64
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
6
20
54
63
29
17
5
21
53
62
30
18
4
22
52
61
31
19
3
23
51
60
32
20
2
24
50
59
33
21
1
25
49
58
34
22
0
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
70
69
68
67
66
65
64
63
62
61
60
59
71
72
73
74
75
76
77
78
79
80
81
82
83
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
50
58
70
84
91
83
49
57
69
83
90
82
48
56
68
82
89
81
47
55
67
81
88
80
46
54
66
80
87
79
45
53
65
79
86
78
44
52
64
78
85
77
43
51
63
77
84
76
42
50
62
76
83
75
41
49
61
75
82
74
40
48
60
74
81
73
39
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
72
38
26
40
60
72
73
59
71
37
25
41
59
71
74
58
70
36
24
42
58
70
75
57
69
35
23
43
57
69
76
56
68
34
22
44
56
68
77
55
67
33
21
45
55
67
78
54
66
32
20
46
54
66
79
53
65
31
30
29
28
27
26
25
24
23
22
21
20
19
47
53
65
80
52
53
54
55
56
57
58
59
60
61
62
63
64
18
48
52
64
81
51
17
47
51
63
82
50
16
46
50
62
82
49
15
45
49
61
81
48
14
44
48
60
80
47
13
43
47
59
79
46
12
42
46
58
78
45
11
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
44
10
32
68
43
9
31
67
42
8
30
66
41
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
29
65
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
20
6
28
64
41
29
21
5
27
63
42
30
22
4
26
62
43
31
23
3
25
61
44
32
24
2
24
60
45
33
25
1
23
59
46
34
26
0
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
51
52
53
54
55
56
57
58
59
60
61
62
63
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
72
54
50
62
74
105
71
53
49
61
73
104
70
52
48
60
72
103
69
51
47
59
71
102
68
50
46
58
70
101
67
49
45
57
69
100
66
48
44
56
68
99
65
47
43
55
67
98
64
46
42
54
66
97
63
45
41
53
65
96
62
44
40
52
64
95
61
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
46
45
44
43
42
41
40
39
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
94
60
48
34
38
50
70
81
93
59
47
33
37
49
69
80
92
58
46
32
36
48
68
79
91
57
45
31
35
47
67
78
90
56
44
30
34
46
66
77
89
55
43
29
33
45
65
76
88
54
42
28
32
44
64
75
87
53
52
51
50
49
48
47
46
45
44
43
42
41
27
31
43
63
74
75
76
77
78
79
80
81
82
83
84
85
86
40
26
30
42
62
73
39
25
29
41
61
72
38
24
28
40
60
71
37
23
27
39
59
70
36
22
26
38
58
69
35
21
25
37
57
68
34
20
24
36
56
67
33
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
66
32
10
48
65
31
9
47
64
30
8
46
63
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
7
45
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
42
28
6
44
63
51
43
27
5
43
63
52
44
26
4
42
62
53
45
25
3
41
61
54
46
24
2
40
60
55
47
23
1
39
59
56
48
22
0
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
63
62
61
60
59
58
57
56
55
54
53
52
51
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
105
74
62
50
54
72
104
73
61
49
53
71
103
72
60
48
52
70
102
71
59
47
51
69
101
70
58
46
50
68
100
69
57
45
49
67
99
68
56
44
48
66
98
67
55
43
47
65
97
66
54
42
46
64
96
65
53
41
45
63
95
64
52
40
44
62
94
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
39
40
41
42
43
44
45
46
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
61
93
81
70
50
38
34
48
60
92
80
69
49
37
33
47
59
91
79
68
48
36
32
46
58
90
78
67
47
35
31
45
57
89
77
66
46
34
30
44
56
88
76
65
45
33
29
43
55
87
75
64
44
32
28
42
54
86
85
84
83
82
81
80
79
78
77
76
75
74
63
43
31
27
41
42
43
44
45
46
47
48
49
50
51
52
53
73
62
42
30
26
40
72
61
41
29
25
39
71
60
40
28
24
38
70
59
39
27
23
37
69
58
38
26
22
36
68
57
37
25
21
35
67
56
36
24
20
34
66
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
33
65
48
10
32
64
47
9
31
63
46
8
30
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
45
7
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
51
63
44
6
28
42
52
63
43
5
27
43
53
62
42
4
26
44
54
61
41
3
25
45
55
60
40
2
24
46
56
59
39
1
23
47
57
58
38
0
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
83
82
81
80
79
78
77
76
75
74
73
72
71
59
60
61
62
63
64
65
66
67
68
69
70
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
83
91
84
70
58
50
82
90
83
69
57
49
81
89
82
68
56
48
80
88
81
67
55
47
79
87
80
66
54
46
78
86
79
65
53
45
77
85
78
64
52
44
76
84
77
63
51
43
75
83
76
62
50
42
74
82
75
61
49
41
73
81
74
60
48
40
72
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
39
71
59
73
72
60
40
26
38
70
58
74
71
59
41
25
37
69
57
75
70
58
42
24
36
68
56
76
69
57
43
23
35
67
55
77
68
56
44
22
34
66
54
78
67
55
45
21
33
65
53
79
66
54
46
20
32
64
63
62
61
60
59
58
57
56
55
54
53
52
80
65
53
47
19
20
21
22
23
24
25
26
27
28
29
30
31
51
81
64
52
48
18
50
82
63
51
47
17
49
82
62
50
46
16
48
81
61
49
45
15
47
80
60
48
44
14
46
79
59
47
43
13
45
78
58
46
42
12
44
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
11
43
68
32
10
42
67
31
9
41
66
30
8
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
65
29
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
29
41
64
28
6
20
30
42
63
27
5
21
31
43
62
26
4
22
32
44
61
25
3
23
33
45
60
24
2
24
34
46
59
23
1
25
35
47
58
22
0
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
92
93
93
92
91
90
89
88
87
86
85
84
83
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
71
79
91
82
70
62
70
78
90
81
69
61
69
77
89
80
68
60
68
76
88
79
67
59
67
75
87
78
66
58
66
74
86
77
65
57
65
73
85
76
64
56
64
72
84
75
63
55
63
71
83
74
62
54
62
70
82
73
61
53
61
69
81
72
60
52
60
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
51
59
47
61
81
72
52
38
50
58
46
62
82
73
53
37
49
57
45
63
83
74
54
36
48
56
44
64
84
75
55
35
47
55
43
65
85
76
56
34
46
54
42
66
86
77
57
33
45
53
41
67
87
78
58
32
44
52
51
50
49
48
47
46
45
44
43
42
41
40
68
88
79
59
31
32
33
34
35
36
37
38
39
40
41
42
43
39
69
87
78
60
30
38
70
86
77
61
29
37
71
85
76
62
28
36
72
84
75
63
27
35
73
83
74
64
26
34
74
82
73
65
25
33
75
81
72
66
24
32
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
81
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
23
31
67
58
22
30
66
57
21
29
65
56
20
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
64
55
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
17
29
63
54
20
6
18
30
62
53
21
5
19
31
61
52
22
4
20
32
60
51
23
3
21
33
59
50
24
2
22
34
58
49
25
1
23
35
57
48
26
0
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
84
85
86
87
88
89
90
91
92
93
94
94
93
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
63
71
83
92
80
72
62
70
82
91
79
71
61
69
81
90
78
70
60
68
80
89
77
69
59
67
79
88
76
68
58
66
78
87
75
67
57
65
77
86
74
66
56
64
76
85
73
65
55
63
75
84
72
64
54
62
74
83
71
63
53
61
73
82
70
62
52
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
61
51
39
53
73
82
62
48
60
50
38
54
74
83
63
47
59
49
37
55
75
84
64
46
58
48
36
56
76
85
65
45
57
47
35
57
77
86
66
44
56
46
34
58
78
87
67
43
55
45
33
59
79
88
68
42
54
44
43
42
41
40
39
38
37
36
35
34
33
32
60
80
89
69
41
42
43
44
45
46
47
48
49
50
51
52
53
31
61
79
88
70
40
30
62
78
87
71
39
29
63
77
86
72
38
28
64
76
85
73
37
27
65
75
84
74
36
26
66
74
83
75
35
25
67
73
82
76
34
24
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
33
23
59
68
32
22
58
67
31
21
57
66
30
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
56
65
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
7
21
55
64
30
18
6
22
54
63
31
19
5
23
53
62
32
20
4
24
52
61
33
21
3
25
51
60
34
22
2
26
50
59
35
23
1
27
49
58
36
24
0
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
72
73
74
75
76
77
78
79
80
81
82
83
84
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
51
59
71
83
92
84
50
58
70
82
91
83
49
57
69
81
90
82
48
56
68
80
89
81
47
55
67
79
88
80
46
54
66
78
87
79
45
53
65
77
86
78
44
52
64
76
85
77
43
51
63
75
84
76
42
50
62
74
83
75
41
49
61
73
82
74
40
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
73
39
27
41
59
71
74
60
72
38
26
42
58
70
75
59
71
37
25
43
57
69
76
58
70
36
24
44
56
68
77
57
69
35
23
45
55
67
78
56
68
34
22
46
54
66
79
55
67
33
21
47
53
65
80
54
66
32
31
30
29
28
27
26
25
24
23
22
21
20
48
52
64
81
53
54
55
56
57
58
59
60
61
62
63
64
65
19
47
51
63
82
52
18
46
50
62
82
51
17
45
49
61
81
50
16
44
48
60
80
49
15
43
47
59
79
48
14
42
46
58
78
47
13
41
45
57
77
46
12
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
45
11
31
67
44
10
30
66
43
9
29
65
42
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
28
64
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
21
7
27
63
42
30
22
6
26
62
43
31
23
5
25
61
44
32
24
4
24
60
45
33
25
3
23
59
46
34
26
2
22
58
47
35
27
1
21
57
48
36
28
0
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
64
63
62
61
71
72
73
74
75
76
77
78
79
80
81
82
83
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
52
60
70
82
93
85
51
59
69
81
92
84
50
58
68
80
91
83
49
57
67
79
90
82
48
56
66
78
89
81
47
55
65
77
88
80
46
54
64
76
87
79
45
53
63
75
86
78
44
52
62
74
85
77
43
51
61
73
84
76
42
50
60
72
83
75
41
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
74
40
28
42
58
70
75
61
73
39
27
43
57
69
76
60
72
38
26
44
56
68
77
59
71
37
25
45
55
67
78
58
70
36
24
46
54
66
79
57
69
35
23
47
53
65
80
56
68
34
22
48
52
64
81
55
67
33
32
31
30
29
28
27
26
25
24
23
22
21
47
51
63
82
54
55
56
57
58
59
60
61
62
63
64
65
66
20
46
50
62
82
53
19
45
49
61
81
52
18
44
48
60
80
51
17
43
47
59
79
50
16
42
46
58
78
49
15
41
45
57
77
48
14
40
44
56
76
47
13
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
46
12
30
66
45
11
29
65
44
10
28
64
43
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
27
63
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
22
8
26
62
43
31
23
7
25
61
44
32
24
6
24
60
45
33
25
5
23
59
46
34
26
4
22
58
47
35
27
3
21
57
48
36
28
2
20
56
49
37
29
1
0
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
65
64
63
62
70
71
72
73
74
75
76
77
78
79
80
81
82
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
53
61
69
81
93
86
52
60
68
80
92
85
51
59
67
79
91
84
50
58
66
78
90
83
49
57
65
77
89
82
48
56
64
76
88
81
47
55
63
75
87
80
46
54
62
74
86
79
45
53
61
73
85
78
44
52
60
72
84
77
43
51
59
71
83
76
42
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
75
41
29
43
57
69
76
62
74
40
28
44
56
68
77
61
73
39
27
45
55
67
78
60
72
38
26
46
54
66
79
59
71
37
25
47
53
65
80
58
70
36
24
48
52
64
81
57
69
35
23
47
51
63
82
56
68
34
33
32
31
30
29
28
27
26
25
24
23
22
46
50
62
82
55
56
57
58
59
60
61
62
63
64
65
66
67
21
45
49
61
81
54
20
44
48
60
80
53
19
43
47
59
79
52
18
42
46
58
78
51
17
41
45
57
77
50
16
40
44
56
76
49
15
39
43
55
75
48
14
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
47
13
29
65
46
12
28
64
45
11
27
63
44
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
26
62
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
23
9
25
61
44
32
24
8
24
60
45
33
25
7
23
59
46
34
26
6
22
58
47
35
27
5
21
57
48
36
28
4
20
56
49
37
29
3
19
55
50
38
30
2
1
0
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
66
65
64
63
69
70
71
72
73
74
75
76
77
78
79
80
81
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
54
62
68
80
92
87
53
61
67
79
91
86
52
60
66
78
90
85
51
59
65
77
89
84
50
58
64
76
88
83
49
57
63
75
87
82
48
56
62
74
86
81
47
55
61
73
85
80
46
54
60
72
84
79
45
53
59
71
83
78
44
52
58
70
82
77
43
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
76
42
30
44
56
68
77
63
75
41
29
45
55
67
78
62
74
40
28
46
54
66
79
61
73
39
27
47
53
65
80
60
72
38
26
48
52
64
81
59
71
37
25
47
51
63
82
58
70
36
24
46
50
62
82
57
69
35
34
33
32
31
30
29
28
27
26
25
24
23
45
49
61
81
56
57
58
59
60
61
62
63
64
65
66
67
68
22
44
48
60
80
55
21
43
47
59
79
54
20
42
46
58
78
53
19
41
45
57
77
52
18
40
44
56
76
51
17
39
43
55
75
50
16
38
42
54
74
49
15
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
48
14
28
64
47
13
27
63
46
12
26
62
45
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
25
61
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
24
10
24
60
45
33
25
9
23
59
46
34
26
8
22
58
47
35
27
7
21
57
48
36
28
6
20
56
49
37
29
5
19
55
50
38
30
4
18
54
51
39
31
3
2
1
0
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
68
69
70
71
72
73
74
75
76
77
78
79
80
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
55
63
67
79
91
88
54
62
66
78
90
87
53
61
65
77
89
86
52
60
64
76
88
85
51
59
63
75
87
84
50
58
62
74
86
83
49
57
61
73
85
82
48
56
60
72
84
81
47
55
59
71
83
80
46
54
58
70
82
79
45
53
57
69
81
78
44
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
77
43
31
45
55
67
78
64
76
42
30
46
54
66
79
63
75
41
29
47
53
65
80
62
74
40
28
48
52
64
81
61
73
39
27
47
51
63
82
60
72
38
26
46
50
62
82
59
71
37
25
45
49
61
81
58
70
36
35
34
33
32
31
30
29
28
27
26
25
24
44
48
60
80
57
58
59
60
61
62
63
64
65
66
67
68
69
23
43
47
59
79
56
22
42
46
58
78
55
21
41
45
57
77
54
20
40
44
56
76
53
19
39
43
55
75
52
18
38
42
54
74
51
17
37
41
53
73
50
16
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
49
15
27
63
48
14
26
62
47
13
25
61
46
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
24
60
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
25
11
23
59
46
34
26
10
22
58
47
35
27
9
21
57
48
36
28
8
20
56
49
37
29
7
19
55
50
38
30
6
18
54
51
39
31
5
17
53
52
40
32
4
3
2
1
0
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
67
68
69
70
71
72
73
74
75
76
77
78
79
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
56
64
66
78
90
89
55
63
65
77
89
88
54
62
64
76
88
87
53
61
63
75
87
86
52
60
62
74
86
85
51
59
61
73
85
84
50
58
60
72
84
83
49
57
59
71
83
82
48
56
58
70
82
81
47
55
57
69
81
80
46
54
56
68
80
79
45
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
78
44
32
46
54
66
79
65
77
43
31
47
53
65
80
64
76
42
30
48
52
64
81
63
75
41
29
47
51
63
82
62
74
40
28
46
50
62
82
61
73
39
27
45
49
61
81
60
72
38
26
44
48
60
80
59
71
37
36
35
34
33
32
31
30
29
28
27
26
25
43
47
59
79
58
59
60
61
62
63
64
65
66
67
68
69
70
24
42
46
58
78
57
23
41
45
57
77
56
22
40
44
56
76
55
21
39
43
55
75
54
20
38
42
54
74
53
19
37
41
53
73
52
18
36
40
52
72
51
17
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
50
16
26
62
49
15
25
61
48
14
24
60
47
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
23
59
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
26
12
22
58
47
35
27
11
21
57
48
36
28
10
20
56
49
37
29
9
19
55
50
38
30
8
18
54
51
39
31
7
17
53
52
40
32
6
16
52
53
41
33
5
4
3
2
1
0
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
66
67
68
69
70
71
72
73
74
75
76
77
78
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
57
65
65
77
89
90
56
64
64
76
88
89
55
63
63
75
87
88
54
62
62
74
86
87
53
61
61
73
85
86
52
60
60
72
84
85
51
59
59
71
83
84
50
58
58
70
82
83
49
57
57
69
81
82
48
56
56
68
80
81
47
55
55
67
79
80
46
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
79
45
33
47
53
65
80
66
78
44
32
48
52
64
81
65
77
43
31
47
51
63
82
64
76
42
30
46
50
62
82
63
75
41
29
45
49
61
81
62
74
40
28
44
48
60
80
61
73
39
27
43
47
59
79
60
72
38
37
36
35
34
33
32
31
30
29
28
27
26
42
46
58
78
59
60
61
62
63
64
65
66
67
68
69
70
71
25
41
45
57
77
58
24
40
44
56
76
57
23
39
43
55
75
56
22
38
42
54
74
55
21
37
41
53
73
54
20
36
40
52
72
53
19
35
39
51
71
52
18
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
51
17
25
61
50
16
24
60
49
15
23
59
48
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
22
58
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
27
13
21
57
48
36
28
12
20
56
49
37
29
11
19
55
50
38
30
10
18
54
51
39
31
9
17
53
52
40
32
8
16
52
53
41
33
7
15
51
54
42
34
6
5
4
3
2
1
0
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
65
66
67
68
69
70
71
72
73
74
75
76
77
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
58
66
64
76
88
91
57
65
63
75
87
90
56
64
62
74
86
89
55
63
61
73
85
88
54
62
60
72
84
87
53
61
59
71
83
86
52
60
58
70
82
85
51
59
57
69
81
84
50
58
56
68
80
83
49
57
55
67
79
82
48
56
54
66
78
81
47
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
80
46
34
48
52
64
81
67
79
45
33
47
51
63
82
66
78
44
32
46
50
62
82
65
77
43
31
45
49
61
81
64
76
42
30
44
48
60
80
63
75
41
29
43
47
59
79
62
74
40
28
42
46
58
78
61
73
39
38
37
36
35
34
33
32
31
30
29
28
27
41
45
57
77
60
61
62
63
64
65
66
67
68
69
70
71
72
26
40
44
56
76
59
25
39
43
55
75
58
24
38
42
54
74
57
23
37
41
53
73
56
22
36
40
52
72
55
21
35
39
51
71
54
20
34
38
50
70
53
19
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
52
18
24
60
51
17
23
59
50
16
22
58
49
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
21
57
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
28
14
20
56
49
37
29
13
19
55
50
38
30
12
18
54
51
39
31
11
17
53
52
40
32
10
16
52
53
41
33
9
15
51
54
42
34
8
14
50
55
43
35
7
6
5
4
3
2
1
0
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
64
65
66
67
68
69
70
71
72
73
74
75
76
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
59
67
63
75
87
92
58
66
62
74
86
91
57
65
61
73
85
90
56
64
60
72
84
89
55
63
59
71
83
88
54
62
58
70
82
87
53
61
57
69
81
86
52
60
56
68
80
85
51
59
55
67
79
84
50
58
54
66
78
83
49
57
53
65
77
82
48
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
81
47
35
47
51
63
82
68
80
46
34
46
50
62
82
67
79
45
33
45
49
61
81
66
78
44
32
44
48
60
80
65
77
43
31
43
47
59
79
64
76
42
30
42
46
58
78
63
75
41
29
41
45
57
77
62
74
40
39
38
37
36
35
34
33
32
31
30
29
28
40
44
56
76
61
62
63
64
65
66
67
68
69
70
71
72
73
27
39
43
55
75
60
26
38
42
54
74
59
25
37
41
53
73
58
24
36
40
52
72
57
23
35
39
51
71
56
22
34
38
50
70
55
21
33
37
49
69
54
20
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
53
19
23
59
52
18
22
58
51
17
21
57
50
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
20
56
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
29
15
19
55
50
38
30
14
18
54
51
39
31
13
17
53
52
40
32
12
16
52
53
41
33
11
15
51
54
42
34
10
14
50
55
43
35
9
13
49
56
44
36
8
7
6
5
4
3
2
1
0
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
63
64
65
66
67
68
69
70
71
72
73
74
75
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
60
66
62
74
86
93
59
65
61
73
85
92
58
64
60
72
84
91
57
63
59
71
83
90
56
62
58
70
82
89
55
61
57
69
81
88
54
60
56
68
80
87
53
59
55
67
79
86
52
58
54
66
78
85
51
57
53
65
77
84
50
56
52
64
76
83
49
37
38
39
40
41
42
43
44
45
46
47
48
47
48
49
50
51
52
53
54
55
56
57
58
59
58
57
56
55
54
53
52
51
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
82
48
36
46
50
62
82
69
81
47
35
45
49
61
81
68
80
46
34
44
48
60
80
67
79
45
33
43
47
59
79
66
78
44
32
42
46
58
78
65
77
43
31
41
45
57
77
64
76
42
30
40
44
56
76
63
75
41
40
39
38
37
36
35
34
33
32
31
30
29
39
43
55
75
62
63
64
65
66
67
68
69
70
71
72
73
74
28
38
42
54
74
61
27
37
41
53
73
60
26
36
40
52
72
59
25
35
39
51
71
58
24
34
38
50
70
57
23
33
37
49
69
56
22
32
36
48
68
55
21
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
54
20
22
58
53
19
21
57
52
18
20
56
51
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
19
55
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
30
16
18
54
51
39
31
15
17
53
52
40
32
14
16
52
53
41
33
13
15
51
54
42
34
12
14
50
55
43
35
11
13
49
56
44
36
10
12
48
57
45
37
9
8
7
6
5
4
3
2
1
0
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
62
63
64
65
66
67
68
69
70
71
72
73
74
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
61
65
61
73
85
94
60
64
60
72
84
93
59
63
59
71
83
92
58
62
58
70
82
91
57
61
57
69
81
90
56
60
56
68
80
89
55
59
55
67
79
88
54
58
54
66
78
87
53
57
53
65
77
86
52
56
52
64
76
85
51
55
51
63
75
84
50
38
39
40
41
42
43
44
45
46
47
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
57
56
55
54
53
52
51
50
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
83
49
37
45
49
61
81
70
82
48
36
44
48
60
80
69
81
47
35
43
47
59
79
68
80
46
34
42
46
58
78
67
79
45
33
41
45
57
77
66
78
44
32
40
44
56
76
65
77
43
31
39
43
55
75
64
76
42
41
40
39
38
37
36
35
34
33
32
31
30
38
42
54
74
63
64
65
66
67
68
69
70
71
72
73
74
75
29
37
41
53
73
62
28
36
40
52
72
61
27
35
39
51
71
60
26
34
38
50
70
59
25
33
37
49
69
58
24
32
36
48
68
57
23
31
35
47
67
56
22
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
55
21
21
57
54
20
20
56
53
19
19
55
52
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
18
54
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
31
17
17
53
52
40
32
16
16
52
53
41
33
15
15
51
54
42
34
14
14
50
55
43
35
13
13
49
56
44
36
12
12
48
57
45
37
11
11
47
58
46
38
10
9
8
7
6
5
4
3
2
1
0
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
61
62
63
64
65
66
67
68
69
70
71
72
73
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
62
64
60
72
84
95
61
63
59
71
83
94
60
62
58
70
82
93
59
61
57
69
81
92
58
60
56
68
80
91
57
59
55
67
79
90
56
58
54
66
78
89
55
57
53
65
77
88
54
56
52
64
76
87
53
55
51
63
75
86
52
54
50
62
74
85
51
39
40
41
42
43
44
45
46
47
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
56
55
54
53
52
51
50
49
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
84
50
38
44
48
60
80
71
83
49
37
43
47
59
79
70
82
48
36
42
46
58
78
69
81
47
35
41
45
57
77
68
80
46
34
40
44
56
76
67
79
45
33
39
43
55
75
66
78
44
32
38
42
54
74
65
77
43
42
41
40
39
38
37
36
35
34
33
32
31
37
41
53
73
64
65
66
67
68
69
70
71
72
73
74
75
76
30
36
40
52
72
63
29
35
39
51
71
62
28
34
38
50
70
61
27
33
37
49
69
60
26
32
36
48
68
59
25
31
35
47
67
58
24
30
34
46
66
57
23
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
56
22
20
56
55
21
19
55
54
20
18
54
53
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
17
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
32
18
16
52
53
41
33
17
15
51
54
42
34
16
14
50
55
43
35
15
13
49
56
44
36
14
12
48
57
45
37
13
11
47
58
46
38
12
10
46
59
47
39
11
10
9
8
7
6
5
4
3
2
1
0
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
60
61
62
63
64
65
66
67
68
69
70
71
72
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
63
63
59
71
83
96
62
62
58
70
82
95
61
61
57
69
81
94
60
60
56
68
80
93
59
59
55
67
79
92
58
58
54
66
78
91
57
57
53
65
77
90
56
56
52
64
76
89
55
55
51
63
75
88
54
54
50
62
74
87
53
53
49
61
73
86
52
40
41
42
43
44
45
46
47
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
55
54
53
52
51
50
49
48
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
85
51
39
43
47
59
79
72
84
50
38
42
46
58
78
71
83
49
37
41
45
57
77
70
82
48
36
40
44
56
76
69
81
47
35
39
43
55
75
68
80
46
34
38
42
54
74
67
79
45
33
37
41
53
73
66
78
44
43
42
41
40
39
38
37
36
35
34
33
32
36
40
52
72
65
66
67
68
69
70
71
72
73
74
75
76
77
31
35
39
51
71
64
30
34
38
50
70
63
29
33
37
49
69
62
28
32
36
48
68
61
27
31
35
47
67
60
26
30
34
46
66
59
25
29
33
45
65
58
24
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
57
23
19
55
56
22
18
54
55
21
17
53
54
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
16
52
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
33
19
15
51
54
42
34
18
14
50
55
43
35
17
13
49
56
44
36
16
12
48
57
45
37
15
11
47
58
46
38
14
10
46
59
47
39
13
9
45
60
48
40
12
11
10
9
8
7
6
5
4
3
2
1
0
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
59
60
61
62
63
64
65
66
67
68
69
70
71
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
64
62
58
70
82
97
63
61
57
69
81
96
62
60
56
68
80
95
61
59
55
67
79
94
60
58
54
66
78
93
59
57
53
65
77
92
58
56
52
64
76
91
57
55
51
63
75
90
56
54
50
62
74
89
55
53
49
61
73
88
54
52
48
60
72
87
53
41
42
43
44
45
46
47
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
54
53
52
51
50
49
48
47
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
86
52
40
42
46
58
78
73
85
51
39
41
45
57
77
72
84
50
38
40
44
56
76
71
83
49
37
39
43
55
75
70
82
48
36
38
42
54
74
69
81
47
35
37
41
53
73
68
80
46
34
36
40
52
72
67
79
45
44
43
42
41
40
39
38
37
36
35
34
33
35
39
51
71
66
67
68
69
70
71
72
73
74
75
76
77
78
32
34
38
50
70
65
31
33
37
49
69
64
30
32
36
48
68
63
29
31
35
47
67
62
28
30
34
46
66
61
27
29
33
45
65
60
26
28
32
44
64
59
25
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
58
24
18
54
57
23
17
53
56
22
16
52
55
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
15
51
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
34
20
14
50
55
43
35
19
13
49
56
44
36
18
12
48
57
45
37
17
11
47
58
46
38
16
10
46
59
47
39
15
9
45
60
48
40
14
8
44
61
49
41
13
12
11
10
9
8
7
6
5
4
3
2
1
0
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
58
59
60
61
62
63
64
65
66
67
68
69
70
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
65
61
57
69
81
98
64
60
56
68
80
97
63
59
55
67
79
96
62
58
54
66
78
95
61
57
53
65
77
94
60
56
52
64
76
93
59
55
51
63
75
92
58
54
50
62
74
91
57
53
49
61
73
90
56
52
48
60
72
89
55
51
47
59
71
88
54
42
43
44
45
46
47
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
53
52
51
50
49
48
47
46
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
87
53
41
41
45
57
77
74
86
52
40
40
44
56
76
73
85
51
39
39
43
55
75
72
84
50
38
38
42
54
74
71
83
49
37
37
41
53
73
70
82
48
36
36
40
52
72
69
81
47
35
35
39
51
71
68
80
46
45
44
43
42
41
40
39
38
37
36
35
34
34
38
50
70
67
68
69
70
71
72
73
74
75
76
77
78
79
33
33
37
49
69
66
32
32
36
48
68
65
31
31
35
47
67
64
30
30
34
46
66
63
29
29
33
45
65
62
28
28
32
44
64
61
27
27
31
43
63
60
26
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
59
25
17
53
58
24
16
52
57
23
15
51
56
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
14
50
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
35
21
13
49
56
44
36
20
12
48
57
45
37
19
11
47
58
46
38
18
10
46
59
47
39
17
9
45
60
48
40
16
8
44
61
49
41
15
7
43
62
50
42
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
57
58
59
60
61
62
63
64
65
66
67
68
69
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
66
60
56
68
80
99
65
59
55
67
79
98
64
58
54
66
78
97
63
57
53
65
77
96
62
56
52
64
76
95
61
55
51
63
75
94
60
54
50
62
74
93
59
53
49
61
73
92
58
52
48
60
72
91
57
51
47
59
71
90
56
50
46
58
70
89
55
43
44
45
46
47
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
52
51
50
49
48
47
46
45
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
88
54
42
40
44
56
76
75
87
53
41
39
43
55
75
74
86
52
40
38
42
54
74
73
85
51
39
37
41
53
73
72
84
50
38
36
40
52
72
71
83
49
37
35
39
51
71
70
82
48
36
34
38
50
70
69
81
47
46
45
44
43
42
41
40
39
38
37
36
35
33
37
49
69
68
69
70
71
72
73
74
75
76
77
78
79
80
34
32
36
48
68
67
33
31
35
47
67
66
32
30
34
46
66
65
31
29
33
45
65
64
30
28
32
44
64
63
29
27
31
43
63
62
28
26
30
42
62
61
27
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
60
26
16
52
59
25
15
51
58
24
14
50
57
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
13
49
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
36
22
12
48
57
45
37
21
11
47
58
46
38
20
10
46
59
47
39
19
9
45
60
48
40
18
8
44
61
49
41
17
7
43
62
50
42
16
6
42
62
51
43
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
56
57
58
59
60
61
62
63
64
65
66
67
68
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
67
59
55
67
79
100
66
58
54
66
78
99
65
57
53
65
77
98
64
56
52
64
76
97
63
55
51
63
75
96
62
54
50
62
74
95
61
53
49
61
73
94
60
52
48
60
72
93
59
51
47
59
71
92
58
50
46
58
70
91
57
49
45
57
69
90
56
44
45
46
47
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
89
55
43
39
43
55
75
76
88
54
42
38
42
54
74
75
87
53
41
37
41
53
73
74
86
52
40
36
40
52
72
73
85
51
39
35
39
51
71
72
84
50
38
34
38
50
70
71
83
49
37
33
37
49
69
70
82
48
47
46
45
44
43
42
41
40
39
38
37
36
32
36
48
68
69
70
71
72
73
74
75
76
77
78
79
80
81
35
31
35
47
67
68
34
30
34
46
66
67
33
29
33
45
65
66
32
28
32
44
64
65
31
27
31
43
63
64
30
26
30
42
62
63
29
25
29
41
61
62
28
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
27
15
51
60
26
14
50
59
25
13
49
58
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
12
48
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
37
23
11
47
58
46
38
22
10
46
59
47
39
21
9
45
60
48
40
20
8
44
61
49
41
19
7
43
62
50
42
18
6
42
62
51
43
17
5
41
61
52
44
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
55
56
57
58
59
60
61
62
63
64
65
66
67
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
68
58
54
66
78
101
67
57
53
65
77
100
66
56
52
64
76
99
65
55
51
63
75
98
64
54
50
62
74
97
63
53
49
61
73
96
62
52
48
60
72
95
61
51
47
59
71
94
60
50
46
58
70
93
59
49
45
57
69
92
58
48
44
56
68
91
57
45
46
47
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
50
49
48
47
46
45
44
43
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
90
56
44
38
42
54
74
77
89
55
43
37
41
53
73
76
88
54
42
36
40
52
72
75
87
53
41
35
39
51
71
74
86
52
40
34
38
50
70
73
85
51
39
33
37
49
69
72
84
50
38
32
36
48
68
71
83
49
48
47
46
45
44
43
42
41
40
39
38
37
31
35
47
67
70
71
72
73
74
75
76
77
78
79
80
81
82
36
30
34
46
66
69
35
29
33
45
65
68
34
28
32
44
64
67
33
27
31
43
63
66
32
26
30
42
62
65
31
25
29
41
61
64
30
24
28
40
60
63
29
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
62
28
14
50
61
27
13
49
60
26
12
48
59
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
11
47
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
38
24
10
46
59
47
39
23
9
45
60
48
40
22
8
44
61
49
41
21
7
43
62
50
42
20
6
42
62
51
43
19
5
41
61
52
44
18
4
40
60
53
45
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
54
55
56
57
58
59
60
61
62
63
64
65
66
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
69
57
53
65
77
102
68
56
52
64
76
101
67
55
51
63
75
100
66
54
50
62
74
99
65
53
49
61
73
98
64
52
48
60
72
97
63
51
47
59
71
96
62
50
46
58
70
95
61
49
45
57
69
94
60
48
44
56
68
93
59
47
43
55
67
92
58
46
47
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
49
48
47
46
45
44
43
42
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
91
57
45
37
41
53
73
78
90
56
44
36
40
52
72
77
89
55
43
35
39
51
71
76
88
54
42
34
38
50
70
75
87
53
41
33
37
49
69
74
86
52
40
32
36
48
68
73
85
51
39
31
35
47
67
72
84
50
49
48
47
46
45
44
43
42
41
40
39
38
30
34
46
66
71
72
73
74
75
76
77
78
79
80
81
82
83
37
29
33
45
65
70
36
28
32
44
64
69
35
27
31
43
63
68
34
26
30
42
62
67
33
25
29
41
61
66
32
24
28
40
60
65
31
23
27
39
59
64
30
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
63
29
13
49
62
28
12
48
61
27
11
47
60
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
10
46
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
39
25
9
45
60
48
40
24
8
44
61
49
41
23
7
43
62
50
42
22
6
42
62
51
43
21
5
41
61
52
44
20
4
40
60
53
45
19
3
39
59
54
46
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
53
54
55
56
57
58
59
60
61
62
63
64
65
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
70
56
52
64
76
103
69
55
51
63
75
102
68
54
50
62
74
101
67
53
49
61
73
100
66
52
48
60
72
99
65
51
47
59
71
98
64
50
46
58
70
97
63
49
45
57
69
96
62
48
44
56
68
95
61
47
43
55
67
94
60
46
42
54
66
93
59
47
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
48
47
46
45
44
43
42
41
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
92
58
46
36
40
52
72
79
91
57
45
35
39
51
71
78
90
56
44
34
38
50
70
77
89
55
43
33
37
49
69
76
88
54
42
32
36
48
68
75
87
53
41
31
35
47
67
74
86
52
40
30
34
46
66
73
85
51
50
49
48
47
46
45
44
43
42
41
40
39
29
33
45
65
72
73
74
75
76
77
78
79
80
81
82
83
84
38
28
32
44
64
71
37
27
31
43
63
70
36
26
30
42
62
69
35
25
29
41
61
68
34
24
28
40
60
67
33
23
27
39
59
66
32
22
26
38
58
65
31
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
64
30
12
48
63
29
11
47
62
28
10
46
61
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
9
45
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
40
26
8
44
61
49
41
25
7
43
62
50
42
24
6
42
62
51
43
23
5
41
61
52
44
22
4
40
60
53
45
21
3
39
59
54
46
20
2
38
58
55
47
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
52
53
54
55
56
57
58
59
60
61
62
63
64
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
71
55
51
63
75
104
70
54
50
62
74
103
69
53
49
61
73
102
68
52
48
60
72
101
67
51
47
59
71
100
66
50
46
58
70
99
65
49
45
57
69
98
64
48
44
56
68
97
63
47
43
55
67
96
62
46
42
54
66
95
61
45
41
53
65
94
60
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
93
59
47
35
39
51
71
80
92
58
46
34
38
50
70
79
91
57
45
33
37
49
69
78
90
56
44
32
36
48
68
77
89
55
43
31
35
47
67
76
88
54
42
30
34
46
66
75
87
53
41
29
33
45
65
74
86
52
51
50
49
48
47
46
45
44
43
42
41
40
28
32
44
64
73
74
75
76
77
78
79
80
81
82
83
84
85
39
27
31
43
63
72
38
26
30
42
62
71
37
25
29
41
61
70
36
24
28
40
60
69
35
23
27
39
59
68
34
22
26
38
58
67
33
21
25
37
57
66
32
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
65
31
11
47
64
30
10
46
63
29
9
45
62
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
8
44
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
41
27
7
43
62
50
42
26
6
42
62
51
43
25
5
41
61
52
44
24
4
40
60
53
45
23
3
39
59
54
46
22
2
38
58
55
47
21
1
37
57
56
48
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
53
54
55
56
57
58
59
60
61
62
63
64
65
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
107
106
72
56
52
64
76
105
71
55
51
63
75
104
70
54
50
62
74
103
69
53
49
61
73
102
68
52
48
60
72
101
67
51
47
59
71
100
66
50
46
58
70
99
65
49
45
57
69
98
64
48
44
56
68
97
63
47
43
55
67
96
62
46
42
54
66
95
61
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
48
47
46
45
44
43
42
41
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
72
73
74
75
76
77
78
79
80
81
82
82
94
60
48
36
40
52
70
81
93
59
47
35
39
51
69
80
92
58
46
34
38
50
68
79
91
57
45
33
37
49
67
78
90
56
44
32
36
48
66
77
89
55
43
31
35
47
65
76
88
54
42
30
34
46
64
75
87
53
52
51
50
49
48
47
46
45
44
43
42
41
29
33
45
63
74
75
76
77
78
79
80
81
82
83
84
85
86
40
28
32
44
62
73
39
27
31
43
61
72
38
26
30
42
60
71
37
25
29
41
59
70
36
24
28
40
58
69
35
23
27
39
57
68
34
22
26
38
56
67
33
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
48
49
50
51
52
53
54
55
66
32
12
46
65
31
11
45
64
30
10
44
63
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
9
43
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
42
28
8
42
62
51
43
27
7
41
61
52
44
26
6
40
60
53
45
25
5
39
59
54
46
24
4
38
58
55
47
23
3
37
57
56
48
22
2
36
56
57
49
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
54
55
56
57
58
59
60
61
62
63
64
65
66
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
73
57
53
65
77
105
72
56
52
64
76
104
71
55
51
63
75
103
70
54
50
62
74
102
69
53
49
61
73
101
68
52
48
60
72
100
67
51
47
59
71
99
66
50
46
58
70
98
65
49
45
57
69
97
64
48
44
56
68
96
63
47
43
55
67
95
62
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
49
48
47
46
45
44
43
42
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
94
61
49
37
41
53
69
81
93
60
48
36
40
52
68
80
92
59
47
35
39
51
67
79
91
58
46
34
38
50
66
78
90
57
45
33
37
49
65
77
89
56
44
32
36
48
64
76
88
55
43
31
35
47
63
75
87
54
53
52
51
50
49
48
47
46
45
44
43
42
30
34
46
62
74
75
76
77
78
79
80
81
82
83
84
85
86
41
29
33
45
61
73
40
28
32
44
60
72
39
27
31
43
59
71
38
26
30
42
58
70
37
25
29
41
57
69
36
24
28
40
56
68
35
23
27
39
55
67
34
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
47
48
49
50
51
52
53
54
66
33
13
45
65
32
12
44
64
31
11
43
63
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
10
42
62
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
43
29
9
41
61
52
44
28
8
40
60
53
45
27
7
39
59
54
46
26
6
38
58
55
47
25
5
37
57
56
48
24
4
36
56
57
49
23
3
35
55
58
50
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
55
56
57
58
59
60
61
62
63
64
65
66
67
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
74
58
54
66
78
104
73
57
53
65
77
103
72
56
52
64
76
102
71
55
51
63
75
101
70
54
50
62
74
100
69
53
49
61
73
99
68
52
48
60
72
98
67
51
47
59
71
97
66
50
46
58
70
96
65
49
45
57
69
95
64
48
44
56
68
94
63
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
50
49
48
47
46
45
44
43
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
93
62
50
38
42
54
68
80
92
61
49
37
41
53
67
79
91
60
48
36
40
52
66
78
90
59
47
35
39
51
65
77
89
58
46
34
38
50
64
76
88
57
45
33
37
49
63
75
87
56
44
32
36
48
62
74
86
55
54
53
52
51
50
49
48
47
46
45
44
43
31
35
47
61
73
74
75
76
77
78
79
80
81
82
83
84
85
42
30
34
46
60
72
41
29
33
45
59
71
40
28
32
44
58
70
39
27
31
43
57
69
38
26
30
42
56
68
37
25
29
41
55
67
36
24
28
40
54
66
35
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
46
47
48
49
50
51
52
53
65
34
14
44
64
33
13
43
63
32
12
42
62
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
11
41
61
62
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
44
30
10
40
60
53
45
29
9
39
59
54
46
28
8
38
58
55
47
27
7
37
57
56
48
26
6
36
56
57
49
25
5
35
55
58
50
24
4
34
54
59
51
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
56
57
58
59
60
61
62
63
64
65
66
67
68
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
75
59
55
67
79
103
74
58
54
66
78
102
73
57
53
65
77
101
72
56
52
64
76
100
71
55
51
63
75
99
70
54
50
62
74
98
69
53
49
61
73
97
68
52
48
60
72
96
67
51
47
59
71
95
66
50
46
58
70
94
65
49
45
57
69
93
64
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
92
63
51
39
43
55
67
79
91
62
50
38
42
54
66
78
90
61
49
37
41
53
65
77
89
60
48
36
40
52
64
76
88
59
47
35
39
51
63
75
87
58
46
34
38
50
62
74
86
57
45
33
37
49
61
73
85
56
55
54
53
52
51
50
49
48
47
46
45
44
32
36
48
60
72
73
74
75
76
77
78
79
80
81
82
83
84
43
31
35
47
59
71
42
30
34
46
58
70
41
29
33
45
57
69
40
28
32
44
56
68
39
27
31
43
55
67
38
26
30
42
54
66
37
25
29
41
53
65
36
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
45
46
47
48
49
50
51
52
64
35
15
43
63
34
14
42
62
33
13
41
61
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
12
40
60
61
62
62
61
60
59
58
57
56
55
54
53
52
51
50
49
45
31
11
39
59
54
46
30
10
38
58
55
47
29
9
37
57
56
48
28
8
36
56
57
49
27
7
35
55
58
50
26
6
34
54
59
51
25
5
33
53
60
52
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
57
58
59
60
61
62
63
64
65
66
67
68
69
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
76
60
56
68
80
102
75
59
55
67
79
101
74
58
54
66
78
100
73
57
53
65
77
99
72
56
52
64
76
98
71
55
51
63
75
97
70
54
50
62
74
96
69
53
49
61
73
95
68
52
48
60
72
94
67
51
47
59
71
93
66
50
46
58
70
92
65
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
52
51
50
49
48
47
46
45
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
91
64
52
40
44
56
66
78
90
63
51
39
43
55
65
77
89
62
50
38
42
54
64
76
88
61
49
37
41
53
63
75
87
60
48
36
40
52
62
74
86
59
47
35
39
51
61
73
85
58
46
34
38
50
60
72
84
57
56
55
54
53
52
51
50
49
48
47
46
45
33
37
49
59
71
72
73
74
75
76
77
78
79
80
81
82
83
44
32
36
48
58
70
43
31
35
47
57
69
42
30
34
46
56
68
41
29
33
45
55
67
40
28
32
44
54
66
39
27
31
43
53
65
38
26
30
42
52
64
37
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
44
45
46
47
48
49
50
51
63
36
16
42
62
35
15
41
61
34
14
40
60
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
13
39
59
60
61
62
62
61
60
59
58
57
56
55
54
53
52
51
50
46
32
12
38
58
55
47
31
11
37
57
56
48
30
10
36
56
57
49
29
9
35
55
58
50
28
8
34
54
59
51
27
7
33
53
60
52
26
6
32
52
61
53
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
58
59
60
61
62
63
64
65
66
67
68
69
70
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
77
61
57
69
81
101
76
60
56
68
80
100
75
59
55
67
79
99
74
58
54
66
78
98
73
57
53
65
77
97
72
56
52
64
76
96
71
55
51
63
75
95
70
54
50
62
74
94
69
53
49
61
73
93
68
52
48
60
72
92
67
51
47
59
71
91
66
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
53
52
51
50
49
48
47
46
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
90
65
53
41
45
57
65
77
89
64
52
40
44
56
64
76
88
63
51
39
43
55
63
75
87
62
50
38
42
54
62
74
86
61
49
37
41
53
61
73
85
60
48
36
40
52
60
72
84
59
47
35
39
51
59
71
83
58
57
56
55
54
53
52
51
50
49
48
47
46
34
38
50
58
70
71
72
73
74
75
76
77
78
79
80
81
82
45
33
37
49
57
69
44
32
36
48
56
68
43
31
35
47
55
67
42
30
34
46
54
66
41
29
33
45
53
65
40
28
32
44
52
64
39
27
31
43
51
63
38
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
62
37
17
41
61
36
16
40
60
35
15
39
59
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
14
38
58
59
60
61
62
62
61
60
59
58
57
56
55
54
53
52
51
47
33
13
37
57
56
48
32
12
36
56
57
49
31
11
35
55
58
50
30
10
34
54
59
51
29
9
33
53
60
52
28
8
32
52
61
53
27
7
31
51
62
54
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
59
60
61
62
63
64
65
66
67
68
69
70
71
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
78
62
58
70
82
100
77
61
57
69
81
99
76
60
56
68
80
98
75
59
55
67
79
97
74
58
54
66
78
96
73
57
53
65
77
95
72
56
52
64
76
94
71
55
51
63
75
93
70
54
50
62
74
92
69
53
49
61
73
91
68
52
48
60
72
90
67
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
54
53
52
51
50
49
48
47
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
89
66
54
42
46
58
64
76
88
65
53
41
45
57
63
75
87
64
52
40
44
56
62
74
86
63
51
39
43
55
61
73
85
62
50
38
42
54
60
72
84
61
49
37
41
53
59
71
83
60
48
36
40
52
58
70
82
59
58
57
56
55
54
53
52
51
50
49
48
47
35
39
51
57
69
70
71
72
73
74
75
76
77
78
79
80
81
46
34
38
50
56
68
45
33
37
49
55
67
44
32
36
48
54
66
43
31
35
47
53
65
42
30
34
46
52
64
41
29
33
45
51
63
40
28
32
44
50
62
39
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
61
38
18
40
60
37
17
39
59
36
16
38
58
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
15
37
57
58
59
60
61
62
62
61
60
59
58
57
56
55
54
53
52
48
34
14
36
56
57
49
33
13
35
55
58
50
32
12
34
54
59
51
31
11
33
53
60
52
30
10
32
52
61
53
29
9
31
51
62
54
28
8
30
50
63
55
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
60
61
62
63
64
65
66
67
68
69
70
71
72
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
79
63
59
71
83
99
78
62
58
70
82
98
77
61
57
69
81
97
76
60
56
68
80
96
75
59
55
67
79
95
74
58
54
66
78
94
73
57
53
65
77
93
72
56
52
64
76
92
71
55
51
63
75
91
70
54
50
62
74
90
69
53
49
61
73
89
68
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
55
54
53
52
51
50
49
48
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
88
67
55
43
47
59
63
75
87
66
54
42
46
58
62
74
86
65
53
41
45
57
61
73
85
64
52
40
44
56
60
72
84
63
51
39
43
55
59
71
83
62
50
38
42
54
58
70
82
61
49
37
41
53
57
69
81
60
59
58
57
56
55
54
53
52
51
50
49
48
36
40
52
56
68
69
70
71
72
73
74
75
76
77
78
79
80
47
35
39
51
55
67
46
34
38
50
54
66
45
33
37
49
53
65
44
32
36
48
52
64
43
31
35
47
51
63
42
30
34
46
50
62
41
29
33
45
49
61
40
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
60
39
19
39
59
38
18
38
58
37
17
37
57
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
16
36
56
57
58
59
60
61
62
62
61
60
59
58
57
56
55
54
53
49
35
15
35
55
58
50
34
14
34
54
59
51
33
13
33
53
60
52
32
12
32
52
61
53
31
11
31
51
62
54
30
10
30
50
63
55
29
9
29
49
64
56
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
61
62
63
64
65
66
67
68
69
70
71
72
73
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
80
64
60
72
82
98
79
63
59
71
81
97
78
62
58
70
80
96
77
61
57
69
79
95
76
60
56
68
78
94
75
59
55
67
77
93
74
58
54
66
76
92
73
57
53
65
75
91
72
56
52
64
74
90
71
55
51
63
73
89
70
54
50
62
72
88
69
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
56
55
54
53
52
51
50
49
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
87
68
56
44
48
60
62
74
86
67
55
43
47
59
61
73
85
66
54
42
46
58
60
72
84
65
53
41
45
57
59
71
83
64
52
40
44
56
58
70
82
63
51
39
43
55
57
69
81
62
50
38
42
54
56
68
80
61
60
59
58
57
56
55
54
53
52
51
50
49
37
41
53
55
67
68
69
70
71
72
73
74
75
76
77
78
79
48
36
40
52
54
66
47
35
39
51
53
65
46
34
38
50
52
64
45
33
37
49
51
63
44
32
36
48
50
62
43
31
35
47
49
61
42
30
34
46
48
60
41
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
59
40
20
38
58
39
19
37
57
38
18
36
56
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
17
35
55
56
57
58
59
60
61
62
62
61
60
59
58
57
56
55
54
50
36
16
34
54
59
51
35
15
33
53
60
52
34
14
32
52
61
53
33
13
31
51
62
54
32
12
30
50
63
55
31
11
29
49
64
56
30
10
28
48
65
57
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
62
63
64
65
66
67
68
69
70
71
72
73
74
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
81
65
61
73
81
97
80
64
60
72
80
96
79
63
59
71
79
95
78
62
58
70
78
94
77
61
57
69
77
93
76
60
56
68
76
92
75
59
55
67
75
91
74
58
54
66
74
90
73
57
53
65
73
89
72
56
52
64
72
88
71
55
51
63
71
87
70
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
57
56
55
54
53
52
51
50
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
86
69
57
45
49
61
61
73
85
68
56
44
48
60
60
72
84
67
55
43
47
59
59
71
83
66
54
42
46
58
58
70
82
65
53
41
45
57
57
69
81
64
52
40
44
56
56
68
80
63
51
39
43
55
55
67
79
62
61
60
59
58
57
56
55
54
53
52
51
50
38
42
54
54
66
67
68
69
70
71
72
73
74
75
76
77
78
49
37
41
53
53
65
48
36
40
52
52
64
47
35
39
51
51
63
46
34
38
50
50
62
45
33
37
49
49
61
44
32
36
48
48
60
43
31
35
47
47
59
42
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
58
41
21
37
57
40
20
36
56
39
19
35
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
18
34
54
55
56
57
58
59
60
61
62
62
61
60
59
58
57
56
55
51
37
17
33
53
60
52
36
16
32
52
61
53
35
15
31
51
62
54
34
14
30
50
63
55
33
13
29
49
64
56
32
12
28
48
65
57
31
11
27
47
66
58
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
63
64
65
66
67
68
69
70
71
72
73
74
75
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
82
66
62
74
80
96
81
65
61
73
79
95
80
64
60
72
78
94
79
63
59
71
77
93
78
62
58
70
76
92
77
61
57
69
75
91
76
60
56
68
74
90
75
59
55
67
73
89
74
58
54
66
72
88
73
57
53
65
71
87
72
56
52
64
70
86
71
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
58
57
56
55
54
53
52
51
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
85
70
58
46
50
62
60
72
84
69
57
45
49
61
59
71
83
68
56
44
48
60
58
70
82
67
55
43
47
59
57
69
81
66
54
42
46
58
56
68
80
65
53
41
45
57
55
67
79
64
52
40
44
56
54
66
78
63
62
61
60
59
58
57
56
55
54
53
52
51
39
43
55
53
65
66
67
68
69
70
71
72
73
74
75
76
77
50
38
42
54
52
64
49
37
41
53
51
63
48
36
40
52
50
62
47
35
39
51
49
61
46
34
38
50
48
60
45
33
37
49
47
59
44
32
36
48
46
58
43
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
57
42
22
36
56
41
21
35
55
40
20
34
54
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
19
33
53
54
55
56
57
58
59
60
61
62
62
61
60
59
58
57
56
52
38
18
32
52
61
53
37
17
31
51
62
54
36
16
30
50
63
55
35
15
29
49
64
56
34
14
28
48
65
57
33
13
27
47
66
58
32
12
26
46
67
59
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
64
65
66
67
68
69
70
71
72
73
74
75
76
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
83
67
63
75
79
95
82
66
62
74
78
94
81
65
61
73
77
93
80
64
60
72
76
92
79
63
59
71
75
91
78
62
58
70
74
90
77
61
57
69
73
89
76
60
56
68
72
88
75
59
55
67
71
87
74
58
54
66
70
86
73
57
53
65
69
85
72
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
84
71
59
47
51
63
59
71
83
70
58
46
50
62
58
70
82
69
57
45
49
61
57
69
81
68
56
44
48
60
56
68
80
67
55
43
47
59
55
67
79
66
54
42
46
58
54
66
78
65
53
41
45
57
53
65
77
64
63
62
61
60
59
58
57
56
55
54
53
52
40
44
56
52
64
65
66
67
68
69
70
71
72
73
74
75
76
51
39
43
55
51
63
50
38
42
54
50
62
49
37
41
53
49
61
48
36
40
52
48
60
47
35
39
51
47
59
46
34
38
50
46
58
45
33
37
49
45
57
44
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
56
43
23
35
55
42
22
34
54
41
21
33
53
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
20
32
52
53
54
55
56
57
58
59
60
61
62
62
61
60
59
58
57
53
39
19
31
51
62
54
38
18
30
50
63
55
37
17
29
49
64
56
36
16
28
48
65
57
35
15
27
47
66
58
34
14
26
46
67
59
33
13
25
45
68
60
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
65
66
67
68
69
70
71
72
73
74
75
76
75
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
84
68
64
74
78
94
83
67
63
73
77
93
82
66
62
72
76
92
81
65
61
71
75
91
80
64
60
70
74
90
79
63
59
69
73
89
78
62
58
68
72
88
77
61
57
67
71
87
76
60
56
66
70
86
75
59
55
65
69
85
74
58
54
64
68
84
73
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
60
59
58
57
56
55
54
53
63
64
65
66
67
68
69
70
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
83
72
60
48
52
62
58
70
82
71
59
47
51
61
57
69
81
70
58
46
50
60
56
68
80
69
57
45
49
59
55
67
79
68
56
44
48
58
54
66
78
67
55
43
47
57
53
65
77
66
54
42
46
56
52
64
76
65
64
63
62
61
60
59
58
57
56
55
54
53
41
45
55
51
63
64
65
66
67
68
69
70
71
72
73
74
75
52
40
44
54
50
62
51
39
43
53
49
61
50
38
42
52
48
60
49
37
41
51
47
59
48
36
40
50
46
58
47
35
39
49
45
57
46
34
38
48
44
56
45
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
55
44
24
34
54
43
23
33
53
42
22
32
52
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
21
31
51
52
53
54
55
56
57
58
59
60
61
62
62
61
60
59
58
54
40
20
30
50
63
55
39
19
29
49
64
56
38
18
28
48
65
57
37
17
27
47
66
58
36
16
26
46
67
59
35
15
25
45
68
60
34
14
24
44
69
61
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
66
67
68
69
70
71
72
73
74
75
76
75
74
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
85
69
65
73
77
93
84
68
64
72
76
92
83
67
63
71
75
91
82
66
62
70
74
90
81
65
61
69
73
89
80
64
60
68
72
88
79
63
59
67
71
87
78
62
58
66
70
86
77
61
57
65
69
85
76
60
56
64
68
84
75
59
55
63
67
83
74
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
61
60
59
58
57
56
55
54
62
63
64
65
66
67
68
69
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
82
73
61
49
53
61
57
69
81
72
60
48
52
60
56
68
80
71
59
47
51
59
55
67
79
70
58
46
50
58
54
66
78
69
57
45
49
57
53
65
77
68
56
44
48
56
52
64
76
67
55
43
47
55
51
63
75
66
65
64
63
62
61
60
59
58
57
56
55
54
42
46
54
50
62
63
64
65
66
67
68
69
70
71
72
73
74
53
41
45
53
49
61
52
40
44
52
48
60
51
39
43
51
47
59
50
38
42
50
46
58
49
37
41
49
45
57
48
36
40
48
44
56
47
35
39
47
43
55
46
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
54
45
25
33
53
44
24
32
52
43
23
31
51
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
22
30
50
51
52
53
54
55
56
57
58
59
60
61
62
62
61
60
59
55
41
21
29
49
63
56
40
20
28
48
64
57
39
19
27
47
65
58
38
18
26
46
66
59
37
17
25
45
67
60
36
16
24
44
68
61
35
15
23
43
69
62
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
67
68
69
70
71
72
73
74
75
76
75
74
73
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
86
70
66
72
76
92
85
69
65
71
75
91
84
68
64
70
74
90
83
67
63
69
73
89
82
66
62
68
72
88
81
65
61
67
71
87
80
64
60
66
70
86
79
63
59
65
69
85
78
62
58
64
68
84
77
61
57
63
67
83
76
60
56
62
66
82
75
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
62
61
60
59
58
57
56
55
61
62
63
64
65
66
67
68
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
81
74
62
50
54
60
56
68
80
73
61
49
53
59
55
67
79
72
60
48
52
58
54
66
78
71
59
47
51
57
53
65
77
70
58
46
50
56
52
64
76
69
57
45
49
55
51
63
75
68
56
44
48
54
50
62
74
67
66
65
64
63
62
61
60
59
58
57
56
55
43
47
53
49
61
62
63
64
65
66
67
68
69
70
71
72
73
54
42
46
52
48
60
53
41
45
51
47
59
52
40
44
50
46
58
51
39
43
49
45
57
50
38
42
48
44
56
49
37
41
47
43
55
48
36
40
46
42
54
47
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
53
46
26
32
52
45
25
31
51
44
24
30
50
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
23
29
49
50
51
52
53
54
55
56
57
58
59
60
61
62
62
61
60
56
42
22
28
48
62
57
41
21
27
47
63
58
40
20
26
46
64
59
39
19
25
45
65
60
38
18
24
44
66
61
37
17
23
43
67
62
36
16
22
42
68
63
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
68
69
70
71
72
73
74
75
76
75
74
73
72
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
87
71
67
71
75
91
86
70
66
70
74
90
85
69
65
69
73
89
84
68
64
68
72
88
83
67
63
67
71
87
82
66
62
66
70
86
81
65
61
65
69
85
80
64
60
64
68
84
79
63
59
63
67
83
78
62
58
62
66
82
77
61
57
61
65
81
76
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
63
62
61
60
59
58
57
56
60
61
62
63
64
65
66
67
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
80
75
63
51
55
59
55
67
79
74
62
50
54
58
54
66
78
73
61
49
53
57
53
65
77
72
60
48
52
56
52
64
76
71
59
47
51
55
51
63
75
70
58
46
50
54
50
62
74
69
57
45
49
53
49
61
73
68
67
66
65
64
63
62
61
60
59
58
57
56
44
48
52
48
60
61
62
63
64
65
66
67
68
69
70
71
72
55
43
47
51
47
59
54
42
46
50
46
58
53
41
45
49
45
57
52
40
44
48
44
56
51
39
43
47
43
55
50
38
42
46
42
54
49
37
41
45
41
53
48
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
52
47
27
31
51
46
26
30
50
45
25
29
49
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
24
28
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
62
61
57
43
23
27
47
61
58
42
22
26
46
62
59
41
21
25
45
63
60
40
20
24
44
64
61
39
19
23
43
65
62
38
18
22
42
66
63
37
17
21
41
67
64
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
69
70
71
72
73
74
75
76
75
74
73
72
71
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
88
72
68
70
74
90
87
71
67
69
73
89
86
70
66
68
72
88
85
69
65
67
71
87
84
68
64
66
70
86
83
67
63
65
69
85
82
66
62
64
68
84
81
65
61
63
67
83
80
64
60
62
66
82
79
63
59
61
65
81
78
62
58
60
64
80
77
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
64
63
62
61
60
59
58
57
59
60
61
62
63
64
65
66
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
79
76
64
52
56
58
54
66
78
75
63
51
55
57
53
65
77
74
62
50
54
56
52
64
76
73
61
49
53
55
51
63
75
72
60
48
52
54
50
62
74
71
59
47
51
53
49
61
73
70
58
46
50
52
48
60
72
69
68
67
66
65
64
63
62
61
60
59
58
57
45
49
51
47
59
60
61
62
63
64
65
66
67
68
69
70
71
56
44
48
50
46
58
55
43
47
49
45
57
54
42
46
48
44
56
53
41
45
47
43
55
52
40
44
46
42
54
51
39
43
45
41
53
50
38
42
44
40
52
49
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
51
48
28
30
50
47
27
29
49
46
26
28
48
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
25
27
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
62
58
44
24
26
46
60
59
43
23
25
45
61
60
42
22
24
44
62
61
41
21
23
43
63
62
40
20
22
42
64
63
39
19
21
41
65
64
38
18
20
40
66
65
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
70
71
72
73
74
75
76
75
74
73
72
71
70
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
73
69
69
73
89
88
72
68
68
72
88
87
71
67
67
71
87
86
70
66
66
70
86
85
69
65
65
69
85
84
68
64
64
68
84
83
67
63
63
67
83
82
66
62
62
66
82
81
65
61
61
65
81
80
64
60
60
64
80
79
63
59
59
63
79
78
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
65
64
63
62
61
60
59
58
58
59
60
61
62
63
64
65
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
78
77
65
53
57
57
53
65
77
76
64
52
56
56
52
64
76
75
63
51
55
55
51
63
75
74
62
50
54
54
50
62
74
73
61
49
53
53
49
61
73
72
60
48
52
52
48
60
72
71
59
47
51
51
47
59
71
70
69
68
67
66
65
64
63
62
61
60
59
58
46
50
50
46
58
59
60
61
62
63
64
65
66
67
68
69
70
57
45
49
49
45
57
56
44
48
48
44
56
55
43
47
47
43
55
54
42
46
46
42
54
53
41
45
45
41
53
52
40
44
44
40
52
51
39
43
43
39
51
50
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
50
49
29
29
49
48
28
28
48
47
27
27
47
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
26
26
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
59
45
25
25
45
59
60
44
24
24
44
60
61
43
23
23
43
61
62
42
22
22
42
62
63
41
21
21
41
63
64
40
20
20
40
64
65
39
19
19
39
65
66
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
71
72
73
74
75
76
75
74
73
72
71
70
69
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
90
74
70
68
72
88
89
73
69
67
71
87
88
72
68
66
70
86
87
71
67
65
69
85
86
70
66
64
68
84
85
69
65
63
67
83
84
68
64
62
66
82
83
67
63
61
65
81
82
66
62
60
64
80
81
65
61
59
63
79
80
64
60
58
62
78
79
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
66
65
64
63
62
61
60
59
57
58
59
60
61
62
63
64
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
77
78
66
54
58
56
52
64
76
77
65
53
57
55
51
63
75
76
64
52
56
54
50
62
74
75
63
51
55
53
49
61
73
74
62
50
54
52
48
60
72
73
61
49
53
51
47
59
71
72
60
48
52
50
46
58
70
71
70
69
68
67
66
65
64
63
62
61
60
59
47
51
49
45
57
58
59
60
61
62
63
64
65
66
67
68
69
58
46
50
48
44
56
57
45
49
47
43
55
56
44
48
46
42
54
55
43
47
45
41
53
54
42
46
44
40
52
53
41
45
43
39
51
52
40
44
42
38
50
51
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
49
50
30
28
48
49
29
27
47
48
28
26
46
62
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
27
25
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
60
46
26
24
44
58
61
45
25
23
43
59
62
44
24
22
42
60
63
43
23
21
41
61
64
42
22
20
40
62
65
41
21
19
39
63
66
40
20
18
38
64
67
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
72
73
74
75
76
75
74
73
72
71
70
69
68
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
91
75
71
67
71
87
90
74
70
66
70
86
89
73
69
65
69
85
88
72
68
64
68
84
87
71
67
63
67
83
86
70
66
62
66
82
85
69
65
61
65
81
84
68
64
60
64
80
83
67
63
59
63
79
82
66
62
58
62
78
81
65
61
57
61
77
80
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
67
66
65
64
63
62
61
60
56
57
58
59
60
61
62
63
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
76
79
67
55
59
55
51
63
75
78
66
54
58
54
50
62
74
77
65
53
57
53
49
61
73
76
64
52
56
52
48
60
72
75
63
51
55
51
47
59
71
74
62
50
54
50
46
58
70
73
61
49
53
49
45
57
69
72
71
70
69
68
67
66
65
64
63
62
61
60
48
52
48
44
56
57
58
59
60
61
62
63
64
65
66
67
68
59
47
51
47
43
55
58
46
50
46
42
54
57
45
49
45
41
53
56
44
48
44
40
52
55
43
47
43
39
51
54
42
46
42
38
50
53
41
45
41
37
49
52
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
48
51
31
27
47
50
30
26
46
49
29
25
45
61
62
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
28
24
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
47
27
23
43
57
62
46
26
22
42
58
63
45
25
21
41
59
64
44
24
20
40
60
65
43
23
19
39
61
66
42
22
18
38
62
67
41
21
17
37
63
68
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
73
74
75
76
75
74
73
72
71
70
69
68
67
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
92
76
72
66
70
86
91
75
71
65
69
85
90
74
70
64
68
84
89
73
69
63
67
83
88
72
68
62
66
82
87
71
67
61
65
81
86
70
66
60
64
80
85
69
65
59
63
79
84
68
64
58
62
78
83
67
63
57
61
77
82
66
62
56
60
76
81
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
68
67
66
65
64
63
62
61
55
56
57
58
59
60
61
62
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
75
80
68
56
60
54
50
62
74
79
67
55
59
53
49
61
73
78
66
54
58
52
48
60
72
77
65
53
57
51
47
59
71
76
64
52
56
50
46
58
70
75
63
51
55
49
45
57
69
74
62
50
54
48
44
56
68
73
72
71
70
69
68
67
66
65
64
63
62
61
49
53
47
43
55
56
57
58
59
60
61
62
63
64
65
66
67
60
48
52
46
42
54
59
47
51
45
41
53
58
46
50
44
40
52
57
45
49
43
39
51
56
44
48
42
38
50
55
43
47
41
37
49
54
42
46
40
36
48
53
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
47
52
32
26
46
51
31
25
45
50
30
24
44
60
61
62
62
61
60
59
58
57
56
55
54
53
52
51
50
49
29
23
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
62
48
28
22
42
56
63
47
27
21
41
57
64
46
26
20
40
58
65
45
25
19
39
59
66
44
24
18
38
60
67
43
23
17
37
61
68
42
22
16
36
62
69
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
74
75
76
75
74
73
72
71
70
69
68
67
66
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
93
77
73
65
69
85
92
76
72
64
68
84
91
75
71
63
67
83
90
74
70
62
66
82
89
73
69
61
65
81
88
72
68
60
64
80
87
71
67
59
63
79
86
70
66
58
62
78
85
69
65
57
61
77
84
68
64
56
60
76
83
67
63
55
59
75
82
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
69
68
67
66
65
64
63
62
54
55
56
57
58
59
60
61
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
74
81
69
57
61
53
49
61
73
80
68
56
60
52
48
60
72
79
67
55
59
51
47
59
71
78
66
54
58
50
46
58
70
77
65
53
57
49
45
57
69
76
64
52
56
48
44
56
68
75
63
51
55
47
43
55
67
74
73
72
71
70
69
68
67
66
65
64
63
62
50
54
46
42
54
55
56
57
58
59
60
61
62
63
64
65
66
61
49
53
45
41
53
60
48
52
44
40
52
59
47
51
43
39
51
58
46
50
42
38
50
57
45
49
41
37
49
56
44
48
40
36
48
55
43
47
39
35
47
54
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
46
53
33
25
45
52
32
24
44
51
31
23
43
59
60
61
62
62
61
60
59
58
57
56
55
54
53
52
51
50
30
22
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
63
49
29
21
41
55
64
48
28
20
40
56
65
47
27
19
39
57
66
46
26
18
38
58
67
45
25
17
37
59
68
44
24
16
36
60
69
43
23
15
35
61
70
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
75
76
75
74
73
72
71
70
69
68
67
66
65
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
94
78
74
64
68
84
93
77
73
63
67
83
92
76
72
62
66
82
91
75
71
61
65
81
90
74
70
60
64
80
89
73
69
59
63
79
88
72
68
58
62
78
87
71
67
57
61
77
86
70
66
56
60
76
85
69
65
55
59
75
84
68
64
54
58
74
83
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
70
69
68
67
66
65
64
63
53
54
55
56
57
58
59
60
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
73
82
70
58
62
52
48
60
72
81
69
57
61
51
47
59
71
80
68
56
60
50
46
58
70
79
67
55
59
49
45
57
69
78
66
54
58
48
44
56
68
77
65
53
57
47
43
55
67
76
64
52
56
46
42
54
66
75
74
73
72
71
70
69
68
67
66
65
64
63
51
55
45
41
53
54
55
56
57
58
59
60
61
62
63
64
65
62
50
54
44
40
52
61
49
53
43
39
51
60
48
52
42
38
50
59
47
51
41
37
49
58
46
50
40
36
48
57
45
49
39
35
47
56
44
48
38
34
46
55
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
45
54
34
24
44
53
33
23
43
52
32
22
42
58
59
60
61
62
62
61
60
59
58
57
56
55
54
53
52
51
31
21
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
63
50
30
20
40
54
64
49
29
19
39
55
65
48
28
18
38
56
66
47
27
17
37
57
67
46
26
16
36
58
68
45
25
15
35
59
69
44
24
14
34
60
70
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
76
75
74
73
72
71
70
69
68
67
66
65
64
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
95
79
75
63
67
83
94
78
74
62
66
82
93
77
73
61
65
81
92
76
72
60
64
80
91
75
71
59
63
79
90
74
70
58
62
78
89
73
69
57
61
77
88
72
68
56
60
76
87
71
67
55
59
75
86
70
66
54
58
74
85
69
65
53
57
73
84
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
72
83
71
59
63
51
47
59
71
82
70
58
62
50
46
58
70
81
69
57
61
49
45
57
69
80
68
56
60
48
44
56
68
79
67
55
59
47
43
55
67
78
66
54
58
46
42
54
66
77
65
53
57
45
41
53
65
76
75
74
73
72
71
70
69
68
67
66
65
64
52
56
44
40
52
53
54
55
56
57
58
59
60
61
62
63
64
63
51
55
43
39
51
62
50
54
42
38
50
61
49
53
41
37
49
60
48
52
40
36
48
59
47
51
39
35
47
58
46
50
38
34
46
57
45
49
37
33
45
56
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
44
55
35
23
43
54
34
22
42
53
33
21
41
57
58
59
60
61
62
62
61
60
59
58
57
56
55
54
53
52
32
20
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
62
51
31
19
39
53
63
50
30
18
38
54
64
49
29
17
37
55
65
48
28
16
36
56
66
47
27
15
35
57
67
46
26
14
34
58
68
45
25
13
33
59
69
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
75
74
73
72
71
70
69
68
67
66
65
64
63
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
96
80
74
62
66
82
95
79
73
61
65
81
94
78
72
60
64
80
93
77
71
59
63
79
92
76
70
58
62
78
91
75
69
57
61
77
90
74
68
56
60
76
89
73
67
55
59
75
88
72
66
54
58
74
87
71
65
53
57
73
86
70
64
52
56
72
85
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
51
52
53
54
55
56
57
58
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
71
84
72
60
62
50
46
58
70
83
71
59
61
49
45
57
69
82
70
58
60
48
44
56
68
81
69
57
59
47
43
55
67
80
68
56
58
46
42
54
66
79
67
55
57
45
41
53
65
78
66
54
56
44
40
52
64
77
76
75
74
73
72
71
70
69
68
67
66
65
53
55
43
39
51
52
53
54
55
56
57
58
59
60
61
62
63
64
52
54
42
38
50
63
51
53
41
37
49
62
50
52
40
36
48
61
49
51
39
35
47
60
48
50
38
34
46
59
47
49
37
33
45
58
46
48
36
32
44
57
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
43
56
36
22
42
55
35
21
41
54
34
20
40
56
57
58
59
60
61
62
62
61
60
59
58
57
56
55
54
53
33
19
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
61
52
32
18
38
52
62
51
31
17
37
53
63
50
30
16
36
54
64
49
29
15
35
55
65
48
28
14
34
56
66
47
27
13
33
57
67
46
26
12
32
58
68
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
74
73
72
71
70
69
68
67
66
65
64
63
62
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
97
81
73
61
65
81
96
80
72
60
64
80
95
79
71
59
63
79
94
78
70
58
62
78
93
77
69
57
61
77
92
76
68
56
60
76
91
75
67
55
59
75
90
74
66
54
58
74
89
73
65
53
57
73
88
72
64
52
56
72
87
71
63
51
55
71
86
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
50
51
52
53
54
55
56
57
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
70
85
73
61
61
49
45
57
69
84
72
60
60
48
44
56
68
83
71
59
59
47
43
55
67
82
70
58
58
46
42
54
66
81
69
57
57
45
41
53
65
80
68
56
56
44
40
52
64
79
67
55
55
43
39
51
63
78
77
76
75
74
73
72
71
70
69
68
67
66
54
54
42
38
50
51
52
53
54
55
56
57
58
59
60
61
62
65
53
53
41
37
49
64
52
52
40
36
48
63
51
51
39
35
47
62
50
50
38
34
46
61
49
49
37
33
45
60
48
48
36
32
44
59
47
47
35
31
43
58
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
42
57
37
21
41
56
36
20
40
55
35
19
39
55
56
57
58
59
60
61
62
62
61
60
59
58
57
56
55
54
34
18
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
60
53
33
17
37
51
61
52
32
16
36
52
62
51
31
15
35
53
63
50
30
14
34
54
64
49
29
13
33
55
65
48
28
12
32
56
66
47
27
11
31
57
67
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
73
72
71
70
69
68
67
66
65
64
63
62
61
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
98
82
72
60
64
80
97
81
71
59
63
79
96
80
70
58
62
78
95
79
69
57
61
77
94
78
68
56
60
76
93
77
67
55
59
75
92
76
66
54
58
74
91
75
65
53
57
73
90
74
64
52
56
72
89
73
63
51
55
71
88
72
62
50
54
70
87
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
49
50
51
52
53
54
55
56
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
69
86
74
62
60
48
44
56
68
85
73
61
59
47
43
55
67
84
72
60
58
46
42
54
66
83
71
59
57
45
41
53
65
82
70
58
56
44
40
52
64
81
69
57
55
43
39
51
63
80
68
56
54
42
38
50
62
79
78
77
76
75
74
73
72
71
70
69
68
67
55
53
41
37
49
50
51
52
53
54
55
56
57
58
59
60
61
66
54
52
40
36
48
65
53
51
39
35
47
64
52
50
38
34
46
63
51
49
37
33
45
62
50
48
36
32
44
61
49
47
35
31
43
60
48
46
34
30
42
59
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
41
58
38
20
40
57
37
19
39
56
36
18
38
54
55
56
57
58
59
60
61
62
62
61
60
59
58
57
56
55
35
17
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
59
54
34
16
36
50
60
53
33
15
35
51
61
52
32
14
34
52
62
51
31
13
33
53
63
50
30
12
32
54
64
49
29
11
31
55
65
48
28
10
30
56
66
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
72
71
70
69
68
67
66
65
64
63
62
61
60
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
99
83
71
59
63
79
98
82
70
58
62
78
97
81
69
57
61
77
96
80
68
56
60
76
95
79
67
55
59
75
94
78
66
54
58
74
93
77
65
53
57
73
92
76
64
52
56
72
91
75
63
51
55
71
90
74
62
50
54
70
89
73
61
49
53
69
88
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
48
49
50
51
52
53
54
55
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
68
87
75
63
59
47
43
55
67
86
74
62
58
46
42
54
66
85
73
61
57
45
41
53
65
84
72
60
56
44
40
52
64
83
71
59
55
43
39
51
63
82
70
58
54
42
38
50
62
81
69
57
53
41
37
49
61
80
79
78
77
76
75
74
73
72
71
70
69
68
56
52
40
36
48
49
50
51
52
53
54
55
56
57
58
59
60
67
55
51
39
35
47
66
54
50
38
34
46
65
53
49
37
33
45
64
52
48
36
32
44
63
51
47
35
31
43
62
50
46
34
30
42
61
49
45
33
29
41
60
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
40
59
39
19
39
58
38
18
38
57
37
17
37
53
54
55
56
57
58
59
60
61
62
62
61
60
59
58
57
56
36
16
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
58
55
35
15
35
49
59
54
34
14
34
50
60
53
33
13
33
51
61
52
32
12
32
52
62
51
31
11
31
53
63
50
30
10
30
54
64
49
29
9
29
55
65
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
71
70
69
68
67
66
65
64
63
62
61
60
59
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
100
82
70
58
62
78
99
81
69
57
61
77
98
80
68
56
60
76
97
79
67
55
59
75
96
78
66
54
58
74
95
77
65
53
57
73
94
76
64
52
56
72
93
75
63
51
55
71
92
74
62
50
54
70
91
73
61
49
53
69
90
72
60
48
52
68
89
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
47
48
49
50
51
52
53
54
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
67
88
76
64
58
46
42
54
66
87
75
63
57
45
41
53
65
86
74
62
56
44
40
52
64
85
73
61
55
43
39
51
63
84
72
60
54
42
38
50
62
83
71
59
53
41
37
49
61
82
70
58
52
40
36
48
60
81
80
79
78
77
76
75
74
73
72
71
70
69
57
51
39
35
47
48
49
50
51
52
53
54
55
56
57
58
59
68
56
50
38
34
46
67
55
49
37
33
45
66
54
48
36
32
44
65
53
47
35
31
43
64
52
46
34
30
42
63
51
45
33
29
41
62
50
44
32
28
40
61
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
39
60
40
18
38
59
39
17
37
58
38
16
36
52
53
54
55
56
57
58
59
60
61
62
62
61
60
59
58
57
37
15
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
57
56
36
14
34
48
58
55
35
13
33
49
59
54
34
12
32
50
60
53
33
11
31
51
61
52
32
10
30
52
62
51
31
9
29
53
63
50
30
8
28
54
64
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
70
69
68
67
66
65
64
63
62
61
60
59
58
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
101
81
69
57
61
77
100
80
68
56
60
76
99
79
67
55
59
75
98
78
66
54
58
74
97
77
65
53
57
73
96
76
64
52
56
72
95
75
63
51
55
71
94
74
62
50
54
70
93
73
61
49
53
69
92
72
60
48
52
68
91
71
59
47
51
67
90
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
46
47
48
49
50
51
52
53
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
66
89
77
65
57
45
41
53
65
88
76
64
56
44
40
52
64
87
75
63
55
43
39
51
63
86
74
62
54
42
38
50
62
85
73
61
53
41
37
49
61
84
72
60
52
40
36
48
60
83
71
59
51
39
35
47
59
82
81
80
79
78
77
76
75
74
73
72
71
70
58
50
38
34
46
47
48
49
50
51
52
53
54
55
56
57
58
69
57
49
37
33
45
68
56
48
36
32
44
67
55
47
35
31
43
66
54
46
34
30
42
65
53
45
33
29
41
64
52
44
32
28
40
63
51
43
31
27
39
62
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
38
61
41
17
37
60
40
16
36
59
39
15
35
51
52
53
54
55
56
57
58
59
60
61
62
62
61
60
59
58
38
14
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
56
57
37
13
33
47
57
56
36
12
32
48
58
55
35
11
31
49
59
54
34
10
30
50
60
53
33
9
29
51
61
52
32
8
28
52
62
51
31
7
27
53
63
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
69
68
67
66
65
64
63
62
61
60
59
58
57
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
102
80
68
56
60
76
101
79
67
55
59
75
100
78
66
54
58
74
99
77
65
53
57
73
98
76
64
52
56
72
97
75
63
51
55
71
96
74
62
50
54
70
95
73
61
49
53
69
94
72
60
48
52
68
93
71
59
47
51
67
92
70
58
46
50
66
91
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
45
46
47
48
49
50
51
52
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
65
90
78
66
56
44
40
52
64
89
77
65
55
43
39
51
63
88
76
64
54
42
38
50
62
87
75
63
53
41
37
49
61
86
74
62
52
40
36
48
60
85
73
61
51
39
35
47
59
84
72
60
50
38
34
46
58
83
82
81
80
79
78
77
76
75
74
73
72
71
59
49
37
33
45
46
47
48
49
50
51
52
53
54
55
56
57
70
58
48
36
32
44
69
57
47
35
31
43
68
56
46
34
30
42
67
55
45
33
29
41
66
54
44
32
28
40
65
53
43
31
27
39
64
52
42
30
26
38
63
51
50
49
48
47
46
45
44
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
37
62
42
16
36
61
41
15
35
60
40
14
34
50
51
52
53
54
55
56
57
58
59
60
61
62
62
61
60
59
39
13
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
55
58
38
12
32
46
56
57
37
11
31
47
57
56
36
10
30
48
58
55
35
9
29
49
59
54
34
8
28
50
60
53
33
7
27
51
61
52
32
6
26
52
62
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
68
67
66
65
64
63
62
61
60
59
58
57
56
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
103
79
67
55
59
75
102
78
66
54
58
74
101
77
65
53
57
73
100
76
64
52
56
72
99
75
63
51
55
71
98
74
62
50
54
70
97
73
61
49
53
69
96
72
60
48
52
68
95
71
59
47
51
67
94
70
58
46
50
66
93
69
57
45
49
65
92
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
64
91
79
67
55
43
39
51
63
90
78
66
54
42
38
50
62
89
77
65
53
41
37
49
61
88
76
64
52
40
36
48
60
87
75
63
51
39
35
47
59
86
74
62
50
38
34
46
58
85
73
61
49
37
33
45
57
84
83
82
81
80
79
78
77
76
75
74
73
72
60
48
36
32
44
45
46
47
48
49
50
51
52
53
54
55
56
71
59
47
35
31
43
70
58
46
34
30
42
69
57
45
33
29
41
68
56
44
32
28
40
67
55
43
31
27
39
66
54
42
30
26
38
65
53
41
29
25
37
64
52
51
50
49
48
47
46
45
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
36
63
43
15
35
62
42
14
34
61
41
13
33
49
50
51
52
53
54
55
56
57
58
59
60
61
62
62
61
60
40
12
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
54
59
39
11
31
45
55
58
38
10
30
46
56
57
37
9
29
47
57
56
36
8
28
48
58
55
35
7
27
49
59
54
34
6
26
50
60
53
33
5
25
51
61
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
67
66
65
64
63
62
61
60
59
58
57
56
55
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
104
78
66
54
58
74
103
77
65
53
57
73
102
76
64
52
56
72
101
75
63
51
55
71
100
74
62
50
54
70
99
73
61
49
53
69
98
72
60
48
52
68
97
71
59
47
51
67
96
70
58
46
50
66
95
69
57
45
49
65
94
68
56
44
48
64
93
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
43
44
45
46
47
48
49
50
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
63
92
80
68
54
42
38
50
62
91
79
67
53
41
37
49
61
90
78
66
52
40
36
48
60
89
77
65
51
39
35
47
59
88
76
64
50
38
34
46
58
87
75
63
49
37
33
45
57
86
74
62
48
36
32
44
56
85
84
83
82
81
80
79
78
77
76
75
74
73
61
47
35
31
43
44
45
46
47
48
49
50
51
52
53
54
55
72
60
46
34
30
42
71
59
45
33
29
41
70
58
44
32
28
40
69
57
43
31
27
39
68
56
42
30
26
38
67
55
41
29
25
37
66
54
40
28
24
36
65
53
52
51
50
49
48
47
46
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
35
64
44
14
34
63
43
13
33
62
42
12
32
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
62
61
41
11
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
53
60
40
10
30
44
54
59
39
9
29
45
55
58
38
8
28
46
56
57
37
7
27
47
57
56
36
6
26
48
58
55
35
5
25
49
59
54
34
4
24
50
60
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
66
65
64
63
62
61
60
59
58
57
56
55
54
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
105
77
65
53
57
73
104
76
64
52
56
72
103
75
63
51
55
71
102
74
62
50
54
70
101
73
61
49
53
69
100
72
60
48
52
68
99
71
59
47
51
67
98
70
58
46
50
66
97
69
57
45
49
65
96
68
56
44
48
64
95
67
55
43
47
63
94
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
42
43
44
45
46
47
48
49
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
62
93
81
69
53
41
37
49
61
92
80
68
52
40
36
48
60
91
79
67
51
39
35
47
59
90
78
66
50
38
34
46
58
89
77
65
49
37
33
45
57
88
76
64
48
36
32
44
56
87
75
63
47
35
31
43
55
86
85
84
83
82
81
80
79
78
77
76
75
74
62
46
34
30
42
43
44
45
46
47
48
49
50
51
52
53
54
73
61
45
33
29
41
72
60
44
32
28
40
71
59
43
31
27
39
70
58
42
30
26
38
69
57
41
29
25
37
68
56
40
28
24
36
67
55
39
27
23
35
66
54
53
52
51
50
49
48
47
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
34
65
45
13
33
64
44
12
32
63
43
11
31
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
62
42
10
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
52
61
41
9
29
43
53
60
40
8
28
44
54
59
39
7
27
45
55
58
38
6
26
46
56
57
37
5
25
47
57
56
36
4
24
48
58
55
35
3
23
49
59
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
106
107
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
65
64
63
62
61
60
59
58
57
56
55
54
53
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
105
76
64
52
56
72
104
75
63
51
55
71
103
74
62
50
54
70
102
73
61
49
53
69
101
72
60
48
52
68
100
71
59
47
51
67
99
70
58
46
50
66
98
69
57
45
49
65
97
68
56
44
48
64
96
67
55
43
47
63
95
66
54
42
46
62
94
82
82
81
80
79
78
77
76
75
74
73
72
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
41
42
43
44
45
46
47
48
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
61
93
81
70
52
40
36
48
60
92
80
69
51
39
35
47
59
91
79
68
50
38
34
46
58
90
78
67
49
37
33
45
57
89
77
66
48
36
32
44
56
88
76
65
47
35
31
43
55
87
75
64
46
34
30
42
54
86
85
84
83
82
81
80
79
78
77
76
75
74
63
45
33
29
41
42
43
44
45
46
47
48
49
50
51
52
53
73
62
44
32
28
40
72
61
43
31
27
39
71
60
42
30
26
38
70
59
41
29
25
37
69
58
40
28
24
36
68
57
39
27
23
35
67
56
38
26
22
34
66
55
54
53
52
51
50
49
48
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
33
65
46
12
32
64
45
11
31
63
44
10
30
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
43
9
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
51
62
42
8
28
42
52
61
41
7
27
43
53
60
40
6
26
44
54
59
39
5
25
45
55
58
38
4
24
46
56
57
37
3
23
47
57
56
36
2
22
48
58
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
64
63
62
61
60
59
58
57
56
55
54
53
52
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
104
75
63
51
55
71
103
74
62
50
54
70
102
73
61
49
53
69
101
72
60
48
52
68
100
71
59
47
51
67
99
70
58
46
50
66
98
69
57
45
49
65
97
68
56
44
48
64
96
67
55
43
47
63
95
66
54
42
46
62
94
65
53
41
45
61
93
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
60
92
80
71
51
39
35
47
59
91
79
70
50
38
34
46
58
90
78
69
49
37
33
45
57
89
77
68
48
36
32
44
56
88
76
67
47
35
31
43
55
87
75
66
46
34
30
42
54
86
74
65
45
33
29
41
53
85
84
83
82
81
80
79
78
77
76
75
74
73
64
44
32
28
40
41
42
43
44
45
46
47
48
49
50
51
52
72
63
43
31
27
39
71
62
42
30
26
38
70
61
41
29
25
37
69
60
40
28
24
36
68
59
39
27
23
35
67
58
38
26
22
34
66
57
37
25
21
33
65
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
32
64
47
11
31
63
46
10
30
62
45
9
29
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
44
8
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
50
62
43
7
27
41
51
62
42
6
26
42
52
61
41
5
25
43
53
60
40
4
24
44
54
59
39
3
23
45
55
58
38
2
22
46
56
57
37
1
21
47
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
65
64
63
62
61
60
59
58
57
56
55
54
53
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
103
76
64
52
56
70
102
75
63
51
55
69
101
74
62
50
54
68
100
73
61
49
53
67
99
72
60
48
52
66
98
71
59
47
51
65
97
70
58
46
50
64
96
69
57
45
49
63
95
68
56
44
48
62
94
67
55
43
47
61
93
66
54
42
46
60
92
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
41
42
43
44
45
46
47
48
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
47
59
91
79
72
52
40
36
46
58
90
78
71
51
39
35
45
57
89
77
70
50
38
34
44
56
88
76
69
49
37
33
43
55
87
75
68
48
36
32
42
54
86
74
67
47
35
31
41
53
85
73
66
46
34
30
40
52
84
83
82
81
80
79
78
77
76
75
74
73
72
65
45
33
29
39
40
41
42
43
44
45
46
47
48
49
50
51
71
64
44
32
28
38
70
63
43
31
27
37
69
62
42
30
26
36
68
61
41
29
25
35
67
60
40
28
24
34
66
59
39
27
23
33
65
58
38
26
22
32
64
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
31
63
48
12
30
62
47
11
29
61
46
10
28
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
45
9
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
49
61
44
8
26
40
50
62
43
7
25
41
51
62
42
6
24
42
52
61
41
5
23
43
53
60
40
4
22
44
54
59
39
3
21
45
55
58
38
2
20
46
56
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
66
65
64
63
62
61
60
59
58
57
56
55
54
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
102
77
65
53
57
69
101
76
64
52
56
68
100
75
63
51
55
67
99
74
62
50
54
66
98
73
61
49
53
65
97
72
60
48
52
64
96
71
59
47
51
63
95
70
58
46
50
62
94
69
57
45
49
61
93
68
56
44
48
60
92
67
55
43
47
59
91
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
42
43
44
45
46
47
48
49
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
47
46
58
90
78
73
53
41
37
45
57
89
77
72
52
40
36
44
56
88
76
71
51
39
35
43
55
87
75
70
50
38
34
42
54
86
74
69
49
37
33
41
53
85
73
68
48
36
32
40
52
84
72
67
47
35
31
39
51
83
82
81
80
79
78
77
76
75
74
73
72
71
66
46
34
30
38
39
40
41
42
43
44
45
46
47
48
49
50
70
65
45
33
29
37
69
64
44
32
28
36
68
63
43
31
27
35
67
62
42
30
26
34
66
61
41
29
25
33
65
60
40
28
24
32
64
59
39
27
23
31
63
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
30
62
49
13
29
61
48
12
28
60
47
11
27
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
46
10
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
48
60
45
9
25
39
49
61
44
8
24
40
50
62
43
7
23
41
51
62
42
6
22
42
52
61
41
5
21
43
53
60
40
4
20
44
54
59
39
3
19
45
55
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
67
66
65
64
63
62
61
60
59
58
57
56
55
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
101
78
66
54
58
68
100
77
65
53
57
67
99
76
64
52
56
66
98
75
63
51
55
65
97
74
62
50
54
64
96
73
61
49
53
63
95
72
60
48
52
62
94
71
59
47
51
61
93
70
58
46
50
60
92
69
57
45
49
59
91
68
56
44
48
58
90
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
43
44
45
46
47
48
49
50
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
47
46
45
57
89
77
74
54
42
38
44
56
88
76
73
53
41
37
43
55
87
75
72
52
40
36
42
54
86
74
71
51
39
35
41
53
85
73
70
50
38
34
40
52
84
72
69
49
37
33
39
51
83
71
68
48
36
32
38
50
82
81
80
79
78
77
76
75
74
73
72
71
70
67
47
35
31
37
38
39
40
41
42
43
44
45
46
47
48
49
69
66
46
34
30
36
68
65
45
33
29
35
67
64
44
32
28
34
66
63
43
31
27
33
65
62
42
30
26
32
64
61
41
29
25
31
63
60
40
28
24
30
62
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
29
61
50
14
28
60
49
13
27
59
48
12
26
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
47
11
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
47
59
46
10
24
38
48
60
45
9
23
39
49
61
44
8
22
40
50
62
43
7
21
41
51
62
42
6
20
42
52
61
41
5
19
43
53
60
40
4
18
44
54
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
68
67
66
65
64
63
62
61
60
59
58
57
56
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
100
79
67
55
59
67
99
78
66
54
58
66
98
77
65
53
57
65
97
76
64
52
56
64
96
75
63
51
55
63
95
74
62
50
54
62
94
73
61
49
53
61
93
72
60
48
52
60
92
71
59
47
51
59
91
70
58
46
50
58
90
69
57
45
49
57
89
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
47
46
45
44
56
88
76
75
55
43
39
43
55
87
75
74
54
42
38
42
54
86
74
73
53
41
37
41
53
85
73
72
52
40
36
40
52
84
72
71
51
39
35
39
51
83
71
70
50
38
34
38
50
82
70
69
49
37
33
37
49
81
80
79
78
77
76
75
74
73
72
71
70
69
68
48
36
32
36
37
38
39
40
41
42
43
44
45
46
47
48
68
67
47
35
31
35
67
66
46
34
30
34
66
65
45
33
29
33
65
64
44
32
28
32
64
63
43
31
27
31
63
62
42
30
26
30
62
61
41
29
25
29
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
28
60
51
15
27
59
50
14
26
58
49
13
25
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
48
12
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
46
58
47
11
23
37
47
59
46
10
22
38
48
60
45
9
21
39
49
61
44
8
20
40
50
62
43
7
19
41
51
62
42
6
18
42
52
61
41
5
17
43
53
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
69
68
67
66
65
64
63
62
61
60
59
58
57
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
99
80
68
56
60
66
98
79
67
55
59
65
97
78
66
54
58
64
96
77
65
53
57
63
95
76
64
52
56
62
94
75
63
51
55
61
93
74
62
50
54
60
92
73
61
49
53
59
91
72
60
48
52
58
90
71
59
47
51
57
89
70
58
46
50
56
88
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
45
46
47
48
49
50
51
52
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
47
46
45
44
43
55
87
75
76
56
44
40
42
54
86
74
75
55
43
39
41
53
85
73
74
54
42
38
40
52
84
72
73
53
41
37
39
51
83
71
72
52
40
36
38
50
82
70
71
51
39
35
37
49
81
69
70
50
38
34
36
48
80
79
78
77
76
75
74
73
72
71
70
69
68
69
49
37
33
35
36
37
38
39
40
41
42
43
44
45
46
47
67
68
48
36
32
34
66
67
47
35
31
33
65
66
46
34
30
32
64
65
45
33
29
31
63
64
44
32
28
30
62
63
43
31
27
29
61
62
42
30
26
28
60
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
27
59
52
16
26
58
51
15
25
57
50
14
24
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
49
13
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
45
57
48
12
22
36
46
58
47
11
21
37
47
59
46
10
20
38
48
60
45
9
19
39
49
61
44
8
18
40
50
62
43
7
17
41
51
62
42
6
16
42
52
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
70
69
68
67
66
65
64
63
62
61
60
59
58
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
98
81
69
57
61
65
97
80
68
56
60
64
96
79
67
55
59
63
95
78
66
54
58
62
94
77
65
53
57
61
93
76
64
52
56
60
92
75
63
51
55
59
91
74
62
50
54
58
90
73
61
49
53
57
89
72
60
48
52
56
88
71
59
47
51
55
87
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
46
47
48
49
50
51
52
53
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
47
46
45
44
43
42
54
86
74
77
57
45
41
41
53
85
73
76
56
44
40
40
52
84
72
75
55
43
39
39
51
83
71
74
54
42
38
38
50
82
70
73
53
41
37
37
49
81
69
72
52
40
36
36
48
80
68
71
51
39
35
35
47
79
78
77
76
75
74
73
72
71
70
69
68
67
70
50
38
34
34
35
36
37
38
39
40
41
42
43
44
45
46
66
69
49
37
33
33
65
68
48
36
32
32
64
67
47
35
31
31
63
66
46
34
30
30
62
65
45
33
29
29
61
64
44
32
28
28
60
63
43
31
27
27
59
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
26
58
53
17
25
57
52
16
24
56
51
15
23
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
50
14
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
44
56
49
13
21
35
45
57
48
12
20
36
46
58
47
11
19
37
47
59
46
10
18
38
48
60
45
9
17
39
49
61
44
8
16
40
50
62
43
7
15
41
51
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
71
70
69
68
67
66
65
64
63
62
61
60
59
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
97
82
70
58
62
64
96
81
69
57
61
63
95
80
68
56
60
62
94
79
67
55
59
61
93
78
66
54
58
60
92
77
65
53
57
59
91
76
64
52
56
58
90
75
63
51
55
57
89
74
62
50
54
56
88
73
61
49
53
55
87
72
60
48
52
54
86
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
47
48
49
50
51
52
53
54
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
47
46
45
44
43
42
41
53
85
73
78
58
46
42
40
52
84
72
77
57
45
41
39
51
83
71
76
56
44
40
38
50
82
70
75
55
43
39
37
49
81
69
74
54
42
38
36
48
80
68
73
53
41
37
35
47
79
67
72
52
40
36
34
46
78
77
76
75
74
73
72
71
70
69
68
67
66
71
51
39
35
33
34
35
36
37
38
39
40
41
42
43
44
45
65
70
50
38
34
32
64
69
49
37
33
31
63
68
48
36
32
30
62
67
47
35
31
29
61
66
46
34
30
28
60
65
45
33
29
27
59
64
44
32
28
26
58
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
25
57
54
18
24
56
53
17
23
55
52
16
22
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
51
15
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
43
55
50
14
20
34
44
56
49
13
19
35
45
57
48
12
18
36
46
58
47
11
17
37
47
59
46
10
16
38
48
60
45
9
15
39
49
61
44
8
14
40
50
62
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
72
71
70
69
68
67
66
65
64
63
62
61
60
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
96
83
71
59
63
63
95
82
70
58
62
62
94
81
69
57
61
61
93
80
68
56
60
60
92
79
67
55
59
59
91
78
66
54
58
58
90
77
65
53
57
57
89
76
64
52
56
56
88
75
63
51
55
55
87
74
62
50
54
54
86
73
61
49
53
53
85
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
48
49
50
51
52
53
54
55
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
47
46
45
44
43
42
41
40
52
84
72
79
59
47
43
39
51
83
71
78
58
46
42
38
50
82
70
77
57
45
41
37
49
81
69
76
56
44
40
36
48
80
68
75
55
43
39
35
47
79
67
74
54
42
38
34
46
78
66
73
53
41
37
33
45
77
76
75
74
73
72
71
70
69
68
67
66
65
72
52
40
36
32
33
34
35
36
37
38
39
40
41
42
43
44
64
71
51
39
35
31
63
70
50
38
34
30
62
69
49
37
33
29
61
68
48
36
32
28
60
67
47
35
31
27
59
66
46
34
30
26
58
65
45
33
29
25
57
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
24
56
55
19
23
55
54
18
22
54
53
17
21
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
52
16
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
42
54
51
15
19
33
43
55
50
14
18
34
44
56
49
13
17
35
45
57
48
12
16
36
46
58
47
11
15
37
47
59
46
10
14
38
48
60
45
9
13
39
49
61
62
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
73
72
71
70
69
68
67
66
65
64
63
62
61
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
95
84
72
60
64
62
94
83
71
59
63
61
93
82
70
58
62
60
92
81
69
57
61
59
91
80
68
56
60
58
90
79
67
55
59
57
89
78
66
54
58
56
88
77
65
53
57
55
87
76
64
52
56
54
86
75
63
51
55
53
85
74
62
50
54
52
84
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
49
50
51
52
53
54
55
56
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
47
46
45
44
43
42
41
40
39
51
83
71
80
60
48
44
38
50
82
70
79
59
47
43
37
49
81
69
78
58
46
42
36
48
80
68
77
57
45
41
35
47
79
67
76
56
44
40
34
46
78
66
75
55
43
39
33
45
77
65
74
54
42
38
32
44
76
75
74
73
72
71
70
69
68
67
66
65
64
73
53
41
37
31
32
33
34
35
36
37
38
39
40
41
42
43
63
72
52
40
36
30
62
71
51
39
35
29
61
70
50
38
34
28
60
69
49
37
33
27
59
68
48
36
32
26
58
67
47
35
31
25
57
66
46
34
30
24
56
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
23
55
56
20
22
54
55
19
21
53
54
18
20
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
17
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
41
53
52
16
18
32
42
54
51
15
17
33
43
55
50
14
16
34
44
56
49
13
15
35
45
57
48
12
14
36
46
58
47
11
13
37
47
59
46
10
12
38
48
60
61
62
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
74
73
72
71
70
69
68
67
66
65
64
63
62
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
94
85
73
61
65
61
93
84
72
60
64
60
92
83
71
59
63
59
91
82
70
58
62
58
90
81
69
57
61
57
89
80
68
56
60
56
88
79
67
55
59
55
87
78
66
54
58
54
86
77
65
53
57
53
85
76
64
52
56
52
84
75
63
51
55
51
83
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
50
51
52
53
54
55
56
57
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
47
46
45
44
43
42
41
40
39
38
50
82
70
81
61
49
45
37
49
81
69
80
60
48
44
36
48
80
68
79
59
47
43
35
47
79
67
78
58
46
42
34
46
78
66
77
57
45
41
33
45
77
65
76
56
44
40
32
44
76
64
75
55
43
39
31
43
75
74
73
72
71
70
69
68
67
66
65
64
63
74
54
42
38
30
31
32
33
34
35
36
37
38
39
40
41
42
62
73
53
41
37
29
61
72
52
40
36
28
60
71
51
39
35
27
59
70
50
38
34
26
58
69
49
37
33
25
57
68
48
36
32
24
56
67
47
35
31
23
55
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
22
54
57
21
21
53
56
20
20
52
55
19
19
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
54
18
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
40
52
53
17
17
31
41
53
52
16
16
32
42
54
51
15
15
33
43
55
50
14
14
34
44
56
49
13
13
35
45
57
48
12
12
36
46
58
47
11
11
37
47
59
60
61
62
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
75
74
73
72
71
70
69
68
67
66
65
64
63
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
93
86
74
62
66
60
92
85
73
61
65
59
91
84
72
60
64
58
90
83
71
59
63
57
89
82
70
58
62
56
88
81
69
57
61
55
87
80
68
56
60
54
86
79
67
55
59
53
85
78
66
54
58
52
84
77
65
53
57
51
83
76
64
52
56
50
82
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
51
52
53
54
55
56
57
58
59
58
57
56
55
54
53
52
51
50
49
48
47
48
47
46
45
44
43
42
41
40
39
38
37
49
81
69
82
62
50
46
36
48
80
68
81
61
49
45
35
47
79
67
80
60
48
44
34
46
78
66
79
59
47
43
33
45
77
65
78
58
46
42
32
44
76
64
77
57
45
41
31
43
75
63
76
56
44
40
30
42
74
73
72
71
70
69
68
67
66
65
64
63
62
75
55
43
39
29
30
31
32
33
34
35
36
37
38
39
40
41
61
74
54
42
38
28
60
73
53
41
37
27
59
72
52
40
36
26
58
71
51
39
35
25
57
70
50
38
34
24
56
69
49
37
33
23
55
68
48
36
32
22
54
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
21
53
58
22
20
52
57
21
19
51
56
20
18
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
55
19
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
39
51
54
18
16
30
40
52
53
17
15
31
41
53
52
16
14
32
42
54
51
15
13
33
43
55
50
14
12
34
44
56
49
13
11
35
45
57
48
12
10
36
46
58
59
60
61
62
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
76
75
74
73
72
71
70
69
68
67
66
65
64
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
92
87
75
63
67
59
91
86
74
62
66
58
90
85
73
61
65
57
89
84
72
60
64
56
88
83
71
59
63
55
87
82
70
58
62
54
86
81
69
57
61
53
85
80
68
56
60
52
84
79
67
55
59
51
83
78
66
54
58
50
82
77
65
53
57
49
81
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
48
80
68
82
63
51
47
35
47
79
67
82
62
50
46
34
46
78
66
81
61
49
45
33
45
77
65
80
60
48
44
32
44
76
64
79
59
47
43
31
43
75
63
78
58
46
42
30
42
74
62
77
57
45
41
29
41
73
72
71
70
69
68
67
66
65
64
63
62
61
76
56
44
40
28
29
30
31
32
33
34
35
36
37
38
39
40
60
75
55
43
39
27
59
74
54
42
38
26
58
73
53
41
37
25
57
72
52
40
36
24
56
71
51
39
35
23
55
70
50
38
34
22
54
69
49
37
33
21
53
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
20
52
59
23
19
51
58
22
18
50
57
21
17
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
56
20
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
38
50
55
19
15
29
39
51
54
18
14
30
40
52
53
17
13
31
41
53
52
16
12
32
42
54
51
15
11
33
43
55
50
14
10
34
44
56
49
13
9
35
45
57
58
59
60
61
62
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
77
76
75
74
73
72
71
70
69
68
67
66
65
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
91
88
76
64
66
58
90
87
75
63
65
57
89
86
74
62
64
56
88
85
73
61
63
55
87
84
72
60
62
54
86
83
71
59
61
53
85
82
70
58
60
52
84
81
69
57
59
51
83
80
68
56
58
50
82
79
67
55
57
49
81
78
66
54
56
48
80
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
47
79
67
81
64
52
48
34
46
78
66
82
63
51
47
33
45
77
65
82
62
50
46
32
44
76
64
81
61
49
45
31
43
75
63
80
60
48
44
30
42
74
62
79
59
47
43
29
41
73
61
78
58
46
42
28
40
72
71
70
69
68
67
66
65
64
63
62
61
60
77
57
45
41
27
28
29
30
31
32
33
34
35
36
37
38
39
59
76
56
44
40
26
58
75
55
43
39
25
57
74
54
42
38
24
56
73
53
41
37
23
55
72
52
40
36
22
54
71
51
39
35
21
53
70
50
38
34
20
52
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
19
51
60
24
18
50
59
23
17
49
58
22
16
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
57
21
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
37
49
56
20
14
28
38
50
55
19
13
29
39
51
54
18
12
30
40
52
53
17
11
31
41
53
52
16
10
32
42
54
51
15
9
33
43
55
50
14
8
34
44
56
57
58
59
60
61
62
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
78
77
76
75
74
73
72
71
70
69
68
67
66
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
90
89
77
65
65
57
89
88
76
64
64
56
88
87
75
63
63
55
87
86
74
62
62
54
86
85
73
61
61
53
85
84
72
60
60
52
84
83
71
59
59
51
83
82
70
58
58
50
82
81
69
57
57
49
81
80
68
56
56
48
80
79
67
55
55
47
79
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
46
78
66
80
65
53
47
33
45
77
65
81
64
52
48
32
44
76
64
82
63
51
47
31
43
75
63
82
62
50
46
30
42
74
62
81
61
49
45
29
41
73
61
80
60
48
44
28
40
72
60
79
59
47
43
27
39
71
70
69
68
67
66
65
64
63
62
61
60
59
78
58
46
42
26
27
28
29
30
31
32
33
34
35
36
37
38
58
77
57
45
41
25
57
76
56
44
40
24
56
75
55
43
39
23
55
74
54
42
38
22
54
73
53
41
37
21
53
72
52
40
36
20
52
71
51
39
35
19
51
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
18
50
61
25
17
49
60
24
16
48
59
23
15
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
58
22
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
36
48
57
21
13
27
37
49
56
20
12
28
38
50
55
19
11
29
39
51
54
18
10
30
40
52
53
17
9
31
41
53
52
16
8
32
42
54
51
15
7
33
43
55
56
57
58
59
60
61
62
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
79
78
77
76
75
74
73
72
71
70
69
68
67
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
89
90
78
66
64
56
88
89
77
65
63
55
87
88
76
64
62
54
86
87
75
63
61
53
85
86
74
62
60
52
84
85
73
61
59
51
83
84
72
60
58
50
82
83
71
59
57
49
81
82
70
58
56
48
80
81
69
57
55
47
79
80
68
56
54
46
78
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
45
77
65
79
66
54
46
32
44
76
64
80
65
53
47
31
43
75
63
81
64
52
48
30
42
74
62
82
63
51
47
29
41
73
61
82
62
50
46
28
40
72
60
81
61
49
45
27
39
71
59
80
60
48
44
26
38
70
69
68
67
66
65
64
63
62
61
60
59
58
79
59
47
43
25
26
27
28
29
30
31
32
33
34
35
36
37
57
78
58
46
42
24
56
77
57
45
41
23
55
76
56
44
40
22
54
75
55
43
39
21
53
74
54
42
38
20
52
73
53
41
37
19
51
72
52
40
36
18
50
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
17
49
62
26
16
48
61
25
15
47
60
24
14
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
59
23
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
35
47
58
22
12
26
36
48
57
21
11
27
37
49
56
20
10
28
38
50
55
19
9
29
39
51
54
18
8
30
40
52
53
17
7
31
41
53
52
16
6
32
42
54
55
56
57
58
59
60
61
62
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
80
79
78
77
76
75
74
73
72
71
70
69
68
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
88
91
79
67
63
55
87
90
78
66
62
54
86
89
77
65
61
53
85
88
76
64
60
52
84
87
75
63
59
51
83
86
74
62
58
50
82
85
73
61
57
49
81
84
72
60
56
48
80
83
71
59
55
47
79
82
70
58
54
46
78
81
69
57
53
45
77
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
44
76
64
78
67
55
45
31
43
75
63
79
66
54
46
30
42
74
62
80
65
53
47
29
41
73
61
81
64
52
48
28
40
72
60
82
63
51
47
27
39
71
59
82
62
50
46
26
38
70
58
81
61
49
45
25
37
69
68
67
66
65
64
63
62
61
60
59
58
57
80
60
48
44
24
25
26
27
28
29
30
31
32
33
34
35
36
56
79
59
47
43
23
55
78
58
46
42
22
54
77
57
45
41
21
53
76
56
44
40
20
52
75
55
43
39
19
51
74
54
42
38
18
50
73
53
41
37
17
49
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
16
48
63
27
15
47
62
26
14
46
61
25
13
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
60
24
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
34
46
59
23
11
25
35
47
58
22
10
26
36
48
57
21
9
27
37
49
56
20
8
28
38
50
55
19
7
29
39
51
54
18
6
30
40
52
53
17
5
31
41
53
54
55
56
57
58
59
60
61
62
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
81
80
79
78
77
76
75
74
73
72
71
70
69
63
64
65
66
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
87
92
80
68
62
54
86
91
79
67
61
53
85
90
78
66
60
52
84
89
77
65
59
51
83
88
76
64
58
50
82
87
75
63
57
49
81
86
74
62
56
48
80
85
73
61
55
47
79
84
72
60
54
46
78
83
71
59
53
45
77
82
70
58
52
44
76
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
43
75
63
77
68
56
44
30
42
74
62
78
67
55
45
29
41
73
61
79
66
54
46
28
40
72
60
80
65
53
47
27
39
71
59
81
64
52
48
26
38
70
58
82
63
51
47
25
37
69
57
82
62
50
46
24
36
68
67
66
65
64
63
62
61
60
59
58
57
56
81
61
49
45
23
24
25
26
27
28
29
30
31
32
33
34
35
55
80
60
48
44
22
54
79
59
47
43
21
53
78
58
46
42
20
52
77
57
45
41
19
51
76
56
44
40
18
50
75
55
43
39
17
49
74
54
42
38
16
48
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
15
47
64
28
14
46
63
27
13
45
62
26
12
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
61
25
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
33
45
60
24
10
24
34
46
59
23
9
25
35
47
58
22
8
26
36
48
57
21
7
27
37
49
56
20
6
28
38
50
55
19
5
29
39
51
54
18
4
30
40
52
53
54
55
56
57
58
59
60
61
62
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
82
81
80
79
78
77
76
75
74
73
72
71
70
62
63
64
65
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
86
93
81
69
61
53
85
92
80
68
60
52
84
91
79
67
59
51
83
90
78
66
58
50
82
89
77
65
57
49
81
88
76
64
56
48
80
87
75
63
55
47
79
86
74
62
54
46
78
85
73
61
53
45
77
84
72
60
52
44
76
83
71
59
51
43
75
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
42
74
62
76
69
57
43
29
41
73
61
77
68
56
44
28
40
72
60
78
67
55
45
27
39
71
59
79
66
54
46
26
38
70
58
80
65
53
47
25
37
69
57
81
64
52
48
24
36
68
56
82
63
51
47
23
35
67
66
65
64
63
62
61
60
59
58
57
56
55
82
62
50
46
22
23
24
25
26
27
28
29
30
31
32
33
34
54
81
61
49
45
21
53
80
60
48
44
20
52
79
59
47
43
19
51
78
58
46
42
18
50
77
57
45
41
17
49
76
56
44
40
16
48
75
55
43
39
15
47
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
14
46
65
29
13
45
64
28
12
44
63
27
11
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
62
26
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
32
44
61
25
9
23
33
45
60
24
8
24
34
46
59
23
7
25
35
47
58
22
6
26
36
48
57
21
5
27
37
49
56
20
4
28
38
50
55
19
3
29
39
51
52
53
54
55
56
57
58
59
60
61
62
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
83
82
81
80
79
78
77
76
75
74
73
72
71
61
62
63
64
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
85
93
82
70
60
52
84
92
81
69
59
51
83
91
80
68
58
50
82
90
79
67
57
49
81
89
78
66
56
48
80
88
77
65
55
47
79
87
76
64
54
46
78
86
75
63
53
45
77
85
74
62
52
44
76
84
73
61
51
43
75
83
72
60
50
42
74
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
41
73
61
75
70
58
42
28
40
72
60
76
69
57
43
27
39
71
59
77
68
56
44
26
38
70
58
78
67
55
45
25
37
69
57
79
66
54
46
24
36
68
56
80
65
53
47
23
35
67
55
81
64
52
48
22
34
66
65
64
63
62
61
60
59
58
57
56
55
54
82
63
51
47
21
22
23
24
25
26
27
28
29
30
31
32
33
53
82
62
50
46
20
52
81
61
49
45
19
51
80
60
48
44
18
50
79
59
47
43
17
49
78
58
46
42
16
48
77
57
45
41
15
47
76
56
44
40
14
46
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
13
45
66
30
12
44
65
29
11
43
64
28
10
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
63
27
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
31
43
62
26
8
22
32
44
61
25
7
23
33
45
60
24
6
24
34
46
59
23
5
25
35
47
58
22
4
26
36
48
57
21
3
27
37
49
56
20
2
28
38
50
51
52
53
54
55
56
57
58
59
60
61
62
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
84
83
82
81
80
79
78
77
76
75
74
73
72
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
84
92
83
71
59
51
83
91
82
70
58
50
82
90
81
69
57
49
81
89
80
68
56
48
80
88
79
67
55
47
79
87
78
66
54
46
78
86
77
65
53
45
77
85
76
64
52
44
76
84
75
63
51
43
75
83
74
62
50
42
74
82
73
61
49
41
73
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
40
72
60
74
71
59
41
27
39
71
59
75
70
58
42
26
38
70
58
76
69
57
43
25
37
69
57
77
68
56
44
24
36
68
56
78
67
55
45
23
35
67
55
79
66
54
46
22
34
66
54
80
65
53
47
21
33
65
64
63
62
61
60
59
58
57
56
55
54
53
81
64
52
48
20
21
22
23
24
25
26
27
28
29
30
31
32
52
82
63
51
47
19
51
82
62
50
46
18
50
81
61
49
45
17
49
80
60
48
44
16
48
79
59
47
43
15
47
78
58
46
42
14
46
77
57
45
41
13
45
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
12
44
67
31
11
43
66
30
10
42
65
29
9
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
64
28
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
30
42
63
27
7
21
31
43
62
26
6
22
32
44
61
25
5
23
33
45
60
24
4
24
34
46
59
23
3
25
35
47
58
22
2
26
36
48
57
21
1
27
37
49
50
51
52
53
54
55
56
57
58
59
60
61
62
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
93
94
94
93
92
91
90
89
88
87
86
85
84
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
72
80
92
83
71
63
71
79
91
82
70
62
70
78
90
81
69
61
69
77
89
80
68
60
68
76
88
79
67
59
67
75
87
78
66
58
66
74
86
77
65
57
65
73
85
76
64
56
64
72
84
75
63
55
63
71
83
74
62
54
62
70
82
73
61
53
61
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
52
60
48
62
82
73
53
39
51
59
47
63
83
74
54
38
50
58
46
64
84
75
55
37
49
57
45
65
85
76
56
36
48
56
44
66
86
77
57
35
47
55
43
67
87
78
58
34
46
54
42
68
88
79
59
33
45
53
52
51
50
49
48
47
46
45
44
43
42
41
69
89
80
60
32
33
34
35
36
37
38
39
40
41
42
43
44
40
70
88
79
61
31
39
71
87
78
62
30
38
72
86
77
63
29
37
73
85
76
64
28
36
74
84
75
65
27
35
75
83
74
66
26
34
76
82
73
67
25
33
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
24
32
68
59
23
31
67
58
22
30
66
57
21
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
65
56
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
18
30
64
55
21
7
19
31
63
54
22
6
20
32
62
53
23
5
21
33
61
52
24
4
22
34
60
51
25
3
23
35
59
50
26
2
24
36
58
49
27
1
25
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
0
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
85
86
87
88
89
90
91
92
93
94
95
95
94
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
64
72
84
93
81
73
63
71
83
92
80
72
62
70
82
91
79
71
61
69
81
90
78
70
60
68
80
89
77
69
59
67
79
88
76
68
58
66
78
87
75
67
57
65
77
86
74
66
56
64
76
85
73
65
55
63
75
84
72
64
54
62
74
83
71
63
53
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
62
52
40
54
74
83
63
49
61
51
39
55
75
84
64
48
60
50
38
56
76
85
65
47
59
49
37
57
77
86
66
46
58
48
36
58
78
87
67
45
57
47
35
59
79
88
68
44
56
46
34
60
80
89
69
43
55
45
44
43
42
41
40
39
38
37
36
35
34
33
61
81
90
70
42
43
44
45
46
47
48
49
50
51
52
53
54
32
62
80
89
71
41
31
63
79
88
72
40
30
64
78
87
73
39
29
65
77
86
74
38
28
66
76
85
75
37
27
67
75
84
76
36
26
68
74
83
77
35
25
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
83
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
34
24
60
69
33
23
59
68
32
22
58
67
31
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
57
66
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
8
22
56
65
31
19
7
23
55
64
32
20
6
24
54
63
33
21
5
25
53
62
34
22
4
26
52
61
35
23
3
27
51
60
36
24
2
28
50
59
37
25
1
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
26
0
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
68
64
65
66
67
68
69
70
71
72
73
74
75
76
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
107
106
105
104
103
102
101
100
99
98
97
96
95
61
67
63
75
87
94
60
66
62
74
86
93
59
65
61
73
85
92
58
64
60
72
84
91
57
63
59
71
83
90
56
62
58
70
82
89
55
61
57
69
81
88
54
60
56
68
80
87
53
59
55
67
79
86
52
58
54
66
78
85
51
57
53
65
77
84
50
38
39
40
41
42
43
44
45
46
47
48
49
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
83
82
81
80
79
78
77
76
75
74
73
72
71
83
49
37
47
51
63
83
70
82
48
36
46
50
62
82
69
81
47
35
45
49
61
81
68
80
46
34
44
48
60
80
67
79
45
33
43
47
59
79
66
78
44
32
42
46
58
78
65
77
43
31
41
45
57
77
64
76
42
41
40
39
38
37
36
35
34
33
32
31
30
40
44
56
76
63
64
65
66
67
68
69
70
71
72
73
74
75
29
39
43
55
75
62
28
38
42
54
74
61
27
37
41
53
73
60
26
36
40
52
72
59
25
35
39
51
71
58
24
34
38
50
70
57
23
33
37
49
69
56
22
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
55
21
23
59
54
20
22
58
53
19
21
57
52
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
20
56
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
31
17
19
55
52
40
32
16
18
54
53
41
33
15
17
53
54
42
34
14
16
52
55
43
35
13
15
51
56
44
36
12
14
50
57
45
37
11
13
49
58
46
38
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
63
62
61
60
59
47
39
0
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
53
54
55
56
57
58
59
60
61
62
63
64
65
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
107
106
72
56
52
64
76
105
71
55
51
63
75
104
70
54
50
62
74
103
69
53
49
61
73
102
68
52
48
60
72
101
67
51
47
59
71
100
66
50
46
58
70
99
65
49
45
57
69
98
64
48
44
56
68
97
63
47
43
55
67
96
62
46
42
54
66
95
61
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
48
47
46
45
44
43
42
41
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
83
82
94
60
48
36
40
52
72
81
93
59
47
35
39
51
71
80
92
58
46
34
38
50
70
79
91
57
45
33
37
49
69
78
90
56
44
32
36
48
68
77
89
55
43
31
35
47
67
76
88
54
42
30
34
46
66
75
87
53
52
51
50
49
48
47
46
45
44
43
42
41
29
33
45
65
74
75
76
77
78
79
80
81
82
83
84
85
86
40
28
32
44
64
73
39
27
31
43
63
72
38
26
30
42
62
71
37
25
29
41
61
70
36
24
28
40
60
69
35
23
27
39
59
68
34
22
26
38
58
67
33
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
66
32
12
48
65
31
11
47
64
30
10
46
63
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
9
45
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
42
28
8
44
63
51
43
27
7
43
63
52
44
26
6
42
62
53
45
25
5
41
61
54
46
24
4
40
60
55
47
23
3
39
59
56
48
22
2
38
58
57
49
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
50
13
0
106
107
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
65
64
63
62
61
60
59
58
57
56
55
54
53
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
105
76
64
52
56
72
104
75
63
51
55
71
103
74
62
50
54
70
102
73
61
49
53
69
101
72
60
48
52
68
100
71
59
47
51
67
99
70
58
46
50
66
98
69
57
45
49
65
97
68
56
44
48
64
96
67
55
43
47
63
95
66
54
42
46
62
94
82
83
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
41
42
43
44
45
46
47
48
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
61
93
81
72
52
40
36
48
60
92
80
71
51
39
35
47
59
91
79
70
50
38
34
46
58
90
78
69
49
37
33
45
57
89
77
68
48
36
32
44
56
88
76
67
47
35
31
43
55
87
75
66
46
34
30
42
54
86
85
84
83
82
81
80
79
78
77
76
75
74
65
45
33
29
41
42
43
44
45
46
47
48
49
50
51
52
53
73
64
44
32
28
40
72
63
43
31
27
39
71
62
42
30
26
38
70
61
41
29
25
37
69
60
40
28
24
36
68
59
39
27
23
35
67
58
38
26
22
34
66
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
33
65
48
12
32
64
47
11
31
63
46
10
30
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
45
9
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
51
63
44
8
28
42
52
63
43
7
27
43
53
62
42
6
26
44
54
61
41
5
25
45
55
60
40
4
24
46
56
59
39
3
23
47
57
58
38
2
22
48
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
49
59
49
38
0
94
95
96
97
98
99
100
101
102
103
104
105
106
107
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
77
76
75
74
73
72
71
70
69
68
67
66
65
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
93
88
76
64
68
60
92
87
75
63
67
59
91
86
74
62
66
58
90
85
73
61
65
57
89
84
72
60
64
56
88
83
71
59
63
55
87
82
70
58
62
54
86
81
69
57
61
53
85
80
68
56
60
52
84
79
67
55
59
51
83
78
66
54
58
50
82
70
71
72
73
74
75
76
77
78
79
80
81
82
83
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
53
54
55
56
57
58
59
60
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
49
81
69
83
64
52
48
36
48
80
68
83
63
51
47
35
47
79
67
82
62
50
46
34
46
78
66
81
61
49
45
33
45
77
65
80
60
48
44
32
44
76
64
79
59
47
43
31
43
75
63
78
58
46
42
30
42
74
73
72
71
70
69
68
67
66
65
64
63
62
77
57
45
41
29
30
31
32
33
34
35
36
37
38
39
40
41
61
76
56
44
40
28
60
75
55
43
39
27
59
74
54
42
38
26
58
73
53
41
37
25
57
72
52
40
36
24
56
71
51
39
35
23
55
70
50
38
34
22
54
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
21
53
60
24
20
52
59
23
19
51
58
22
18
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
57
21
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
39
51
56
20
16
30
40
52
55
19
15
31
41
53
54
18
14
32
42
54
53
17
13
33
43
55
52
16
12
34
44
56
51
15
11
35
45
57
50
14
10
36
46
58
59
60
61
62
63
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
37
47
61
50
14
0
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
94
95
95
94
93
92
91
90
89
88
87
86
85
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
73
81
93
84
72
64
72
80
92
83
71
63
71
79
91
82
70
62
70
78
90
81
69
61
69
77
89
80
68
60
68
76
88
79
67
59
67
75
87
78
66
58
66
74
86
77
65
57
65
73
85
76
64
56
64
72
84
75
63
55
63
71
83
74
62
54
62
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
53
61
49
63
83
74
54
40
52
60
48
64
84
75
55
39
51
59
47
65
85
76
56
38
50
58
46
66
86
77
57
37
49
57
45
67
87
78
58
36
48
56
44
68
88
79
59
35
47
55
43
69
89
80
60
34
46
54
53
52
51
50
49
48
47
46
45
44
43
42
70
90
81
61
33
34
35
36
37
38
39
40
41
42
43
44
45
41
71
89
80
62
32
40
72
88
79
63
31
39
73
87
78
64
30
38
74
86
77
65
29
37
75
85
76
66
28
36
76
84
75
67
27
35
77
83
74
68
26
34
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
83
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
25
33
69
60
24
32
68
59
23
31
67
58
22
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
66
57
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
19
31
65
56
22
8
20
32
64
55
23
7
21
33
63
54
24
6
22
34
62
53
25
5
23
35
61
52
26
4
24
36
60
51
27
3
25
37
59
50
28
2
26
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
1
27
48
59
50
38
0
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
86
87
88
89
90
91
92
93
94
95
96
96
95
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
65
73
85
94
82
74
64
72
84
93
81
73
63
71
83
92
80
72
62
70
82
91
79
71
61
69
81
90
78
70
60
68
80
89
77
69
59
67
79
88
76
68
58
66
78
87
75
67
57
65
77
86
74
66
56
64
76
85
73
65
55
63
75
84
72
64
54
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
63
53
41
55
75
84
64
50
62
52
40
56
76
85
65
49
61
51
39
57
77
86
66
48
60
50
38
58
78
87
67
47
59
49
37
59
79
88
68
46
58
48
36
60
80
89
69
45
57
47
35
61
81
90
70
44
56
46
45
44
43
42
41
40
39
38
37
36
35
34
62
82
91
71
43
44
45
46
47
48
49
50
51
52
53
54
55
33
63
81
90
72
42
32
64
80
89
73
41
31
65
79
88
74
40
30
66
78
87
75
39
29
67
77
86
76
38
28
68
76
85
77
37
27
69
75
84
78
36
26
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
84
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
35
25
61
70
34
24
60
69
33
23
59
68
32
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
58
67
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
9
23
57
66
32
20
8
24
56
65
33
21
7
25
55
64
34
22
6
26
54
63
35
23
5
27
53
62
36
24
4
28
52
61
37
25
3
29
51
60
38
26
2
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
27
1
40
51
60
48
28
0
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
69
65
66
67
68
69
70
71
72
73
74
75
76
77
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
108
107
106
105
104
103
102
101
100
99
98
97
96
62
68
64
76
88
95
61
67
63
75
87
94
60
66
62
74
86
93
59
65
61
73
85
92
58
64
60
72
84
91
57
63
59
71
83
90
56
62
58
70
82
89
55
61
57
69
81
88
54
60
56
68
80
87
53
59
55
67
79
86
52
58
54
66
78
85
51
39
40
41
42
43
44
45
46
47
48
49
50
49
50
51
52
53
54
55
56
57
58
59
60
61
60
59
58
57
56
55
54
53
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
84
83
82
81
80
79
78
77
76
75
74
73
72
84
50
38
48
52
64
84
71
83
49
37
47
51
63
83
70
82
48
36
46
50
62
82
69
81
47
35
45
49
61
81
68
80
46
34
44
48
60
80
67
79
45
33
43
47
59
79
66
78
44
32
42
46
58
78
65
77
43
42
41
40
39
38
37
36
35
34
33
32
31
41
45
57
77
64
65
66
67
68
69
70
71
72
73
74
75
76
30
40
44
56
76
63
29
39
43
55
75
62
28
38
42
54
74
61
27
37
41
53
73
60
26
36
40
52
72
59
25
35
39
51
71
58
24
34
38
50
70
57
23
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
56
22
24
60
55
21
23
59
54
20
22
58
53
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
21
57
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
32
18
20
56
53
41
33
17
19
55
54
42
34
16
18
54
55
43
35
15
17
53
56
44
36
14
16
52
57
45
37
13
15
51
58
46
38
12
14
50
59
47
39
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
64
63
62
61
60
48
40
1
14
50
62
49
41
0
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
54
55
56
57
58
59
60
61
62
63
64
65
66
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
108
107
73
57
53
65
77
106
72
56
52
64
76
105
71
55
51
63
75
104
70
54
50
62
74
103
69
53
49
61
73
102
68
52
48
60
72
101
67
51
47
59
71
100
66
50
46
58
70
99
65
49
45
57
69
98
64
48
44
56
68
97
63
47
43
55
67
96
62
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
49
48
47
46
45
44
43
42
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
84
83
95
61
49
37
41
53
73
82
94
60
48
36
40
52
72
81
93
59
47
35
39
51
71
80
92
58
46
34
38
50
70
79
91
57
45
33
37
49
69
78
90
56
44
32
36
48
68
77
89
55
43
31
35
47
67
76
88
54
53
52
51
50
49
48
47
46
45
44
43
42
30
34
46
66
75
76
77
78
79
80
81
82
83
84
85
86
87
41
29
33
45
65
74
40
28
32
44
64
73
39
27
31
43
63
72
38
26
30
42
62
71
37
25
29
41
61
70
36
24
28
40
60
69
35
23
27
39
59
68
34
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
67
33
13
49
66
32
12
48
65
31
11
47
64
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
10
46
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
43
29
9
45
64
52
44
28
8
44
64
53
45
27
7
43
63
54
46
26
6
42
62
55
47
25
5
41
61
56
48
24
4
40
60
57
49
23
3
39
59
58
50
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
51
14
1
39
51
60
52
15
0
107
108
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
66
65
64
63
62
61
60
59
58
57
56
55
54
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
106
77
65
53
57
73
105
76
64
52
56
72
104
75
63
51
55
71
103
74
62
50
54
70
102
73
61
49
53
69
101
72
60
48
52
68
100
71
59
47
51
67
99
70
58
46
50
66
98
69
57
45
49
65
97
68
56
44
48
64
96
67
55
43
47
63
95
83
84
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
42
43
44
45
46
47
48
49
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
62
94
82
73
53
41
37
49
61
93
81
72
52
40
36
48
60
92
80
71
51
39
35
47
59
91
79
70
50
38
34
46
58
90
78
69
49
37
33
45
57
89
77
68
48
36
32
44
56
88
76
67
47
35
31
43
55
87
86
85
84
83
82
81
80
79
78
77
76
75
66
46
34
30
42
43
44
45
46
47
48
49
50
51
52
53
54
74
65
45
33
29
41
73
64
44
32
28
40
72
63
43
31
27
39
71
62
42
30
26
38
70
61
41
29
25
37
69
60
40
28
24
36
68
59
39
27
23
35
67
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
34
66
49
13
33
65
48
12
32
64
47
11
31
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
46
10
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
52
64
45
9
29
43
53
64
44
8
28
44
54
63
43
7
27
45
55
62
42
6
26
46
56
61
41
5
25
47
57
60
40
4
24
48
58
59
39
3
23
49
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
50
60
50
39
1
15
51
61
51
40
0
95
96
97
98
99
100
101
102
103
104
105
106
107
108
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
78
77
76
75
74
73
72
71
70
69
68
67
66
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
94
89
77
65
69
61
93
88
76
64
68
60
92
87
75
63
67
59
91
86
74
62
66
58
90
85
73
61
65
57
89
84
72
60
64
56
88
83
71
59
63
55
87
82
70
58
62
54
86
81
69
57
61
53
85
80
68
56
60
52
84
79
67
55
59
51
83
71
72
73
74
75
76
77
78
79
80
81
82
83
84
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
54
55
56
57
58
59
60
61
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
50
82
70
84
65
53
49
37
49
81
69
84
64
52
48
36
48
80
68
83
63
51
47
35
47
79
67
82
62
50
46
34
46
78
66
81
61
49
45
33
45
77
65
80
60
48
44
32
44
76
64
79
59
47
43
31
43
75
74
73
72
71
70
69
68
67
66
65
64
63
78
58
46
42
30
31
32
33
34
35
36
37
38
39
40
41
42
62
77
57
45
41
29
61
76
56
44
40
28
60
75
55
43
39
27
59
74
54
42
38
26
58
73
53
41
37
25
57
72
52
40
36
24
56
71
51
39
35
23
55
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
22
54
61
25
21
53
60
24
20
52
59
23
19
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
58
22
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
40
52
57
21
17
31
41
53
56
20
16
32
42
54
55
19
15
33
43
55
54
18
14
34
44
56
53
17
13
35
45
57
52
16
12
36
46
58
51
15
11
37
47
59
60
61
62
63
64
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
38
48
62
51
15
1
39
49
63
52
16
0
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
95
96
96
95
94
93
92
91
90
89
88
87
86
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
74
82
94
85
73
65
73
81
93
84
72
64
72
80
92
83
71
63
71
79
91
82
70
62
70
78
90
81
69
61
69
77
89
80
68
60
68
76
88
79
67
59
67
75
87
78
66
58
66
74
86
77
65
57
65
73
85
76
64
56
64
72
84
75
63
55
63
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
54
62
50
64
84
75
55
41
53
61
49
65
85
76
56
40
52
60
48
66
86
77
57
39
51
59
47
67
87
78
58
38
50
58
46
68
88
79
59
37
49
57
45
69
89
80
60
36
48
56
44
70
90
81
61
35
47
55
54
53
52
51
50
49
48
47
46
45
44
43
71
91
82
62
34
35
36
37
38
39
40
41
42
43
44
45
46
42
72
90
81
63
33
41
73
89
80
64
32
40
74
88
79
65
31
39
75
87
78
66
30
38
76
86
77
67
29
37
77
85
76
68
28
36
78
84
75
69
27
35
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
84
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
26
34
70
61
25
33
69
60
24
32
68
59
23
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
67
58
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
20
32
66
57
23
9
21
33
65
56
24
8
22
34
64
55
25
7
23
35
63
54
26
6
24
36
62
53
27
5
25
37
61
52
28
4
26
38
60
51
29
3
27
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
2
28
49
60
51
39
1
29
50
61
52
40
0
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
87
88
89
90
91
92
93
94
95
96
97
97
96
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
66
74
86
95
83
75
65
73
85
94
82
74
64
72
84
93
81
73
63
71
83
92
80
72
62
70
82
91
79
71
61
69
81
90
78
70
60
68
80
89
77
69
59
67
79
88
76
68
58
66
78
87
75
67
57
65
77
86
74
66
56
64
76
85
73
65
55
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
64
54
42
56
76
85
65
51
63
53
41
57
77
86
66
50
62
52
40
58
78
87
67
49
61
51
39
59
79
88
68
48
60
50
38
60
80
89
69
47
59
49
37
61
81
90
70
46
58
48
36
62
82
91
71
45
57
47
46
45
44
43
42
41
40
39
38
37
36
35
63
83
92
72
44
45
46
47
48
49
50
51
52
53
54
55
56
34
64
82
91
73
43
33
65
81
90
74
42
32
66
80
89
75
41
31
67
79
88
76
40
30
68
78
87
77
39
29
69
77
86
78
38
28
70
76
85
79
37
27
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
85
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
36
26
62
71
35
25
61
70
34
24
60
69
33
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
59
68
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
10
24
58
67
33
21
9
25
57
66
34
22
8
26
56
65
35
23
7
27
55
64
36
24
6
28
54
63
37
25
5
29
53
62
38
26
4
30
52
61
39
27
3
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
28
2
41
52
61
49
29
1
40
53
62
50
30
0
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
70
66
67
68
69
70
71
72
73
74
75
76
77
78
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
109
108
107
106
105
104
103
102
101
100
99
98
97
63
69
65
77
89
96
62
68
64
76
88
95
61
67
63
75
87
94
60
66
62
74
86
93
59
65
61
73
85
92
58
64
60
72
84
91
57
63
59
71
83
90
56
62
58
70
82
89
55
61
57
69
81
88
54
60
56
68
80
87
53
59
55
67
79
86
52
40
41
42
43
44
45
46
47
48
49
50
51
50
51
52
53
54
55
56
57
58
59
60
61
62
61
60
59
58
57
56
55
54
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
85
84
83
82
81
80
79
78
77
76
75
74
73
85
51
39
49
53
65
85
72
84
50
38
48
52
64
84
71
83
49
37
47
51
63
83
70
82
48
36
46
50
62
82
69
81
47
35
45
49
61
81
68
80
46
34
44
48
60
80
67
79
45
33
43
47
59
79
66
78
44
43
42
41
40
39
38
37
36
35
34
33
32
42
46
58
78
65
66
67
68
69
70
71
72
73
74
75
76
77
31
41
45
57
77
64
30
40
44
56
76
63
29
39
43
55
75
62
28
38
42
54
74
61
27
37
41
53
73
60
26
36
40
52
72
59
25
35
39
51
71
58
24
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
57
23
25
61
56
22
24
60
55
21
23
59
54
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
22
58
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
33
19
21
57
54
42
34
18
20
56
55
43
35
17
19
55
56
44
36
16
18
54
57
45
37
15
17
53
58
46
38
14
16
52
59
47
39
13
15
51
60
48
40
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
65
64
63
62
61
49
41
2
15
51
63
50
40
1
16
52
64
51
39
0
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
55
56
57
58
59
60
61
62
63
64
65
66
67
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
109
108
74
58
54
66
78
107
73
57
53
65
77
106
72
56
52
64
76
105
71
55
51
63
75
104
70
54
50
62
74
103
69
53
49
61
73
102
68
52
48
60
72
101
67
51
47
59
71
100
66
50
46
58
70
99
65
49
45
57
69
98
64
48
44
56
68
97
63
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
50
49
48
47
46
45
44
43
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
85
84
96
62
50
38
42
54
74
83
95
61
49
37
41
53
73
82
94
60
48
36
40
52
72
81
93
59
47
35
39
51
71
80
92
58
46
34
38
50
70
79
91
57
45
33
37
49
69
78
90
56
44
32
36
48
68
77
89
55
54
53
52
51
50
49
48
47
46
45
44
43
31
35
47
67
76
77
78
79
80
81
82
83
84
85
86
87
88
42
30
34
46
66
75
41
29
33
45
65
74
40
28
32
44
64
73
39
27
31
43
63
72
38
26
30
42
62
71
37
25
29
41
61
70
36
24
28
40
60
69
35
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
68
34
14
50
67
33
13
49
66
32
12
48
65
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
11
47
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
44
30
10
46
65
53
45
29
9
45
65
54
46
28
8
44
64
55
47
27
7
43
63
56
48
26
6
42
62
57
49
25
5
41
61
58
50
24
4
40
60
59
51
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
52
15
2
40
52
61
53
16
1
41
53
62
54
17
0
108
109
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
67
66
65
64
63
62
61
60
59
58
57
56
55
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
107
78
66
54
58
74
106
77
65
53
57
73
105
76
64
52
56
72
104
75
63
51
55
71
103
74
62
50
54
70
102
73
61
49
53
69
101
72
60
48
52
68
100
71
59
47
51
67
99
70
58
46
50
66
98
69
57
45
49
65
97
68
56
44
48
64
96
84
85
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
43
44
45
46
47
48
49
50
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
63
95
83
74
54
42
38
50
62
94
82
73
53
41
37
49
61
93
81
72
52
40
36
48
60
92
80
71
51
39
35
47
59
91
79
70
50
38
34
46
58
90
78
69
49
37
33
45
57
89
77
68
48
36
32
44
56
88
87
86
85
84
83
82
81
80
79
78
77
76
67
47
35
31
43
44
45
46
47
48
49
50
51
52
53
54
55
75
66
46
34
30
42
74
65
45
33
29
41
73
64
44
32
28
40
72
63
43
31
27
39
71
62
42
30
26
38
70
61
41
29
25
37
69
60
40
28
24
36
68
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
35
67
50
14
34
66
49
13
33
65
48
12
32
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
47
11
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
53
65
46
10
30
44
54
65
45
9
29
45
55
64
44
8
28
46
56
63
43
7
27
47
57
62
42
6
26
48
58
61
41
5
25
49
59
60
40
4
24
50
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
51
61
51
40
2
16
52
62
52
41
1
17
53
63
53
42
0
96
97
98
99
100
101
102
103
104
105
106
107
108
109
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
79
78
77
76
75
74
73
72
71
70
69
68
67
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
95
90
78
66
70
62
94
89
77
65
69
61
93
88
76
64
68
60
92
87
75
63
67
59
91
86
74
62
66
58
90
85
73
61
65
57
89
84
72
60
64
56
88
83
71
59
63
55
87
82
70
58
62
54
86
81
69
57
61
53
85
80
68
56
60
52
84
72
73
74
75
76
77
78
79
80
81
82
83
84
85
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
55
56
57
58
59
60
61
62
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
51
83
71
85
66
54
50
38
50
82
70
85
65
53
49
37
49
81
69
84
64
52
48
36
48
80
68
83
63
51
47
35
47
79
67
82
62
50
46
34
46
78
66
81
61
49
45
33
45
77
65
80
60
48
44
32
44
76
75
74
73
72
71
70
69
68
67
66
65
64
79
59
47
43
31
32
33
34
35
36
37
38
39
40
41
42
43
63
78
58
46
42
30
62
77
57
45
41
29
61
76
56
44
40
28
60
75
55
43
39
27
59
74
54
42
38
26
58
73
53
41
37
25
57
72
52
40
36
24
56
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
23
55
62
26
22
54
61
25
21
53
60
24
20
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
59
23
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
41
53
58
22
18
32
42
54
57
21
17
33
43
55
56
20
16
34
44
56
55
19
15
35
45
57
54
18
14
36
46
58
53
17
13
37
47
59
52
16
12
38
48
60
61
62
63
64
65
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
39
49
63
52
16
2
40
50
64
53
17
1
39
51
65
54
18
0
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
96
97
97
96
95
94
93
92
91
90
89
88
87
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
75
83
95
86
74
66
74
82
94
85
73
65
73
81
93
84
72
64
72
80
92
83
71
63
71
79
91
82
70
62
70
78
90
81
69
61
69
77
89
80
68
60
68
76
88
79
67
59
67
75
87
78
66
58
66
74
86
77
65
57
65
73
85
76
64
56
64
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
55
63
51
65
85
76
56
42
54
62
50
66
86
77
57
41
53
61
49
67
87
78
58
40
52
60
48
68
88
79
59
39
51
59
47
69
89
80
60
38
50
58
46
70
90
81
61
37
49
57
45
71
91
82
62
36
48
56
55
54
53
52
51
50
49
48
47
46
45
44
72
92
83
63
35
36
37
38
39
40
41
42
43
44
45
46
47
43
73
91
82
64
34
42
74
90
81
65
33
41
75
89
80
66
32
40
76
88
79
67
31
39
77
87
78
68
30
38
78
86
77
69
29
37
79
85
76
70
28
36
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
85
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
27
35
71
62
26
34
70
61
25
33
69
60
24
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
68
59
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
21
33
67
58
24
10
22
34
66
57
25
9
23
35
65
56
26
8
24
36
64
55
27
7
25
37
63
54
28
6
26
38
62
53
29
5
27
39
61
52
30
4
28
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
3
29
50
61
52
40
2
30
51
62
53
39
1
31
52
63
54
38
0
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
88
89
90
91
92
93
94
95
96
97
98
98
97
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
67
75
87
96
84
76
66
74
86
95
83
75
65
73
85
94
82
74
64
72
84
93
81
73
63
71
83
92
80
72
62
70
82
91
79
71
61
69
81
90
78
70
60
68
80
89
77
69
59
67
79
88
76
68
58
66
78
87
75
67
57
65
77
86
74
66
56
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
65
55
43
57
77
86
66
52
64
54
42
58
78
87
67
51
63
53
41
59
79
88
68
50
62
52
40
60
80
89
69
49
61
51
39
61
81
90
70
48
60
50
38
62
82
91
71
47
59
49
37
63
83
92
72
46
58
48
47
46
45
44
43
42
41
40
39
38
37
36
64
84
93
73
45
46
47
48
49
50
51
52
53
54
55
56
57
35
65
83
92
74
44
34
66
82
91
75
43
33
67
81
90
76
42
32
68
80
89
77
41
31
69
79
88
78
40
30
70
78
87
79
39
29
71
77
86
80
38
28
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
37
27
63
72
36
26
62
71
35
25
61
70
34
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
60
69
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
11
25
59
68
34
22
10
26
58
67
35
23
9
27
57
66
36
24
8
28
56
65
37
25
7
29
55
64
38
26
6
30
54
63
39
27
5
31
53
62
40
28
4
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
29
3
40
53
62
50
30
2
39
54
63
51
31
1
38
55
64
52
32
0
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
67
68
69
70
71
72
73
74
75
76
77
78
79
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
64
70
66
78
90
97
63
69
65
77
89
96
62
68
64
76
88
95
61
67
63
75
87
94
60
66
62
74
86
93
59
65
61
73
85
92
58
64
60
72
84
91
57
63
59
71
83
90
56
62
58
70
82
89
55
61
57
69
81
88
54
60
56
68
80
87
53
41
42
43
44
45
46
47
48
49
50
51
52
51
52
53
54
55
56
57
58
59
60
61
62
63
62
61
60
59
58
57
56
55
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
86
52
40
50
54
66
86
73
85
51
39
49
53
65
85
72
84
50
38
48
52
64
84
71
83
49
37
47
51
63
83
70
82
48
36
46
50
62
82
69
81
47
35
45
49
61
81
68
80
46
34
44
48
60
80
67
79
45
44
43
42
41
40
39
38
37
36
35
34
33
43
47
59
79
66
67
68
69
70
71
72
73
74
75
76
77
78
32
42
46
58
78
65
31
41
45
57
77
64
30
40
44
56
76
63
29
39
43
55
75
62
28
38
42
54
74
61
27
37
41
53
73
60
26
36
40
52
72
59
25
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
58
24
26
62
57
23
25
61
56
22
24
60
55
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
23
59
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
34
20
22
58
55
43
35
19
21
57
56
44
36
18
20
56
57
45
37
17
19
55
58
46
38
16
18
54
59
47
39
15
17
53
60
48
40
14
16
52
61
49
41
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
66
65
64
63
62
50
40
3
16
52
64
51
39
2
17
53
65
52
38
1
18
54
66
53
37
0
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
56
57
58
59
60
61
62
63
64
65
66
67
68
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
75
59
55
67
79
108
74
58
54
66
78
107
73
57
53
65
77
106
72
56
52
64
76
105
71
55
51
63
75
104
70
54
50
62
74
103
69
53
49
61
73
102
68
52
48
60
72
101
67
51
47
59
71
100
66
50
46
58
70
99
65
49
45
57
69
98
64
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
97
63
51
39
43
55
75
84
96
62
50
38
42
54
74
83
95
61
49
37
41
53
73
82
94
60
48
36
40
52
72
81
93
59
47
35
39
51
71
80
92
58
46
34
38
50
70
79
91
57
45
33
37
49
69
78
90
56
55
54
53
52
51
50
49
48
47
46
45
44
32
36
48
68
77
78
79
80
81
82
83
84
85
86
87
88
89
43
31
35
47
67
76
42
30
34
46
66
75
41
29
33
45
65
74
40
28
32
44
64
73
39
27
31
43
63
72
38
26
30
42
62
71
37
25
29
41
61
70
36
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
69
35
15
51
68
34
14
50
67
33
13
49
66
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
12
48
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
45
31
11
47
66
54
46
30
10
46
66
55
47
29
9
45
65
56
48
28
8
44
64
57
49
27
7
43
63
58
50
26
6
42
62
59
51
25
5
41
61
60
52
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
53
16
3
41
53
62
54
17
2
42
54
63
55
18
1
43
55
64
56
19
0
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
68
67
66
65
64
63
62
61
60
59
58
57
56
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
108
79
67
55
59
75
107
78
66
54
58
74
106
77
65
53
57
73
105
76
64
52
56
72
104
75
63
51
55
71
103
74
62
50
54
70
102
73
61
49
53
69
101
72
60
48
52
68
100
71
59
47
51
67
99
70
58
46
50
66
98
69
57
45
49
65
97
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
64
96
84
75
55
43
39
51
63
95
83
74
54
42
38
50
62
94
82
73
53
41
37
49
61
93
81
72
52
40
36
48
60
92
80
71
51
39
35
47
59
91
79
70
50
38
34
46
58
90
78
69
49
37
33
45
57
89
88
87
86
85
84
83
82
81
80
79
78
77
68
48
36
32
44
45
46
47
48
49
50
51
52
53
54
55
56
76
67
47
35
31
43
75
66
46
34
30
42
74
65
45
33
29
41
73
64
44
32
28
40
72
63
43
31
27
39
71
62
42
30
26
38
70
61
41
29
25
37
69
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
36
68
51
15
35
67
50
14
34
66
49
13
33
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
48
12
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
54
66
47
11
31
45
55
66
46
10
30
46
56
65
45
9
29
47
57
64
44
8
28
48
58
63
43
7
27
49
59
62
42
6
26
50
60
61
41
5
25
51
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
52
62
52
41
3
17
53
63
53
42
2
18
54
64
54
43
1
19
55
65
55
44
0
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
80
79
78
77
76
75
74
73
72
71
70
69
68
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
96
91
79
67
71
63
95
90
78
66
70
62
94
89
77
65
69
61
93
88
76
64
68
60
92
87
75
63
67
59
91
86
74
62
66
58
90
85
73
61
65
57
89
84
72
60
64
56
88
83
71
59
63
55
87
82
70
58
62
54
86
81
69
57
61
53
85
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
56
57
58
59
60
61
62
63
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
52
84
72
86
67
55
51
39
51
83
71
86
66
54
50
38
50
82
70
85
65
53
49
37
49
81
69
84
64
52
48
36
48
80
68
83
63
51
47
35
47
79
67
82
62
50
46
34
46
78
66
81
61
49
45
33
45
77
76
75
74
73
72
71
70
69
68
67
66
65
80
60
48
44
32
33
34
35
36
37
38
39
40
41
42
43
44
64
79
59
47
43
31
63
78
58
46
42
30
62
77
57
45
41
29
61
76
56
44
40
28
60
75
55
43
39
27
59
74
54
42
38
26
58
73
53
41
37
25
57
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
24
56
63
27
23
55
62
26
22
54
61
25
21
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
60
24
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
42
54
59
23
19
33
43
55
58
22
18
34
44
56
57
21
17
35
45
57
56
20
16
36
46
58
55
19
15
37
47
59
54
18
14
38
48
60
53
17
13
39
49
61
62
63
64
65
66
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
40
50
64
53
17
3
39
51
65
54
18
2
38
52
66
55
19
1
37
53
67
56
20
0
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
97
98
98
97
96
95
94
93
92
91
90
89
88
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
76
84
96
87
75
67
75
83
95
86
74
66
74
82
94
85
73
65
73
81
93
84
72
64
72
80
92
83
71
63
71
79
91
82
70
62
70
78
90
81
69
61
69
77
89
80
68
60
68
76
88
79
67
59
67
75
87
78
66
58
66
74
86
77
65
57
65
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
56
64
52
66
86
77
57
43
55
63
51
67
87
78
58
42
54
62
50
68
88
79
59
41
53
61
49
69
89
80
60
40
52
60
48
70
90
81
61
39
51
59
47
71
91
82
62
38
50
58
46
72
92
83
63
37
49
57
56
55
54
53
52
51
50
49
48
47
46
45
73
93
84
64
36
37
38
39
40
41
42
43
44
45
46
47
48
44
74
92
83
65
35
43
75
91
82
66
34
42
76
90
81
67
33
41
77
89
80
68
32
40
78
88
79
69
31
39
79
87
78
70
30
38
80
86
77
71
29
37
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
28
36
72
63
27
35
71
62
26
34
70
61
25
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
69
60
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
22
34
68
59
25
11
23
35
67
58
26
10
24
36
66
57
27
9
25
37
65
56
28
8
26
38
64
55
29
7
27
39
63
54
30
6
28
40
62
53
31
5
29
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
4
30
51
62
53
39
3
31
52
63
54
38
2
32
53
64
55
37
1
33
54
65
56
36
0
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
89
90
91
92
93
94
95
96
97
98
99
99
98
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
68
76
88
97
85
77
67
75
87
96
84
76
66
74
86
95
83
75
65
73
85
94
82
74
64
72
84
93
81
73
63
71
83
92
80
72
62
70
82
91
79
71
61
69
81
90
78
70
60
68
80
89
77
69
59
67
79
88
76
68
58
66
78
87
75
67
57
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
66
56
44
58
78
87
67
53
65
55
43
59
79
88
68
52
64
54
42
60
80
89
69
51
63
53
41
61
81
90
70
50
62
52
40
62
82
91
71
49
61
51
39
63
83
92
72
48
60
50
38
64
84
93
73
47
59
49
48
47
46
45
44
43
42
41
40
39
38
37
65
83
94
74
46
47
48
49
50
51
52
53
54
55
56
57
58
36
66
82
93
75
45
35
67
81
92
76
44
34
68
80
91
77
43
33
69
79
90
78
42
32
70
78
89
79
41
31
71
77
88
80
40
30
72
76
87
81
39
29
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
38
28
62
73
37
27
61
72
36
26
60
71
35
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
59
70
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
12
26
58
69
35
23
11
27
57
68
36
24
10
28
56
67
37
25
9
29
55
66
38
26
8
30
54
65
39
27
7
31
53
64
40
28
6
32
52
63
41
29
5
33
34
35
36
37
38
39
40
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
30
4
39
52
63
51
31
3
38
53
64
52
32
2
37
54
65
53
33
1
36
55
66
54
34
0
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
72
68
69
70
71
72
73
74
75
76
77
78
79
80
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
111
110
109
108
107
106
105
104
103
102
101
100
99
65
71
67
79
91
98
64
70
66
78
90
97
63
69
65
77
89
96
62
68
64
76
88
95
61
67
63
75
87
94
60
66
62
74
86
93
59
65
61
73
85
92
58
64
60
72
84
91
57
63
59
71
83
90
56
62
58
70
82
89
55
61
57
69
81
88
54
42
43
44
45
46
47
48
49
50
51
52
53
52
53
54
55
56
57
58
59
60
61
62
63
64
63
62
61
60
59
58
57
56
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
87
86
85
84
83
82
81
80
79
78
77
76
75
87
53
41
51
55
67
87
74
86
52
40
50
54
66
86
73
85
51
39
49
53
65
85
72
84
50
38
48
52
64
84
71
83
49
37
47
51
63
83
70
82
48
36
46
50
62
82
69
81
47
35
45
49
61
81
68
80
46
45
44
43
42
41
40
39
38
37
36
35
34
44
48
60
80
67
68
69
70
71
72
73
74
75
76
77
78
79
33
43
47
59
79
66
32
42
46
58
78
65
31
41
45
57
77
64
30
40
44
56
76
63
29
39
43
55
75
62
28
38
42
54
74
61
27
37
41
53
73
60
26
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
59
25
27
63
58
24
26
62
57
23
25
61
56
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
24
60
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
35
21
23
59
56
44
36
20
22
58
57
45
37
19
21
57
58
46
38
18
20
56
59
47
39
17
19
55
60
48
40
16
18
54
61
49
41
15
17
53
62
50
40
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
67
66
65
64
63
51
39
4
17
53
65
52
38
3
18
54
66
53
37
2
19
55
67
54
36
1
20
56
68
55
35
0
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
57
58
59
60
61
62
63
64
65
66
67
68
69
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
111
110
76
60
56
68
80
109
75
59
55
67
79
108
74
58
54
66
78
107
73
57
53
65
77
106
72
56
52
64
76
105
71
55
51
63
75
104
70
54
50
62
74
103
69
53
49
61
73
102
68
52
48
60
72
101
67
51
47
59
71
100
66
50
46
58
70
99
65
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
52
51
50
49
48
47
46
45
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
87
86
98
64
52
40
44
56
76
85
97
63
51
39
43
55
75
84
96
62
50
38
42
54
74
83
95
61
49
37
41
53
73
82
94
60
48
36
40
52
72
81
93
59
47
35
39
51
71
80
92
58
46
34
38
50
70
79
91
57
56
55
54
53
52
51
50
49
48
47
46
45
33
37
49
69
78
79
80
81
82
83
84
85
86
87
88
89
90
44
32
36
48
68
77
43
31
35
47
67
76
42
30
34
46
66
75
41
29
33
45
65
74
40
28
32
44
64
73
39
27
31
43
63
72
38
26
30
42
62
71
37
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
70
36
16
52
69
35
15
51
68
34
14
50
67
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
13
49
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
46
32
12
48
67
55
47
31
11
47
67
56
48
30
10
46
66
57
49
29
9
45
65
58
50
28
8
44
64
59
51
27
7
43
63
60
52
26
6
42
62
61
53
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
54
17
4
42
54
63
55
18
3
43
55
64
56
19
2
44
56
65
57
20
1
45
57
66
56
21
0
110
111
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
69
68
67
66
65
64
63
62
61
60
59
58
57
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
109
80
68
56
60
76
108
79
67
55
59
75
107
78
66
54
58
74
106
77
65
53
57
73
105
76
64
52
56
72
104
75
63
51
55
71
103
74
62
50
54
70
102
73
61
49
53
69
101
72
60
48
52
68
100
71
59
47
51
67
99
70
58
46
50
66
98
86
87
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
45
46
47
48
49
50
51
52
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
65
97
85
76
56
44
40
52
64
96
84
75
55
43
39
51
63
95
83
74
54
42
38
50
62
94
82
73
53
41
37
49
61
93
81
72
52
40
36
48
60
92
80
71
51
39
35
47
59
91
79
70
50
38
34
46
58
90
89
88
87
86
85
84
83
82
81
80
79
78
69
49
37
33
45
46
47
48
49
50
51
52
53
54
55
56
57
77
68
48
36
32
44
76
67
47
35
31
43
75
66
46
34
30
42
74
65
45
33
29
41
73
64
44
32
28
40
72
63
43
31
27
39
71
62
42
30
26
38
70
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
37
69
52
16
36
68
51
15
35
67
50
14
34
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
49
13
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
55
67
48
12
32
46
56
67
47
11
31
47
57
66
46
10
30
48
58
65
45
9
29
49
59
64
44
8
28
50
60
63
43
7
27
51
61
62
42
6
26
52
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
53
63
53
42
4
18
54
64
54
43
3
19
55
65
55
44
2
20
56
66
56
45
1
21
57
67
57
46
0
98
99
100
101
102
103
104
105
106
107
108
109
110
111
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
81
80
79
78
77
76
75
74
73
72
71
70
69
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
97
92
80
68
72
64
96
91
79
67
71
63
95
90
78
66
70
62
94
89
77
65
69
61
93
88
76
64
68
60
92
87
75
63
67
59
91
86
74
62
66
58
90
85
73
61
65
57
89
84
72
60
64
56
88
83
71
59
63
55
87
82
70
58
62
54
86
74
75
76
77
78
79
80
81
82
83
84
85
86
87
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
57
58
59
60
61
62
63
64
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
53
85
73
87
68
56
52
40
52
84
72
87
67
55
51
39
51
83
71
86
66
54
50
38
50
82
70
85
65
53
49
37
49
81
69
84
64
52
48
36
48
80
68
83
63
51
47
35
47
79
67
82
62
50
46
34
46
78
77
76
75
74
73
72
71
70
69
68
67
66
81
61
49
45
33
34
35
36
37
38
39
40
41
42
43
44
45
65
80
60
48
44
32
64
79
59
47
43
31
63
78
58
46
42
30
62
77
57
45
41
29
61
76
56
44
40
28
60
75
55
43
39
27
59
74
54
42
38
26
58
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
25
57
64
28
24
56
63
27
23
55
62
26
22
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
61
25
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
43
55
60
24
20
34
44
56
59
23
19
35
45
57
58
22
18
36
46
58
57
21
17
37
47
59
56
20
16
38
48
60
55
19
15
39
49
61
54
18
14
40
50
62
63
64
65
66
67
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
39
51
65
54
18
4
38
52
66
55
19
3
37
53
67
56
20
2
36
54
68
57
21
1
35
55
69
58
22
0
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
98
99
99
98
97
96
95
94
93
92
91
90
89
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
77
85
97
88
76
68
76
84
96
87
75
67
75
83
95
86
74
66
74
82
94
85
73
65
73
81
93
84
72
64
72
80
92
83
71
63
71
79
91
82
70
62
70
78
90
81
69
61
69
77
89
80
68
60
68
76
88
79
67
59
67
75
87
78
66
58
66
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
57
65
53
67
87
78
58
44
56
64
52
68
88
79
59
43
55
63
51
69
89
80
60
42
54
62
50
70
90
81
61
41
53
61
49
71
91
82
62
40
52
60
48
72
92
83
63
39
51
59
47
73
93
84
64
38
50
58
57
56
55
54
53
52
51
50
49
48
47
46
74
94
83
65
37
38
39
40
41
42
43
44
45
46
47
48
49
45
75
93
82
66
36
44
76
92
81
67
35
43
77
91
80
68
34
42
78
90
79
69
33
41
79
89
78
70
32
40
80
88
77
71
31
39
81
87
76
72
30
38
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
29
37
73
62
28
36
72
61
27
35
71
60
26
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
70
59
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
23
35
69
58
26
12
24
36
68
57
27
11
25
37
67
56
28
10
26
38
66
55
29
9
27
39
65
54
30
8
28
40
64
53
31
7
29
41
63
52
32
6
30
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
40
39
38
37
36
35
34
33
5
31
52
63
52
38
4
32
53
64
53
37
3
33
54
65
54
36
2
34
55
66
55
35
1
35
56
67
56
34
0
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
90
91
92
93
94
95
96
97
98
99
100
100
99
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
69
77
89
98
86
78
68
76
88
97
85
77
67
75
87
96
84
76
66
74
86
95
83
75
65
73
85
94
82
74
64
72
84
93
81
73
63
71
83
92
80
72
62
70
82
91
79
71
61
69
81
90
78
70
60
68
80
89
77
69
59
67
79
88
76
68
58
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
67
57
45
59
79
88
68
54
66
56
44
60
80
89
69
53
65
55
43
61
81
90
70
52
64
54
42
62
82
91
71
51
63
53
41
63
83
92
72
50
62
52
40
64
84
93
73
49
61
51
39
65
83
94
74
48
60
50
49
48
47
46
45
44
43
42
41
40
39
38
66
82
94
75
47
48
49
50
51
52
53
54
55
56
57
58
59
37
67
81
93
76
46
36
68
80
92
77
45
35
69
79
91
78
44
34
70
78
90
79
43
33
71
77
89
80
42
32
72
76
88
81
41
31
71
75
87
82
40
30
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
39
29
61
74
38
28
60
73
37
27
59
72
36
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
58
71
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
13
27
57
70
36
24
12
28
56
69
37
25
11
29
55
68
38
26
10
30
54
67
39
27
9
31
53
66
40
28
8
32
52
65
41
29
7
33
51
64
42
30
6
34
35
36
37
38
39
40
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
31
5
38
51
64
52
32
4
37
52
65
53
33
3
36
53
66
54
34
2
35
54
67
55
35
1
34
55
68
56
36
0
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
73
69
70
71
72
73
74
75
76
77
78
79
80
81
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
112
111
110
109
108
107
106
105
104
103
102
101
100
66
72
68
80
92
99
65
71
67
79
91
98
64
70
66
78
90
97
63
69
65
77
89
96
62
68
64
76
88
95
61
67
63
75
87
94
60
66
62
74
86
93
59
65
61
73
85
92
58
64
60
72
84
91
57
63
59
71
83
90
56
62
58
70
82
89
55
43
44
45
46
47
48
49
50
51
52
53
54
53
54
55
56
57
58
59
60
61
62
63
64
65
64
63
62
61
60
59
58
57
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
88
87
86
85
84
83
82
81
80
79
78
77
76
88
54
42
52
56
68
88
75
87
53
41
51
55
67
87
74
86
52
40
50
54
66
86
73
85
51
39
49
53
65
85
72
84
50
38
48
52
64
84
71
83
49
37
47
51
63
83
70
82
48
36
46
50
62
82
69
81
47
46
45
44
43
42
41
40
39
38
37
36
35
45
49
61
81
68
69
70
71
72
73
74
75
76
77
78
79
80
34
44
48
60
80
67
33
43
47
59
79
66
32
42
46
58
78
65
31
41
45
57
77
64
30
40
44
56
76
63
29
39
43
55
75
62
28
38
42
54
74
61
27
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
60
26
28
64
59
25
27
63
58
24
26
62
57
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
25
61
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
36
22
24
60
57
45
37
21
23
59
58
46
38
20
22
58
59
47
39
19
21
57
60
48
40
18
20
56
61
49
41
17
19
55
62
50
40
16
18
54
63
51
39
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
68
67
66
65
64
52
38
5
18
54
66
53
37
4
19
55
67
54
36
3
20
56
68
55
35
2
21
57
69
56
34
1
22
58
70
57
33
0
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
58
59
60
61
62
63
64
65
66
67
68
69
70
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
112
111
77
61
57
69
81
110
76
60
56
68
80
109
75
59
55
67
79
108
74
58
54
66
78
107
73
57
53
65
77
106
72
56
52
64
76
105
71
55
51
63
75
104
70
54
50
62
74
103
69
53
49
61
73
102
68
52
48
60
72
101
67
51
47
59
71
100
66
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
53
52
51
50
49
48
47
46
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
88
87
99
65
53
41
45
57
77
86
98
64
52
40
44
56
76
85
97
63
51
39
43
55
75
84
96
62
50
38
42
54
74
83
95
61
49
37
41
53
73
82
94
60
48
36
40
52
72
81
93
59
47
35
39
51
71
80
92
58
57
56
55
54
53
52
51
50
49
48
47
46
34
38
50
70
79
80
81
82
83
84
85
86
87
88
89
90
91
45
33
37
49
69
78
44
32
36
48
68
77
43
31
35
47
67
76
42
30
34
46
66
75
41
29
33
45
65
74
40
28
32
44
64
73
39
27
31
43
63
72
38
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
71
37
17
53
70
36
16
52
69
35
15
51
68
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
14
50
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
47
33
13
49
68
56
48
32
12
48
68
57
49
31
11
47
67
58
50
30
10
46
66
59
51
29
9
45
65
60
52
28
8
44
64
61
53
27
7
43
63
62
54
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
55
18
5
43
55
64
56
19
4
44
56
65
57
20
3
45
57
66
58
21
2
46
58
67
57
22
1
47
59
68
56
23
0
111
112
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
70
69
68
67
66
65
64
63
62
61
60
59
58
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
110
81
69
57
61
77
109
80
68
56
60
76
108
79
67
55
59
75
107
78
66
54
58
74
106
77
65
53
57
73
105
76
64
52
56
72
104
75
63
51
55
71
103
74
62
50
54
70
102
73
61
49
53
69
101
72
60
48
52
68
100
71
59
47
51
67
99
87
88
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
46
47
48
49
50
51
52
53
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
66
98
86
77
57
45
41
53
65
97
85
76
56
44
40
52
64
96
84
75
55
43
39
51
63
95
83
74
54
42
38
50
62
94
82
73
53
41
37
49
61
93
81
72
52
40
36
48
60
92
80
71
51
39
35
47
59
91
90
89
88
87
86
85
84
83
82
81
80
79
70
50
38
34
46
47
48
49
50
51
52
53
54
55
56
57
58
78
69
49
37
33
45
77
68
48
36
32
44
76
67
47
35
31
43
75
66
46
34
30
42
74
65
45
33
29
41
73
64
44
32
28
40
72
63
43
31
27
39
71
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
38
70
53
17
37
69
52
16
36
68
51
15
35
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
50
14
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
56
68
49
13
33
47
57
68
48
12
32
48
58
67
47
11
31
49
59
66
46
10
30
50
60
65
45
9
29
51
61
64
44
8
28
52
62
63
43
7
27
53
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
54
64
54
43
5
19
55
65
55
44
4
20
56
66
56
45
3
21
57
67
57
46
2
22
58
68
58
47
1
23
57
69
59
48
0
99
100
101
102
103
104
105
106
107
108
109
110
111
112
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
82
81
80
79
78
77
76
75
74
73
72
71
70
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
98
93
81
69
73
65
97
92
80
68
72
64
96
91
79
67
71
63
95
90
78
66
70
62
94
89
77
65
69
61
93
88
76
64
68
60
92
87
75
63
67
59
91
86
74
62
66
58
90
85
73
61
65
57
89
84
72
60
64
56
88
83
71
59
63
55
87
75
76
77
78
79
80
81
82
83
84
85
86
87
88
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
58
59
60
61
62
63
64
65
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
54
86
74
88
69
57
53
41
53
85
73
88
68
56
52
40
52
84
72
87
67
55
51
39
51
83
71
86
66
54
50
38
50
82
70
85
65
53
49
37
49
81
69
84
64
52
48
36
48
80
68
83
63
51
47
35
47
79
78
77
76
75
74
73
72
71
70
69
68
67
82
62
50
46
34
35
36
37
38
39
40
41
42
43
44
45
46
66
81
61
49
45
33
65
80
60
48
44
32
64
79
59
47
43
31
63
78
58
46
42
30
62
77
57
45
41
29
61
76
56
44
40
28
60
75
55
43
39
27
59
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
26
58
65
29
25
57
64
28
24
56
63
27
23
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
62
26
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
44
56
61
25
21
35
45
57
60
24
20
36
46
58
59
23
19
37
47
59
58
22
18
38
48
60
57
21
17
39
49
61
56
20
16
40
50
62
55
19
15
39
51
63
64
65
66
67
68
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
38
52
66
55
19
5
37
53
67
56
20
4
36
54
68
57
21
3
35
55
69
58
22
2
34
56
70
59
23
1
33
57
71
60
24
0
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
99
100
100
99
98
97
96
95
94
93
92
91
90
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
78
86
98
89
77
69
77
85
97
88
76
68
76
84
96
87
75
67
75
83
95
86
74
66
74
82
94
85
73
65
73
81
93
84
72
64
72
80
92
83
71
63
71
79
91
82
70
62
70
78
90
81
69
61
69
77
89
80
68
60
68
76
88
79
67
59
67
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
58
66
54
68
88
79
59
45
57
65
53
69
89
80
60
44
56
64
52
70
90
81
61
43
55
63
51
71
91
82
62
42
54
62
50
72
92
83
63
41
53
61
49
73
93
84
64
40
52
60
48
74
94
83
65
39
51
59
58
57
56
55
54
53
52
51
50
49
48
47
75
94
82
66
38
39
40
41
42
43
44
45
46
47
48
49
50
46
76
93
81
67
37
45
77
92
80
68
36
44
78
91
79
69
35
43
79
90
78
70
34
42
80
89
77
71
33
41
81
88
76
72
32
40
82
87
75
71
31
39
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
30
38
74
61
29
37
73
60
28
36
72
59
27
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
71
58
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
24
36
70
57
27
13
25
37
69
56
28
12
26
38
68
55
29
11
27
39
67
54
30
10
28
40
66
53
31
9
29
41
65
52
32
8
30
42
64
51
33
7
31
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
39
38
37
36
35
34
6
32
53
64
51
37
5
33
54
65
52
36
4
34
55
66
53
35
3
35
56
67
54
34
2
36
57
68
55
33
1
37
58
69
56
32
0
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
91
92
93
94
95
96
97
98
99
100
101
101
100
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
70
78
90
99
87
79
69
77
89
98
86
78
68
76
88
97
85
77
67
75
87
96
84
76
66
74
86
95
83
75
65
73
85
94
82
74
64
72
84
93
81
73
63
71
83
92
80
72
62
70
82
91
79
71
61
69
81
90
78
70
60
68
80
89
77
69
59
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
68
58
46
60
80
89
69
55
67
57
45
61
81
90
70
54
66
56
44
62
82
91
71
53
65
55
43
63
83
92
72
52
64
54
42
64
84
93
73
51
63
53
41
65
83
94
74
50
62
52
40
66
82
94
75
49
61
51
50
49
48
47
46
45
44
43
42
41
40
39
67
81
93
76
48
49
50
51
52
53
54
55
56
57
58
59
60
38
68
80
92
77
47
37
69
79
91
78
46
36
70
78
90
79
45
35
71
77
89
80
44
34
72
76
88
81
43
33
71
75
87
82
42
32
70
74
86
83
41
31
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
40
30
60
75
39
29
59
74
38
28
58
73
37
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
57
72
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
14
28
56
71
37
25
13
29
55
70
38
26
12
30
54
69
39
27
11
31
53
68
40
28
10
32
52
67
41
29
9
33
51
66
42
30
8
34
50
65
43
31
7
35
36
37
38
39
40
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
32
6
37
50
65
53
33
5
36
51
66
54
34
4
35
52
67
55
35
3
34
53
68
56
36
2
33
54
69
57
37
1
32
55
70
58
38
0
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
74
70
71
72
73
74
75
76
77
78
79
80
81
82
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
67
73
69
81
93
100
66
72
68
80
92
99
65
71
67
79
91
98
64
70
66
78
90
97
63
69
65
77
89
96
62
68
64
76
88
95
61
67
63
75
87
94
60
66
62
74
86
93
59
65
61
73
85
92
58
64
60
72
84
91
57
63
59
71
83
90
56
44
45
46
47
48
49
50
51
52
53
54
55
54
55
56
57
58
59
60
61
62
63
64
65
66
65
64
63
62
61
60
59
58
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
89
55
43
53
57
69
89
76
88
54
42
52
56
68
88
75
87
53
41
51
55
67
87
74
86
52
40
50
54
66
86
73
85
51
39
49
53
65
85
72
84
50
38
48
52
64
84
71
83
49
37
47
51
63
83
70
82
48
47
46
45
44
43
42
41
40
39
38
37
36
46
50
62
82
69
70
71
72
73
74
75
76
77
78
79
80
81
35
45
49
61
81
68
34
44
48
60
80
67
33
43
47
59
79
66
32
42
46
58
78
65
31
41
45
57
77
64
30
40
44
56
76
63
29
39
43
55
75
62
28
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
61
27
29
65
60
26
28
64
59
25
27
63
58
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
26
62
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
37
23
25
61
58
46
38
22
24
60
59
47
39
21
23
59
60
48
40
20
22
58
61
49
41
19
21
57
62
50
40
18
20
56
63
51
39
17
19
55
64
52
38
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
69
68
67
66
65
53
37
6
19
55
67
54
36
5
20
56
68
55
35
4
21
57
69
56
34
3
22
58
70
57
33
2
23
59
71
58
32
1
24
60
72
59
31
0
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
59
60
61
62
63
64
65
66
67
68
69
70
71
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
78
62
58
70
82
111
77
61
57
69
81
110
76
60
56
68
80
109
75
59
55
67
79
108
74
58
54
66
78
107
73
57
53
65
77
106
72
56
52
64
76
105
71
55
51
63
75
104
70
54
50
62
74
103
69
53
49
61
73
102
68
52
48
60
72
101
67
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
54
53
52
51
50
49
48
47
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
100
66
54
42
46
58
78
87
99
65
53
41
45
57
77
86
98
64
52
40
44
56
76
85
97
63
51
39
43
55
75
84
96
62
50
38
42
54
74
83
95
61
49
37
41
53
73
82
94
60
48
36
40
52
72
81
93
59
58
57
56
55
54
53
52
51
50
49
48
47
35
39
51
71
80
81
82
83
84
85
86
87
88
89
90
91
92
46
34
38
50
70
79
45
33
37
49
69
78
44
32
36
48
68
77
43
31
35
47
67
76
42
30
34
46
66
75
41
29
33
45
65
74
40
28
32
44
64
73
39
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
72
38
18
54
71
37
17
53
70
36
16
52
69
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
15
51
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
48
34
14
50
69
57
49
33
13
49
69
58
50
32
12
48
68
59
51
31
11
47
67
60
52
30
10
46
66
61
53
29
9
45
65
62
54
28
8
44
64
63
55
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
56
19
6
44
56
65
57
20
5
45
57
66
58
21
4
46
58
67
59
22
3
47
59
68
58
23
2
48
60
69
57
24
1
49
61
70
56
25
0
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
71
70
69
68
67
66
65
64
63
62
61
60
59
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
111
82
70
58
62
78
110
81
69
57
61
77
109
80
68
56
60
76
108
79
67
55
59
75
107
78
66
54
58
74
106
77
65
53
57
73
105
76
64
52
56
72
104
75
63
51
55
71
103
74
62
50
54
70
102
73
61
49
53
69
101
72
60
48
52
68
100
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
47
48
49
50
51
52
53
54
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
67
99
87
78
58
46
42
54
66
98
86
77
57
45
41
53
65
97
85
76
56
44
40
52
64
96
84
75
55
43
39
51
63
95
83
74
54
42
38
50
62
94
82
73
53
41
37
49
61
93
81
72
52
40
36
48
60
92
91
90
89
88
87
86
85
84
83
82
81
80
71
51
39
35
47
48
49
50
51
52
53
54
55
56
57
58
59
79
70
50
38
34
46
78
69
49
37
33
45
77
68
48
36
32
44
76
67
47
35
31
43
75
66
46
34
30
42
74
65
45
33
29
41
73
64
44
32
28
40
72
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
39
71
54
18
38
70
53
17
37
69
52
16
36
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
51
15
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
57
69
50
14
34
48
58
69
49
13
33
49
59
68
48
12
32
50
60
67
47
11
31
51
61
66
46
10
30
52
62
65
45
9
29
53
63
64
44
8
28
54
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
55
65
55
44
6
20
56
66
56
45
5
21
57
67
57
46
4
22
58
68
58
47
3
23
59
69
59
48
2
24
58
70
60
49
1
25
57
71
61
50
0
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
83
82
81
80
79
78
77
76
75
74
73
72
71
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
99
94
82
70
74
66
98
93
81
69
73
65
97
92
80
68
72
64
96
91
79
67
71
63
95
90
78
66
70
62
94
89
77
65
69
61
93
88
76
64
68
60
92
87
75
63
67
59
91
86
74
62
66
58
90
85
73
61
65
57
89
84
72
60
64
56
88
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
59
60
61
62
63
64
65
66
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
55
87
75
89
70
58
54
42
54
86
74
89
69
57
53
41
53
85
73
88
68
56
52
40
52
84
72
87
67
55
51
39
51
83
71
86
66
54
50
38
50
82
70
85
65
53
49
37
49
81
69
84
64
52
48
36
48
80
79
78
77
76
75
74
73
72
71
70
69
68
83
63
51
47
35
36
37
38
39
40
41
42
43
44
45
46
47
67
82
62
50
46
34
66
81
61
49
45
33
65
80
60
48
44
32
64
79
59
47
43
31
63
78
58
46
42
30
62
77
57
45
41
29
61
76
56
44
40
28
60
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
27
59
66
30
26
58
65
29
25
57
64
28
24
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
63
27
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
45
57
62
26
22
36
46
58
61
25
21
37
47
59
60
24
20
38
48
60
59
23
19
39
49
61
58
22
18
40
50
62
57
21
17
39
51
63
56
20
16
38
52
64
65
66
67
68
69
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
37
53
67
56
20
6
36
54
68
57
21
5
35
55
69
58
22
4
34
56
70
59
23
3
33
57
71
60
24
2
32
58
72
61
25
1
31
59
73
62
26
0
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
100
101
101
100
99
98
97
96
95
94
93
92
91
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
79
87
99
90
78
70
78
86
98
89
77
69
77
85
97
88
76
68
76
84
96
87
75
67
75
83
95
86
74
66
74
82
94
85
73
65
73
81
93
84
72
64
72
80
92
83
71
63
71
79
91
82
70
62
70
78
90
81
69
61
69
77
89
80
68
60
68
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
59
67
55
69
89
80
60
46
58
66
54
70
90
81
61
45
57
65
53
71
91
82
62
44
56
64
52
72
92
83
63
43
55
63
51
73
93
84
64
42
54
62
50
74
94
83
65
41
53
61
49
75
94
82
66
40
52
60
59
58
57
56
55
54
53
52
51
50
49
48
76
93
81
67
39
40
41
42
43
44
45
46
47
48
49
50
51
47
77
92
80
68
38
46
78
91
79
69
37
45
79
90
78
70
36
44
80
89
77
71
35
43
81
88
76
72
34
42
82
87
75
71
33
41
83
86
74
70
32
40
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
31
39
75
60
30
38
74
59
29
37
73
58
28
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
72
57
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
25
37
71
56
28
14
26
38
70
55
29
13
27
39
69
54
30
12
28
40
68
53
31
11
29
41
67
52
32
10
30
42
66
51
33
9
31
43
65
50
34
8
32
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
39
38
37
36
35
7
33
54
65
50
36
6
34
55
66
51
35
5
35
56
67
52
34
4
36
57
68
53
33
3
37
58
69
54
32
2
38
59
70
55
31
1
39
60
71
56
30
0
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
92
93
94
95
96
97
98
99
100
101
102
102
101
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
71
79
91
100
88
80
70
78
90
99
87
79
69
77
89
98
86
78
68
76
88
97
85
77
67
75
87
96
84
76
66
74
86
95
83
75
65
73
85
94
82
74
64
72
84
93
81
73
63
71
83
92
80
72
62
70
82
91
79
71
61
69
81
90
78
70
60
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
69
59
47
61
81
90
70
56
68
58
46
62
82
91
71
55
67
57
45
63
83
92
72
54
66
56
44
64
84
93
73
53
65
55
43
65
83
94
74
52
64
54
42
66
82
94
75
51
63
53
41
67
81
93
76
50
62
52
51
50
49
48
47
46
45
44
43
42
41
40
68
80
92
77
49
50
51
52
53
54
55
56
57
58
59
60
61
39
69
79
91
78
48
38
70
78
90
79
47
37
71
77
89
80
46
36
72
76
88
81
45
35
71
75
87
82
44
34
70
74
86
83
43
33
69
73
85
84
42
32
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
41
31
59
76
40
30
58
75
39
29
57
74
38
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
56
73
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
15
29
55
72
38
26
14
30
54
71
39
27
13
31
53
70
40
28
12
32
52
69
41
29
11
33
51
68
42
30
10
34
50
67
43
31
9
35
49
66
44
32
8
36
37
38
39
40
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
33
7
36
49
66
54
34
6
35
50
67
55
35
5
34
51
68
56
36
4
33
52
69
57
37
3
32
53
70
58
38
2
31
54
71
59
39
1
30
55
72
60
40
0
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
75
71
72
73
74
75
76
77
78
79
80
81
82
83
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
114
113
112
111
110
109
108
107
106
105
104
103
102
68
74
70
82
94
101
67
73
69
81
93
100
66
72
68
80
92
99
65
71
67
79
91
98
64
70
66
78
90
97
63
69
65
77
89
96
62
68
64
76
88
95
61
67
63
75
87
94
60
66
62
74
86
93
59
65
61
73
85
92
58
64
60
72
84
91
57
45
46
47
48
49
50
51
52
53
54
55
56
55
56
57
58
59
60
61
62
63
64
65
66
67
66
65
64
63
62
61
60
59
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
90
56
44
54
58
70
90
77
89
55
43
53
57
69
89
76
88
54
42
52
56
68
88
75
87
53
41
51
55
67
87
74
86
52
40
50
54
66
86
73
85
51
39
49
53
65
85
72
84
50
38
48
52
64
84
71
83
49
48
47
46
45
44
43
42
41
40
39
38
37
47
51
63
83
70
71
72
73
74
75
76
77
78
79
80
81
82
36
46
50
62
82
69
35
45
49
61
81
68
34
44
48
60
80
67
33
43
47
59
79
66
32
42
46
58
78
65
31
41
45
57
77
64
30
40
44
56
76
63
29
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
62
28
30
66
61
27
29
65
60
26
28
64
59
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
27
63
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
38
24
26
62
59
47
39
23
25
61
60
48
40
22
24
60
61
49
41
21
23
59
62
50
40
20
22
58
63
51
39
19
21
57
64
52
38
18
20
56
65
53
37
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
70
69
68
67
66
54
36
7
20
56
68
55
35
6
21
57
69
56
34
5
22
58
70
57
33
4
23
59
71
58
32
3
24
60
72
59
31
2
25
61
73
60
30
1
26
62
74
61
29
0
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
60
61
62
63
64
65
66
67
68
69
70
71
72
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
114
113
79
63
59
71
83
112
78
62
58
70
82
111
77
61
57
69
81
110
76
60
56
68
80
109
75
59
55
67
79
108
74
58
54
66
78
107
73
57
53
65
77
106
72
56
52
64
76
105
71
55
51
63
75
104
70
54
50
62
74
103
69
53
49
61
73
102
68
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
55
54
53
52
51
50
49
48
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
101
67
55
43
47
59
79
88
100
66
54
42
46
58
78
87
99
65
53
41
45
57
77
86
98
64
52
40
44
56
76
85
97
63
51
39
43
55
75
84
96
62
50
38
42
54
74
83
95
61
49
37
41
53
73
82
94
60
59
58
57
56
55
54
53
52
51
50
49
48
36
40
52
72
81
82
83
84
85
86
87
88
89
90
91
92
93
47
35
39
51
71
80
46
34
38
50
70
79
45
33
37
49
69
78
44
32
36
48
68
77
43
31
35
47
67
76
42
30
34
46
66
75
41
29
33
45
65
74
40
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
73
39
19
55
72
38
18
54
71
37
17
53
70
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
16
52
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
49
35
15
51
70
58
50
34
14
50
70
59
51
33
13
49
69
60
52
32
12
48
68
61
53
31
11
47
67
62
54
30
10
46
66
63
55
29
9
45
65
64
56
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
57
20
7
45
57
66
58
21
6
46
58
67
59
22
5
47
59
68
60
23
4
48
60
69
59
24
3
49
61
70
58
25
2
50
62
71
57
26
1
51
63
72
56
27
0
113
114
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
72
71
70
69
68
67
66
65
64
63
62
61
60
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
112
83
71
59
63
79
111
82
70
58
62
78
110
81
69
57
61
77
109
80
68
56
60
76
108
79
67
55
59
75
107
78
66
54
58
74
106
77
65
53
57
73
105
76
64
52
56
72
104
75
63
51
55
71
103
74
62
50
54
70
102
73
61
49
53
69
101
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
48
49
50
51
52
53
54
55
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
68
100
88
79
59
47
43
55
67
99
87
78
58
46
42
54
66
98
86
77
57
45
41
53
65
97
85
76
56
44
40
52
64
96
84
75
55
43
39
51
63
95
83
74
54
42
38
50
62
94
82
73
53
41
37
49
61
93
92
91
90
89
88
87
86
85
84
83
82
81
72
52
40
36
48
49
50
51
52
53
54
55
56
57
58
59
60
80
71
51
39
35
47
79
70
50
38
34
46
78
69
49
37
33
45
77
68
48
36
32
44
76
67
47
35
31
43
75
66
46
34
30
42
74
65
45
33
29
41
73
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
40
72
55
19
39
71
54
18
38
70
53
17
37
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
52
16
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
58
70
51
15
35
49
59
70
50
14
34
50
60
69
49
13
33
51
61
68
48
12
32
52
62
67
47
11
31
53
63
66
46
10
30
54
64
65
45
9
29
55
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
56
66
56
45
7
21
57
67
57
46
6
22
58
68
58
47
5
23
59
69
59
48
4
24
60
70
60
49
3
25
59
71
61
50
2
26
58
72
62
51
1
27
57
73
63
52
0
101
102
103
104
105
106
107
108
109
110
111
112
113
114
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
84
83
82
81
80
79
78
77
76
75
74
73
72
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
100
95
83
71
75
67
99
94
82
70
74
66
98
93
81
69
73
65
97
92
80
68
72
64
96
91
79
67
71
63
95
90
78
66
70
62
94
89
77
65
69
61
93
88
76
64
68
60
92
87
75
63
67
59
91
86
74
62
66
58
90
85
73
61
65
57
89
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
60
61
62
63
64
65
66
67
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
56
88
76
90
71
59
55
43
55
87
75
90
70
58
54
42
54
86
74
89
69
57
53
41
53
85
73
88
68
56
52
40
52
84
72
87
67
55
51
39
51
83
71
86
66
54
50
38
50
82
70
85
65
53
49
37
49
81
80
79
78
77
76
75
74
73
72
71
70
69
84
64
52
48
36
37
38
39
40
41
42
43
44
45
46
47
48
68
83
63
51
47
35
67
82
62
50
46
34
66
81
61
49
45
33
65
80
60
48
44
32
64
79
59
47
43
31
63
78
58
46
42
30
62
77
57
45
41
29
61
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
28
60
67
31
27
59
66
30
26
58
65
29
25
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
64
28
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
46
58
63
27
23
37
47
59
62
26
22
38
48
60
61
25
21
39
49
61
60
24
20
40
50
62
59
23
19
39
51
63
58
22
18
38
52
64
57
21
17
37
53
65
66
67
68
69
70
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
36
54
68
57
21
7
35
55
69
58
22
6
34
56
70
59
23
5
33
57
71
60
24
4
32
58
72
61
25
3
31
59
73
62
26
2
30
60
74
63
27
1
29
61
75
64
28
0
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
101
102
102
101
100
99
98
97
96
95
94
93
92
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
80
88
100
91
79
71
79
87
99
90
78
70
78
86
98
89
77
69
77
85
97
88
76
68
76
84
96
87
75
67
75
83
95
86
74
66
74
82
94
85
73
65
73
81
93
84
72
64
72
80
92
83
71
63
71
79
91
82
70
62
70
78
90
81
69
61
69
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
60
68
56
70
90
81
61
47
59
67
55
71
91
82
62
46
58
66
54
72
92
83
63
45
57
65
53
73
93
84
64
44
56
64
52
74
94
83
65
43
55
63
51
75
94
82
66
42
54
62
50
76
93
81
67
41
53
61
60
59
58
57
56
55
54
53
52
51
50
49
77
92
80
68
40
41
42
43
44
45
46
47
48
49
50
51
52
48
78
91
79
69
39
47
79
90
78
70
38
46
80
89
77
71
37
45
81
88
76
72
36
44
82
87
75
71
35
43
83
86
74
70
34
42
84
85
73
69
33
41
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
32
40
76
59
31
39
75
58
30
38
74
57
29
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
73
56
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
26
38
72
55
29
15
27
39
71
54
30
14
28
40
70
53
31
13
29
41
69
52
32
12
30
42
68
51
33
11
31
43
67
50
34
10
32
44
66
49
35
9
33
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
39
38
37
36
8
34
55
66
49
35
7
35
56
67
50
34
6
36
57
68
51
33
5
37
58
69
52
32
4
38
59
70
53
31
3
39
60
71
54
30
2
40
61
72
55
29
1
41
62
73
56
28
0
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
93
94
95
96
97
98
99
100
101
102
103
103
102
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
72
80
92
101
89
81
71
79
91
100
88
80
70
78
90
99
87
79
69
77
89
98
86
78
68
76
88
97
85
77
67
75
87
96
84
76
66
74
86
95
83
75
65
73
85
94
82
74
64
72
84
93
81
73
63
71
83
92
80
72
62
70
82
91
79
71
61
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
70
60
48
62
82
91
71
57
69
59
47
63
83
92
72
56
68
58
46
64
84
93
73
55
67
57
45
65
83
94
74
54
66
56
44
66
82
94
75
53
65
55
43
67
81
93
76
52
64
54
42
68
80
92
77
51
63
53
52
51
50
49
48
47
46
45
44
43
42
41
69
79
91
78
50
51
52
53
54
55
56
57
58
59
60
61
62
40
70
78
90
79
49
39
71
77
89
80
48
38
72
76
88
81
47
37
71
75
87
82
46
36
70
74
86
83
45
35
69
73
85
84
44
34
68
72
84
85
43
33
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
42
32
58
77
41
31
57
76
40
30
56
75
39
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
55
74
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
16
30
54
73
39
27
15
31
53
72
40
28
14
32
52
71
41
29
13
33
51
70
42
30
12
34
50
69
43
31
11
35
49
68
44
32
10
36
48
67
45
33
9
37
38
39
40
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
34
8
35
48
67
55
35
7
34
49
68
56
36
6
33
50
69
57
37
5
32
51
70
58
38
4
31
52
71
59
39
3
30
53
72
60
40
2
29
54
73
61
41
1
28
55
74
62
42
0
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
76
72
73
74
75
76
77
78
79
80
81
82
83
84
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
115
114
113
112
111
110
109
108
107
106
105
104
103
69
75
71
83
95
102
68
74
70
82
94
101
67
73
69
81
93
100
66
72
68
80
92
99
65
71
67
79
91
98
64
70
66
78
90
97
63
69
65
77
89
96
62
68
64
76
88
95
61
67
63
75
87
94
60
66
62
74
86
93
59
65
61
73
85
92
58
46
47
48
49
50
51
52
53
54
55
56
57
56
57
58
59
60
61
62
63
64
65
66
67
68
67
66
65
64
63
62
61
60
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
91
90
89
88
87
86
85
84
83
82
81
80
79
91
57
45
55
59
71
91
78
90
56
44
54
58
70
90
77
89
55
43
53
57
69
89
76
88
54
42
52
56
68
88
75
87
53
41
51
55
67
87
74
86
52
40
50
54
66
86
73
85
51
39
49
53
65
85
72
84
50
49
48
47
46
45
44
43
42
41
40
39
38
48
52
64
84
71
72
73
74
75
76
77
78
79
80
81
82
83
37
47
51
63
83
70
36
46
50
62
82
69
35
45
49
61
81
68
34
44
48
60
80
67
33
43
47
59
79
66
32
42
46
58
78
65
31
41
45
57
77
64
30
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
63
29
31
67
62
28
30
66
61
27
29
65
60
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
28
64
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
39
25
27
63
60
48
40
24
26
62
61
49
41
23
25
61
62
50
40
22
24
60
63
51
39
21
23
59
64
52
38
20
22
58
65
53
37
19
21
57
66
54
36
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
71
70
69
68
67
55
35
8
21
57
69
56
34
7
22
58
70
57
33
6
23
59
71
58
32
5
24
60
72
59
31
4
25
61
73
60
30
3
26
62
74
61
29
2
27
63
75
62
28
1
28
64
76
63
27
0
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
61
62
63
64
65
66
67
68
69
70
71
72
73
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
115
114
80
64
60
72
84
113
79
63
59
71
83
112
78
62
58
70
82
111
77
61
57
69
81
110
76
60
56
68
80
109
75
59
55
67
79
108
74
58
54
66
78
107
73
57
53
65
77
106
72
56
52
64
76
105
71
55
51
63
75
104
70
54
50
62
74
103
69
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
56
55
54
53
52
51
50
49
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
91
90
102
68
56
44
48
60
80
89
101
67
55
43
47
59
79
88
100
66
54
42
46
58
78
87
99
65
53
41
45
57
77
86
98
64
52
40
44
56
76
85
97
63
51
39
43
55
75
84
96
62
50
38
42
54
74
83
95
61
60
59
58
57
56
55
54
53
52
51
50
49
37
41
53
73
82
83
84
85
86
87
88
89
90
91
92
93
94
48
36
40
52
72
81
47
35
39
51
71
80
46
34
38
50
70
79
45
33
37
49
69
78
44
32
36
48
68
77
43
31
35
47
67
76
42
30
34
46
66
75
41
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
74
40
20
56
73
39
19
55
72
38
18
54
71
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
17
53
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
50
36
16
52
71
59
51
35
15
51
71
60
52
34
14
50
70
61
53
33
13
49
69
62
54
32
12
48
68
63
55
31
11
47
67
64
56
30
10
46
66
65
57
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
58
21
8
46
58
67
59
22
7
47
59
68
60
23
6
48
60
69
61
24
5
49
61
70
60
25
4
50
62
71
59
26
3
51
63
72
58
27
2
52
64
73
57
28
1
53
65
74
56
29
0
114
115
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
73
72
71
70
69
68
67
66
65
64
63
62
61
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
113
84
72
60
64
80
112
83
71
59
63
79
111
82
70
58
62
78
110
81
69
57
61
77
109
80
68
56
60
76
108
79
67
55
59
75
107
78
66
54
58
74
106
77
65
53
57
73
105
76
64
52
56
72
104
75
63
51
55
71
103
74
62
50
54
70
102
90
91
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
49
50
51
52
53
54
55
56
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
69
101
89
80
60
48
44
56
68
100
88
79
59
47
43
55
67
99
87
78
58
46
42
54
66
98
86
77
57
45
41
53
65
97
85
76
56
44
40
52
64
96
84
75
55
43
39
51
63
95
83
74
54
42
38
50
62
94
93
92
91
90
89
88
87
86
85
84
83
82
73
53
41
37
49
50
51
52
53
54
55
56
57
58
59
60
61
81
72
52
40
36
48
80
71
51
39
35
47
79
70
50
38
34
46
78
69
49
37
33
45
77
68
48
36
32
44
76
67
47
35
31
43
75
66
46
34
30
42
74
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
41
73
56
20
40
72
55
19
39
71
54
18
38
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
53
17
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
59
71
52
16
36
50
60
71
51
15
35
51
61
70
50
14
34
52
62
69
49
13
33
53
63
68
48
12
32
54
64
67
47
11
31
55
65
66
46
10
30
56
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
57
67
57
46
8
22
58
68
58
47
7
23
59
69
59
48
6
24
60
70
60
49
5
25
61
71
61
50
4
26
60
72
62
51
3
27
59
73
63
52
2
28
58
74
64
53
1
29
57
75
65
54
0
102
103
104
105
106
107
108
109
110
111
112
113
114
115
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
85
84
83
82
81
80
79
78
77
76
75
74
73
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
101
96
84
72
76
68
100
95
83
71
75
67
99
94
82
70
74
66
98
93
81
69
73
65
97
92
80
68
72
64
96
91
79
67
71
63
95
90
78
66
70
62
94
89
77
65
69
61
93
88
76
64
68
60
92
87
75
63
67
59
91
86
74
62
66
58
90
78
79
80
81
82
83
84
85
86
87
88
89
90
91
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
61
62
63
64
65
66
67
68
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
57
89
77
91
72
60
56
44
56
88
76
91
71
59
55
43
55
87
75
90
70
58
54
42
54
86
74
89
69
57
53
41
53
85
73
88
68
56
52
40
52
84
72
87
67
55
51
39
51
83
71
86
66
54
50
38
50
82
81
80
79
78
77
76
75
74
73
72
71
70
85
65
53
49
37
38
39
40
41
42
43
44
45
46
47
48
49
69
84
64
52
48
36
68
83
63
51
47
35
67
82
62
50
46
34
66
81
61
49
45
33
65
80
60
48
44
32
64
79
59
47
43
31
63
78
58
46
42
30
62
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
29
61
68
32
28
60
67
31
27
59
66
30
26
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
65
29
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
47
59
64
28
24
38
48
60
63
27
23
39
49
61
62
26
22
40
50
62
61
25
21
39
51
63
60
24
20
38
52
64
59
23
19
37
53
65
58
22
18
36
54
66
67
68
69
70
71
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
35
55
69
58
22
8
34
56
70
59
23
7
33
57
71
60
24
6
32
58
72
61
25
5
31
59
73
62
26
4
30
60
74
63
27
3
29
61
75
64
28
2
28
62
76
65
29
1
27
63
77
66
30
0
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
102
103
103
102
101
100
99
98
97
96
95
94
93
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
81
89
101
92
80
72
80
88
100
91
79
71
79
87
99
90
78
70
78
86
98
89
77
69
77
85
97
88
76
68
76
84
96
87
75
67
75
83
95
86
74
66
74
82
94
85
73
65
73
81
93
84
72
64
72
80
92
83
71
63
71
79
91
82
70
62
70
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
61
69
57
71
91
82
62
48
60
68
56
72
92
83
63
47
59
67
55
73
93
84
64
46
58
66
54
74
94
83
65
45
57
65
53
75
94
82
66
44
56
64
52
76
93
81
67
43
55
63
51
77
92
80
68
42
54
62
61
60
59
58
57
56
55
54
53
52
51
50
78
91
79
69
41
42
43
44
45
46
47
48
49
50
51
52
53
49
79
90
78
70
40
48
80
89
77
71
39
47
81
88
76
72
38
46
82
87
75
71
37
45
83
86
74
70
36
44
84
85
73
69
35
43
85
84
72
68
34
42
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
33
41
77
58
32
40
76
57
31
39
75
56
30
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
74
55
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
27
39
73
54
30
16
28
40
72
53
31
15
29
41
71
52
32
14
30
42
70
51
33
13
31
43
69
50
34
12
32
44
68
49
35
11
33
45
67
48
36
10
34
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
39
38
37
9
35
56
67
48
34
8
36
57
68
49
33
7
37
58
69
50
32
6
38
59
70
51
31
5
39
60
71
52
30
4
40
61
72
53
29
3
41
62
73
54
28
2
42
63
74
55
27
1
43
64
75
56
26
0
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
94
95
96
97
98
99
100
101
102
103
104
104
103
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
73
81
93
102
90
82
72
80
92
101
89
81
71
79
91
100
88
80
70
78
90
99
87
79
69
77
89
98
86
78
68
76
88
97
85
77
67
75
87
96
84
76
66
74
86
95
83
75
65
73
85
94
82
74
64
72
84
93
81
73
63
71
83
92
80
72
62
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
71
61
49
63
83
92
72
58
70
60
48
64
84
93
73
57
69
59
47
65
83
94
74
56
68
58
46
66
82
94
75
55
67
57
45
67
81
93
76
54
66
56
44
68
80
92
77
53
65
55
43
69
79
91
78
52
64
54
53
52
51
50
49
48
47
46
45
44
43
42
70
78
90
79
51
52
53
54
55
56
57
58
59
60
61
62
63
41
71
77
89
80
50
40
72
76
88
81
49
39
71
75
87
82
48
38
70
74
86
83
47
37
69
73
85
84
46
36
68
72
84
85
45
35
67
71
83
86
44
34
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
43
33
57
78
42
32
56
77
41
31
55
76
40
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
54
75
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
17
31
53
74
40
28
16
32
52
73
41
29
15
33
51
72
42
30
14
34
50
71
43
31
13
35
49
70
44
32
12
36
48
69
45
33
11
37
47
68
46
34
10
38
39
40
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
35
9
34
47
68
56
36
8
33
48
69
57
37
7
32
49
70
58
38
6
31
50
71
59
39
5
30
51
72
60
40
4
29
52
73
61
41
3
28
53
74
62
42
2
27
54
75
63
43
1
26
55
76
64
44
0
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
77
73
74
75
76
77
78
79
80
81
82
83
84
85
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
116
115
114
113
112
111
110
109
108
107
106
105
104
70
76
72
84
96
103
69
75
71
83
95
102
68
74
70
82
94
101
67
73
69
81
93
100
66
72
68
80
92
99
65
71
67
79
91
98
64
70
66
78
90
97
63
69
65
77
89
96
62
68
64
76
88
95
61
67
63
75
87
94
60
66
62
74
86
93
59
47
48
49
50
51
52
53
54
55
56
57
58
57
58
59
60
61
62
63
64
65
66
67
68
69
68
67
66
65
64
63
62
61
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
92
91
90
89
88
87
86
85
84
83
82
81
80
92
58
46
56
60
72
92
79
91
57
45
55
59
71
91
78
90
56
44
54
58
70
90
77
89
55
43
53
57
69
89
76
88
54
42
52
56
68
88
75
87
53
41
51
55
67
87
74
86
52
40
50
54
66
86
73
85
51
50
49
48
47
46
45
44
43
42
41
40
39
49
53
65
85
72
73
74
75
76
77
78
79
80
81
82
83
84
38
48
52
64
84
71
37
47
51
63
83
70
36
46
50
62
82
69
35
45
49
61
81
68
34
44
48
60
80
67
33
43
47
59
79
66
32
42
46
58
78
65
31
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
64
30
32
68
63
29
31
67
62
28
30
66
61
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
29
65
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
40
26
28
64
61
49
41
25
27
63
62
50
40
24
26
62
63
51
39
23
25
61
64
52
38
22
24
60
65
53
37
21
23
59
66
54
36
20
22
58
67
55
35
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
72
71
70
69
68
56
34
9
22
58
70
57
33
8
23
59
71
58
32
7
24
60
72
59
31
6
25
61
73
60
30
5
26
62
74
61
29
4
27
63
75
62
28
3
28
64
76
63
27
2
29
65
77
64
26
1
30
66
78
65
25
0
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
62
63
64
65
66
67
68
69
70
71
72
73
74
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
116
115
81
65
61
73
85
114
80
64
60
72
84
113
79
63
59
71
83
112
78
62
58
70
82
111
77
61
57
69
81
110
76
60
56
68
80
109
75
59
55
67
79
108
74
58
54
66
78
107
73
57
53
65
77
106
72
56
52
64
76
105
71
55
51
63
75
104
70
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
57
56
55
54
53
52
51
50
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
92
91
103
69
57
45
49
61
81
90
102
68
56
44
48
60
80
89
101
67
55
43
47
59
79
88
100
66
54
42
46
58
78
87
99
65
53
41
45
57
77
86
98
64
52
40
44
56
76
85
97
63
51
39
43
55
75
84
96
62
61
60
59
58
57
56
55
54
53
52
51
50
38
42
54
74
83
84
85
86
87
88
89
90
91
92
93
94
95
49
37
41
53
73
82
48
36
40
52
72
81
47
35
39
51
71
80
46
34
38
50
70
79
45
33
37
49
69
78
44
32
36
48
68
77
43
31
35
47
67
76
42
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
75
41
21
57
74
40
20
56
73
39
19
55
72
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
18
54
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
51
37
17
53
72
60
52
36
16
52
72
61
53
35
15
51
71
62
54
34
14
50
70
63
55
33
13
49
69
64
56
32
12
48
68
65
57
31
11
47
67
66
58
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
59
22
9
47
59
68
60
23
8
48
60
69
61
24
7
49
61
70
62
25
6
50
62
71
61
26
5
51
63
72
60
27
4
52
64
73
59
28
3
53
65
74
58
29
2
54
66
75
57
30
1
55
67
76
56
31
0
115
116
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
74
73
72
71
70
69
68
67
66
65
64
63
62
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
114
85
73
61
65
81
113
84
72
60
64
80
112
83
71
59
63
79
111
82
70
58
62
78
110
81
69
57
61
77
109
80
68
56
60
76
108
79
67
55
59
75
107
78
66
54
58
74
106
77
65
53
57
73
105
76
64
52
56
72
104
75
63
51
55
71
103
91
92
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
50
51
52
53
54
55
56
57
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
70
102
90
81
61
49
45
57
69
101
89
80
60
48
44
56
68
100
88
79
59
47
43
55
67
99
87
78
58
46
42
54
66
98
86
77
57
45
41
53
65
97
85
76
56
44
40
52
64
96
84
75
55
43
39
51
63
95
94
93
92
91
90
89
88
87
86
85
84
83
74
54
42
38
50
51
52
53
54
55
56
57
58
59
60
61
62
82
73
53
41
37
49
81
72
52
40
36
48
80
71
51
39
35
47
79
70
50
38
34
46
78
69
49
37
33
45
77
68
48
36
32
44
76
67
47
35
31
43
75
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
42
74
57
21
41
73
56
20
40
72
55
19
39
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
54
18
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
60
72
53
17
37
51
61
72
52
16
36
52
62
71
51
15
35
53
63
70
50
14
34
54
64
69
49
13
33
55
65
68
48
12
32
56
66
67
47
11
31
57
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
58
68
58
47
9
23
59
69
59
48
8
24
60
70
60
49
7
25
61
71
61
50
6
26
62
72
62
51
5
27
61
73
63
52
4
28
60
74
64
53
3
29
59
75
65
54
2
30
58
76
66
55
1
31
57
77
67
56
0
103
104
105
106
107
108
109
110
111
112
113
114
115
116
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
86
85
84
83
82
81
80
79
78
77
76
75
74
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
102
97
85
73
77
69
101
96
84
72
76
68
100
95
83
71
75
67
99
94
82
70
74
66
98
93
81
69
73
65
97
92
80
68
72
64
96
91
79
67
71
63
95
90
78
66
70
62
94
89
77
65
69
61
93
88
76
64
68
60
92
87
75
63
67
59
91
79
80
81
82
83
84
85
86
87
88
89
90
91
92
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
62
63
64
65
66
67
68
69
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
58
90
78
92
73
61
57
45
57
89
77
92
72
60
56
44
56
88
76
91
71
59
55
43
55
87
75
90
70
58
54
42
54
86
74
89
69
57
53
41
53
85
73
88
68
56
52
40
52
84
72
87
67
55
51
39
51
83
82
81
80
79
78
77
76
75
74
73
72
71
86
66
54
50
38
39
40
41
42
43
44
45
46
47
48
49
50
70
85
65
53
49
37
69
84
64
52
48
36
68
83
63
51
47
35
67
82
62
50
46
34
66
81
61
49
45
33
65
80
60
48
44
32
64
79
59
47
43
31
63
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
30
62
69
33
29
61
68
32
28
60
67
31
27
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
66
30
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
48
60
65
29
25
39
49
61
64
28
24
40
50
62
63
27
23
39
51
63
62
26
22
38
52
64
61
25
21
37
53
65
60
24
20
36
54
66
59
23
19
35
55
67
68
69
70
71
72
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
34
56
70
59
23
9
33
57
71
60
24
8
32
58
72
61
25
7
31
59
73
62
26
6
30
60
74
63
27
5
29
61
75
64
28
4
28
62
76
65
29
3
27
63
77
66
30
2
26
64
78
67
31
1
25
65
79
68
32
0
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
103
104
104
103
102
101
100
99
98
97
96
95
94
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
82
90
102
93
81
73
81
89
101
92
80
72
80
88
100
91
79
71
79
87
99
90
78
70
78
86
98
89
77
69
77
85
97
88
76
68
76
84
96
87
75
67
75
83
95
86
74
66
74
82
94
85
73
65
73
81
93
84
72
64
72
80
92
83
71
63
71
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
62
70
58
72
92
83
63
49
61
69
57
73
93
84
64
48
60
68
56
74
94
83
65
47
59
67
55
75
94
82
66
46
58
66
54
76
93
81
67
45
57
65
53
77
92
80
68
44
56
64
52
78
91
79
69
43
55
63
62
61
60
59
58
57
56
55
54
53
52
51
79
90
78
70
42
43
44
45
46
47
48
49
50
51
52
53
54
50
80
89
77
71
41
49
81
88
76
72
40
48
82
87
75
71
39
47
83
86
74
70
38
46
84
85
73
69
37
45
85
84
72
68
36
44
86
83
71
67
35
43
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
34
42
78
57
33
41
77
56
32
40
76
55
31
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
75
54
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
28
40
74
53
31
17
29
41
73
52
32
16
30
42
72
51
33
15
31
43
71
50
34
14
32
44
70
49
35
13
33
45
69
48
36
12
34
46
68
47
37
11
35
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
39
38
10
36
57
68
47
33
9
37
58
69
48
32
8
38
59
70
49
31
7
39
60
71
50
30
6
40
61
72
51
29
5
41
62
73
52
28
4
42
63
74
53
27
3
43
64
75
54
26
2
44
65
76
55
25
1
45
66
77
56
24
0
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
95
96
97
98
99
100
101
102
103
104
105
105
104
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
74
82
94
103
91
83
73
81
93
102
90
82
72
80
92
101
89
81
71
79
91
100
88
80
70
78
90
99
87
79
69
77
89
98
86
78
68
76
88
97
85
77
67
75
87
96
84
76
66
74
86
95
83
75
65
73
85
94
82
74
64
72
84
93
81
73
63
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
72
62
50
64
84
93
73
59
71
61
49
65
83
94
74
58
70
60
48
66
82
94
75
57
69
59
47
67
81
93
76
56
68
58
46
68
80
92
77
55
67
57
45
69
79
91
78
54
66
56
44
70
78
90
79
53
65
55
54
53
52
51
50
49
48
47
46
45
44
43
71
77
89
80
52
53
54
55
56
57
58
59
60
61
62
63
64
42
72
76
88
81
51
41
71
75
87
82
50
40
70
74
86
83
49
39
69
73
85
84
48
38
68
72
84
85
47
37
67
71
83
86
46
36
66
70
82
87
45
35
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
44
34
56
79
43
33
55
78
42
32
54
77
41
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
53
76
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
18
32
52
75
41
29
17
33
51
74
42
30
16
34
50
73
43
31
15
35
49
72
44
32
14
36
48
71
45
33
13
37
47
70
46
34
12
38
46
69
47
35
11
39
40
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
36
10
33
46
69
57
37
9
32
47
70
58
38
8
31
48
71
59
39
7
30
49
72
60
40
6
29
50
73
61
41
5
28
51
74
62
42
4
27
52
75
63
43
3
26
53
76
64
44
2
25
54
77
65
45
1
24
55
78
66
46
0
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
78
74
75
76
77
78
79
80
81
82
83
84
85
86
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
117
116
115
114
113
112
111
110
109
108
107
106
105
71
77
73
85
97
104
70
76
72
84
96
103
69
75
71
83
95
102
68
74
70
82
94
101
67
73
69
81
93
100
66
72
68
80
92
99
65
71
67
79
91
98
64
70
66
78
90
97
63
69
65
77
89
96
62
68
64
76
88
95
61
67
63
75
87
94
60
48
49
50
51
52
53
54
55
56
57
58
59
58
59
60
61
62
63
64
65
66
67
68
69
70
69
68
67
66
65
64
63
62
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
93
59
47
57
61
73
93
80
92
58
46
56
60
72
92
79
91
57
45
55
59
71
91
78
90
56
44
54
58
70
90
77
89
55
43
53
57
69
89
76
88
54
42
52
56
68
88
75
87
53
41
51
55
67
87
74
86
52
51
50
49
48
47
46
45
44
43
42
41
40
50
54
66
86
73
74
75
76
77
78
79
80
81
82
83
84
85
39
49
53
65
85
72
38
48
52
64
84
71
37
47
51
63
83
70
36
46
50
62
82
69
35
45
49
61
81
68
34
44
48
60
80
67
33
43
47
59
79
66
32
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
65
31
33
69
64
30
32
68
63
29
31
67
62
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
30
66
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
41
27
29
65
62
50
40
26
28
64
63
51
39
25
27
63
64
52
38
24
26
62
65
53
37
23
25
61
66
54
36
22
24
60
67
55
35
21
23
59
68
56
34
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
73
72
71
70
69
57
33
10
23
59
71
58
32
9
24
60
72
59
31
8
25
61
73
60
30
7
26
62
74
61
29
6
27
63
75
62
28
5
28
64
76
63
27
4
29
65
77
64
26
3
30
66
78
65
25
2
31
67
79
66
24
1
32
68
80
67
23
0
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
63
64
65
66
67
68
69
70
71
72
73
74
75
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
117
116
82
66
62
74
86
115
81
65
61
73
85
114
80
64
60
72
84
113
79
63
59
71
83
112
78
62
58
70
82
111
77
61
57
69
81
110
76
60
56
68
80
109
75
59
55
67
79
108
74
58
54
66
78
107
73
57
53
65
77
106
72
56
52
64
76
105
71
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
58
57
56
55
54
53
52
51
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
104
70
58
46
50
62
82
91
103
69
57
45
49
61
81
90
102
68
56
44
48
60
80
89
101
67
55
43
47
59
79
88
100
66
54
42
46
58
78
87
99
65
53
41
45
57
77
86
98
64
52
40
44
56
76
85
97
63
62
61
60
59
58
57
56
55
54
53
52
51
39
43
55
75
84
85
86
87
88
89
90
91
92
93
94
95
96
50
38
42
54
74
83
49
37
41
53
73
82
48
36
40
52
72
81
47
35
39
51
71
80
46
34
38
50
70
79
45
33
37
49
69
78
44
32
36
48
68
77
43
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
76
42
22
58
75
41
21
57
74
40
20
56
73
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
19
55
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
52
38
18
54
73
61
53
37
17
53
73
62
54
36
16
52
72
63
55
35
15
51
71
64
56
34
14
50
70
65
57
33
13
49
69
66
58
32
12
48
68
67
59
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
60
23
10
48
60
69
61
24
9
49
61
70
62
25
8
50
62
71
63
26
7
51
63
72
62
27
6
52
64
73
61
28
5
53
65
74
60
29
4
54
66
75
59
30
3
55
67
76
58
31
2
56
68
77
57
32
1
57
69
78
56
33
0
116
117
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
75
74
73
72
71
70
69
68
67
66
65
64
63
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
115
86
74
62
66
82
114
85
73
61
65
81
113
84
72
60
64
80
112
83
71
59
63
79
111
82
70
58
62
78
110
81
69
57
61
77
109
80
68
56
60
76
108
79
67
55
59
75
107
78
66
54
58
74
106
77
65
53
57
73
105
76
64
52
56
72
104
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
51
52
53
54
55
56
57
58
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
71
103
91
82
62
50
46
58
70
102
90
81
61
49
45
57
69
101
89
80
60
48
44
56
68
100
88
79
59
47
43
55
67
99
87
78
58
46
42
54
66
98
86
77
57
45
41
53
65
97
85
76
56
44
40
52
64
96
95
94
93
92
91
90
89
88
87
86
85
84
75
55
43
39
51
52
53
54
55
56
57
58
59
60
61
62
63
83
74
54
42
38
50
82
73
53
41
37
49
81
72
52
40
36
48
80
71
51
39
35
47
79
70
50
38
34
46
78
69
49
37
33
45
77
68
48
36
32
44
76
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
43
75
58
22
42
74
57
21
41
73
56
20
40
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
55
19
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
61
73
54
18
38
52
62
73
53
17
37
53
63
72
52
16
36
54
64
71
51
15
35
55
65
70
50
14
34
56
66
69
49
13
33
57
67
68
48
12
32
58
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
59
69
59
48
10
24
60
70
60
49
9
25
61
71
61
50
8
26
62
72
62
51
7
27
63
73
63
52
6
28
62
74
64
53
5
29
61
75
65
54
4
30
60
76
66
55
3
31
59
77
67
56
2
32
58
78
68
57
1
33
57
79
69
58
0
104
105
106
107
108
109
110
111
112
113
114
115
116
117
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
87
86
85
84
83
82
81
80
79
78
77
76
75
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
103
98
86
74
78
70
102
97
85
73
77
69
101
96
84
72
76
68
100
95
83
71
75
67
99
94
82
70
74
66
98
93
81
69
73
65
97
92
80
68
72
64
96
91
79
67
71
63
95
90
78
66
70
62
94
89
77
65
69
61
93
88
76
64
68
60
92
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
63
64
65
66
67
68
69
70
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
59
91
79
93
74
62
58
46
58
90
78
93
73
61
57
45
57
89
77
92
72
60
56
44
56
88
76
91
71
59
55
43
55
87
75
90
70
58
54
42
54
86
74
89
69
57
53
41
53
85
73
88
68
56
52
40
52
84
83
82
81
80
79
78
77
76
75
74
73
72
87
67
55
51
39
40
41
42
43
44
45
46
47
48
49
50
51
71
86
66
54
50
38
70
85
65
53
49
37
69
84
64
52
48
36
68
83
63
51
47
35
67
82
62
50
46
34
66
81
61
49
45
33
65
80
60
48
44
32
64
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
31
63
70
34
30
62
69
33
29
61
68
32
28
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
67
31
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
49
61
66
30
26
40
50
62
65
29
25
39
51
63
64
28
24
38
52
64
63
27
23
37
53
65
62
26
22
36
54
66
61
25
21
35
55
67
60
24
20
34
56
68
69
70
71
72
73
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
33
57
71
60
24
10
32
58
72
61
25
9
31
59
73
62
26
8
30
60
74
63
27
7
29
61
75
64
28
6
28
62
76
65
29
5
27
63
77
66
30
4
26
64
78
67
31
3
25
65
79
68
32
2
24
66
80
69
33
1
23
67
81
70
34
0
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
104
105
105
104
103
102
101
100
99
98
97
96
95
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
83
91
103
94
82
74
82
90
102
93
81
73
81
89
101
92
80
72
80
88
100
91
79
71
79
87
99
90
78
70
78
86
98
89
77
69
77
85
97
88
76
68
76
84
96
87
75
67
75
83
95
86
74
66
74
82
94
85
73
65
73
81
93
84
72
64
72
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
63
71
59
73
93
84
64
50
62
70
58
74
94
83
65
49
61
69
57
75
94
82
66
48
60
68
56
76
93
81
67
47
59
67
55
77
92
80
68
46
58
66
54
78
91
79
69
45
57
65
53
79
90
78
70
44
56
64
63
62
61
60
59
58
57
56
55
54
53
52
80
89
77
71
43
44
45
46
47
48
49
50
51
52
53
54
55
51
81
88
76
72
42
50
82
87
75
71
41
49
83
86
74
70
40
48
84
85
73
69
39
47
85
84
72
68
38
46
86
83
71
67
37
45
87
82
70
66
36
44
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
35
43
79
56
34
42
78
55
33
41
77
54
32
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
76
53
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
29
41
75
52
32
18
30
42
74
51
33
17
31
43
73
50
34
16
32
44
72
49
35
15
33
45
71
48
36
14
34
46
70
47
37
13
35
47
69
46
38
12
36
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
39
11
37
58
69
46
32
10
38
59
70
47
31
9
39
60
71
48
30
8
40
61
72
49
29
7
41
62
73
50
28
6
42
63
74
51
27
5
43
64
75
52
26
4
44
65
76
53
25
3
45
66
77
54
24
2
46
67
78
55
23
1
47
68
79
56
22
0
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
96
97
98
99
100
101
102
103
104
105
106
106
105
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
75
83
95
104
92
84
74
82
94
103
91
83
73
81
93
102
90
82
72
80
92
101
89
81
71
79
91
100
88
80
70
78
90
99
87
79
69
77
89
98
86
78
68
76
88
97
85
77
67
75
87
96
84
76
66
74
86
95
83
75
65
73
85
94
82
74
64
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
73
63
51
65
83
94
74
60
72
62
50
66
82
94
75
59
71
61
49
67
81
93
76
58
70
60
48
68
80
92
77
57
69
59
47
69
79
91
78
56
68
58
46
70
78
90
79
55
67
57
45
71
77
89
80
54
66
56
55
54
53
52
51
50
49
48
47
46
45
44
72
76
88
81
53
54
55
56
57
58
59
60
61
62
63
64
65
43
71
75
87
82
52
42
70
74
86
83
51
41
69
73
85
84
50
40
68
72
84
85
49
39
67
71
83
86
48
38
66
70
82
87
47
37
65
69
81
88
46
36
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
82
83
84
85
86
87
88
89
45
35
55
80
44
34
54
79
43
33
53
78
42
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
52
77
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
19
33
51
76
42
30
18
34
50
75
43
31
17
35
49
74
44
32
16
36
48
73
45
33
15
37
47
72
46
34
14
38
46
71
47
35
13
39
45
70
48
36
12
40
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
37
11
32
45
70
58
38
10
31
46
71
59
39
9
30
47
72
60
40
8
29
48
73
61
41
7
28
49
74
62
42
6
27
50
75
63
43
5
26
51
76
64
44
4
25
52
77
65
45
3
24
53
78
66
46
2
23
54
79
67
47
1
22
55
80
68
48
0
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
95
96
97
98
99
100
101
102
103
104
105
106
106
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
76
84
94
105
93
85
75
83
93
104
92
84
74
82
92
103
91
83
73
81
91
102
90
82
72
80
90
101
89
81
71
79
89
100
88
80
70
78
88
99
87
79
69
77
87
98
86
78
68
76
86
97
85
77
67
75
85
96
84
76
66
74
84
95
83
75
65
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
74
64
52
66
82
94
75
61
73
63
51
67
81
93
76
60
72
62
50
68
80
92
77
59
71
61
49
69
79
91
78
58
70
60
48
70
78
90
79
57
69
59
47
71
77
89
80
56
68
58
46
72
76
88
81
55
67
57
56
55
54
53
52
51
50
49
48
47
46
45
71
75
87
82
54
55
56
57
58
59
60
61
62
63
64
65
66
44
70
74
86
83
53
43
69
73
85
84
52
42
68
72
84
85
51
41
67
71
83
86
50
40
66
70
82
87
49
39
65
69
81
88
48
38
64
68
80
89
47
37
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
83
84
85
86
87
88
89
90
46
36
54
81
45
35
53
80
44
34
52
79
43
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
51
78
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
20
34
50
77
43
31
19
35
49
76
44
32
18
36
48
75
45
33
17
37
47
74
46
34
16
38
46
73
47
35
15
39
45
72
48
36
14
40
44
71
49
37
13
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
38
12
31
44
71
59
39
11
30
45
72
60
40
10
29
46
73
61
41
9
28
47
74
62
42
8
27
48
75
63
43
7
26
49
76
64
44
6
25
50
77
65
45
5
24
51
78
66
46
4
23
52
79
67
47
3
22
53
80
68
48
2
21
54
81
69
49
1
0
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
94
95
96
97
98
99
100
101
102
103
104
105
106
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
77
85
93
105
94
86
76
84
92
104
93
85
75
83
91
103
92
84
74
82
90
102
91
83
73
81
89
101
90
82
72
80
88
100
89
81
71
79
87
99
88
80
70
78
86
98
87
79
69
77
85
97
86
78
68
76
84
96
85
77
67
75
83
95
84
76
66
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
75
65
53
67
81
93
76
62
74
64
52
68
80
92
77
61
73
63
51
69
79
91
78
60
72
62
50
70
78
90
79
59
71
61
49
71
77
89
80
58
70
60
48
72
76
88
81
57
69
59
47
71
75
87
82
56
68
58
57
56
55
54
53
52
51
50
49
48
47
46
70
74
86
83
55
56
57
58
59
60
61
62
63
64
65
66
67
45
69
73
85
84
54
44
68
72
84
85
53
43
67
71
83
86
52
42
66
70
82
87
51
41
65
69
81
88
50
40
64
68
80
89
49
39
63
67
79
90
48
38
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
84
85
86
87
88
89
90
91
47
37
53
82
46
36
52
81
45
35
51
80
44
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
50
79
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
21
35
49
78
44
32
20
36
48
77
45
33
19
37
47
76
46
34
18
38
46
75
47
35
17
39
45
74
48
36
16
40
44
73
49
37
15
41
43
72
50
38
14
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
39
13
30
43
72
60
40
12
29
44
73
61
41
11
28
45
74
62
42
10
27
46
75
63
43
9
26
47
76
64
44
8
25
48
77
65
45
7
24
49
78
66
46
6
23
50
79
67
47
5
22
51
80
68
48
4
21
52
81
69
49
3
20
53
82
70
50
2
1
0
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
93
94
95
96
97
98
99
100
101
102
103
104
105
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
78
86
92
104
95
87
77
85
91
103
94
86
76
84
90
102
93
85
75
83
89
101
92
84
74
82
88
100
91
83
73
81
87
99
90
82
72
80
86
98
89
81
71
79
85
97
88
80
70
78
84
96
87
79
69
77
83
95
86
78
68
76
82
94
85
77
67
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
76
66
54
68
80
92
77
63
75
65
53
69
79
91
78
62
74
64
52
70
78
90
79
61
73
63
51
71
77
89
80
60
72
62
50
72
76
88
81
59
71
61
49
71
75
87
82
58
70
60
48
70
74
86
83
57
69
59
58
57
56
55
54
53
52
51
50
49
48
47
69
73
85
84
56
57
58
59
60
61
62
63
64
65
66
67
68
46
68
72
84
85
55
45
67
71
83
86
54
44
66
70
82
87
53
43
65
69
81
88
52
42
64
68
80
89
51
41
63
67
79
90
50
40
62
66
78
91
49
39
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
85
86
87
88
89
90
91
92
48
38
52
83
47
37
51
82
46
36
50
81
45
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
49
80
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
22
36
48
79
45
33
21
37
47
78
46
34
20
38
46
77
47
35
19
39
45
76
48
36
18
40
44
75
49
37
17
41
43
74
50
38
16
40
42
73
51
39
15
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
40
14
29
42
73
61
41
13
28
43
74
62
42
12
27
44
75
63
43
11
26
45
76
64
44
10
25
46
77
65
45
9
24
47
78
66
46
8
23
48
79
67
47
7
22
49
80
68
48
6
21
50
81
69
49
5
20
51
82
70
50
4
19
52
83
71
51
3
2
1
0
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
92
93
94
95
96
97
98
99
100
101
102
103
104
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
79
87
91
103
96
88
78
86
90
102
95
87
77
85
89
101
94
86
76
84
88
100
93
85
75
83
87
99
92
84
74
82
86
98
91
83
73
81
85
97
90
82
72
80
84
96
89
81
71
79
83
95
88
80
70
78
82
94
87
79
69
77
81
93
86
78
68
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
77
67
55
69
79
91
78
64
76
66
54
70
78
90
79
63
75
65
53
71
77
89
80
62
74
64
52
72
76
88
81
61
73
63
51
71
75
87
82
60
72
62
50
70
74
86
83
59
71
61
49
69
73
85
84
58
70
60
59
58
57
56
55
54
53
52
51
50
49
48
68
72
84
85
57
58
59
60
61
62
63
64
65
66
67
68
69
47
67
71
83
86
56
46
66
70
82
87
55
45
65
69
81
88
54
44
64
68
80
89
53
43
63
67
79
90
52
42
62
66
78
91
51
41
61
65
77
92
50
40
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
86
87
88
89
90
91
92
93
49
39
51
84
48
38
50
83
47
37
49
82
46
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
48
81
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
23
37
47
80
46
34
22
38
46
79
47
35
21
39
45
78
48
36
20
40
44
77
49
37
19
41
43
76
50
38
18
40
42
75
51
39
17
39
41
74
52
40
16
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
41
15
28
41
74
62
42
14
27
42
75
63
43
13
26
43
76
64
44
12
25
44
77
65
45
11
24
45
78
66
46
10
23
46
79
67
47
9
22
47
80
68
48
8
21
48
81
69
49
7
20
49
82
70
50
6
19
50
83
71
51
5
18
51
84
72
52
4
3
2
1
0
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
91
92
93
94
95
96
97
98
99
100
101
102
103
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
80
88
90
102
97
89
79
87
89
101
96
88
78
86
88
100
95
87
77
85
87
99
94
86
76
84
86
98
93
85
75
83
85
97
92
84
74
82
84
96
91
83
73
81
83
95
90
82
72
80
82
94
89
81
71
79
81
93
88
80
70
78
80
92
87
79
69
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
78
68
56
70
78
90
79
65
77
67
55
71
77
89
80
64
76
66
54
72
76
88
81
63
75
65
53
71
75
87
82
62
74
64
52
70
74
86
83
61
73
63
51
69
73
85
84
60
72
62
50
68
72
84
85
59
71
61
60
59
58
57
56
55
54
53
52
51
50
49
67
71
83
86
58
59
60
61
62
63
64
65
66
67
68
69
70
48
66
70
82
87
57
47
65
69
81
88
56
46
64
68
80
89
55
45
63
67
79
90
54
44
62
66
78
91
53
43
61
65
77
92
52
42
60
64
76
93
51
41
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
87
88
89
90
91
92
93
94
50
40
50
85
49
39
49
84
48
38
48
83
47
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
47
82
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
24
38
46
81
47
35
23
39
45
80
48
36
22
40
44
79
49
37
21
41
43
78
50
38
20
40
42
77
51
39
19
39
41
76
52
40
18
38
40
75
53
41
17
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
42
16
27
40
75
63
43
15
26
41
76
64
44
14
25
42
77
65
45
13
24
43
78
66
46
12
23
44
79
67
47
11
22
45
80
68
48
10
21
46
81
69
49
9
20
47
82
70
50
8
19
48
83
71
51
7
18
49
84
72
52
6
17
50
85
73
53
5
4
3
2
1
0
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
90
91
92
93
94
95
96
97
98
99
100
101
102
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
81
89
89
101
98
90
80
88
88
100
97
89
79
87
87
99
96
88
78
86
86
98
95
87
77
85
85
97
94
86
76
84
84
96
93
85
75
83
83
95
92
84
74
82
82
94
91
83
73
81
81
93
90
82
72
80
80
92
89
81
71
79
79
91
88
80
70
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
79
69
57
71
77
89
80
66
78
68
56
72
76
88
81
65
77
67
55
71
75
87
82
64
76
66
54
70
74
86
83
63
75
65
53
69
73
85
84
62
74
64
52
68
72
84
85
61
73
63
51
67
71
83
86
60
72
62
61
60
59
58
57
56
55
54
53
52
51
50
66
70
82
87
59
60
61
62
63
64
65
66
67
68
69
70
71
49
65
69
81
88
58
48
64
68
80
89
57
47
63
67
79
90
56
46
62
66
78
91
55
45
61
65
77
92
54
44
60
64
76
93
53
43
59
63
75
94
52
42
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
51
41
49
85
50
40
48
84
49
39
47
83
48
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
46
82
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
25
39
45
81
48
36
24
40
44
80
49
37
23
41
43
79
50
38
22
40
42
78
51
39
21
39
41
77
52
40
20
38
40
76
53
41
19
37
39
75
54
42
18
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
43
17
26
39
75
64
44
16
25
40
76
65
45
15
24
41
77
66
46
14
23
42
78
67
47
13
22
43
79
68
48
12
21
44
80
69
49
11
20
45
81
70
50
10
19
46
82
71
51
9
18
47
83
72
52
8
17
48
84
73
53
7
16
49
85
74
54
6
5
4
3
2
1
0
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
89
90
91
92
93
94
95
96
97
98
99
100
101
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
82
90
88
100
99
91
81
89
87
99
98
90
80
88
86
98
97
89
79
87
85
97
96
88
78
86
84
96
95
87
77
85
83
95
94
86
76
84
82
94
93
85
75
83
81
93
92
84
74
82
80
92
91
83
73
81
79
91
90
82
72
80
78
90
89
81
71
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
80
70
58
72
76
88
81
67
79
69
57
71
75
87
82
66
78
68
56
70
74
86
83
65
77
67
55
69
73
85
84
64
76
66
54
68
72
84
85
63
75
65
53
67
71
83
86
62
74
64
52
66
70
82
87
61
73
63
62
61
60
59
58
57
56
55
54
53
52
51
65
69
81
88
60
61
62
63
64
65
66
67
68
69
70
71
72
50
64
68
80
89
59
49
63
67
79
90
58
48
62
66
78
91
57
47
61
65
77
92
56
46
60
64
76
93
55
45
59
63
75
94
54
44
58
62
74
94
53
43
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
52
42
48
84
51
41
47
83
50
40
46
82
49
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
45
81
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
26
40
44
80
49
37
25
41
43
79
50
38
24
40
42
78
51
39
23
39
41
77
52
40
22
38
40
76
53
41
21
37
39
75
54
42
20
36
38
74
55
43
19
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
44
18
25
38
74
65
45
17
24
39
75
66
46
16
23
40
76
67
47
15
22
41
77
68
48
14
21
42
78
69
49
13
20
43
79
70
50
12
19
44
80
71
51
11
18
45
81
72
52
10
17
46
82
73
53
9
16
47
83
74
54
8
15
48
84
75
55
7
6
5
4
3
2
1
0
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
83
91
87
99
100
92
82
90
86
98
99
91
81
89
85
97
98
90
80
88
84
96
97
89
79
87
83
95
96
88
78
86
82
94
95
87
77
85
81
93
94
86
76
84
80
92
93
85
75
83
79
91
92
84
74
82
78
90
91
83
73
81
77
89
90
82
72
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
81
71
59
71
75
87
82
68
80
70
58
70
74
86
83
67
79
69
57
69
73
85
84
66
78
68
56
68
72
84
85
65
77
67
55
67
71
83
86
64
76
66
54
66
70
82
87
63
75
65
53
65
69
81
88
62
74
64
63
62
61
60
59
58
57
56
55
54
53
52
64
68
80
89
61
62
63
64
65
66
67
68
69
70
71
72
73
51
63
67
79
90
60
50
62
66
78
91
59
49
61
65
77
92
58
48
60
64
76
93
57
47
59
63
75
94
56
46
58
62
74
94
55
45
57
61
73
93
54
44
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
53
43
47
83
52
42
46
82
51
41
45
81
50
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
44
80
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
27
41
43
79
50
38
26
40
42
78
51
39
25
39
41
77
52
40
24
38
40
76
53
41
23
37
39
75
54
42
22
36
38
74
55
43
21
35
37
73
56
44
20
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
45
19
24
37
73
66
46
18
23
38
74
67
47
17
22
39
75
68
48
16
21
40
76
69
49
15
20
41
77
70
50
14
19
42
78
71
51
13
18
43
79
72
52
12
17
44
80
73
53
11
16
45
81
74
54
10
15
46
82
75
55
9
14
47
83
76
56
8
7
6
5
4
3
2
1
0
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
91
87
88
89
90
91
92
93
94
95
96
97
98
99
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
84
90
86
98
101
93
83
89
85
97
100
92
82
88
84
96
99
91
81
87
83
95
98
90
80
86
82
94
97
89
79
85
81
93
96
88
78
84
80
92
95
87
77
83
79
91
94
86
76
82
78
90
93
85
75
81
77
89
92
84
74
80
76
88
91
83
73
61
62
63
64
65
66
67
68
69
70
71
72
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
82
72
60
70
74
86
83
69
81
71
59
69
73
85
84
68
80
70
58
68
72
84
85
67
79
69
57
67
71
83
86
66
78
68
56
66
70
82
87
65
77
67
55
65
69
81
88
64
76
66
54
64
68
80
89
63
75
65
64
63
62
61
60
59
58
57
56
55
54
53
63
67
79
90
62
63
64
65
66
67
68
69
70
71
72
73
74
52
62
66
78
91
61
51
61
65
77
92
60
50
60
64
76
93
59
49
59
63
75
94
58
48
58
62
74
94
57
47
57
61
73
93
56
46
56
60
72
92
55
45
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
54
44
46
82
53
43
45
81
52
42
44
80
51
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
43
79
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
28
40
42
78
51
39
27
39
41
77
52
40
26
38
40
76
53
41
25
37
39
75
54
42
24
36
38
74
55
43
23
35
37
73
56
44
22
34
36
72
57
45
21
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
46
20
23
36
72
67
47
19
22
37
73
68
48
18
21
38
74
69
49
17
20
39
75
70
50
16
19
40
76
71
51
15
18
41
77
72
52
14
17
42
78
73
53
13
16
43
79
74
54
12
15
44
80
75
55
11
14
45
81
76
56
10
13
46
82
77
57
9
8
7
6
5
4
3
2
1
0
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
90
86
87
88
89
90
91
92
93
94
95
96
97
98
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
83
89
85
97
102
94
82
88
84
96
101
93
81
87
83
95
100
92
80
86
82
94
99
91
79
85
81
93
98
90
78
84
80
92
97
89
77
83
79
91
96
88
76
82
78
90
95
87
75
81
77
89
94
86
74
80
76
88
93
85
73
79
75
87
92
84
72
60
61
62
63
64
65
66
67
68
69
70
71
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
83
71
59
69
73
85
84
70
82
70
58
68
72
84
85
69
81
69
57
67
71
83
86
68
80
68
56
66
70
82
87
67
79
67
55
65
69
81
88
66
78
66
54
64
68
80
89
65
77
65
53
63
67
79
90
64
76
64
63
62
61
60
59
58
57
56
55
54
53
52
62
66
78
91
63
64
65
66
67
68
69
70
71
72
73
74
75
51
61
65
77
92
62
50
60
64
76
93
61
49
59
63
75
94
60
48
58
62
74
94
59
47
57
61
73
93
58
46
56
60
72
92
57
45
55
59
71
91
56
44
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
55
43
45
81
54
42
44
80
53
41
43
79
52
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
40
42
78
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
29
39
41
77
52
40
28
38
40
76
53
41
27
37
39
75
54
42
26
36
38
74
55
43
25
35
37
73
56
44
24
34
36
72
57
45
23
33
35
71
58
46
22
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
47
21
22
35
71
68
48
20
21
36
72
69
49
19
20
37
73
70
50
18
19
38
74
71
51
17
18
39
75
72
52
16
17
40
76
73
53
15
16
41
77
74
54
14
15
42
78
75
55
13
14
43
79
76
56
12
13
44
80
77
57
11
12
45
81
78
58
10
9
8
7
6
5
4
3
2
1
0
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
89
85
86
87
88
89
90
91
92
93
94
95
96
97
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
82
88
84
96
103
95
81
87
83
95
102
94
80
86
82
94
101
93
79
85
81
93
100
92
78
84
80
92
99
91
77
83
79
91
98
90
76
82
78
90
97
89
75
81
77
89
96
88
74
80
76
88
95
87
73
79
75
87
94
86
72
78
74
86
93
85
71
59
60
61
62
63
64
65
66
67
68
69
70
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
84
70
58
68
72
84
85
71
83
69
57
67
71
83
86
70
82
68
56
66
70
82
87
69
81
67
55
65
69
81
88
68
80
66
54
64
68
80
89
67
79
65
53
63
67
79
90
66
78
64
52
62
66
78
91
65
77
63
62
61
60
59
58
57
56
55
54
53
52
51
61
65
77
92
64
65
66
67
68
69
70
71
72
73
74
75
76
50
60
64
76
93
63
49
59
63
75
94
62
48
58
62
74
94
61
47
57
61
73
93
60
46
56
60
72
92
59
45
55
59
71
91
58
44
54
58
70
90
57
43
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
56
42
44
80
55
41
43
79
54
40
42
78
53
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
40
39
41
77
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
30
38
40
76
53
41
29
37
39
75
54
42
28
36
38
74
55
43
27
35
37
73
56
44
26
34
36
72
57
45
25
33
35
71
58
46
24
32
34
70
59
47
23
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
48
22
21
34
70
69
49
21
20
35
71
70
50
20
19
36
72
71
51
19
18
37
73
72
52
18
17
38
74
73
53
17
16
39
75
74
54
16
15
40
76
75
55
15
14
41
77
76
56
14
13
42
78
77
57
13
12
43
79
78
58
12
11
44
80
79
59
11
10
9
8
7
6
5
4
3
2
1
0
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
88
84
85
86
87
88
89
90
91
92
93
94
95
96
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
81
87
83
95
104
96
80
86
82
94
103
95
79
85
81
93
102
94
78
84
80
92
101
93
77
83
79
91
100
92
76
82
78
90
99
91
75
81
77
89
98
90
74
80
76
88
97
89
73
79
75
87
96
88
72
78
74
86
95
87
71
77
73
85
94
86
70
58
59
60
61
62
63
64
65
66
67
68
69
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
85
69
57
67
71
83
86
72
84
68
56
66
70
82
87
71
83
67
55
65
69
81
88
70
82
66
54
64
68
80
89
69
81
65
53
63
67
79
90
68
80
64
52
62
66
78
91
67
79
63
51
61
65
77
92
66
78
62
61
60
59
58
57
56
55
54
53
52
51
50
60
64
76
93
65
66
67
68
69
70
71
72
73
74
75
76
77
49
59
63
75
94
64
48
58
62
74
94
63
47
57
61
73
93
62
46
56
60
72
92
61
45
55
59
71
91
60
44
54
58
70
90
59
43
53
57
69
89
58
42
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
57
41
43
79
56
40
42
78
55
39
41
77
54
36
35
34
33
32
33
34
35
36
37
38
39
40
41
40
39
38
40
76
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
31
37
39
75
54
42
30
36
38
74
55
43
29
35
37
73
56
44
28
34
36
72
57
45
27
33
35
71
58
46
26
32
34
70
59
47
25
31
33
69
60
48
24
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
49
23
20
33
69
70
50
22
19
34
70
71
51
21
18
35
71
72
52
20
17
36
72
73
53
19
16
37
73
74
54
18
15
38
74
75
55
17
14
39
75
76
56
16
13
40
76
77
57
15
12
41
77
78
58
14
11
42
78
79
59
13
10
43
79
80
60
12
11
10
9
8
7
6
5
4
3
2
1
0
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
87
83
84
85
86
87
88
89
90
91
92
93
94
95
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
80
86
82
94
105
97
79
85
81
93
104
96
78
84
80
92
103
95
77
83
79
91
102
94
76
82
78
90
101
93
75
81
77
89
100
92
74
80
76
88
99
91
73
79
75
87
98
90
72
78
74
86
97
89
71
77
73
85
96
88
70
76
72
84
95
87
69
57
58
59
60
61
62
63
64
65
66
67
68
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
86
68
56
66
70
82
87
73
85
67
55
65
69
81
88
72
84
66
54
64
68
80
89
71
83
65
53
63
67
79
90
70
82
64
52
62
66
78
91
69
81
63
51
61
65
77
92
68
80
62
50
60
64
76
93
67
79
61
60
59
58
57
56
55
54
53
52
51
50
49
59
63
75
94
66
67
68
69
70
71
72
73
74
75
76
77
78
48
58
62
74
94
65
47
57
61
73
93
64
46
56
60
72
92
63
45
55
59
71
91
62
44
54
58
70
90
61
43
53
57
69
89
60
42
52
56
68
88
59
41
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
58
40
42
78
57
39
41
77
56
38
40
76
55
37
36
35
34
33
34
35
36
37
38
39
40
41
40
39
38
37
39
75
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
32
36
38
74
55
43
31
35
37
73
56
44
30
34
36
72
57
45
29
33
35
71
58
46
28
32
34
70
59
47
27
31
33
69
60
48
26
30
32
68
61
49
25
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
50
24
19
32
68
71
51
23
18
33
69
72
52
22
17
34
70
73
53
21
16
35
71
74
54
20
15
36
72
75
55
19
14
37
73
76
56
18
13
38
74
77
57
17
12
39
75
78
58
16
11
40
76
79
59
15
10
41
77
80
60
14
9
42
78
81
61
13
12
11
10
9
8
7
6
5
4
3
2
1
0
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
86
82
83
84
85
86
87
88
89
90
91
92
93
94
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
79
85
81
93
105
98
78
84
80
92
104
97
77
83
79
91
103
96
76
82
78
90
102
95
75
81
77
89
101
94
74
80
76
88
100
93
73
79
75
87
99
92
72
78
74
86
98
91
71
77
73
85
97
90
70
76
72
84
96
89
69
75
71
83
95
88
68
56
57
58
59
60
61
62
63
64
65
66
67
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
87
67
55
65
69
81
88
74
86
66
54
64
68
80
89
73
85
65
53
63
67
79
90
72
84
64
52
62
66
78
91
71
83
63
51
61
65
77
92
70
82
62
50
60
64
76
93
69
81
61
49
59
63
75
94
68
80
60
59
58
57
56
55
54
53
52
51
50
49
48
58
62
74
94
67
68
69
70
71
72
73
74
75
76
77
78
79
47
57
61
73
93
66
46
56
60
72
92
65
45
55
59
71
91
64
44
54
58
70
90
63
43
53
57
69
89
62
42
52
56
68
88
61
41
51
55
67
87
60
40
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
59
39
41
77
58
38
40
76
57
37
39
75
56
38
37
36
35
34
35
36
37
38
39
40
41
40
39
38
37
36
38
74
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
33
35
37
73
56
44
32
34
36
72
57
45
31
33
35
71
58
46
30
32
34
70
59
47
29
31
33
69
60
48
28
30
32
68
61
49
27
29
31
67
62
50
26
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
51
25
18
31
67
72
52
24
17
32
68
73
53
23
16
33
69
74
54
22
15
34
70
75
55
21
14
35
71
76
56
20
13
36
72
77
57
19
12
37
73
78
58
18
11
38
74
79
59
17
10
39
75
80
60
16
9
40
76
81
61
15
8
41
77
82
62
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
81
82
83
84
85
86
87
88
89
90
91
92
93
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
78
84
80
92
104
99
77
83
79
91
103
98
76
82
78
90
102
97
75
81
77
89
101
96
74
80
76
88
100
95
73
79
75
87
99
94
72
78
74
86
98
93
71
77
73
85
97
92
70
76
72
84
96
91
69
75
71
83
95
90
68
74
70
82
94
89
67
55
56
57
58
59
60
61
62
63
64
65
66
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
88
66
54
64
68
80
89
75
87
65
53
63
67
79
90
74
86
64
52
62
66
78
91
73
85
63
51
61
65
77
92
72
84
62
50
60
64
76
93
71
83
61
49
59
63
75
94
70
82
60
48
58
62
74
94
69
81
59
58
57
56
55
54
53
52
51
50
49
48
47
57
61
73
93
68
69
70
71
72
73
74
75
76
77
78
79
80
46
56
60
72
92
67
45
55
59
71
91
66
44
54
58
70
90
65
43
53
57
69
89
64
42
52
56
68
88
63
41
51
55
67
87
62
40
50
54
66
86
61
39
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
60
38
40
76
59
37
39
75
58
36
38
74
57
39
38
37
36
35
36
37
38
39
40
41
40
39
38
37
36
35
37
73
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
34
34
36
72
57
45
33
33
35
71
58
46
32
32
34
70
59
47
31
31
33
69
60
48
30
30
32
68
61
49
29
29
31
67
62
50
28
28
30
66
63
51
27
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
52
26
17
30
66
73
53
25
16
31
67
74
54
24
15
32
68
75
55
23
14
33
69
76
56
22
13
34
70
77
57
21
12
35
71
78
58
20
11
36
72
79
59
19
10
37
73
80
60
18
9
38
74
81
61
17
8
39
75
82
62
16
7
40
76
83
63
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
84
80
81
82
83
84
85
86
87
88
89
90
91
92
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
77
83
79
91
103
100
76
82
78
90
102
99
75
81
77
89
101
98
74
80
76
88
100
97
73
79
75
87
99
96
72
78
74
86
98
95
71
77
73
85
97
94
70
76
72
84
96
93
69
75
71
83
95
92
68
74
70
82
94
91
67
73
69
81
93
90
66
54
55
56
57
58
59
60
61
62
63
64
65
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
89
65
53
63
67
79
90
76
88
64
52
62
66
78
91
75
87
63
51
61
65
77
92
74
86
62
50
60
64
76
93
73
85
61
49
59
63
75
94
72
84
60
48
58
62
74
94
71
83
59
47
57
61
73
93
70
82
58
57
56
55
54
53
52
51
50
49
48
47
46
56
60
72
92
69
70
71
72
73
74
75
76
77
78
79
80
81
45
55
59
71
91
68
44
54
58
70
90
67
43
53
57
69
89
66
42
52
56
68
88
65
41
51
55
67
87
64
40
50
54
66
86
63
39
49
53
65
85
62
38
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
61
37
39
75
60
36
38
74
59
35
37
73
58
40
39
38
37
36
37
38
39
40
41
40
39
38
37
36
35
34
36
72
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
35
33
35
71
58
46
34
32
34
70
59
47
33
31
33
69
60
48
32
30
32
68
61
49
31
29
31
67
62
50
30
28
30
66
63
51
29
27
29
65
64
52
28
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
53
27
16
29
65
74
54
26
15
30
66
75
55
25
14
31
67
76
56
24
13
32
68
77
57
23
12
33
69
78
58
22
11
34
70
79
59
21
10
35
71
80
60
20
9
36
72
81
61
19
8
37
73
82
62
18
7
38
74
83
63
17
6
39
75
84
64
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
79
80
81
82
83
84
85
86
87
88
89
90
91
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
76
82
78
90
102
101
75
81
77
89
101
100
74
80
76
88
100
99
73
79
75
87
99
98
72
78
74
86
98
97
71
77
73
85
97
96
70
76
72
84
96
95
69
75
71
83
95
94
68
74
70
82
94
93
67
73
69
81
93
92
66
72
68
80
92
91
65
53
54
55
56
57
58
59
60
61
62
63
64
63
64
65
66
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
90
64
52
62
66
78
91
77
89
63
51
61
65
77
92
76
88
62
50
60
64
76
93
75
87
61
49
59
63
75
94
74
86
60
48
58
62
74
94
73
85
59
47
57
61
73
93
72
84
58
46
56
60
72
92
71
83
57
56
55
54
53
52
51
50
49
48
47
46
45
55
59
71
91
70
71
72
73
74
75
76
77
78
79
80
81
82
44
54
58
70
90
69
43
53
57
69
89
68
42
52
56
68
88
67
41
51
55
67
87
66
40
50
54
66
86
65
39
49
53
65
85
64
38
48
52
64
84
63
37
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
62
36
38
74
61
35
37
73
60
34
36
72
59
41
40
39
38
37
38
39
40
41
40
39
38
37
36
35
34
33
35
71
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
36
32
34
70
59
47
35
31
33
69
60
48
34
30
32
68
61
49
33
29
31
67
62
50
32
28
30
66
63
51
31
27
29
65
64
52
30
26
28
64
65
53
29
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
54
28
15
28
64
75
55
27
14
29
65
76
56
26
13
30
66
77
57
25
12
31
67
78
58
24
11
32
68
79
59
23
10
33
69
80
60
22
9
34
70
81
61
21
8
35
71
82
62
20
7
36
72
83
63
19
6
37
73
84
64
18
5
38
74
85
65
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
82
78
79
80
81
82
83
84
85
86
87
88
89
90
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
75
81
77
89
101
102
74
80
76
88
100
101
73
79
75
87
99
100
72
78
74
86
98
99
71
77
73
85
97
98
70
76
72
84
96
97
69
75
71
83
95
96
68
74
70
82
94
95
67
73
69
81
93
94
66
72
68
80
92
93
65
71
67
79
91
92
64
52
53
54
55
56
57
58
59
60
61
62
63
62
63
64
65
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
91
63
51
61
65
77
92
78
90
62
50
60
64
76
93
77
89
61
49
59
63
75
94
76
88
60
48
58
62
74
94
75
87
59
47
57
61
73
93
74
86
58
46
56
60
72
92
73
85
57
45
55
59
71
91
72
84
56
55
54
53
52
51
50
49
48
47
46
45
44
54
58
70
90
71
72
73
74
75
76
77
78
79
80
81
82
83
43
53
57
69
89
70
42
52
56
68
88
69
41
51
55
67
87
68
40
50
54
66
86
67
39
49
53
65
85
66
38
48
52
64
84
65
37
47
51
63
83
64
36
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
63
35
37
73
62
34
36
72
61
33
35
71
60
42
41
40
39
38
39
40
41
40
39
38
37
36
35
34
33
32
34
70
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
37
31
33
69
60
48
36
30
32
68
61
49
35
29
31
67
62
50
34
28
30
66
63
51
33
27
29
65
64
52
32
26
28
64
65
53
31
25
27
63
66
54
30
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
55
29
14
27
63
75
56
28
13
28
64
76
57
27
12
29
65
77
58
26
11
30
66
78
59
25
10
31
67
79
60
24
9
32
68
80
61
23
8
33
69
81
62
22
7
34
70
82
63
21
6
35
71
83
64
20
5
36
72
84
65
19
4
37
73
85
66
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
81
77
78
79
80
81
82
83
84
85
86
87
88
89
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
74
80
76
88
100
103
73
79
75
87
99
102
72
78
74
86
98
101
71
77
73
85
97
100
70
76
72
84
96
99
69
75
71
83
95
98
68
74
70
82
94
97
67
73
69
81
93
96
66
72
68
80
92
95
65
71
67
79
91
94
64
70
66
78
90
93
63
51
52
53
54
55
56
57
58
59
60
61
62
61
62
63
64
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
92
62
50
60
64
76
93
79
91
61
49
59
63
75
94
78
90
60
48
58
62
74
94
77
89
59
47
57
61
73
93
76
88
58
46
56
60
72
92
75
87
57
45
55
59
71
91
74
86
56
44
54
58
70
90
73
85
55
54
53
52
51
50
49
48
47
46
45
44
43
53
57
69
89
72
73
74
75
76
77
78
79
80
81
82
83
84
42
52
56
68
88
71
41
51
55
67
87
70
40
50
54
66
86
69
39
49
53
65
85
68
38
48
52
64
84
67
37
47
51
63
83
66
36
46
50
62
82
65
35
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
64
34
36
72
63
33
35
71
62
32
34
70
61
43
42
41
40
39
40
41
40
39
38
37
36
35
34
33
32
31
33
69
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
38
30
32
68
61
49
37
29
31
67
62
50
36
28
30
66
63
51
35
27
29
65
64
52
34
26
28
64
65
53
33
25
27
63
66
54
32
24
26
62
67
55
31
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
56
30
13
26
62
74
57
29
12
27
63
75
58
28
11
28
64
76
59
27
10
29
65
77
60
26
9
30
66
78
61
25
8
31
67
79
62
24
7
32
68
80
63
23
6
33
69
81
64
22
5
34
70
82
65
21
4
35
71
83
66
20
3
36
72
84
67
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
80
76
77
78
79
80
81
82
83
84
85
86
87
88
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
73
79
75
87
99
104
72
78
74
86
98
103
71
77
73
85
97
102
70
76
72
84
96
101
69
75
71
83
95
100
68
74
70
82
94
99
67
73
69
81
93
98
66
72
68
80
92
97
65
71
67
79
91
96
64
70
66
78
90
95
63
69
65
77
89
94
62
50
51
52
53
54
55
56
57
58
59
60
61
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
93
61
49
59
63
75
94
80
92
60
48
58
62
74
94
79
91
59
47
57
61
73
93
78
90
58
46
56
60
72
92
77
89
57
45
55
59
71
91
76
88
56
44
54
58
70
90
75
87
55
43
53
57
69
89
74
86
54
53
52
51
50
49
48
47
46
45
44
43
42
52
56
68
88
73
74
75
76
77
78
79
80
81
82
83
84
85
41
51
55
67
87
72
40
50
54
66
86
71
39
49
53
65
85
70
38
48
52
64
84
69
37
47
51
63
83
68
36
46
50
62
82
67
35
45
49
61
81
66
34
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
65
33
35
71
64
32
34
70
63
31
33
69
62
44
43
42
41
40
41
40
39
38
37
36
35
34
33
32
31
30
32
68
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
39
29
31
67
62
50
38
28
30
66
63
51
37
27
29
65
64
52
36
26
28
64
65
53
35
25
27
63
66
54
34
24
26
62
67
55
33
23
25
61
68
56
32
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
57
31
12
25
61
73
58
30
11
26
62
74
59
29
10
27
63
75
60
28
9
28
64
76
61
27
8
29
65
77
62
26
7
30
66
78
63
25
6
31
67
79
64
24
5
32
68
80
65
23
4
33
69
81
66
22
3
34
70
82
67
21
2
35
71
83
68
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
79
75
76
77
78
79
80
81
82
83
84
85
86
87
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
72
78
74
86
98
105
71
77
73
85
97
104
70
76
72
84
96
103
69
75
71
83
95
102
68
74
70
82
94
101
67
73
69
81
93
100
66
72
68
80
92
99
65
71
67
79
91
98
64
70
66
78
90
97
63
69
65
77
89
96
62
68
64
76
88
95
61
49
50
51
52
53
54
55
56
57
58
59
60
59
60
61
62
63
64
65
66
67
68
69
70
71
70
69
68
67
66
65
64
63
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
94
60
48
58
62
74
94
81
93
59
47
57
61
73
93
80
92
58
46
56
60
72
92
79
91
57
45
55
59
71
91
78
90
56
44
54
58
70
90
77
89
55
43
53
57
69
89
76
88
54
42
52
56
68
88
75
87
53
52
51
50
49
48
47
46
45
44
43
42
41
51
55
67
87
74
75
76
77
78
79
80
81
82
83
84
85
86
40
50
54
66
86
73
39
49
53
65
85
72
38
48
52
64
84
71
37
47
51
63
83
70
36
46
50
62
82
69
35
45
49
61
81
68
34
44
48
60
80
67
33
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
66
32
34
70
65
31
33
69
64
30
32
68
63
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
31
67
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
40
28
30
66
63
51
39
27
29
65
64
52
38
26
28
64
65
53
37
25
27
63
66
54
36
24
26
62
67
55
35
23
25
61
68
56
34
22
24
60
69
57
33
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
58
32
11
24
60
72
59
31
10
25
61
73
60
30
9
26
62
74
61
29
8
27
63
75
62
28
7
28
64
76
63
27
6
29
65
77
64
26
5
30
66
78
65
25
4
31
67
79
66
24
3
32
68
80
67
23
2
33
69
81
68
22
1
34
70
82
69
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
64
65
66
67
68
69
70
71
72
73
74
75
76
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
83
67
63
75
87
116
82
66
62
74
86
115
81
65
61
73
85
114
80
64
60
72
84
113
79
63
59
71
83
112
78
62
58
70
82
111
77
61
57
69
81
110
76
60
56
68
80
109
75
59
55
67
79
108
74
58
54
66
78
107
73
57
53
65
77
106
72
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
105
71
59
47
51
63
83
92
104
70
58
46
50
62
82
91
103
69
57
45
49
61
81
90
102
68
56
44
48
60
80
89
101
67
55
43
47
59
79
88
100
66
54
42
46
58
78
87
99
65
53
41
45
57
77
86
98
64
63
62
61
60
59
58
57
56
55
54
53
52
40
44
56
76
85
86
87
88
89
90
91
92
93
94
95
96
97
51
39
43
55
75
84
50
38
42
54
74
83
49
37
41
53
73
82
48
36
40
52
72
81
47
35
39
51
71
80
46
34
38
50
70
79
45
33
37
49
69
78
44
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
77
43
23
59
76
42
22
58
75
41
21
57
74
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
20
56
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
53
39
19
55
74
62
54
38
18
54
74
63
55
37
17
53
73
64
56
36
16
52
72
65
57
35
15
51
71
66
58
34
14
50
70
67
59
33
13
49
69
68
60
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
61
24
11
49
61
70
62
25
10
50
62
71
63
26
9
51
63
72
64
27
8
52
64
73
63
28
7
53
65
74
62
29
6
54
66
75
61
30
5
55
67
76
60
31
4
56
68
77
59
32
3
57
69
78
58
33
2
58
70
79
57
34
1
59
71
80
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
0
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
76
75
74
73
72
71
70
69
68
67
66
65
64
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
116
87
75
63
67
83
115
86
74
62
66
82
114
85
73
61
65
81
113
84
72
60
64
80
112
83
71
59
63
79
111
82
70
58
62
78
110
81
69
57
61
77
109
80
68
56
60
76
108
79
67
55
59
75
107
78
66
54
58
74
106
77
65
53
57
73
105
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
72
104
92
83
63
51
47
59
71
103
91
82
62
50
46
58
70
102
90
81
61
49
45
57
69
101
89
80
60
48
44
56
68
100
88
79
59
47
43
55
67
99
87
78
58
46
42
54
66
98
86
77
57
45
41
53
65
97
96
95
94
93
92
91
90
89
88
87
86
85
76
56
44
40
52
53
54
55
56
57
58
59
60
61
62
63
64
84
75
55
43
39
51
83
74
54
42
38
50
82
73
53
41
37
49
81
72
52
40
36
48
80
71
51
39
35
47
79
70
50
38
34
46
78
69
49
37
33
45
77
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
44
76
59
23
43
75
58
22
42
74
57
21
41
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
56
20
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
62
74
55
19
39
53
63
74
54
18
38
54
64
73
53
17
37
55
65
72
52
16
36
56
66
71
51
15
35
57
67
70
50
14
34
58
68
69
49
13
33
59
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
60
70
60
49
11
25
61
71
61
50
10
26
62
72
62
51
9
27
63
73
63
52
8
28
64
74
64
53
7
29
63
75
65
54
6
30
62
76
66
55
5
31
61
77
67
56
4
32
60
78
68
57
3
33
59
79
69
58
2
34
58
80
70
59
1
35
57
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
60
0
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
88
87
86
85
84
83
82
81
80
79
78
77
76
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
104
99
87
75
79
71
103
98
86
74
78
70
102
97
85
73
77
69
101
96
84
72
76
68
100
95
83
71
75
67
99
94
82
70
74
66
98
93
81
69
73
65
97
92
80
68
72
64
96
91
79
67
71
63
95
90
78
66
70
62
94
89
77
65
69
61
93
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
60
92
80
94
75
63
59
47
59
91
79
94
74
62
58
46
58
90
78
93
73
61
57
45
57
89
77
92
72
60
56
44
56
88
76
91
71
59
55
43
55
87
75
90
70
58
54
42
54
86
74
89
69
57
53
41
53
85
84
83
82
81
80
79
78
77
76
75
74
73
88
68
56
52
40
41
42
43
44
45
46
47
48
49
50
51
52
72
87
67
55
51
39
71
86
66
54
50
38
70
85
65
53
49
37
69
84
64
52
48
36
68
83
63
51
47
35
67
82
62
50
46
34
66
81
61
49
45
33
65
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
32
64
71
35
31
63
70
34
30
62
69
33
29
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
68
32
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
50
62
67
31
27
39
51
63
66
30
26
38
52
64
65
29
25
37
53
65
64
28
24
36
54
66
63
27
23
35
55
67
62
26
22
34
56
68
61
25
21
33
57
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
32
58
72
61
25
11
31
59
73
62
26
10
30
60
74
63
27
9
29
61
75
64
28
8
28
62
76
65
29
7
27
63
77
66
30
6
26
64
78
67
31
5
25
65
79
68
32
4
24
66
80
69
33
3
23
67
81
70
34
2
22
68
82
71
35
1
21
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
72
36
0
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
89
88
87
86
85
84
83
82
81
80
79
78
77
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
103
100
88
76
80
72
102
99
87
75
79
71
101
98
86
74
78
70
100
97
85
73
77
69
99
96
84
72
76
68
98
95
83
71
75
67
97
94
82
70
74
66
96
93
81
69
73
65
95
92
80
68
72
64
94
91
79
67
71
63
93
90
78
66
70
62
92
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
61
91
79
93
76
64
60
48
60
90
78
94
75
63
59
47
59
89
77
94
74
62
58
46
58
88
76
93
73
61
57
45
57
87
75
92
72
60
56
44
56
86
74
91
71
59
55
43
55
85
73
90
70
58
54
42
54
84
83
82
81
80
79
78
77
76
75
74
73
72
89
69
57
53
41
42
43
44
45
46
47
48
49
50
51
52
53
71
88
68
56
52
40
70
87
67
55
51
39
69
86
66
54
50
38
68
85
65
53
49
37
67
84
64
52
48
36
66
83
63
51
47
35
65
82
62
50
46
34
64
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
33
63
72
36
32
62
71
35
31
61
70
34
30
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
69
33
29
30
31
32
33
34
35
36
37
38
39
40
39
40
41
42
43
49
61
68
32
28
38
50
62
67
31
27
37
51
63
66
30
26
36
52
64
65
29
25
35
53
65
64
28
24
34
54
66
63
27
23
33
55
67
62
26
22
32
56
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
31
57
73
62
26
12
30
58
74
63
27
11
29
59
75
64
28
10
28
60
76
65
29
9
27
61
77
66
30
8
26
62
78
67
31
7
25
63
79
68
32
6
24
64
80
69
33
5
23
65
81
70
34
4
22
66
82
71
35
3
21
67
83
72
36
2
20
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
73
37
1
0
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
90
89
88
87
86
85
84
83
82
81
80
79
78
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
102
101
89
77
81
73
101
100
88
76
80
72
100
99
87
75
79
71
99
98
86
74
78
70
98
97
85
73
77
69
97
96
84
72
76
68
96
95
83
71
75
67
95
94
82
70
74
66
94
93
81
69
73
65
93
92
80
68
72
64
92
91
79
67
71
63
91
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
62
90
78
92
77
65
61
49
61
89
77
93
76
64
60
48
60
88
76
94
75
63
59
47
59
87
75
94
74
62
58
46
58
86
74
93
73
61
57
45
57
85
73
92
72
60
56
44
56
84
72
91
71
59
55
43
55
83
82
81
80
79
78
77
76
75
74
73
72
71
90
70
58
54
42
43
44
45
46
47
48
49
50
51
52
53
54
70
89
69
57
53
41
69
88
68
56
52
40
68
87
67
55
51
39
67
86
66
54
50
38
66
85
65
53
49
37
65
84
64
52
48
36
64
83
63
51
47
35
63
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
34
62
73
37
33
61
72
36
32
60
71
35
31
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
70
34
30
31
32
33
34
35
36
37
38
39
40
39
38
39
40
41
42
48
60
69
33
29
37
49
61
68
32
28
36
50
62
67
31
27
35
51
63
66
30
26
34
52
64
65
29
25
33
53
65
64
28
24
32
54
66
63
27
23
31
55
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
30
56
74
63
27
13
29
57
75
64
28
12
28
58
76
65
29
11
27
59
77
66
30
10
26
60
78
67
31
9
25
61
79
68
32
8
24
62
80
69
33
7
23
63
81
70
34
6
22
64
82
71
35
5
21
65
83
72
36
4
20
66
84
73
37
3
19
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
74
38
2
1
0
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
91
90
89
88
87
86
85
84
83
82
81
80
79
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
101
102
90
78
82
74
100
101
89
77
81
73
99
100
88
76
80
72
98
99
87
75
79
71
97
98
86
74
78
70
96
97
85
73
77
69
95
96
84
72
76
68
94
95
83
71
75
67
93
94
82
70
74
66
92
93
81
69
73
65
91
92
80
68
72
64
90
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
63
89
77
91
78
66
62
50
62
88
76
92
77
65
61
49
61
87
75
93
76
64
60
48
60
86
74
94
75
63
59
47
59
85
73
94
74
62
58
46
58
84
72
93
73
61
57
45
57
83
71
92
72
60
56
44
56
82
81
80
79
78
77
76
75
74
73
72
71
70
91
71
59
55
43
44
45
46
47
48
49
50
51
52
53
54
55
69
90
70
58
54
42
68
89
69
57
53
41
67
88
68
56
52
40
66
87
67
55
51
39
65
86
66
54
50
38
64
85
65
53
49
37
63
84
64
52
48
36
62
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
35
61
74
38
34
60
73
37
33
59
72
36
32
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
71
35
31
32
33
34
35
36
37
38
39
40
39
38
37
38
39
40
41
47
59
70
34
30
36
48
60
69
33
29
35
49
61
68
32
28
34
50
62
67
31
27
33
51
63
66
30
26
32
52
64
65
29
25
31
53
65
64
28
24
30
54
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
29
55
75
64
28
14
28
56
76
65
29
13
27
57
77
66
30
12
26
58
78
67
31
11
25
59
79
68
32
10
24
60
80
69
33
9
23
61
81
70
34
8
22
62
82
71
35
7
21
63
83
72
36
6
20
64
84
73
37
5
19
65
85
74
38
4
18
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
75
39
3
2
1
0
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
92
91
90
89
88
87
86
85
84
83
82
81
80
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
100
103
91
79
83
75
99
102
90
78
82
74
98
101
89
77
81
73
97
100
88
76
80
72
96
99
87
75
79
71
95
98
86
74
78
70
94
97
85
73
77
69
93
96
84
72
76
68
92
95
83
71
75
67
91
94
82
70
74
66
90
93
81
69
73
65
89
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
64
88
76
90
79
67
63
51
63
87
75
91
78
66
62
50
62
86
74
92
77
65
61
49
61
85
73
93
76
64
60
48
60
84
72
94
75
63
59
47
59
83
71
94
74
62
58
46
58
82
70
93
73
61
57
45
57
81
80
79
78
77
76
75
74
73
72
71
70
69
92
72
60
56
44
45
46
47
48
49
50
51
52
53
54
55
56
68
91
71
59
55
43
67
90
70
58
54
42
66
89
69
57
53
41
65
88
68
56
52
40
64
87
67
55
51
39
63
86
66
54
50
38
62
85
65
53
49
37
61
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
36
60
75
39
35
59
74
38
34
58
73
37
33
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
72
36
32
33
34
35
36
37
38
39
40
39
38
37
36
37
38
39
40
46
58
71
35
31
35
47
59
70
34
30
34
48
60
69
33
29
33
49
61
68
32
28
32
50
62
67
31
27
31
51
63
66
30
26
30
52
64
65
29
25
29
53
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
28
54
75
65
29
15
27
55
76
66
30
14
26
56
77
67
31
13
25
57
78
68
32
12
24
58
79
69
33
11
23
59
80
70
34
10
22
60
81
71
35
9
21
61
82
72
36
8
20
62
83
73
37
7
19
63
84
74
38
6
18
64
85
75
39
5
17
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
76
40
4
3
2
1
0
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
93
92
91
90
89
88
87
86
85
84
83
82
81
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
99
104
92
80
84
76
98
103
91
79
83
75
97
102
90
78
82
74
96
101
89
77
81
73
95
100
88
76
80
72
94
99
87
75
79
71
93
98
86
74
78
70
92
97
85
73
77
69
91
96
84
72
76
68
90
95
83
71
75
67
89
94
82
70
74
66
88
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
65
87
75
89
80
68
64
52
64
86
74
90
79
67
63
51
63
85
73
91
78
66
62
50
62
84
72
92
77
65
61
49
61
83
71
93
76
64
60
48
60
82
70
94
75
63
59
47
59
81
69
94
74
62
58
46
58
80
79
78
77
76
75
74
73
72
71
70
69
68
93
73
61
57
45
46
47
48
49
50
51
52
53
54
55
56
57
67
92
72
60
56
44
66
91
71
59
55
43
65
90
70
58
54
42
64
89
69
57
53
41
63
88
68
56
52
40
62
87
67
55
51
39
61
86
66
54
50
38
60
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
37
59
76
40
36
58
75
39
35
57
74
38
34
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
73
37
33
34
35
36
37
38
39
40
39
38
37
36
35
36
37
38
39
45
57
72
36
32
34
46
58
71
35
31
33
47
59
70
34
30
32
48
60
69
33
29
31
49
61
68
32
28
30
50
62
67
31
27
29
51
63
66
30
26
28
52
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
27
53
74
66
30
16
26
54
75
67
31
15
25
55
76
68
32
14
24
56
77
69
33
13
23
57
78
70
34
12
22
58
79
71
35
11
21
59
80
72
36
10
20
60
81
73
37
9
19
61
82
74
38
8
18
62
83
75
39
7
17
63
84
76
40
6
16
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
77
41
5
4
3
2
1
0
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
94
93
92
91
90
89
88
87
86
85
84
83
82
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
98
105
93
81
85
77
97
104
92
80
84
76
96
103
91
79
83
75
95
102
90
78
82
74
94
101
89
77
81
73
93
100
88
76
80
72
92
99
87
75
79
71
91
98
86
74
78
70
90
97
85
73
77
69
89
96
84
72
76
68
88
95
83
71
75
67
87
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
66
86
74
88
81
69
65
53
65
85
73
89
80
68
64
52
64
84
72
90
79
67
63
51
63
83
71
91
78
66
62
50
62
82
70
92
77
65
61
49
61
81
69
93
76
64
60
48
60
80
68
94
75
63
59
47
59
79
78
77
76
75
74
73
72
71
70
69
68
67
94
74
62
58
46
47
48
49
50
51
52
53
54
55
56
57
58
66
93
73
61
57
45
65
92
72
60
56
44
64
91
71
59
55
43
63
90
70
58
54
42
62
89
69
57
53
41
61
88
68
56
52
40
60
87
67
55
51
39
59
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
38
58
77
41
37
57
76
40
36
56
75
39
35
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
74
38
34
35
36
37
38
39
40
39
38
37
36
35
34
35
36
37
38
44
56
73
37
33
33
45
57
72
36
32
32
46
58
71
35
31
31
47
59
70
34
30
30
48
60
69
33
29
29
49
61
68
32
28
28
50
62
67
31
27
27
51
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
26
52
73
67
31
17
25
53
74
68
32
16
24
54
75
69
33
15
23
55
76
70
34
14
22
56
77
71
35
13
21
57
78
72
36
12
20
58
79
73
37
11
19
59
80
74
38
10
18
60
81
75
39
9
17
61
82
76
40
8
16
62
83
77
41
7
15
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
78
42
6
5
4
3
2
1
0
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
95
94
93
92
91
90
89
88
87
86
85
84
83
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
97
105
94
82
86
78
96
104
93
81
85
77
95
103
92
80
84
76
94
102
91
79
83
75
93
101
90
78
82
74
92
100
89
77
81
73
91
99
88
76
80
72
90
98
87
75
79
71
89
97
86
74
78
70
88
96
85
73
77
69
87
95
84
72
76
68
86
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
67
85
73
87
82
70
66
54
66
84
72
88
81
69
65
53
65
83
71
89
80
68
64
52
64
82
70
90
79
67
63
51
63
81
69
91
78
66
62
50
62
80
68
92
77
65
61
49
61
79
67
93
76
64
60
48
60
78
77
76
75
74
73
72
71
70
69
68
67
66
94
75
63
59
47
48
49
50
51
52
53
54
55
56
57
58
59
65
94
74
62
58
46
64
93
73
61
57
45
63
92
72
60
56
44
62
91
71
59
55
43
61
90
70
58
54
42
60
89
69
57
53
41
59
88
68
56
52
40
58
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
39
57
78
42
38
56
77
41
37
55
76
40
36
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
75
39
35
36
37
38
39
40
39
38
37
36
35
34
33
34
35
36
37
43
55
74
38
34
32
44
56
73
37
33
31
45
57
72
36
32
30
46
58
71
35
31
29
47
59
70
34
30
28
48
60
69
33
29
27
49
61
68
32
28
26
50
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
25
51
72
68
32
18
24
52
73
69
33
17
23
53
74
70
34
16
22
54
75
71
35
15
21
55
76
72
36
14
20
56
77
73
37
13
19
57
78
74
38
12
18
58
79
75
39
11
17
59
80
76
40
10
16
60
81
77
41
9
15
61
82
78
42
8
14
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
79
43
7
6
5
4
3
2
1
0
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
96
95
94
93
92
91
90
89
88
87
86
85
84
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
96
104
95
83
87
79
95
103
94
82
86
78
94
102
93
81
85
77
93
101
92
80
84
76
92
100
91
79
83
75
91
99
90
78
82
74
90
98
89
77
81
73
89
97
88
76
80
72
88
96
87
75
79
71
87
95
86
74
78
70
86
94
85
73
77
69
85
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
68
84
72
86
83
71
67
55
67
83
71
87
82
70
66
54
66
82
70
88
81
69
65
53
65
81
69
89
80
68
64
52
64
80
68
90
79
67
63
51
63
79
67
91
78
66
62
50
62
78
66
92
77
65
61
49
61
77
76
75
74
73
72
71
70
69
68
67
66
65
93
76
64
60
48
49
50
51
52
53
54
55
56
57
58
59
60
64
94
75
63
59
47
63
94
74
62
58
46
62
93
73
61
57
45
61
92
72
60
56
44
60
91
71
59
55
43
59
90
70
58
54
42
58
89
69
57
53
41
57
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
40
56
79
43
39
55
78
42
38
54
77
41
37
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
76
40
36
37
38
39
40
39
38
37
36
35
34
33
32
33
34
35
36
42
54
75
39
35
31
43
55
74
38
34
30
44
56
73
37
33
29
45
57
72
36
32
28
46
58
71
35
31
27
47
59
70
34
30
26
48
60
69
33
29
25
49
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
24
50
71
69
33
19
23
51
72
70
34
18
22
52
73
71
35
17
21
53
74
72
36
16
20
54
75
73
37
15
19
55
76
74
38
14
18
56
77
75
39
13
17
57
78
76
40
12
16
58
79
77
41
11
15
59
80
78
42
10
14
60
81
79
43
9
13
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
80
44
8
7
6
5
4
3
2
1
0
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
97
96
95
94
93
92
91
90
89
88
87
86
85
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
95
103
96
84
88
80
94
102
95
83
87
79
93
101
94
82
86
78
92
100
93
81
85
77
91
99
92
80
84
76
90
98
91
79
83
75
89
97
90
78
82
74
88
96
89
77
81
73
87
95
88
76
80
72
86
94
87
75
79
71
85
93
86
74
78
70
84
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
69
83
71
85
84
72
68
56
68
82
70
86
83
71
67
55
67
81
69
87
82
70
66
54
66
80
68
88
81
69
65
53
65
79
67
89
80
68
64
52
64
78
66
90
79
67
63
51
63
77
65
91
78
66
62
50
62
76
75
74
73
72
71
70
69
68
67
66
65
64
92
77
65
61
49
50
51
52
53
54
55
56
57
58
59
60
61
63
93
76
64
60
48
62
94
75
63
59
47
61
94
74
62
58
46
60
93
73
61
57
45
59
92
72
60
56
44
58
91
71
59
55
43
57
90
70
58
54
42
56
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
41
55
80
44
40
54
79
43
39
53
78
42
38
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
77
41
37
38
39
40
39
38
37
36
35
34
33
32
31
32
33
34
35
41
53
76
40
36
30
42
54
75
39
35
29
43
55
74
38
34
28
44
56
73
37
33
27
45
57
72
36
32
26
46
58
71
35
31
25
47
59
70
34
30
24
48
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
23
49
70
70
34
20
22
50
71
71
35
19
21
51
72
72
36
18
20
52
73
73
37
17
19
53
74
74
38
16
18
54
75
75
39
15
17
55
76
76
40
14
16
56
77
77
41
13
15
57
78
78
42
12
14
58
79
79
43
11
13
59
80
80
44
10
12
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
81
45
9
8
7
6
5
4
3
2
1
0
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
98
97
96
95
94
93
92
91
90
89
88
87
86
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
94
102
97
85
89
81
93
101
96
84
88
80
92
100
95
83
87
79
91
99
94
82
86
78
90
98
93
81
85
77
89
97
92
80
84
76
88
96
91
79
83
75
87
95
90
78
82
74
86
94
89
77
81
73
85
93
88
76
80
72
84
92
87
75
79
71
83
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
70
82
70
84
85
73
69
57
69
81
69
85
84
72
68
56
68
80
68
86
83
71
67
55
67
79
67
87
82
70
66
54
66
78
66
88
81
69
65
53
65
77
65
89
80
68
64
52
64
76
64
90
79
67
63
51
63
75
74
73
72
71
70
69
68
67
66
65
64
63
91
78
66
62
50
51
52
53
54
55
56
57
58
59
60
61
62
62
92
77
65
61
49
61
93
76
64
60
48
60
94
75
63
59
47
59
94
74
62
58
46
58
93
73
61
57
45
57
92
72
60
56
44
56
91
71
59
55
43
55
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
42
54
81
45
41
53
80
44
40
52
79
43
39
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
78
42
38
39
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
40
52
77
41
37
29
41
53
76
40
36
28
42
54
75
39
35
27
43
55
74
38
34
26
44
56
73
37
33
25
45
57
72
36
32
24
46
58
71
35
31
23
47
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
22
48
69
71
35
21
21
49
70
72
36
20
20
50
71
73
37
19
19
51
72
74
38
18
18
52
73
75
39
17
17
53
74
76
40
16
16
54
75
77
41
15
15
55
76
78
42
14
14
56
77
79
43
13
13
57
78
80
44
12
12
58
79
81
45
11
11
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
82
46
10
9
8
7
6
5
4
3
2
1
0
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
99
98
97
96
95
94
93
92
91
90
89
88
87
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
93
101
98
86
90
82
92
100
97
85
89
81
91
99
96
84
88
80
90
98
95
83
87
79
89
97
94
82
86
78
88
96
93
81
85
77
87
95
92
80
84
76
86
94
91
79
83
75
85
93
90
78
82
74
84
92
89
77
81
73
83
91
88
76
80
72
82
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
71
81
69
83
86
74
70
58
70
80
68
84
85
73
69
57
69
79
67
85
84
72
68
56
68
78
66
86
83
71
67
55
67
77
65
87
82
70
66
54
66
76
64
88
81
69
65
53
65
75
63
89
80
68
64
52
64
74
73
72
71
70
69
68
67
66
65
64
63
62
90
79
67
63
51
52
53
54
55
56
57
58
59
60
61
62
63
61
91
78
66
62
50
60
92
77
65
61
49
59
93
76
64
60
48
58
94
75
63
59
47
57
94
74
62
58
46
56
93
73
61
57
45
55
92
72
60
56
44
54
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
43
53
82
46
42
52
81
45
41
51
80
44
40
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
79
43
39
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
39
51
78
42
38
28
40
52
77
41
37
27
41
53
76
40
36
26
42
54
75
39
35
25
43
55
74
38
34
24
44
56
73
37
33
23
45
57
72
36
32
22
46
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
21
47
68
72
36
22
20
48
69
73
37
21
19
49
70
74
38
20
18
50
71
75
39
19
17
51
72
76
40
18
16
52
73
77
41
17
15
53
74
78
42
16
14
54
75
79
43
15
13
55
76
80
44
14
12
56
77
81
45
13
11
57
78
82
46
12
10
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
83
47
11
10
9
8
7
6
5
4
3
2
1
0
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
92
100
99
87
91
83
91
99
98
86
90
82
90
98
97
85
89
81
89
97
96
84
88
80
88
96
95
83
87
79
87
95
94
82
86
78
86
94
93
81
85
77
85
93
92
80
84
76
84
92
91
79
83
75
83
91
90
78
82
74
82
90
89
77
81
73
81
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
72
80
68
82
87
75
71
59
71
79
67
83
86
74
70
58
70
78
66
84
85
73
69
57
69
77
65
85
84
72
68
56
68
76
64
86
83
71
67
55
67
75
63
87
82
70
66
54
66
74
62
88
81
69
65
53
65
73
72
71
70
69
68
67
66
65
64
63
62
61
89
80
68
64
52
53
54
55
56
57
58
59
60
61
62
63
64
60
90
79
67
63
51
59
91
78
66
62
50
58
92
77
65
61
49
57
93
76
64
60
48
56
94
75
63
59
47
55
94
74
62
58
46
54
93
73
61
57
45
53
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
44
52
83
47
43
51
82
46
42
50
81
45
41
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
80
44
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
38
50
79
43
39
27
39
51
78
42
38
26
40
52
77
41
37
25
41
53
76
40
36
24
42
54
75
39
35
23
43
55
74
38
34
22
44
56
73
37
33
21
45
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
20
46
67
73
37
23
19
47
68
74
38
22
18
48
69
75
39
21
17
49
70
76
40
20
16
50
71
77
41
19
15
51
72
78
42
18
14
52
73
79
43
17
13
53
74
80
44
16
12
54
75
81
45
15
11
55
76
82
46
14
10
56
77
83
47
13
9
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
84
48
12
11
10
9
8
7
6
5
4
3
2
1
0
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
101
100
99
98
97
96
95
94
93
92
91
90
89
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
91
99
100
88
90
82
90
98
99
87
89
81
89
97
98
86
88
80
88
96
97
85
87
79
87
95
96
84
86
78
86
94
95
83
85
77
85
93
94
82
84
76
84
92
93
81
83
75
83
91
92
80
82
74
82
90
91
79
81
73
81
89
90
78
80
72
80
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
71
79
67
81
88
76
72
58
70
78
66
82
87
75
71
57
69
77
65
83
86
74
70
56
68
76
64
84
85
73
69
55
67
75
63
85
84
72
68
54
66
74
62
86
83
71
67
53
65
73
61
87
82
70
66
52
64
72
71
70
69
68
67
66
65
64
63
62
61
60
88
81
69
65
51
52
53
54
55
56
57
58
59
60
61
62
63
59
89
80
68
64
50
58
90
79
67
63
49
57
91
78
66
62
48
56
92
77
65
61
47
55
93
76
64
60
46
54
94
75
63
59
45
53
94
74
62
58
44
52
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
43
51
84
48
42
50
83
47
41
49
82
46
40
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
81
45
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
37
49
80
44
40
26
38
50
79
43
39
25
39
51
78
42
38
24
40
52
77
41
37
23
41
53
76
40
36
22
42
54
75
39
35
21
43
55
74
38
34
20
44
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
19
45
66
74
38
24
18
46
67
75
39
23
17
47
68
76
40
22
16
48
69
77
41
21
15
49
70
78
42
20
14
50
71
79
43
19
13
51
72
80
44
18
12
52
73
81
45
17
11
53
74
82
46
16
10
54
75
83
47
15
9
55
76
84
48
14
8
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
85
49
13
12
11
10
9
8
7
6
5
4
3
2
1
0
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
102
101
100
99
98
97
96
95
94
93
92
91
90
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
90
98
101
89
89
81
89
97
100
88
88
80
88
96
99
87
87
79
87
95
98
86
86
78
86
94
97
85
85
77
85
93
96
84
84
76
84
92
95
83
83
75
83
91
94
82
82
74
82
90
93
81
81
73
81
89
92
80
80
72
80
88
91
79
79
71
79
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
70
78
66
80
89
77
71
57
69
77
65
81
88
76
72
56
68
76
64
82
87
75
71
55
67
75
63
83
86
74
70
54
66
74
62
84
85
73
69
53
65
73
61
85
84
72
68
52
64
72
60
86
83
71
67
51
63
71
70
69
68
67
66
65
64
63
62
61
60
59
87
82
70
66
50
51
52
53
54
55
56
57
58
59
60
61
62
58
88
81
69
65
49
57
89
80
68
64
48
56
90
79
67
63
47
55
91
78
66
62
46
54
92
77
65
61
45
53
93
76
64
60
44
52
94
75
63
59
43
51
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
42
50
85
49
41
49
84
48
40
48
83
47
39
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
82
46
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
36
48
81
45
39
25
37
49
80
44
40
24
38
50
79
43
39
23
39
51
78
42
38
22
40
52
77
41
37
21
41
53
76
40
36
20
42
54
75
39
35
19
43
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
18
44
65
75
39
25
17
45
66
76
40
24
16
46
67
77
41
23
15
47
68
78
42
22
14
48
69
79
43
21
13
49
70
80
44
20
12
50
71
81
45
19
11
51
72
82
46
18
10
52
73
83
47
17
9
53
74
84
48
16
8
54
75
85
49
15
7
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
86
50
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
103
102
101
100
99
98
97
96
95
94
93
92
91
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
89
97
102
90
88
80
88
96
101
89
87
79
87
95
100
88
86
78
86
94
99
87
85
77
85
93
98
86
84
76
84
92
97
85
83
75
83
91
96
84
82
74
82
90
95
83
81
73
81
89
94
82
80
72
80
88
93
81
79
71
79
87
92
80
78
70
78
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
69
77
65
79
90
78
70
56
68
76
64
80
89
77
71
55
67
75
63
81
88
76
72
54
66
74
62
82
87
75
71
53
65
73
61
83
86
74
70
52
64
72
60
84
85
73
69
51
63
71
59
85
84
72
68
50
62
70
69
68
67
66
65
64
63
62
61
60
59
58
86
83
71
67
49
50
51
52
53
54
55
56
57
58
59
60
61
57
87
82
70
66
48
56
88
81
69
65
47
55
89
80
68
64
46
54
90
79
67
63
45
53
91
78
66
62
44
52
92
77
65
61
43
51
93
76
64
60
42
50
94
93
92
91
90
89
88
87
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
41
49
85
50
40
48
84
49
39
47
83
48
38
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
82
47
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
35
47
81
46
38
24
36
48
80
45
39
23
37
49
79
44
40
22
38
50
78
43
39
21
39
51
77
42
38
20
40
52
76
41
37
19
41
53
75
40
36
18
42
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
17
43
64
75
40
26
16
44
65
76
41
25
15
45
66
77
42
24
14
46
67
78
43
23
13
47
68
79
44
22
12
48
69
80
45
21
11
49
70
81
46
20
10
50
71
82
47
19
9
51
72
83
48
18
8
52
73
84
49
17
7
53
74
85
50
16
6
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
86
51
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
104
103
102
101
100
99
98
97
96
95
94
93
92
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
88
96
103
91
87
79
87
95
102
90
86
78
86
94
101
89
85
77
85
93
100
88
84
76
84
92
99
87
83
75
83
91
98
86
82
74
82
90
97
85
81
73
81
89
96
84
80
72
80
88
95
83
79
71
79
87
94
82
78
70
78
86
93
81
77
69
77
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
68
76
64
78
91
79
69
55
67
75
63
79
90
78
70
54
66
74
62
80
89
77
71
53
65
73
61
81
88
76
72
52
64
72
60
82
87
75
71
51
63
71
59
83
86
74
70
50
62
70
58
84
85
73
69
49
61
69
68
67
66
65
64
63
62
61
60
59
58
57
85
84
72
68
48
49
50
51
52
53
54
55
56
57
58
59
60
56
86
83
71
67
47
55
87
82
70
66
46
54
88
81
69
65
45
53
89
80
68
64
44
52
90
79
67
63
43
51
91
78
66
62
42
50
92
77
65
61
41
49
93
92
91
90
89
88
87
86
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
40
48
84
51
39
47
83
50
38
46
82
49
37
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
81
48
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
34
46
80
47
37
23
35
47
79
46
38
22
36
48
78
45
39
21
37
49
77
44
40
20
38
50
76
43
39
19
39
51
75
42
38
18
40
52
74
41
37
17
41
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
16
42
63
74
41
27
15
43
64
75
42
26
14
44
65
76
43
25
13
45
66
77
44
24
12
46
67
78
45
23
11
47
68
79
46
22
10
48
69
80
47
21
9
49
70
81
48
20
8
50
71
82
49
19
7
51
72
83
50
18
6
52
73
84
51
17
5
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
85
52
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
105
104
103
102
101
100
99
98
97
96
95
94
93
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
87
95
104
92
86
78
86
94
103
91
85
77
85
93
102
90
84
76
84
92
101
89
83
75
83
91
100
88
82
74
82
90
99
87
81
73
81
89
98
86
80
72
80
88
97
85
79
71
79
87
96
84
78
70
78
86
95
83
77
69
77
85
94
82
76
68
76
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
67
75
63
77
92
80
68
54
66
74
62
78
91
79
69
53
65
73
61
79
90
78
70
52
64
72
60
80
89
77
71
51
63
71
59
81
88
76
72
50
62
70
58
82
87
75
71
49
61
69
57
83
86
74
70
48
60
68
67
66
65
64
63
62
61
60
59
58
57
56
84
85
73
69
47
48
49
50
51
52
53
54
55
56
57
58
59
55
85
84
72
68
46
54
86
83
71
67
45
53
87
82
70
66
44
52
88
81
69
65
43
51
89
80
68
64
42
50
90
79
67
63
41
49
91
78
66
62
40
48
92
91
90
89
88
87
86
85
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
39
47
83
52
38
46
82
51
37
45
81
50
36
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
80
49
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
33
45
79
48
36
22
34
46
78
47
37
21
35
47
77
46
38
20
36
48
76
45
39
19
37
49
75
44
40
18
38
50
74
43
39
17
39
51
73
42
38
16
40
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
15
41
62
73
42
28
14
42
63
74
43
27
13
43
64
75
44
26
12
44
65
76
45
25
11
45
66
77
46
24
10
46
67
78
47
23
9
47
68
79
48
22
8
48
69
80
49
21
7
49
70
81
50
20
6
50
71
82
51
19
5
51
72
83
52
18
4
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
84
53
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
106
105
104
103
102
101
100
99
98
97
96
95
94
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
86
94
105
93
85
77
85
93
104
92
84
76
84
92
103
91
83
75
83
91
102
90
82
74
82
90
101
89
81
73
81
89
100
88
80
72
80
88
99
87
79
71
79
87
98
86
78
70
78
86
97
85
77
69
77
85
96
84
76
68
76
84
95
83
75
67
75
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
66
74
62
76
93
81
67
53
65
73
61
77
92
80
68
52
64
72
60
78
91
79
69
51
63
71
59
79
90
78
70
50
62
70
58
80
89
77
71
49
61
69
57
81
88
76
72
48
60
68
56
82
87
75
71
47
59
67
66
65
64
63
62
61
60
59
58
57
56
55
83
86
74
70
46
47
48
49
50
51
52
53
54
55
56
57
58
54
84
85
73
69
45
53
85
84
72
68
44
52
86
83
71
67
43
51
87
82
70
66
42
50
88
81
69
65
41
49
89
80
68
64
40
48
90
79
67
63
39
47
91
90
89
88
87
86
85
84
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
38
46
82
53
37
45
81
52
36
44
80
51
35
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
79
50
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
32
44
78
49
35
21
33
45
77
48
36
20
34
46
76
47
37
19
35
47
75
46
38
18
36
48
74
45
39
17
37
49
73
44
40
16
38
50
72
43
39
15
39
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
14
40
61
72
43
29
13
41
62
73
44
28
12
42
63
74
45
27
11
43
64
75
46
26
10
44
65
76
47
25
9
45
66
77
48
24
8
46
67
78
49
23
7
47
68
79
50
22
6
48
69
80
51
21
5
49
70
81
52
20
4
50
71
82
53
19
3
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
83
54
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
106
106
105
104
103
102
101
100
99
98
97
96
95
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
85
93
105
94
84
76
84
92
104
93
83
75
83
91
103
92
82
74
82
90
102
91
81
73
81
89
101
90
80
72
80
88
100
89
79
71
79
87
99
88
78
70
78
86
98
87
77
69
77
85
97
86
76
68
76
84
96
85
75
67
75
83
95
84
74
66
74
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
65
73
61
75
94
82
66
52
64
72
60
76
93
81
67
51
63
71
59
77
92
80
68
50
62
70
58
78
91
79
69
49
61
69
57
79
90
78
70
48
60
68
56
80
89
77
71
47
59
67
55
81
88
76
72
46
58
66
65
64
63
62
61
60
59
58
57
56
55
54
82
87
75
71
45
46
47
48
49
50
51
52
53
54
55
56
57
53
83
86
74
70
44
52
84
85
73
69
43
51
85
84
72
68
42
50
86
83
71
67
41
49
87
82
70
66
40
48
88
81
69
65
39
47
89
80
68
64
38
46
90
89
88
87
86
85
84
83
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
37
45
81
54
36
44
80
53
35
43
79
52
34
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
78
51
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
31
43
77
50
34
20
32
44
76
49
35
19
33
45
75
48
36
18
34
46
74
47
37
17
35
47
73
46
38
16
36
48
72
45
39
15
37
49
71
44
40
14
38
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
13
39
60
71
44
30
12
40
61
72
45
29
11
41
62
73
46
28
10
42
63
74
47
27
9
43
64
75
48
26
8
44
65
76
49
25
7
45
66
77
50
24
6
46
67
78
51
23
5
47
68
79
52
22
4
48
69
80
53
21
3
49
70
81
54
20
2
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
82
55
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
105
106
106
105
104
103
102
101
100
99
98
97
96
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
84
92
104
95
83
75
83
91
103
94
82
74
82
90
102
93
81
73
81
89
101
92
80
72
80
88
100
91
79
71
79
87
99
90
78
70
78
86
98
89
77
69
77
85
97
88
76
68
76
84
96
87
75
67
75
83
95
86
74
66
74
82
94
85
73
65
73
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
64
72
60
74
94
83
65
51
63
71
59
75
94
82
66
50
62
70
58
76
93
81
67
49
61
69
57
77
92
80
68
48
60
68
56
78
91
79
69
47
59
67
55
79
90
78
70
46
58
66
54
80
89
77
71
45
57
65
64
63
62
61
60
59
58
57
56
55
54
53
81
88
76
72
44
45
46
47
48
49
50
51
52
53
54
55
56
52
82
87
75
71
43
51
83
86
74
70
42
50
84
85
73
69
41
49
85
84
72
68
40
48
86
83
71
67
39
47
87
82
70
66
38
46
88
81
69
65
37
45
89
88
87
86
85
84
83
82
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
36
44
80
55
35
43
79
54
34
42
78
53
33
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
77
52
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
30
42
76
51
33
19
31
43
75
50
34
18
32
44
74
49
35
17
33
45
73
48
36
16
34
46
72
47
37
15
35
47
71
46
38
14
36
48
70
45
39
13
37
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
12
38
59
70
45
31
11
39
60
71
46
30
10
40
61
72
47
29
9
41
62
73
48
28
8
42
63
74
49
27
7
43
64
75
50
26
6
44
65
76
51
25
5
45
66
77
52
24
4
46
67
78
53
23
3
47
68
79
54
22
2
48
69
80
55
21
1
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
81
56
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
97
98
99
100
101
102
103
104
105
106
107
107
106
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
76
84
96
105
93
85
75
83
95
104
92
84
74
82
94
103
91
83
73
81
93
102
90
82
72
80
92
101
89
81
71
79
91
100
88
80
70
78
90
99
87
79
69
77
89
98
86
78
68
76
88
97
85
77
67
75
87
96
84
76
66
74
86
95
83
75
65
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
74
64
52
66
84
95
75
61
73
63
51
67
83
95
76
60
72
62
50
68
82
94
77
59
71
61
49
69
81
93
78
58
70
60
48
70
80
92
79
57
69
59
47
71
79
91
80
56
68
58
46
72
78
90
81
55
67
57
56
55
54
53
52
51
50
49
48
47
46
45
73
77
89
82
54
55
56
57
58
59
60
61
62
63
64
65
66
44
72
76
88
83
53
43
71
75
87
84
52
42
70
74
86
85
51
41
69
73
85
86
50
40
68
72
84
87
49
39
67
71
83
88
48
38
66
70
82
89
47
37
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
87
86
85
84
83
82
83
84
85
86
87
88
89
90
46
36
56
81
45
35
55
80
44
34
54
79
43
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
53
78
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
20
34
52
77
43
31
19
35
51
76
44
32
18
36
50
75
45
33
17
37
49
74
46
34
16
38
48
73
47
35
15
39
47
72
48
36
14
40
46
71
49
37
13
41
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
38
12
33
46
71
59
39
11
32
47
72
60
40
10
31
48
73
61
41
9
30
49
74
62
42
8
29
50
75
63
43
7
28
51
76
64
44
6
27
52
77
65
45
5
26
53
78
66
46
4
25
54
79
67
47
3
24
55
80
68
48
2
23
56
81
69
49
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
57
82
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
0
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
89
85
86
87
88
89
90
91
92
93
94
95
96
97
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
82
88
84
96
105
97
81
87
83
95
104
96
80
86
82
94
103
95
79
85
81
93
102
94
78
84
80
92
101
93
77
83
79
91
100
92
76
82
78
90
99
91
75
81
77
89
98
90
74
80
76
88
97
89
73
79
75
87
96
88
72
78
74
86
95
87
71
59
60
61
62
63
64
65
66
67
68
69
70
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
85
86
87
88
89
90
91
92
93
94
95
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
86
70
58
68
72
84
87
73
85
69
57
67
71
83
88
72
84
68
56
66
70
82
89
71
83
67
55
65
69
81
90
70
82
66
54
64
68
80
91
69
81
65
53
63
67
79
92
68
80
64
52
62
66
78
93
67
79
63
62
61
60
59
58
57
56
55
54
53
52
51
61
65
77
94
66
67
68
69
70
71
72
73
74
75
76
77
78
50
60
64
76
95
65
49
59
63
75
95
64
48
58
62
74
94
63
47
57
61
73
93
62
46
56
60
72
92
61
45
55
59
71
91
60
44
54
58
70
90
59
43
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
58
42
44
80
57
41
43
79
56
40
42
78
55
37
36
35
34
33
34
35
36
37
38
39
40
41
42
41
40
39
41
77
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
32
38
40
76
55
43
31
37
39
75
56
44
30
36
38
74
57
45
29
35
37
73
58
46
28
34
36
72
59
47
27
33
35
71
60
48
26
32
34
70
61
49
25
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
75
74
73
72
71
70
69
68
67
66
65
64
63
62
50
24
21
34
70
71
51
23
20
35
71
72
52
22
19
36
72
73
53
21
18
37
73
74
54
20
17
38
74
75
55
19
16
39
75
76
56
18
15
40
76
77
57
17
14
41
77
78
58
16
13
42
78
79
59
15
12
43
79
80
60
14
11
44
80
81
61
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
43
79
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
14
0
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
65
66
67
68
69
70
71
72
73
74
75
76
77
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
119
118
84
68
64
76
88
117
83
67
63
75
87
116
82
66
62
74
86
115
81
65
61
73
85
114
80
64
60
72
84
113
79
63
59
71
83
112
78
62
58
70
82
111
77
61
57
69
81
110
76
60
56
68
80
109
75
59
55
67
79
108
74
58
54
66
78
107
73
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
60
59
58
57
56
55
54
53
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
95
94
106
72
60
48
52
64
84
93
105
71
59
47
51
63
83
92
104
70
58
46
50
62
82
91
103
69
57
45
49
61
81
90
102
68
56
44
48
60
80
89
101
67
55
43
47
59
79
88
100
66
54
42
46
58
78
87
99
65
64
63
62
61
60
59
58
57
56
55
54
53
41
45
57
77
86
87
88
89
90
91
92
93
94
95
96
97
98
52
40
44
56
76
85
51
39
43
55
75
84
50
38
42
54
74
83
49
37
41
53
73
82
48
36
40
52
72
81
47
35
39
51
71
80
46
34
38
50
70
79
45
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
78
44
24
60
77
43
23
59
76
42
22
58
75
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
21
57
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
54
40
20
56
75
63
55
39
19
55
75
64
56
38
18
54
74
65
57
37
17
53
73
66
58
36
16
52
72
67
59
35
15
51
71
68
60
34
14
50
70
69
61
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
62
25
12
50
62
71
63
26
11
51
63
72
64
27
10
52
64
73
63
28
9
53
65
74
62
29
8
54
66
75
61
30
7
55
67
76
60
31
6
56
68
77
59
32
5
57
69
78
58
33
4
58
70
79
57
34
3
59
71
80
56
35
2
60
72
81
55
54
53
52
51
50
49
48
47
46
45
44
43
44
43
42
41
40
39
38
37
36
1
59
73
74
75
76
77
78
79
80
79
80
81
82
83
84
85
86
86
85
84
83
82
56
42
0
118
119
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
77
76
75
74
73
72
71
70
69
68
67
66
65
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
117
88
76
64
68
84
116
87
75
63
67
83
115
86
74
62
66
82
114
85
73
61
65
81
113
84
72
60
64
80
112
83
71
59
63
79
111
82
70
58
62
78
110
81
69
57
61
77
109
80
68
56
60
76
108
79
67
55
59
75
107
78
66
54
58
74
106
94
95
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
53
54
55
56
57
58
59
60
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
73
105
93
84
64
52
48
60
72
104
92
83
63
51
47
59
71
103
91
82
62
50
46
58
70
102
90
81
61
49
45
57
69
101
89
80
60
48
44
56
68
100
88
79
59
47
43
55
67
99
87
78
58
46
42
54
66
98
97
96
95
94
93
92
91
90
89
88
87
86
77
57
45
41
53
54
55
56
57
58
59
60
61
62
63
64
65
85
76
56
44
40
52
84
75
55
43
39
51
83
74
54
42
38
50
82
73
53
41
37
49
81
72
52
40
36
48
80
71
51
39
35
47
79
70
50
38
34
46
78
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
45
77
60
24
44
76
59
23
43
75
58
22
42
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
57
21
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
63
75
56
20
40
54
64
75
55
19
39
55
65
74
54
18
38
56
66
73
53
17
37
57
67
72
52
16
36
58
68
71
51
15
35
59
69
70
50
14
34
60
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
61
71
61
50
12
26
62
72
62
51
11
27
63
73
63
52
10
28
64
74
64
53
9
29
63
75
65
54
8
30
62
76
66
55
7
31
61
77
67
56
6
32
60
78
68
57
5
33
59
79
69
58
4
34
58
80
70
59
3
35
57
81
71
60
2
36
56
82
83
84
85
86
86
85
84
83
82
81
80
79
80
79
78
77
76
75
74
73
72
59
1
37
38
39
40
41
42
43
44
43
44
45
46
47
48
49
50
51
52
53
54
55
83
78
58
0
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
97
96
95
94
93
92
91
90
89
88
87
86
85
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
97
105
96
84
88
80
96
104
95
83
87
79
95
103
94
82
86
78
94
102
93
81
85
77
93
101
92
80
84
76
92
100
91
79
83
75
91
99
90
78
82
74
90
98
89
77
81
73
89
97
88
76
80
72
88
96
87
75
79
71
87
95
86
74
78
70
86
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
95
94
93
92
91
90
89
88
87
86
85
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
69
85
73
87
84
72
68
56
68
84
72
88
83
71
67
55
67
83
71
89
82
70
66
54
66
82
70
90
81
69
65
53
65
81
69
91
80
68
64
52
64
80
68
92
79
67
63
51
63
79
67
93
78
66
62
50
62
78
77
76
75
74
73
72
71
70
69
68
67
66
94
77
65
61
49
50
51
52
53
54
55
56
57
58
59
60
61
65
95
76
64
60
48
64
95
75
63
59
47
63
94
74
62
58
46
62
93
73
61
57
45
61
92
72
60
56
44
60
91
71
59
55
43
59
90
70
58
54
42
58
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
41
57
80
44
40
56
79
43
39
55
78
42
38
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
77
41
37
38
39
40
41
40
39
38
37
36
35
34
33
34
35
36
37
43
55
76
40
36
32
44
56
75
39
35
31
45
57
74
38
34
30
46
58
73
37
33
29
47
59
72
36
32
28
48
60
71
35
31
27
49
61
70
34
30
26
50
62
63
64
65
66
67
68
69
70
71
72
73
74
75
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
25
51
72
70
34
20
24
52
73
71
35
19
23
53
74
72
36
18
22
54
75
73
37
17
21
55
76
74
38
16
20
56
77
75
39
15
19
57
78
76
40
14
18
58
79
77
41
13
17
59
80
78
42
12
16
60
81
79
43
11
15
61
82
80
44
10
14
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
79
43
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
63
75
78
42
0
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
106
107
107
106
105
104
103
102
101
100
99
98
97
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
85
93
105
96
84
76
84
92
104
95
83
75
83
91
103
94
82
74
82
90
102
93
81
73
81
89
101
92
80
72
80
88
100
91
79
71
79
87
99
90
78
70
78
86
98
89
77
69
77
85
97
88
76
68
76
84
96
87
75
67
75
83
95
86
74
66
74
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
65
73
61
75
95
84
66
52
64
72
60
76
95
83
67
51
63
71
59
77
94
82
68
50
62
70
58
78
93
81
69
49
61
69
57
79
92
80
70
48
60
68
56
80
91
79
71
47
59
67
55
81
90
78
72
46
58
66
65
64
63
62
61
60
59
58
57
56
55
54
82
89
77
73
45
46
47
48
49
50
51
52
53
54
55
56
57
53
83
88
76
72
44
52
84
87
75
71
43
51
85
86
74
70
42
50
86
85
73
69
41
49
87
84
72
68
40
48
88
83
71
67
39
47
89
82
70
66
38
46
90
89
88
87
86
85
84
83
82
83
84
85
86
87
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
37
45
81
56
36
44
80
55
35
43
79
54
34
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
78
53
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
31
43
77
52
34
20
32
44
76
51
35
19
33
45
75
50
36
18
34
46
74
49
37
17
35
47
73
48
38
16
36
48
72
47
39
15
37
49
71
46
40
14
38
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
13
39
60
71
46
32
12
40
61
72
47
31
11
41
62
73
48
30
10
42
63
74
49
29
9
43
64
75
50
28
8
44
65
76
51
27
7
45
66
77
52
26
6
46
67
78
53
25
5
47
68
79
54
24
4
48
69
80
55
23
3
49
70
81
56
22
2
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
82
57
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
51
63
83
56
14
0
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
98
99
100
101
102
103
104
105
106
107
108
108
107
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
77
85
97
106
94
86
76
84
96
105
93
85
75
83
95
104
92
84
74
82
94
103
91
83
73
81
93
102
90
82
72
80
92
101
89
81
71
79
91
100
88
80
70
78
90
99
87
79
69
77
89
98
86
78
68
76
88
97
85
77
67
75
87
96
84
76
66
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
75
65
53
67
85
96
76
62
74
64
52
68
84
96
77
61
73
63
51
69
83
95
78
60
72
62
50
70
82
94
79
59
71
61
49
71
81
93
80
58
70
60
48
72
80
92
81
57
69
59
47
73
79
91
82
56
68
58
57
56
55
54
53
52
51
50
49
48
47
46
74
78
90
83
55
56
57
58
59
60
61
62
63
64
65
66
67
45
73
77
89
84
54
44
72
76
88
85
53
43
71
75
87
86
52
42
70
74
86
87
51
41
69
73
85
88
50
40
68
72
84
89
49
39
67
71
83
90
48
38
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
88
87
86
85
84
83
84
85
86
87
88
89
90
91
47
37
57
82
46
36
56
81
45
35
55
80
44
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
54
79
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
21
35
53
78
44
32
20
36
52
77
45
33
19
37
51
76
46
34
18
38
50
75
47
35
17
39
49
74
48
36
16
40
48
73
49
37
15
41
47
72
50
38
14
42
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
39
13
34
47
72
60
40
12
33
48
73
61
41
11
32
49
74
62
42
10
31
50
75
63
43
9
30
51
76
64
44
8
29
52
77
65
45
7
28
53
78
66
46
6
27
54
79
67
47
5
26
55
80
68
48
4
25
56
81
69
49
3
24
57
82
70
50
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
58
83
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
1
15
57
84
64
52
0
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
90
86
87
88
89
90
91
92
93
94
95
96
97
98
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
83
89
85
97
106
98
82
88
84
96
105
97
81
87
83
95
104
96
80
86
82
94
103
95
79
85
81
93
102
94
78
84
80
92
101
93
77
83
79
91
100
92
76
82
78
90
99
91
75
81
77
89
98
90
74
80
76
88
97
89
73
79
75
87
96
88
72
60
61
62
63
64
65
66
67
68
69
70
71
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
86
87
88
89
90
91
92
93
94
95
96
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
87
71
59
69
73
85
88
74
86
70
58
68
72
84
89
73
85
69
57
67
71
83
90
72
84
68
56
66
70
82
91
71
83
67
55
65
69
81
92
70
82
66
54
64
68
80
93
69
81
65
53
63
67
79
94
68
80
64
63
62
61
60
59
58
57
56
55
54
53
52
62
66
78
95
67
68
69
70
71
72
73
74
75
76
77
78
79
51
61
65
77
96
66
50
60
64
76
96
65
49
59
63
75
95
64
48
58
62
74
94
63
47
57
61
73
93
62
46
56
60
72
92
61
45
55
59
71
91
60
44
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
59
43
45
81
58
42
44
80
57
41
43
79
56
38
37
36
35
34
35
36
37
38
39
40
41
42
43
42
41
40
42
78
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
33
39
41
77
56
44
32
38
40
76
57
45
31
37
39
75
58
46
30
36
38
74
59
47
29
35
37
73
60
48
28
34
36
72
61
49
27
33
35
71
62
50
26
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
76
75
74
73
72
71
70
69
68
67
66
65
64
63
51
25
22
35
71
72
52
24
21
36
72
73
53
23
20
37
73
74
54
22
19
38
74
75
55
21
18
39
75
76
56
20
17
40
76
77
57
19
16
41
77
78
58
18
15
42
78
79
59
17
14
43
79
80
60
16
13
44
80
81
61
15
12
43
79
82
62
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
42
78
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
15
1
41
77
76
64
16
0
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
66
67
68
69
70
71
72
73
74
75
76
77
78
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
120
119
85
69
65
77
89
118
84
68
64
76
88
117
83
67
63
75
87
116
82
66
62
74
86
115
81
65
61
73
85
114
80
64
60
72
84
113
79
63
59
71
83
112
78
62
58
70
82
111
77
61
57
69
81
110
76
60
56
68
80
109
75
59
55
67
79
108
74
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
61
60
59
58
57
56
55
54
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
96
95
107
73
61
49
53
65
85
94
106
72
60
48
52
64
84
93
105
71
59
47
51
63
83
92
104
70
58
46
50
62
82
91
103
69
57
45
49
61
81
90
102
68
56
44
48
60
80
89
101
67
55
43
47
59
79
88
100
66
65
64
63
62
61
60
59
58
57
56
55
54
42
46
58
78
87
88
89
90
91
92
93
94
95
96
97
98
99
53
41
45
57
77
86
52
40
44
56
76
85
51
39
43
55
75
84
50
38
42
54
74
83
49
37
41
53
73
82
48
36
40
52
72
81
47
35
39
51
71
80
46
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
79
45
25
61
78
44
24
60
77
43
23
59
76
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
22
58
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
55
41
21
57
76
64
56
40
20
56
76
65
57
39
19
55
75
66
58
38
18
54
74
67
59
37
17
53
73
68
60
36
16
52
72
69
61
35
15
51
71
70
62
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
63
26
13
51
63
72
64
27
12
52
64
73
63
28
11
53
65
74
62
29
10
54
66
75
61
30
9
55
67
76
60
31
8
56
68
77
59
32
7
57
69
78
58
33
6
58
70
79
57
34
5
59
71
80
56
35
4
60
72
81
55
36
3
59
73
82
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
43
42
41
40
39
38
37
2
58
74
75
76
77
78
79
80
79
78
79
80
81
82
83
84
85
86
86
85
84
83
55
41
1
57
77
84
56
40
0
119
120
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
78
77
76
75
74
73
72
71
70
69
68
67
66
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
118
89
77
65
69
85
117
88
76
64
68
84
116
87
75
63
67
83
115
86
74
62
66
82
114
85
73
61
65
81
113
84
72
60
64
80
112
83
71
59
63
79
111
82
70
58
62
78
110
81
69
57
61
77
109
80
68
56
60
76
108
79
67
55
59
75
107
95
96
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
54
55
56
57
58
59
60
61
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
74
106
94
85
65
53
49
61
73
105
93
84
64
52
48
60
72
104
92
83
63
51
47
59
71
103
91
82
62
50
46
58
70
102
90
81
61
49
45
57
69
101
89
80
60
48
44
56
68
100
88
79
59
47
43
55
67
99
98
97
96
95
94
93
92
91
90
89
88
87
78
58
46
42
54
55
56
57
58
59
60
61
62
63
64
65
66
86
77
57
45
41
53
85
76
56
44
40
52
84
75
55
43
39
51
83
74
54
42
38
50
82
73
53
41
37
49
81
72
52
40
36
48
80
71
51
39
35
47
79
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
46
78
61
25
45
77
60
24
44
76
59
23
43
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
58
22
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
64
76
57
21
41
55
65
76
56
20
40
56
66
75
55
19
39
57
67
74
54
18
38
58
68
73
53
17
37
59
69
72
52
16
36
60
70
71
51
15
35
61
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
62
72
62
51
13
27
63
73
63
52
12
28
64
74
64
53
11
29
63
75
65
54
10
30
62
76
66
55
9
31
61
77
67
56
8
32
60
78
68
57
7
33
59
79
69
58
6
34
58
80
70
59
5
35
57
81
71
60
4
36
56
82
72
59
3
37
55
83
84
85
86
86
85
84
83
82
81
80
79
78
79
80
79
78
77
76
75
74
73
58
2
38
39
40
41
42
43
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
84
77
57
1
41
55
85
76
56
0
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
98
97
96
95
94
93
92
91
90
89
88
87
86
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
98
106
97
85
89
81
97
105
96
84
88
80
96
104
95
83
87
79
95
103
94
82
86
78
94
102
93
81
85
77
93
101
92
80
84
76
92
100
91
79
83
75
91
99
90
78
82
74
90
98
89
77
81
73
89
97
88
76
80
72
88
96
87
75
79
71
87
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
96
95
94
93
92
91
90
89
88
87
86
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
70
86
74
88
85
73
69
57
69
85
73
89
84
72
68
56
68
84
72
90
83
71
67
55
67
83
71
91
82
70
66
54
66
82
70
92
81
69
65
53
65
81
69
93
80
68
64
52
64
80
68
94
79
67
63
51
63
79
78
77
76
75
74
73
72
71
70
69
68
67
95
78
66
62
50
51
52
53
54
55
56
57
58
59
60
61
62
66
96
77
65
61
49
65
96
76
64
60
48
64
95
75
63
59
47
63
94
74
62
58
46
62
93
73
61
57
45
61
92
72
60
56
44
60
91
71
59
55
43
59
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
42
58
81
45
41
57
80
44
40
56
79
43
39
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
78
42
38
39
40
41
42
41
40
39
38
37
36
35
34
35
36
37
38
44
56
77
41
37
33
45
57
76
40
36
32
46
58
75
39
35
31
47
59
74
38
34
30
48
60
73
37
33
29
49
61
72
36
32
28
50
62
71
35
31
27
51
63
64
65
66
67
68
69
70
71
72
73
74
75
76
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
26
52
73
71
35
21
25
53
74
72
36
20
24
54
75
73
37
19
23
55
76
74
38
18
22
56
77
75
39
17
21
57
78
76
40
16
20
58
79
77
41
15
19
59
80
78
42
14
18
60
81
79
43
13
17
61
82
80
44
12
16
62
83
79
43
11
15
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
78
42
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
64
76
77
41
1
15
65
77
76
40
0
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
107
108
108
107
106
105
104
103
102
101
100
99
98
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
86
94
106
97
85
77
85
93
105
96
84
76
84
92
104
95
83
75
83
91
103
94
82
74
82
90
102
93
81
73
81
89
101
92
80
72
80
88
100
91
79
71
79
87
99
90
78
70
78
86
98
89
77
69
77
85
97
88
76
68
76
84
96
87
75
67
75
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
66
74
62
76
96
85
67
53
65
73
61
77
96
84
68
52
64
72
60
78
95
83
69
51
63
71
59
79
94
82
70
50
62
70
58
80
93
81
71
49
61
69
57
81
92
80
72
48
60
68
56
82
91
79
73
47
59
67
66
65
64
63
62
61
60
59
58
57
56
55
83
90
78
74
46
47
48
49
50
51
52
53
54
55
56
57
58
54
84
89
77
73
45
53
85
88
76
72
44
52
86
87
75
71
43
51
87
86
74
70
42
50
88
85
73
69
41
49
89
84
72
68
40
48
90
83
71
67
39
47
91
90
89
88
87
86
85
84
83
84
85
86
87
88
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
38
46
82
57
37
45
81
56
36
44
80
55
35
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
79
54
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
32
44
78
53
35
21
33
45
77
52
36
20
34
46
76
51
37
19
35
47
75
50
38
18
36
48
74
49
39
17
37
49
73
48
40
16
38
50
72
47
41
15
39
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
14
40
61
72
47
33
13
41
62
73
48
32
12
42
63
74
49
31
11
43
64
75
50
30
10
44
65
76
51
29
9
45
66
77
52
28
8
46
67
78
53
27
7
47
68
79
54
26
6
48
69
80
55
25
5
49
70
81
56
24
4
50
71
82
57
23
3
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
83
58
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
52
64
84
57
15
1
53
65
85
56
16
0
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
99
100
101
102
103
104
105
106
107
108
109
109
108
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
78
86
98
107
95
87
77
85
97
106
94
86
76
84
96
105
93
85
75
83
95
104
92
84
74
82
94
103
91
83
73
81
93
102
90
82
72
80
92
101
89
81
71
79
91
100
88
80
70
78
90
99
87
79
69
77
89
98
86
78
68
76
88
97
85
77
67
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
76
66
54
68
86
97
77
63
75
65
53
69
85
97
78
62
74
64
52
70
84
96
79
61
73
63
51
71
83
95
80
60
72
62
50
72
82
94
81
59
71
61
49
73
81
93
82
58
70
60
48
74
80
92
83
57
69
59
58
57
56
55
54
53
52
51
50
49
48
47
75
79
91
84
56
57
58
59
60
61
62
63
64
65
66
67
68
46
74
78
90
85
55
45
73
77
89
86
54
44
72
76
88
87
53
43
71
75
87
88
52
42
70
74
86
89
51
41
69
73
85
90
50
40
68
72
84
91
49
39
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
85
86
87
88
89
90
91
92
48
38
58
83
47
37
57
82
46
36
56
81
45
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
55
80
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
22
36
54
79
45
33
21
37
53
78
46
34
20
38
52
77
47
35
19
39
51
76
48
36
18
40
50
75
49
37
17
41
49
74
50
38
16
42
48
73
51
39
15
43
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
40
14
35
48
73
61
41
13
34
49
74
62
42
12
33
50
75
63
43
11
32
51
76
64
44
10
31
52
77
65
45
9
30
53
78
66
46
8
29
54
79
67
47
7
28
55
80
68
48
6
27
56
81
69
49
5
26
57
82
70
50
4
25
58
83
71
51
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
59
84
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
2
16
58
85
65
53
1
17
57
86
66
54
0
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
91
87
88
89
90
91
92
93
94
95
96
97
98
99
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
84
90
86
98
107
99
83
89
85
97
106
98
82
88
84
96
105
97
81
87
83
95
104
96
80
86
82
94
103
95
79
85
81
93
102
94
78
84
80
92
101
93
77
83
79
91
100
92
76
82
78
90
99
91
75
81
77
89
98
90
74
80
76
88
97
89
73
61
62
63
64
65
66
67
68
69
70
71
72
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
87
88
89
90
91
92
93
94
95
96
97
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
88
72
60
70
74
86
89
75
87
71
59
69
73
85
90
74
86
70
58
68
72
84
91
73
85
69
57
67
71
83
92
72
84
68
56
66
70
82
93
71
83
67
55
65
69
81
94
70
82
66
54
64
68
80
95
69
81
65
64
63
62
61
60
59
58
57
56
55
54
53
63
67
79
96
68
69
70
71
72
73
74
75
76
77
78
79
80
52
62
66
78
97
67
51
61
65
77
97
66
50
60
64
76
96
65
49
59
63
75
95
64
48
58
62
74
94
63
47
57
61
73
93
62
46
56
60
72
92
61
45
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
60
44
46
82
59
43
45
81
58
42
44
80
57
39
38
37
36
35
36
37
38
39
40
41
42
43
44
43
42
41
43
79
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
34
40
42
78
57
45
33
39
41
77
58
46
32
38
40
76
59
47
31
37
39
75
60
48
30
36
38
74
61
49
29
35
37
73
62
50
28
34
36
72
63
51
27
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
77
76
75
74
73
72
71
70
69
68
67
66
65
64
52
26
23
36
72
73
53
25
22
37
73
74
54
24
21
38
74
75
55
23
20
39
75
76
56
22
19
40
76
77
57
21
18
41
77
78
58
20
17
42
78
79
59
19
16
43
79
80
60
18
15
44
80
81
61
17
14
43
79
82
62
16
13
42
78
83
63
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
41
77
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
16
2
40
76
77
65
17
1
39
75
78
66
18
0
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
67
68
69
70
71
72
73
74
75
76
77
78
79
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
121
120
86
70
66
78
90
119
85
69
65
77
89
118
84
68
64
76
88
117
83
67
63
75
87
116
82
66
62
74
86
115
81
65
61
73
85
114
80
64
60
72
84
113
79
63
59
71
83
112
78
62
58
70
82
111
77
61
57
69
81
110
76
60
56
68
80
109
75
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
62
61
60
59
58
57
56
55
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
97
96
108
74
62
50
54
66
86
95
107
73
61
49
53
65
85
94
106
72
60
48
52
64
84
93
105
71
59
47
51
63
83
92
104
70
58
46
50
62
82
91
103
69
57
45
49
61
81
90
102
68
56
44
48
60
80
89
101
67
66
65
64
63
62
61
60
59
58
57
56
55
43
47
59
79
88
89
90
91
92
93
94
95
96
97
98
99
100
54
42
46
58
78
87
53
41
45
57
77
86
52
40
44
56
76
85
51
39
43
55
75
84
50
38
42
54
74
83
49
37
41
53
73
82
48
36
40
52
72
81
47
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
80
46
26
62
79
45
25
61
78
44
24
60
77
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
23
59
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
56
42
22
58
77
65
57
41
21
57
77
66
58
40
20
56
76
67
59
39
19
55
75
68
60
38
18
54
74
69
61
37
17
53
73
70
62
36
16
52
72
71
63
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
64
27
14
52
64
73
63
28
13
53
65
74
62
29
12
54
66
75
61
30
11
55
67
76
60
31
10
56
68
77
59
32
9
57
69
78
58
33
8
58
70
79
57
34
7
59
71
80
56
35
6
60
72
81
55
36
5
59
73
82
54
37
4
58
74
83
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
43
42
41
40
39
38
3
57
75
76
77
78
79
80
79
78
77
78
79
80
81
82
83
84
85
86
86
85
84
54
40
2
56
76
85
55
39
1
55
75
86
56
38
0
120
121
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
79
78
77
76
75
74
73
72
71
70
69
68
67
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
119
90
78
66
70
86
118
89
77
65
69
85
117
88
76
64
68
84
116
87
75
63
67
83
115
86
74
62
66
82
114
85
73
61
65
81
113
84
72
60
64
80
112
83
71
59
63
79
111
82
70
58
62
78
110
81
69
57
61
77
109
80
68
56
60
76
108
96
97
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
55
56
57
58
59
60
61
62
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
75
107
95
86
66
54
50
62
74
106
94
85
65
53
49
61
73
105
93
84
64
52
48
60
72
104
92
83
63
51
47
59
71
103
91
82
62
50
46
58
70
102
90
81
61
49
45
57
69
101
89
80
60
48
44
56
68
100
99
98
97
96
95
94
93
92
91
90
89
88
79
59
47
43
55
56
57
58
59
60
61
62
63
64
65
66
67
87
78
58
46
42
54
86
77
57
45
41
53
85
76
56
44
40
52
84
75
55
43
39
51
83
74
54
42
38
50
82
73
53
41
37
49
81
72
52
40
36
48
80
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
47
79
62
26
46
78
61
25
45
77
60
24
44
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
59
23
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
65
77
58
22
42
56
66
77
57
21
41
57
67
76
56
20
40
58
68
75
55
19
39
59
69
74
54
18
38
60
70
73
53
17
37
61
71
72
52
16
36
62
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
63
73
63
52
14
28
64
74
64
53
13
29
63
75
65
54
12
30
62
76
66
55
11
31
61
77
67
56
10
32
60
78
68
57
9
33
59
79
69
58
8
34
58
80
70
59
7
35
57
81
71
60
6
36
56
82
72
59
5
37
55
83
73
58
4
38
54
84
85
86
86
85
84
83
82
81
80
79
78
77
78
79
80
79
78
77
76
75
74
57
3
39
40
41
42
43
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
85
76
56
2
40
54
86
75
55
1
39
55
87
74
54
0
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
99
98
97
96
95
94
93
92
91
90
89
88
87
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
99
107
98
86
90
82
98
106
97
85
89
81
97
105
96
84
88
80
96
104
95
83
87
79
95
103
94
82
86
78
94
102
93
81
85
77
93
101
92
80
84
76
92
100
91
79
83
75
91
99
90
78
82
74
90
98
89
77
81
73
89
97
88
76
80
72
88
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
97
96
95
94
93
92
91
90
89
88
87
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
71
87
75
89
86
74
70
58
70
86
74
90
85
73
69
57
69
85
73
91
84
72
68
56
68
84
72
92
83
71
67
55
67
83
71
93
82
70
66
54
66
82
70
94
81
69
65
53
65
81
69
95
80
68
64
52
64
80
79
78
77
76
75
74
73
72
71
70
69
68
96
79
67
63
51
52
53
54
55
56
57
58
59
60
61
62
63
67
97
78
66
62
50
66
97
77
65
61
49
65
96
76
64
60
48
64
95
75
63
59
47
63
94
74
62
58
46
62
93
73
61
57
45
61
92
72
60
56
44
60
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
43
59
82
46
42
58
81
45
41
57
80
44
40
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
79
43
39
40
41
42
43
42
41
40
39
38
37
36
35
36
37
38
39
45
57
78
42
38
34
46
58
77
41
37
33
47
59
76
40
36
32
48
60
75
39
35
31
49
61
74
38
34
30
50
62
73
37
33
29
51
63
72
36
32
28
52
64
65
66
67
68
69
70
71
72
73
74
75
76
77
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
27
53
74
72
36
22
26
54
75
73
37
21
25
55
76
74
38
20
24
56
77
75
39
19
23
57
78
76
40
18
22
58
79
77
41
17
21
59
80
78
42
16
20
60
81
79
43
15
19
61
82
80
44
14
18
62
83
79
43
13
17
63
84
78
42
12
16
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
77
41
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
65
77
76
40
2
16
66
78
75
39
1
17
67
79
74
38
0
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
108
109
109
108
107
106
105
104
103
102
101
100
99
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
87
95
107
98
86
78
86
94
106
97
85
77
85
93
105
96
84
76
84
92
104
95
83
75
83
91
103
94
82
74
82
90
102
93
81
73
81
89
101
92
80
72
80
88
100
91
79
71
79
87
99
90
78
70
78
86
98
89
77
69
77
85
97
88
76
68
76
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
67
75
63
77
97
86
68
54
66
74
62
78
97
85
69
53
65
73
61
79
96
84
70
52
64
72
60
80
95
83
71
51
63
71
59
81
94
82
72
50
62
70
58
82
93
81
73
49
61
69
57
83
92
80
74
48
60
68
67
66
65
64
63
62
61
60
59
58
57
56
84
91
79
75
47
48
49
50
51
52
53
54
55
56
57
58
59
55
85
90
78
74
46
54
86
89
77
73
45
53
87
88
76
72
44
52
88
87
75
71
43
51
89
86
74
70
42
50
90
85
73
69
41
49
91
84
72
68
40
48
92
91
90
89
88
87
86
85
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
39
47
83
58
38
46
82
57
37
45
81
56
36
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
80
55
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
33
45
79
54
36
22
34
46
78
53
37
21
35
47
77
52
38
20
36
48
76
51
39
19
37
49
75
50
40
18
38
50
74
49
41
17
39
51
73
48
42
16
40
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
15
41
62
73
48
34
14
42
63
74
49
33
13
43
64
75
50
32
12
44
65
76
51
31
11
45
66
77
52
30
10
46
67
78
53
29
9
47
68
79
54
28
8
48
69
80
55
27
7
49
70
81
56
26
6
50
71
82
57
25
5
51
72
83
58
24
4
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
84
59
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
53
65
85
58
16
2
54
66
86
57
17
1
55
67
87
56
18
0
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
100
101
102
103
104
105
106
107
108
109
110
110
109
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
79
87
99
108
96
88
78
86
98
107
95
87
77
85
97
106
94
86
76
84
96
105
93
85
75
83
95
104
92
84
74
82
94
103
91
83
73
81
93
102
90
82
72
80
92
101
89
81
71
79
91
100
88
80
70
78
90
99
87
79
69
77
89
98
86
78
68
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
77
67
55
69
87
98
78
64
76
66
54
70
86
98
79
63
75
65
53
71
85
97
80
62
74
64
52
72
84
96
81
61
73
63
51
73
83
95
82
60
72
62
50
74
82
94
83
59
71
61
49
75
81
93
84
58
70
60
59
58
57
56
55
54
53
52
51
50
49
48
76
80
92
85
57
58
59
60
61
62
63
64
65
66
67
68
69
47
75
79
91
86
56
46
74
78
90
87
55
45
73
77
89
88
54
44
72
76
88
89
53
43
71
75
87
90
52
42
70
74
86
91
51
41
69
73
85
92
50
40
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
86
87
88
89
90
91
92
93
49
39
59
84
48
38
58
83
47
37
57
82
46
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
56
81
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
23
37
55
80
46
34
22
38
54
79
47
35
21
39
53
78
48
36
20
40
52
77
49
37
19
41
51
76
50
38
18
42
50
75
51
39
17
43
49
74
52
40
16
44
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
41
15
36
49
74
62
42
14
35
50
75
63
43
13
34
51
76
64
44
12
33
52
77
65
45
11
32
53
78
66
46
10
31
54
79
67
47
9
30
55
80
68
48
8
29
56
81
69
49
7
28
57
82
70
50
6
27
58
83
71
51
5
26
59
84
72
52
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
60
85
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
3
17
59
86
66
54
2
18
58
87
67
55
1
19
57
88
68
56
0
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
92
88
89
90
91
92
93
94
95
96
97
98
99
100
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
85
91
87
99
108
100
84
90
86
98
107
99
83
89
85
97
106
98
82
88
84
96
105
97
81
87
83
95
104
96
80
86
82
94
103
95
79
85
81
93
102
94
78
84
80
92
101
93
77
83
79
91
100
92
76
82
78
90
99
91
75
81
77
89
98
90
74
62
63
64
65
66
67
68
69
70
71
72
73
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
89
73
61
71
75
87
90
76
88
72
60
70
74
86
91
75
87
71
59
69
73
85
92
74
86
70
58
68
72
84
93
73
85
69
57
67
71
83
94
72
84
68
56
66
70
82
95
71
83
67
55
65
69
81
96
70
82
66
65
64
63
62
61
60
59
58
57
56
55
54
64
68
80
97
69
70
71
72
73
74
75
76
77
78
79
80
81
53
63
67
79
98
68
52
62
66
78
98
67
51
61
65
77
97
66
50
60
64
76
96
65
49
59
63
75
95
64
48
58
62
74
94
63
47
57
61
73
93
62
46
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
61
45
47
83
60
44
46
82
59
43
45
81
58
40
39
38
37
36
37
38
39
40
41
42
43
44
45
44
43
42
44
80
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
35
41
43
79
58
46
34
40
42
78
59
47
33
39
41
77
60
48
32
38
40
76
61
49
31
37
39
75
62
50
30
36
38
74
63
51
29
35
37
73
64
52
28
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
78
77
76
75
74
73
72
71
70
69
68
67
66
65
53
27
24
37
73
74
54
26
23
38
74
75
55
25
22
39
75
76
56
24
21
40
76
77
57
23
20
41
77
78
58
22
19
42
78
79
59
21
18
43
79
80
60
20
17
44
80
81
61
19
16
43
79
82
62
18
15
42
78
83
63
17
14
41
77
84
64
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
40
76
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
17
3
39
75
78
66
18
2
38
74
79
67
19
1
37
73
80
68
20
0
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
68
69
70
71
72
73
74
75
76
77
78
79
80
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
122
121
87
71
67
79
91
120
86
70
66
78
90
119
85
69
65
77
89
118
84
68
64
76
88
117
83
67
63
75
87
116
82
66
62
74
86
115
81
65
61
73
85
114
80
64
60
72
84
113
79
63
59
71
83
112
78
62
58
70
82
111
77
61
57
69
81
110
76
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
63
62
61
60
59
58
57
56
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
109
75
63
51
55
67
87
96
108
74
62
50
54
66
86
95
107
73
61
49
53
65
85
94
106
72
60
48
52
64
84
93
105
71
59
47
51
63
83
92
104
70
58
46
50
62
82
91
103
69
57
45
49
61
81
90
102
68
67
66
65
64
63
62
61
60
59
58
57
56
44
48
60
80
89
90
91
92
93
94
95
96
97
98
99
100
101
55
43
47
59
79
88
54
42
46
58
78
87
53
41
45
57
77
86
52
40
44
56
76
85
51
39
43
55
75
84
50
38
42
54
74
83
49
37
41
53
73
82
48
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
81
47
27
63
80
46
26
62
79
45
25
61
78
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
24
60
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
57
43
23
59
78
66
58
42
22
58
78
67
59
41
21
57
77
68
60
40
20
56
76
69
61
39
19
55
75
70
62
38
18
54
74
71
63
37
17
53
73
72
64
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
63
28
15
53
65
74
62
29
14
54
66
75
61
30
13
55
67
76
60
31
12
56
68
77
59
32
11
57
69
78
58
33
10
58
70
79
57
34
9
59
71
80
56
35
8
60
72
81
55
36
7
59
73
82
54
37
6
58
74
83
53
38
5
57
75
84
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
43
42
41
40
39
4
56
76
77
78
79
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
86
85
53
39
3
55
75
86
54
38
2
54
74
87
55
37
1
53
73
88
56
36
0
121
122
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
80
79
78
77
76
75
74
73
72
71
70
69
68
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
120
91
79
67
71
87
119
90
78
66
70
86
118
89
77
65
69
85
117
88
76
64
68
84
116
87
75
63
67
83
115
86
74
62
66
82
114
85
73
61
65
81
113
84
72
60
64
80
112
83
71
59
63
79
111
82
70
58
62
78
110
81
69
57
61
77
109
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
56
57
58
59
60
61
62
63
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
76
108
96
87
67
55
51
63
75
107
95
86
66
54
50
62
74
106
94
85
65
53
49
61
73
105
93
84
64
52
48
60
72
104
92
83
63
51
47
59
71
103
91
82
62
50
46
58
70
102
90
81
61
49
45
57
69
101
100
99
98
97
96
95
94
93
92
91
90
89
80
60
48
44
56
57
58
59
60
61
62
63
64
65
66
67
68
88
79
59
47
43
55
87
78
58
46
42
54
86
77
57
45
41
53
85
76
56
44
40
52
84
75
55
43
39
51
83
74
54
42
38
50
82
73
53
41
37
49
81
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
48
80
63
27
47
79
62
26
46
78
61
25
45
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
60
24
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
66
78
59
23
43
57
67
78
58
22
42
58
68
77
57
21
41
59
69
76
56
20
40
60
70
75
55
19
39
61
71
74
54
18
38
62
72
73
53
17
37
63
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
64
74
64
53
15
29
63
75
65
54
14
30
62
76
66
55
13
31
61
77
67
56
12
32
60
78
68
57
11
33
59
79
69
58
10
34
58
80
70
59
9
35
57
81
71
60
8
36
56
82
72
59
7
37
55
83
73
58
6
38
54
84
74
57
5
39
53
85
86
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
79
78
77
76
75
56
4
40
41
42
43
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
86
75
55
3
39
53
87
74
54
2
38
54
88
73
53
1
37
55
89
72
52
0
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
100
99
98
97
96
95
94
93
92
91
90
89
88
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
100
108
99
87
91
83
99
107
98
86
90
82
98
106
97
85
89
81
97
105
96
84
88
80
96
104
95
83
87
79
95
103
94
82
86
78
94
102
93
81
85
77
93
101
92
80
84
76
92
100
91
79
83
75
91
99
90
78
82
74
90
98
89
77
81
73
89
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
72
88
76
90
87
75
71
59
71
87
75
91
86
74
70
58
70
86
74
92
85
73
69
57
69
85
73
93
84
72
68
56
68
84
72
94
83
71
67
55
67
83
71
95
82
70
66
54
66
82
70
96
81
69
65
53
65
81
80
79
78
77
76
75
74
73
72
71
70
69
97
80
68
64
52
53
54
55
56
57
58
59
60
61
62
63
64
68
98
79
67
63
51
67
98
78
66
62
50
66
97
77
65
61
49
65
96
76
64
60
48
64
95
75
63
59
47
63
94
74
62
58
46
62
93
73
61
57
45
61
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
44
60
83
47
43
59
82
46
42
58
81
45
41
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
80
44
40
41
42
43
44
43
42
41
40
39
38
37
36
37
38
39
40
46
58
79
43
39
35
47
59
78
42
38
34
48
60
77
41
37
33
49
61
76
40
36
32
50
62
75
39
35
31
51
63
74
38
34
30
52
64
73
37
33
29
53
65
66
67
68
69
70
71
72
73
74
75
76
77
78
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
28
54
75
73
37
23
27
55
76
74
38
22
26
56
77
75
39
21
25
57
78
76
40
20
24
58
79
77
41
19
23
59
80
78
42
18
22
60
81
79
43
17
21
61
82
80
44
16
20
62
83
79
43
15
19
63
84
78
42
14
18
64
85
77
41
13
17
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
76
40
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
66
78
75
39
3
17
67
79
74
38
2
18
68
80
73
37
1
19
69
81
72
36
0
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
109
110
110
109
108
107
106
105
104
103
102
101
100
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
88
96
108
99
87
79
87
95
107
98
86
78
86
94
106
97
85
77
85
93
105
96
84
76
84
92
104
95
83
75
83
91
103
94
82
74
82
90
102
93
81
73
81
89
101
92
80
72
80
88
100
91
79
71
79
87
99
90
78
70
78
86
98
89
77
69
77
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
68
76
64
78
98
87
69
55
67
75
63
79
98
86
70
54
66
74
62
80
97
85
71
53
65
73
61
81
96
84
72
52
64
72
60
82
95
83
73
51
63
71
59
83
94
82
74
50
62
70
58
84
93
81
75
49
61
69
68
67
66
65
64
63
62
61
60
59
58
57
85
92
80
76
48
49
50
51
52
53
54
55
56
57
58
59
60
56
86
91
79
75
47
55
87
90
78
74
46
54
88
89
77
73
45
53
89
88
76
72
44
52
90
87
75
71
43
51
91
86
74
70
42
50
92
85
73
69
41
49
93
92
91
90
89
88
87
86
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
40
48
84
59
39
47
83
58
38
46
82
57
37
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
81
56
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
34
46
80
55
37
23
35
47
79
54
38
22
36
48
78
53
39
21
37
49
77
52
40
20
38
50
76
51
41
19
39
51
75
50
42
18
40
52
74
49
43
17
41
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
16
42
63
74
49
35
15
43
64
75
50
34
14
44
65
76
51
33
13
45
66
77
52
32
12
46
67
78
53
31
11
47
68
79
54
30
10
48
69
80
55
29
9
49
70
81
56
28
8
50
71
82
57
27
7
51
72
83
58
26
6
52
73
84
59
25
5
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
85
60
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
54
66
86
59
17
3
55
67
87
58
18
2
56
68
88
57
19
1
57
69
89
56
20
0
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
101
102
103
104
105
106
107
108
109
110
111
111
110
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
80
88
100
109
97
89
79
87
99
108
96
88
78
86
98
107
95
87
77
85
97
106
94
86
76
84
96
105
93
85
75
83
95
104
92
84
74
82
94
103
91
83
73
81
93
102
90
82
72
80
92
101
89
81
71
79
91
100
88
80
70
78
90
99
87
79
69
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
78
68
56
70
88
99
79
65
77
67
55
71
87
99
80
64
76
66
54
72
86
98
81
63
75
65
53
73
85
97
82
62
74
64
52
74
84
96
83
61
73
63
51
75
83
95
84
60
72
62
50
76
82
94
85
59
71
61
60
59
58
57
56
55
54
53
52
51
50
49
77
81
93
86
58
59
60
61
62
63
64
65
66
67
68
69
70
48
76
80
92
87
57
47
75
79
91
88
56
46
74
78
90
89
55
45
73
77
89
90
54
44
72
76
88
91
53
43
71
75
87
92
52
42
70
74
86
93
51
41
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
91
90
89
88
87
86
87
88
89
90
91
92
93
94
50
40
60
85
49
39
59
84
48
38
58
83
47
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
57
82
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
24
38
56
81
47
35
23
39
55
80
48
36
22
40
54
79
49
37
21
41
53
78
50
38
20
42
52
77
51
39
19
43
51
76
52
40
18
44
50
75
53
41
17
45
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
42
16
37
50
75
63
43
15
36
51
76
64
44
14
35
52
77
65
45
13
34
53
78
66
46
12
33
54
79
67
47
11
32
55
80
68
48
10
31
56
81
69
49
9
30
57
82
70
50
8
29
58
83
71
51
7
28
59
84
72
52
6
27
60
85
73
53
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
61
86
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
4
18
60
87
67
55
3
19
59
88
68
56
2
20
58
89
69
57
1
21
57
90
70
58
0
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
93
89
90
91
92
93
94
95
96
97
98
99
100
101
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
86
92
88
100
109
101
85
91
87
99
108
100
84
90
86
98
107
99
83
89
85
97
106
98
82
88
84
96
105
97
81
87
83
95
104
96
80
86
82
94
103
95
79
85
81
93
102
94
78
84
80
92
101
93
77
83
79
91
100
92
76
82
78
90
99
91
75
63
64
65
66
67
68
69
70
71
72
73
74
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
89
90
91
92
93
94
95
96
97
98
99
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
90
74
62
72
76
88
91
77
89
73
61
71
75
87
92
76
88
72
60
70
74
86
93
75
87
71
59
69
73
85
94
74
86
70
58
68
72
84
95
73
85
69
57
67
71
83
96
72
84
68
56
66
70
82
97
71
83
67
66
65
64
63
62
61
60
59
58
57
56
55
65
69
81
98
70
71
72
73
74
75
76
77
78
79
80
81
82
54
64
68
80
99
69
53
63
67
79
99
68
52
62
66
78
98
67
51
61
65
77
97
66
50
60
64
76
96
65
49
59
63
75
95
64
48
58
62
74
94
63
47
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
62
46
48
84
61
45
47
83
60
44
46
82
59
41
40
39
38
37
38
39
40
41
42
43
44
45
46
45
44
43
45
81
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
36
42
44
80
59
47
35
41
43
79
60
48
34
40
42
78
61
49
33
39
41
77
62
50
32
38
40
76
63
51
31
37
39
75
64
52
30
36
38
74
65
53
29
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
79
78
77
76
75
74
73
72
71
70
69
68
67
66
54
28
25
38
74
75
55
27
24
39
75
76
56
26
23
40
76
77
57
25
22
41
77
78
58
24
21
42
78
79
59
23
20
43
79
80
60
22
19
44
80
81
61
21
18
43
79
82
62
20
17
42
78
83
63
19
16
41
77
84
64
18
15
40
76
85
65
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
39
75
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
18
4
38
74
79
67
19
3
37
73
80
68
20
2
36
72
81
69
21
1
35
71
82
70
22
0
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
69
70
71
72
73
74
75
76
77
78
79
80
81
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
123
122
88
72
68
80
92
121
87
71
67
79
91
120
86
70
66
78
90
119
85
69
65
77
89
118
84
68
64
76
88
117
83
67
63
75
87
116
82
66
62
74
86
115
81
65
61
73
85
114
80
64
60
72
84
113
79
63
59
71
83
112
78
62
58
70
82
111
77
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
64
63
62
61
60
59
58
57
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
99
98
110
76
64
52
56
68
88
97
109
75
63
51
55
67
87
96
108
74
62
50
54
66
86
95
107
73
61
49
53
65
85
94
106
72
60
48
52
64
84
93
105
71
59
47
51
63
83
92
104
70
58
46
50
62
82
91
103
69
68
67
66
65
64
63
62
61
60
59
58
57
45
49
61
81
90
91
92
93
94
95
96
97
98
99
100
101
102
56
44
48
60
80
89
55
43
47
59
79
88
54
42
46
58
78
87
53
41
45
57
77
86
52
40
44
56
76
85
51
39
43
55
75
84
50
38
42
54
74
83
49
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
82
48
28
64
81
47
27
63
80
46
26
62
79
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
25
61
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
58
44
24
60
79
67
59
43
23
59
79
68
60
42
22
58
78
69
61
41
21
57
77
70
62
40
20
56
76
71
63
39
19
55
75
72
64
38
18
54
74
73
63
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
62
29
16
54
66
75
61
30
15
55
67
76
60
31
14
56
68
77
59
32
13
57
69
78
58
33
12
58
70
79
57
34
11
59
71
80
56
35
10
60
72
81
55
36
9
59
73
82
54
37
8
58
74
83
53
38
7
57
75
84
52
39
6
56
76
85
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
43
42
41
40
5
55
77
78
79
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
86
52
38
4
54
74
87
53
37
3
53
73
88
54
36
2
52
72
89
55
35
1
51
71
90
56
34
0
122
123
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
81
80
79
78
77
76
75
74
73
72
71
70
69
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
121
92
80
68
72
88
120
91
79
67
71
87
119
90
78
66
70
86
118
89
77
65
69
85
117
88
76
64
68
84
116
87
75
63
67
83
115
86
74
62
66
82
114
85
73
61
65
81
113
84
72
60
64
80
112
83
71
59
63
79
111
82
70
58
62
78
110
98
99
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
57
58
59
60
61
62
63
64
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
77
109
97
88
68
56
52
64
76
108
96
87
67
55
51
63
75
107
95
86
66
54
50
62
74
106
94
85
65
53
49
61
73
105
93
84
64
52
48
60
72
104
92
83
63
51
47
59
71
103
91
82
62
50
46
58
70
102
101
100
99
98
97
96
95
94
93
92
91
90
81
61
49
45
57
58
59
60
61
62
63
64
65
66
67
68
69
89
80
60
48
44
56
88
79
59
47
43
55
87
78
58
46
42
54
86
77
57
45
41
53
85
76
56
44
40
52
84
75
55
43
39
51
83
74
54
42
38
50
82
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
49
81
64
28
48
80
63
27
47
79
62
26
46
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
61
25
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
67
79
60
24
44
58
68
79
59
23
43
59
69
78
58
22
42
60
70
77
57
21
41
61
71
76
56
20
40
62
72
75
55
19
39
63
73
74
54
18
38
64
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
63
75
65
54
16
30
62
76
66
55
15
31
61
77
67
56
14
32
60
78
68
57
13
33
59
79
69
58
12
34
58
80
70
59
11
35
57
81
71
60
10
36
56
82
72
59
9
37
55
83
73
58
8
38
54
84
74
57
7
39
53
85
75
56
6
40
52
86
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
79
78
77
76
55
5
41
42
43
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
87
74
54
4
38
52
88
73
53
3
37
53
89
72
52
2
36
54
90
71
51
1
35
55
91
70
50
0
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
101
100
99
98
97
96
95
94
93
92
91
90
89
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
101
109
100
88
92
84
100
108
99
87
91
83
99
107
98
86
90
82
98
106
97
85
89
81
97
105
96
84
88
80
96
104
95
83
87
79
95
103
94
82
86
78
94
102
93
81
85
77
93
101
92
80
84
76
92
100
91
79
83
75
91
99
90
78
82
74
90
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
99
98
97
96
95
94
93
92
91
90
89
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
73
89
77
91
88
76
72
60
72
88
76
92
87
75
71
59
71
87
75
93
86
74
70
58
70
86
74
94
85
73
69
57
69
85
73
95
84
72
68
56
68
84
72
96
83
71
67
55
67
83
71
97
82
70
66
54
66
82
81
80
79
78
77
76
75
74
73
72
71
70
98
81
69
65
53
54
55
56
57
58
59
60
61
62
63
64
65
69
99
80
68
64
52
68
99
79
67
63
51
67
98
78
66
62
50
66
97
77
65
61
49
65
96
76
64
60
48
64
95
75
63
59
47
63
94
74
62
58
46
62
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
45
61
84
48
44
60
83
47
43
59
82
46
42
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
81
45
41
42
43
44
45
44
43
42
41
40
39
38
37
38
39
40
41
47
59
80
44
40
36
48
60
79
43
39
35
49
61
78
42
38
34
50
62
77
41
37
33
51
63
76
40
36
32
52
64
75
39
35
31
53
65
74
38
34
30
54
66
67
68
69
70
71
72
73
74
75
76
77
78
79
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
29
55
76
74
38
24
28
56
77
75
39
23
27
57
78
76
40
22
26
58
79
77
41
21
25
59
80
78
42
20
24
60
81
79
43
19
23
61
82
80
44
18
22
62
83
79
43
17
21
63
84
78
42
16
20
64
85
77
41
15
19
65
86
76
40
14
18
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
75
39
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
67
79
74
38
4
18
68
80
73
37
3
19
69
81
72
36
2
20
70
82
71
35
1
21
71
83
70
34
0
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
110
111
111
110
109
108
107
106
105
104
103
102
101
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
89
97
109
100
88
80
88
96
108
99
87
79
87
95
107
98
86
78
86
94
106
97
85
77
85
93
105
96
84
76
84
92
104
95
83
75
83
91
103
94
82
74
82
90
102
93
81
73
81
89
101
92
80
72
80
88
100
91
79
71
79
87
99
90
78
70
78
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
69
77
65
79
99
88
70
56
68
76
64
80
99
87
71
55
67
75
63
81
98
86
72
54
66
74
62
82
97
85
73
53
65
73
61
83
96
84
74
52
64
72
60
84
95
83
75
51
63
71
59
85
94
82
76
50
62
70
69
68
67
66
65
64
63
62
61
60
59
58
86
93
81
77
49
50
51
52
53
54
55
56
57
58
59
60
61
57
87
92
80
76
48
56
88
91
79
75
47
55
89
90
78
74
46
54
90
89
77
73
45
53
91
88
76
72
44
52
92
87
75
71
43
51
93
86
74
70
42
50
94
93
92
91
90
89
88
87
86
87
88
89
90
91
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
41
49
85
60
40
48
84
59
39
47
83
58
38
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
82
57
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
35
47
81
56
38
24
36
48
80
55
39
23
37
49
79
54
40
22
38
50
78
53
41
21
39
51
77
52
42
20
40
52
76
51
43
19
41
53
75
50
44
18
42
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
17
43
64
75
50
36
16
44
65
76
51
35
15
45
66
77
52
34
14
46
67
78
53
33
13
47
68
79
54
32
12
48
69
80
55
31
11
49
70
81
56
30
10
50
71
82
57
29
9
51
72
83
58
28
8
52
73
84
59
27
7
53
74
85
60
26
6
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
86
61
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
55
67
87
60
18
4
56
68
88
59
19
3
57
69
89
58
20
2
58
70
90
57
21
1
59
71
91
56
22
0
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
102
103
104
105
106
107
108
109
110
111
112
112
111
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
81
89
101
110
98
90
80
88
100
109
97
89
79
87
99
108
96
88
78
86
98
107
95
87
77
85
97
106
94
86
76
84
96
105
93
85
75
83
95
104
92
84
74
82
94
103
91
83
73
81
93
102
90
82
72
80
92
101
89
81
71
79
91
100
88
80
70
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
79
69
57
71
89
100
80
66
78
68
56
72
88
100
81
65
77
67
55
73
87
99
82
64
76
66
54
74
86
98
83
63
75
65
53
75
85
97
84
62
74
64
52
76
84
96
85
61
73
63
51
77
83
95
86
60
72
62
61
60
59
58
57
56
55
54
53
52
51
50
78
82
94
87
59
60
61
62
63
64
65
66
67
68
69
70
71
49
77
81
93
88
58
48
76
80
92
89
57
47
75
79
91
90
56
46
74
78
90
91
55
45
73
77
89
92
54
44
72
76
88
93
53
43
71
75
87
94
52
42
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
92
91
90
89
88
87
88
89
90
91
92
93
94
95
51
41
61
86
50
40
60
85
49
39
59
84
48
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
58
83
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
25
39
57
82
48
36
24
40
56
81
49
37
23
41
55
80
50
38
22
42
54
79
51
39
21
43
53
78
52
40
20
44
52
77
53
41
19
45
51
76
54
42
18
46
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
43
17
38
51
76
64
44
16
37
52
77
65
45
15
36
53
78
66
46
14
35
54
79
67
47
13
34
55
80
68
48
12
33
56
81
69
49
11
32
57
82
70
50
10
31
58
83
71
51
9
30
59
84
72
52
8
29
60
85
73
53
7
28
61
86
74
54
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
62
87
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
5
19
61
88
68
56
4
20
60
89
69
57
3
21
59
90
70
58
2
22
58
91
71
59
1
23
57
92
72
60
0
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
94
90
91
92
93
94
95
96
97
98
99
100
101
102
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
87
93
89
101
110
102
86
92
88
100
109
101
85
91
87
99
108
100
84
90
86
98
107
99
83
89
85
97
106
98
82
88
84
96
105
97
81
87
83
95
104
96
80
86
82
94
103
95
79
85
81
93
102
94
78
84
80
92
101
93
77
83
79
91
100
92
76
64
65
66
67
68
69
70
71
72
73
74
75
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
90
91
92
93
94
95
96
97
98
99
100
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
91
75
63
73
77
89
92
78
90
74
62
72
76
88
93
77
89
73
61
71
75
87
94
76
88
72
60
70
74
86
95
75
87
71
59
69
73
85
96
74
86
70
58
68
72
84
97
73
85
69
57
67
71
83
98
72
84
68
67
66
65
64
63
62
61
60
59
58
57
56
66
70
82
99
71
72
73
74
75
76
77
78
79
80
81
82
83
55
65
69
81
100
70
54
64
68
80
100
69
53
63
67
79
99
68
52
62
66
78
98
67
51
61
65
77
97
66
50
60
64
76
96
65
49
59
63
75
95
64
48
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
63
47
49
85
62
46
48
84
61
45
47
83
60
42
41
40
39
38
39
40
41
42
43
44
45
46
47
46
45
44
46
82
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
37
43
45
81
60
48
36
42
44
80
61
49
35
41
43
79
62
50
34
40
42
78
63
51
33
39
41
77
64
52
32
38
40
76
65
53
31
37
39
75
66
54
30
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
80
79
78
77
76
75
74
73
72
71
70
69
68
67
55
29
26
39
75
76
56
28
25
40
76
77
57
27
24
41
77
78
58
26
23
42
78
79
59
25
22
43
79
80
60
24
21
44
80
81
61
23
20
43
79
82
62
22
19
42
78
83
63
21
18
41
77
84
64
20
17
40
76
85
65
19
16
39
75
86
66
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
38
74
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
19
5
37
73
80
68
20
4
36
72
81
69
21
3
35
71
82
70
22
2
34
70
83
71
23
1
33
69
84
72
24
0
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
70
71
72
73
74
75
76
77
78
79
80
81
82
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
89
73
69
81
93
122
88
72
68
80
92
121
87
71
67
79
91
120
86
70
66
78
90
119
85
69
65
77
89
118
84
68
64
76
88
117
83
67
63
75
87
116
82
66
62
74
86
115
81
65
61
73
85
114
80
64
60
72
84
113
79
63
59
71
83
112
78
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
65
64
63
62
61
60
59
58
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
100
99
111
77
65
53
57
69
89
98
110
76
64
52
56
68
88
97
109
75
63
51
55
67
87
96
108
74
62
50
54
66
86
95
107
73
61
49
53
65
85
94
106
72
60
48
52
64
84
93
105
71
59
47
51
63
83
92
104
70
69
68
67
66
65
64
63
62
61
60
59
58
46
50
62
82
91
92
93
94
95
96
97
98
99
100
101
102
103
57
45
49
61
81
90
56
44
48
60
80
89
55
43
47
59
79
88
54
42
46
58
78
87
53
41
45
57
77
86
52
40
44
56
76
85
51
39
43
55
75
84
50
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
83
49
29
65
82
48
28
64
81
47
27
63
80
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
26
62
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
59
45
25
61
80
68
60
44
24
60
80
69
61
43
23
59
79
70
62
42
22
58
78
71
63
41
21
57
77
72
64
40
20
56
76
73
63
39
19
55
75
74
62
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
61
30
17
55
67
76
60
31
16
56
68
77
59
32
15
57
69
78
58
33
14
58
70
79
57
34
13
59
71
80
56
35
12
60
72
81
55
36
11
59
73
82
54
37
10
58
74
83
53
38
9
57
75
84
52
39
8
56
76
85
51
40
7
55
77
86
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
43
42
41
6
54
78
79
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
51
37
5
53
73
87
52
36
4
52
72
88
53
35
3
51
71
89
54
34
2
50
70
90
55
33
1
49
69
91
56
32
0
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
82
81
80
79
78
77
76
75
74
73
72
71
70
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
122
93
81
69
73
89
121
92
80
68
72
88
120
91
79
67
71
87
119
90
78
66
70
86
118
89
77
65
69
85
117
88
76
64
68
84
116
87
75
63
67
83
115
86
74
62
66
82
114
85
73
61
65
81
113
84
72
60
64
80
112
83
71
59
63
79
111
99
100
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
58
59
60
61
62
63
64
65
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
78
110
98
89
69
57
53
65
77
109
97
88
68
56
52
64
76
108
96
87
67
55
51
63
75
107
95
86
66
54
50
62
74
106
94
85
65
53
49
61
73
105
93
84
64
52
48
60
72
104
92
83
63
51
47
59
71
103
102
101
100
99
98
97
96
95
94
93
92
91
82
62
50
46
58
59
60
61
62
63
64
65
66
67
68
69
70
90
81
61
49
45
57
89
80
60
48
44
56
88
79
59
47
43
55
87
78
58
46
42
54
86
77
57
45
41
53
85
76
56
44
40
52
84
75
55
43
39
51
83
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
50
82
65
29
49
81
64
28
48
80
63
27
47
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
62
26
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
68
80
61
25
45
59
69
80
60
24
44
60
70
79
59
23
43
61
71
78
58
22
42
62
72
77
57
21
41
63
73
76
56
20
40
64
74
75
55
19
39
63
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
62
76
66
55
17
31
61
77
67
56
16
32
60
78
68
57
15
33
59
79
69
58
14
34
58
80
70
59
13
35
57
81
71
60
12
36
56
82
72
59
11
37
55
83
73
58
10
38
54
84
74
57
9
39
53
85
75
56
8
40
52
86
76
55
7
41
51
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
79
78
77
54
6
42
43
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
87
73
53
5
37
51
88
72
52
4
36
52
89
71
51
3
35
53
90
70
50
2
34
54
91
69
49
1
33
55
92
68
48
0
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
102
101
100
99
98
97
96
95
94
93
92
91
90
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
102
110
101
89
93
85
101
109
100
88
92
84
100
108
99
87
91
83
99
107
98
86
90
82
98
106
97
85
89
81
97
105
96
84
88
80
96
104
95
83
87
79
95
103
94
82
86
78
94
102
93
81
85
77
93
101
92
80
84
76
92
100
91
79
83
75
91
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
100
99
98
97
96
95
94
93
92
91
90
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
74
90
78
92
89
77
73
61
73
89
77
93
88
76
72
60
72
88
76
94
87
75
71
59
71
87
75
95
86
74
70
58
70
86
74
96
85
73
69
57
69
85
73
97
84
72
68
56
68
84
72
98
83
71
67
55
67
83
82
81
80
79
78
77
76
75
74
73
72
71
99
82
70
66
54
55
56
57
58
59
60
61
62
63
64
65
66
70
100
81
69
65
53
69
100
80
68
64
52
68
99
79
67
63
51
67
98
78
66
62
50
66
97
77
65
61
49
65
96
76
64
60
48
64
95
75
63
59
47
63
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
46
62
85
49
45
61
84
48
44
60
83
47
43
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
82
46
42
43
44
45
46
45
44
43
42
41
40
39
38
39
40
41
42
48
60
81
45
41
37
49
61
80
44
40
36
50
62
79
43
39
35
51
63
78
42
38
34
52
64
77
41
37
33
53
65
76
40
36
32
54
66
75
39
35
31
55
67
68
69
70
71
72
73
74
75
76
77
78
79
80
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
30
56
77
75
39
25
29
57
78
76
40
24
28
58
79
77
41
23
27
59
80
78
42
22
26
60
81
79
43
21
25
61
82
80
44
20
24
62
83
79
43
19
23
63
84
78
42
18
22
64
85
77
41
17
21
65
86
76
40
16
20
66
87
75
39
15
19
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
74
38
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
68
80
73
37
5
19
69
81
72
36
4
20
70
82
71
35
3
21
71
83
70
34
2
22
72
84
69
33
1
23
73
85
68
32
0
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
111
112
112
111
110
109
108
107
106
105
104
103
102
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
90
98
110
101
89
81
89
97
109
100
88
80
88
96
108
99
87
79
87
95
107
98
86
78
86
94
106
97
85
77
85
93
105
96
84
76
84
92
104
95
83
75
83
91
103
94
82
74
82
90
102
93
81
73
81
89
101
92
80
72
80
88
100
91
79
71
79
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
70
78
66
80
100
89
71
57
69
77
65
81
100
88
72
56
68
76
64
82
99
87
73
55
67
75
63
83
98
86
74
54
66
74
62
84
97
85
75
53
65
73
61
85
96
84
76
52
64
72
60
86
95
83
77
51
63
71
70
69
68
67
66
65
64
63
62
61
60
59
87
94
82
78
50
51
52
53
54
55
56
57
58
59
60
61
62
58
88
93
81
77
49
57
89
92
80
76
48
56
90
91
79
75
47
55
91
90
78
74
46
54
92
89
77
73
45
53
93
88
76
72
44
52
94
87
75
71
43
51
95
94
93
92
91
90
89
88
87
88
89
90
91
92
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
42
50
86
61
41
49
85
60
40
48
84
59
39
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
83
58
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
36
48
82
57
39
25
37
49
81
56
40
24
38
50
80
55
41
23
39
51
79
54
42
22
40
52
78
53
43
21
41
53
77
52
44
20
42
54
76
51
45
19
43
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
18
44
65
76
51
37
17
45
66
77
52
36
16
46
67
78
53
35
15
47
68
79
54
34
14
48
69
80
55
33
13
49
70
81
56
32
12
50
71
82
57
31
11
51
72
83
58
30
10
52
73
84
59
29
9
53
74
85
60
28
8
54
75
86
61
27
7
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
87
62
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
56
68
88
61
19
5
57
69
89
60
20
4
58
70
90
59
21
3
59
71
91
58
22
2
60
72
92
57
23
1
61
73
92
56
24
0
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
103
104
105
106
107
108
109
110
111
112
113
113
112
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
82
90
102
111
99
91
81
89
101
110
98
90
80
88
100
109
97
89
79
87
99
108
96
88
78
86
98
107
95
87
77
85
97
106
94
86
76
84
96
105
93
85
75
83
95
104
92
84
74
82
94
103
91
83
73
81
93
102
90
82
72
80
92
101
89
81
71
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
80
70
58
72
90
101
81
67
79
69
57
73
89
101
82
66
78
68
56
74
88
100
83
65
77
67
55
75
87
99
84
64
76
66
54
76
86
98
85
63
75
65
53
77
85
97
86
62
74
64
52
78
84
96
87
61
73
63
62
61
60
59
58
57
56
55
54
53
52
51
79
83
95
88
60
61
62
63
64
65
66
67
68
69
70
71
72
50
78
82
94
89
59
49
77
81
93
90
58
48
76
80
92
91
57
47
75
79
91
92
56
46
74
78
90
93
55
45
73
77
89
94
54
44
72
76
88
95
53
43
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
89
90
91
92
93
94
95
96
52
42
62
87
51
41
61
86
50
40
60
85
49
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
59
84
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
26
40
58
83
49
37
25
41
57
82
50
38
24
42
56
81
51
39
23
43
55
80
52
40
22
44
54
79
53
41
21
45
53
78
54
42
20
46
52
77
55
43
19
47
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
44
18
39
52
77
65
45
17
38
53
78
66
46
16
37
54
79
67
47
15
36
55
80
68
48
14
35
56
81
69
49
13
34
57
82
70
50
12
33
58
83
71
51
11
32
59
84
72
52
10
31
60
85
73
53
9
30
61
86
74
54
8
29
62
87
75
55
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
63
88
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
6
20
62
89
69
57
5
21
61
90
70
58
4
22
60
91
71
59
3
23
59
92
72
60
2
24
58
93
73
61
1
25
57
93
74
62
0
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
91
92
93
94
95
96
97
98
99
100
101
102
103
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
88
94
90
102
111
103
87
93
89
101
110
102
86
92
88
100
109
101
85
91
87
99
108
100
84
90
86
98
107
99
83
89
85
97
106
98
82
88
84
96
105
97
81
87
83
95
104
96
80
86
82
94
103
95
79
85
81
93
102
94
78
84
80
92
101
93
77
65
66
67
68
69
70
71
72
73
74
75
76
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
91
92
93
94
95
96
97
98
99
100
101
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
92
76
64
74
78
90
93
79
91
75
63
73
77
89
94
78
90
74
62
72
76
88
95
77
89
73
61
71
75
87
96
76
88
72
60
70
74
86
97
75
87
71
59
69
73
85
98
74
86
70
58
68
72
84
99
73
85
69
68
67
66
65
64
63
62
61
60
59
58
57
67
71
83
100
72
73
74
75
76
77
78
79
80
81
82
83
84
56
66
70
82
101
71
55
65
69
81
101
70
54
64
68
80
100
69
53
63
67
79
99
68
52
62
66
78
98
67
51
61
65
77
97
66
50
60
64
76
96
65
49
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
64
48
50
86
63
47
49
85
62
46
48
84
61
43
42
41
40
39
40
41
42
43
44
45
46
47
48
47
46
45
47
83
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
38
44
46
82
61
49
37
43
45
81
62
50
36
42
44
80
63
51
35
41
43
79
64
52
34
40
42
78
65
53
33
39
41
77
66
54
32
38
40
76
67
55
31
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
81
80
79
78
77
76
75
74
73
72
71
70
69
68
56
30
27
40
76
77
57
29
26
41
77
78
58
28
25
42
78
79
59
27
24
43
79
80
60
26
23
44
80
81
61
25
22
43
79
82
62
24
21
42
78
83
63
23
20
41
77
84
64
22
19
40
76
85
65
21
18
39
75
86
66
20
17
38
74
87
67
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
37
73
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
20
6
36
72
81
69
21
5
35
71
82
70
22
4
34
70
83
71
23
3
33
69
84
72
24
2
32
68
85
73
25
1
31
67
86
74
26
0
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
71
72
73
74
75
76
77
78
79
80
81
82
83
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
125
124
90
74
70
82
94
123
89
73
69
81
93
122
88
72
68
80
92
121
87
71
67
79
91
120
86
70
66
78
90
119
85
69
65
77
89
118
84
68
64
76
88
117
83
67
63
75
87
116
82
66
62
74
86
115
81
65
61
73
85
114
80
64
60
72
84
113
79
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
66
65
64
63
62
61
60
59
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
101
100
112
78
66
54
58
70
90
99
111
77
65
53
57
69
89
98
110
76
64
52
56
68
88
97
109
75
63
51
55
67
87
96
108
74
62
50
54
66
86
95
107
73
61
49
53
65
85
94
106
72
60
48
52
64
84
93
105
71
70
69
68
67
66
65
64
63
62
61
60
59
47
51
63
83
92
93
94
95
96
97
98
99
100
101
102
103
104
58
46
50
62
82
91
57
45
49
61
81
90
56
44
48
60
80
89
55
43
47
59
79
88
54
42
46
58
78
87
53
41
45
57
77
86
52
40
44
56
76
85
51
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
84
50
30
66
83
49
29
65
82
48
28
64
81
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
27
63
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
60
46
26
62
81
69
61
45
25
61
81
70
62
44
24
60
80
71
63
43
23
59
79
72
64
42
22
58
78
73
63
41
21
57
77
74
62
40
20
56
76
75
61
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
60
31
18
56
68
77
59
32
17
57
69
78
58
33
16
58
70
79
57
34
15
59
71
80
56
35
14
60
72
81
55
36
13
59
73
82
54
37
12
58
74
83
53
38
11
57
75
84
52
39
10
56
76
85
51
40
9
55
77
86
50
41
8
54
78
86
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
43
42
7
53
79
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
50
36
6
52
72
86
51
35
5
51
71
87
52
34
4
50
70
88
53
33
3
49
69
89
54
32
2
48
68
90
55
31
1
47
67
91
56
30
0
124
125
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
83
82
81
80
79
78
77
76
75
74
73
72
71
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
123
94
82
70
74
90
122
93
81
69
73
89
121
92
80
68
72
88
120
91
79
67
71
87
119
90
78
66
70
86
118
89
77
65
69
85
117
88
76
64
68
84
116
87
75
63
67
83
115
86
74
62
66
82
114
85
73
61
65
81
113
84
72
60
64
80
112
100
101
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
59
60
61
62
63
64
65
66
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
79
111
99
90
70
58
54
66
78
110
98
89
69
57
53
65
77
109
97
88
68
56
52
64
76
108
96
87
67
55
51
63
75
107
95
86
66
54
50
62
74
106
94
85
65
53
49
61
73
105
93
84
64
52
48
60
72
104
103
102
101
100
99
98
97
96
95
94
93
92
83
63
51
47
59
60
61
62
63
64
65
66
67
68
69
70
71
91
82
62
50
46
58
90
81
61
49
45
57
89
80
60
48
44
56
88
79
59
47
43
55
87
78
58
46
42
54
86
77
57
45
41
53
85
76
56
44
40
52
84
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
51
83
66
30
50
82
65
29
49
81
64
28
48
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
63
27
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
69
81
62
26
46
60
70
81
61
25
45
61
71
80
60
24
44
62
72
79
59
23
43
63
73
78
58
22
42
64
74
77
57
21
41
63
75
76
56
20
40
62
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
61
77
67
56
18
32
60
78
68
57
17
33
59
79
69
58
16
34
58
80
70
59
15
35
57
81
71
60
14
36
56
82
72
59
13
37
55
83
73
58
12
38
54
84
74
57
11
39
53
85
75
56
10
40
52
86
76
55
9
41
51
86
77
54
8
42
50
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
79
78
53
7
43
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
86
72
52
6
36
50
87
71
51
5
35
51
88
70
50
4
34
52
89
69
49
3
33
53
90
68
48
2
32
54
91
67
47
1
31
55
92
66
46
0
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
103
102
101
100
99
98
97
96
95
94
93
92
91
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
103
111
102
90
94
86
102
110
101
89
93
85
101
109
100
88
92
84
100
108
99
87
91
83
99
107
98
86
90
82
98
106
97
85
89
81
97
105
96
84
88
80
96
104
95
83
87
79
95
103
94
82
86
78
94
102
93
81
85
77
93
101
92
80
84
76
92
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
101
100
99
98
97
96
95
94
93
92
91
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
75
91
79
93
90
78
74
62
74
90
78
94
89
77
73
61
73
89
77
95
88
76
72
60
72
88
76
96
87
75
71
59
71
87
75
97
86
74
70
58
70
86
74
98
85
73
69
57
69
85
73
99
84
72
68
56
68
84
83
82
81
80
79
78
77
76
75
74
73
72
100
83
71
67
55
56
57
58
59
60
61
62
63
64
65
66
67
71
101
82
70
66
54
70
101
81
69
65
53
69
100
80
68
64
52
68
99
79
67
63
51
67
98
78
66
62
50
66
97
77
65
61
49
65
96
76
64
60
48
64
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
47
63
86
50
46
62
85
49
45
61
84
48
44
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
83
47
43
44
45
46
47
46
45
44
43
42
41
40
39
40
41
42
43
49
61
82
46
42
38
50
62
81
45
41
37
51
63
80
44
40
36
52
64
79
43
39
35
53
65
78
42
38
34
54
66
77
41
37
33
55
67
76
40
36
32
56
68
69
70
71
72
73
74
75
76
77
78
79
80
81
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
31
57
78
76
40
26
30
58
79
77
41
25
29
59
80
78
42
24
28
60
81
79
43
23
27
61
82
80
44
22
26
62
83
79
43
21
25
63
84
78
42
20
24
64
85
77
41
19
23
65
86
76
40
18
22
66
87
75
39
17
21
67
88
74
38
16
20
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
73
37
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
69
81
72
36
6
20
70
82
71
35
5
21
71
83
70
34
4
22
72
84
69
33
3
23
73
85
68
32
2
24
74
86
67
31
1
25
75
86
66
30
0
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
112
113
113
112
111
110
109
108
107
106
105
104
103
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
91
99
111
102
90
82
90
98
110
101
89
81
89
97
109
100
88
80
88
96
108
99
87
79
87
95
107
98
86
78
86
94
106
97
85
77
85
93
105
96
84
76
84
92
104
95
83
75
83
91
103
94
82
74
82
90
102
93
81
73
81
89
101
92
80
72
80
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
71
79
67
81
101
90
72
58
70
78
66
82
101
89
73
57
69
77
65
83
100
88
74
56
68
76
64
84
99
87
75
55
67
75
63
85
98
86
76
54
66
74
62
86
97
85
77
53
65
73
61
87
96
84
78
52
64
72
71
70
69
68
67
66
65
64
63
62
61
60
88
95
83
79
51
52
53
54
55
56
57
58
59
60
61
62
63
59
89
94
82
78
50
58
90
93
81
77
49
57
91
92
80
76
48
56
92
91
79
75
47
55
93
90
78
74
46
54
94
89
77
73
45
53
95
88
76
72
44
52
96
95
94
93
92
91
90
89
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
43
51
87
62
42
50
86
61
41
49
85
60
40
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
84
59
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
37
49
83
58
40
26
38
50
82
57
41
25
39
51
81
56
42
24
40
52
80
55
43
23
41
53
79
54
44
22
42
54
78
53
45
21
43
55
77
52
46
20
44
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
19
45
66
77
52
38
18
46
67
78
53
37
17
47
68
79
54
36
16
48
69
80
55
35
15
49
70
81
56
34
14
50
71
82
57
33
13
51
72
83
58
32
12
52
73
84
59
31
11
53
74
85
60
30
10
54
75
86
61
29
9
55
76
87
62
28
8
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
88
63
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
57
69
89
62
20
6
58
70
90
61
21
5
59
71
91
60
22
4
60
72
92
59
23
3
61
73
93
58
24
2
62
74
93
57
25
1
63
75
92
56
26
0
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
104
105
106
107
108
109
110
111
112
113
114
114
113
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
83
91
103
112
100
92
82
90
102
111
99
91
81
89
101
110
98
90
80
88
100
109
97
89
79
87
99
108
96
88
78
86
98
107
95
87
77
85
97
106
94
86
76
84
96
105
93
85
75
83
95
104
92
84
74
82
94
103
91
83
73
81
93
102
90
82
72
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
81
71
59
73
91
102
82
68
80
70
58
74
90
102
83
67
79
69
57
75
89
101
84
66
78
68
56
76
88
100
85
65
77
67
55
77
87
99
86
64
76
66
54
78
86
98
87
63
75
65
53
79
85
97
88
62
74
64
63
62
61
60
59
58
57
56
55
54
53
52
80
84
96
89
61
62
63
64
65
66
67
68
69
70
71
72
73
51
79
83
95
90
60
50
78
82
94
91
59
49
77
81
93
92
58
48
76
80
92
93
57
47
75
79
91
94
56
46
74
78
90
95
55
45
73
77
89
96
54
44
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
90
91
92
93
94
95
96
97
53
43
63
88
52
42
62
87
51
41
61
86
50
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
60
85
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
27
41
59
84
50
38
26
42
58
83
51
39
25
43
57
82
52
40
24
44
56
81
53
41
23
45
55
80
54
42
22
46
54
79
55
43
21
47
53
78
56
44
20
48
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
45
19
40
53
78
66
46
18
39
54
79
67
47
17
38
55
80
68
48
16
37
56
81
69
49
15
36
57
82
70
50
14
35
58
83
71
51
13
34
59
84
72
52
12
33
60
85
73
53
11
32
61
86
74
54
10
31
62
87
75
55
9
30
63
88
76
56
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
64
89
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
7
21
63
90
70
58
6
22
62
91
71
59
5
23
61
92
72
60
4
24
60
93
73
61
3
25
59
94
74
62
2
26
58
94
75
63
1
27
57
93
76
64
0
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
96
92
93
94
95
96
97
98
99
100
101
102
103
104
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
89
95
91
103
112
104
88
94
90
102
111
103
87
93
89
101
110
102
86
92
88
100
109
101
85
91
87
99
108
100
84
90
86
98
107
99
83
89
85
97
106
98
82
88
84
96
105
97
81
87
83
95
104
96
80
86
82
94
103
95
79
85
81
93
102
94
78
66
67
68
69
70
71
72
73
74
75
76
77
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
93
77
65
75
79
91
94
80
92
76
64
74
78
90
95
79
91
75
63
73
77
89
96
78
90
74
62
72
76
88
97
77
89
73
61
71
75
87
98
76
88
72
60
70
74
86
99
75
87
71
59
69
73
85
100
74
86
70
69
68
67
66
65
64
63
62
61
60
59
58
68
72
84
101
73
74
75
76
77
78
79
80
81
82
83
84
85
57
67
71
83
102
72
56
66
70
82
102
71
55
65
69
81
101
70
54
64
68
80
100
69
53
63
67
79
99
68
52
62
66
78
98
67
51
61
65
77
97
66
50
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
65
49
51
87
64
48
50
86
63
47
49
85
62
44
43
42
41
40
41
42
43
44
45
46
47
48
49
48
47
46
48
84
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
39
45
47
83
62
50
38
44
46
82
63
51
37
43
45
81
64
52
36
42
44
80
65
53
35
41
43
79
66
54
34
40
42
78
67
55
33
39
41
77
68
56
32
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
57
31
28
41
77
78
58
30
27
42
78
79
59
29
26
43
79
80
60
28
25
44
80
81
61
27
24
43
79
82
62
26
23
42
78
83
63
25
22
41
77
84
64
24
21
40
76
85
65
23
20
39
75
86
66
22
19
38
74
87
67
21
18
37
73
88
68
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
36
72
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
21
7
35
71
82
70
22
6
34
70
83
71
23
5
33
69
84
72
24
4
32
68
85
73
25
3
31
67
86
74
26
2
30
66
86
75
27
1
29
65
85
76
28
0
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
72
73
74
75
76
77
78
79
80
81
82
83
84
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
126
125
91
75
71
83
95
124
90
74
70
82
94
123
89
73
69
81
93
122
88
72
68
80
92
121
87
71
67
79
91
120
86
70
66
78
90
119
85
69
65
77
89
118
84
68
64
76
88
117
83
67
63
75
87
116
82
66
62
74
86
115
81
65
61
73
85
114
80
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
67
66
65
64
63
62
61
60
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
113
79
67
55
59
71
91
100
112
78
66
54
58
70
90
99
111
77
65
53
57
69
89
98
110
76
64
52
56
68
88
97
109
75
63
51
55
67
87
96
108
74
62
50
54
66
86
95
107
73
61
49
53
65
85
94
106
72
71
70
69
68
67
66
65
64
63
62
61
60
48
52
64
84
93
94
95
96
97
98
99
100
101
102
103
104
105
59
47
51
63
83
92
58
46
50
62
82
91
57
45
49
61
81
90
56
44
48
60
80
89
55
43
47
59
79
88
54
42
46
58
78
87
53
41
45
57
77
86
52
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
85
51
31
67
84
50
30
66
83
49
29
65
82
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
28
64
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
61
47
27
63
82
70
62
46
26
62
82
71
63
45
25
61
81
72
64
44
24
60
80
73
63
43
23
59
79
74
62
42
22
58
78
75
61
41
21
57
77
76
60
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
59
32
19
57
69
78
58
33
18
58
70
79
57
34
17
59
71
80
56
35
16
60
72
81
55
36
15
59
73
82
54
37
14
58
74
83
53
38
13
57
75
84
52
39
12
56
76
85
51
40
11
55
77
86
50
41
10
54
78
86
49
42
9
53
79
85
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
43
8
52
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
49
35
7
51
71
85
50
34
6
50
70
86
51
33
5
49
69
87
52
32
4
48
68
88
53
31
3
47
67
89
54
30
2
46
66
90
55
29
1
45
65
91
56
28
0
125
126
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
84
83
82
81
80
79
78
77
76
75
74
73
72
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
124
95
83
71
75
91
123
94
82
70
74
90
122
93
81
69
73
89
121
92
80
68
72
88
120
91
79
67
71
87
119
90
78
66
70
86
118
89
77
65
69
85
117
88
76
64
68
84
116
87
75
63
67
83
115
86
74
62
66
82
114
85
73
61
65
81
113
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
60
61
62
63
64
65
66
67
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
80
112
100
91
71
59
55
67
79
111
99
90
70
58
54
66
78
110
98
89
69
57
53
65
77
109
97
88
68
56
52
64
76
108
96
87
67
55
51
63
75
107
95
86
66
54
50
62
74
106
94
85
65
53
49
61
73
105
104
103
102
101
100
99
98
97
96
95
94
93
84
64
52
48
60
61
62
63
64
65
66
67
68
69
70
71
72
92
83
63
51
47
59
91
82
62
50
46
58
90
81
61
49
45
57
89
80
60
48
44
56
88
79
59
47
43
55
87
78
58
46
42
54
86
77
57
45
41
53
85
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
52
84
67
31
51
83
66
30
50
82
65
29
49
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
64
28
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
70
82
63
27
47
61
71
82
62
26
46
62
72
81
61
25
45
63
73
80
60
24
44
64
74
79
59
23
43
63
75
78
58
22
42
62
76
77
57
21
41
61
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
60
78
68
57
19
33
59
79
69
58
18
34
58
80
70
59
17
35
57
81
71
60
16
36
56
82
72
59
15
37
55
83
73
58
14
38
54
84
74
57
13
39
53
85
75
56
12
40
52
86
76
55
11
41
51
86
77
54
10
42
50
85
78
53
9
43
49
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
79
52
8
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
85
71
51
7
35
49
86
70
50
6
34
50
87
69
49
5
33
51
88
68
48
4
32
52
89
67
47
3
31
53
90
66
46
2
30
54
91
65
45
1
29
55
92
64
44
0
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
104
103
102
101
100
99
98
97
96
95
94
93
92
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
104
112
103
91
95
87
103
111
102
90
94
86
102
110
101
89
93
85
101
109
100
88
92
84
100
108
99
87
91
83
99
107
98
86
90
82
98
106
97
85
89
81
97
105
96
84
88
80
96
104
95
83
87
79
95
103
94
82
86
78
94
102
93
81
85
77
93
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
76
92
80
94
91
79
75
63
75
91
79
95
90
78
74
62
74
90
78
96
89
77
73
61
73
89
77
97
88
76
72
60
72
88
76
98
87
75
71
59
71
87
75
99
86
74
70
58
70
86
74
100
85
73
69
57
69
85
84
83
82
81
80
79
78
77
76
75
74
73
101
84
72
68
56
57
58
59
60
61
62
63
64
65
66
67
68
72
102
83
71
67
55
71
102
82
70
66
54
70
101
81
69
65
53
69
100
80
68
64
52
68
99
79
67
63
51
67
98
78
66
62
50
66
97
77
65
61
49
65
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
48
64
87
51
47
63
86
50
46
62
85
49
45
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
84
48
44
45
46
47
48
47
46
45
44
43
42
41
40
41
42
43
44
50
62
83
47
43
39
51
63
82
46
42
38
52
64
81
45
41
37
53
65
80
44
40
36
54
66
79
43
39
35
55
67
78
42
38
34
56
68
77
41
37
33
57
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
32
58
79
77
41
27
31
59
80
78
42
26
30
60
81
79
43
25
29
61
82
80
44
24
28
62
83
79
43
23
27
63
84
78
42
22
26
64
85
77
41
21
25
65
86
76
40
20
24
66
87
75
39
19
23
67
88
74
38
18
22
68
89
73
37
17
21
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
72
36
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
70
82
71
35
7
21
71
83
70
34
6
22
72
84
69
33
5
23
73
85
68
32
4
24
74
86
67
31
3
25
75
86
66
30
2
26
76
85
65
29
1
27
77
84
64
28
0
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
113
114
114
113
112
111
110
109
108
107
106
105
104
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
92
100
112
103
91
83
91
99
111
102
90
82
90
98
110
101
89
81
89
97
109
100
88
80
88
96
108
99
87
79
87
95
107
98
86
78
86
94
106
97
85
77
85
93
105
96
84
76
84
92
104
95
83
75
83
91
103
94
82
74
82
90
102
93
81
73
81
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
72
80
68
82
102
91
73
59
71
79
67
83
102
90
74
58
70
78
66
84
101
89
75
57
69
77
65
85
100
88
76
56
68
76
64
86
99
87
77
55
67
75
63
87
98
86
78
54
66
74
62
88
97
85
79
53
65
73
72
71
70
69
68
67
66
65
64
63
62
61
89
96
84
80
52
53
54
55
56
57
58
59
60
61
62
63
64
60
90
95
83
79
51
59
91
94
82
78
50
58
92
93
81
77
49
57
93
92
80
76
48
56
94
91
79
75
47
55
95
90
78
74
46
54
96
89
77
73
45
53
97
96
95
94
93
92
91
90
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
44
52
88
63
43
51
87
62
42
50
86
61
41
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
85
60
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
38
50
84
59
41
27
39
51
83
58
42
26
40
52
82
57
43
25
41
53
81
56
44
24
42
54
80
55
45
23
43
55
79
54
46
22
44
56
78
53
47
21
45
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
20
46
67
78
53
39
19
47
68
79
54
38
18
48
69
80
55
37
17
49
70
81
56
36
16
50
71
82
57
35
15
51
72
83
58
34
14
52
73
84
59
33
13
53
74
85
60
32
12
54
75
86
61
31
11
55
76
87
62
30
10
56
77
88
63
29
9
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
89
64
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
58
70
90
63
21
7
59
71
91
62
22
6
60
72
92
61
23
5
61
73
93
60
24
4
62
74
94
59
25
3
63
75
94
58
26
2
64
76
93
57
27
1
65
77
92
56
28
0
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
105
106
107
108
109
110
111
112
113
114
115
115
114
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
84
92
104
113
101
93
83
91
103
112
100
92
82
90
102
111
99
91
81
89
101
110
98
90
80
88
100
109
97
89
79
87
99
108
96
88
78
86
98
107
95
87
77
85
97
106
94
86
76
84
96
105
93
85
75
83
95
104
92
84
74
82
94
103
91
83
73
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
82
72
60
74
92
103
83
69
81
71
59
75
91
103
84
68
80
70
58
76
90
102
85
67
79
69
57
77
89
101
86
66
78
68
56
78
88
100
87
65
77
67
55
79
87
99
88
64
76
66
54
80
86
98
89
63
75
65
64
63
62
61
60
59
58
57
56
55
54
53
81
85
97
90
62
63
64
65
66
67
68
69
70
71
72
73
74
52
80
84
96
91
61
51
79
83
95
92
60
50
78
82
94
93
59
49
77
81
93
94
58
48
76
80
92
95
57
47
75
79
91
96
56
46
74
78
90
97
55
45
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
95
94
93
92
91
90
91
92
93
94
95
96
97
98
54
44
64
89
53
43
63
88
52
42
62
87
51
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
61
86
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
28
42
60
85
51
39
27
43
59
84
52
40
26
44
58
83
53
41
25
45
57
82
54
42
24
46
56
81
55
43
23
47
55
80
56
44
22
48
54
79
57
45
21
49
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
46
20
41
54
79
67
47
19
40
55
80
68
48
18
39
56
81
69
49
17
38
57
82
70
50
16
37
58
83
71
51
15
36
59
84
72
52
14
35
60
85
73
53
13
34
61
86
74
54
12
33
62
87
75
55
11
32
63
88
76
56
10
31
64
89
77
57
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
65
90
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
8
22
64
91
71
59
7
23
63
92
72
60
6
24
62
93
73
61
5
25
61
94
74
62
4
26
60
95
75
63
3
27
59
95
76
64
2
28
58
94
77
65
1
29
57
93
78
66
0
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
97
93
94
95
96
97
98
99
100
101
102
103
104
105
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
90
96
92
104
113
105
89
95
91
103
112
104
88
94
90
102
111
103
87
93
89
101
110
102
86
92
88
100
109
101
85
91
87
99
108
100
84
90
86
98
107
99
83
89
85
97
106
98
82
88
84
96
105
97
81
87
83
95
104
96
80
86
82
94
103
95
79
67
68
69
70
71
72
73
74
75
76
77
78
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
93
94
95
96
97
98
99
100
101
102
103
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
94
78
66
76
80
92
95
81
93
77
65
75
79
91
96
80
92
76
64
74
78
90
97
79
91
75
63
73
77
89
98
78
90
74
62
72
76
88
99
77
89
73
61
71
75
87
100
76
88
72
60
70
74
86
101
75
87
71
70
69
68
67
66
65
64
63
62
61
60
59
69
73
85
102
74
75
76
77
78
79
80
81
82
83
84
85
86
58
68
72
84
103
73
57
67
71
83
103
72
56
66
70
82
102
71
55
65
69
81
101
70
54
64
68
80
100
69
53
63
67
79
99
68
52
62
66
78
98
67
51
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
66
50
52
88
65
49
51
87
64
48
50
86
63
45
44
43
42
41
42
43
44
45
46
47
48
49
50
49
48
47
49
85
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
40
46
48
84
63
51
39
45
47
83
64
52
38
44
46
82
65
53
37
43
45
81
66
54
36
42
44
80
67
55
35
41
43
79
68
56
34
40
42
78
69
57
33
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
83
82
81
80
79
78
77
76
75
74
73
72
71
70
58
32
29
42
78
79
59
31
28
43
79
80
60
30
27
44
80
81
61
29
26
43
79
82
62
28
25
42
78
83
63
27
24
41
77
84
64
26
23
40
76
85
65
25
22
39
75
86
66
24
21
38
74
87
67
23
20
37
73
88
68
22
19
36
72
89
69
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
35
71
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
22
8
34
70
83
71
23
7
33
69
84
72
24
6
32
68
85
73
25
5
31
67
86
74
26
4
30
66
86
75
27
3
29
65
85
76
28
2
28
64
84
77
29
1
27
63
83
78
30
0
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
73
74
75
76
77
78
79
80
81
82
83
84
85
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
127
126
92
76
72
84
96
125
91
75
71
83
95
124
90
74
70
82
94
123
89
73
69
81
93
122
88
72
68
80
92
121
87
71
67
79
91
120
86
70
66
78
90
119
85
69
65
77
89
118
84
68
64
76
88
117
83
67
63
75
87
116
82
66
62
74
86
115
81
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
68
67
66
65
64
63
62
61
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
103
102
114
80
68
56
60
72
92
101
113
79
67
55
59
71
91
100
112
78
66
54
58
70
90
99
111
77
65
53
57
69
89
98
110
76
64
52
56
68
88
97
109
75
63
51
55
67
87
96
108
74
62
50
54
66
86
95
107
73
72
71
70
69
68
67
66
65
64
63
62
61
49
53
65
85
94
95
96
97
98
99
100
101
102
103
104
105
106
60
48
52
64
84
93
59
47
51
63
83
92
58
46
50
62
82
91
57
45
49
61
81
90
56
44
48
60
80
89
55
43
47
59
79
88
54
42
46
58
78
87
53
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
86
52
32
68
85
51
31
67
84
50
30
66
83
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
29
65
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
62
48
28
64
83
71
63
47
27
63
83
72
64
46
26
62
82
73
63
45
25
61
81
74
62
44
24
60
80
75
61
43
23
59
79
76
60
42
22
58
78
77
59
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
58
33
20
58
70
79
57
34
19
59
71
80
56
35
18
60
72
81
55
36
17
59
73
82
54
37
16
58
74
83
53
38
15
57
75
84
52
39
14
56
76
85
51
40
13
55
77
86
50
41
12
54
78
86
49
42
11
53
79
85
48
43
10
52
80
84
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
9
51
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
48
34
8
50
70
84
49
33
7
49
69
85
50
32
6
48
68
86
51
31
5
47
67
87
52
30
4
46
66
88
53
29
3
45
65
89
54
28
2
44
64
90
55
27
1
43
63
91
56
26
0
126
127
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
85
84
83
82
81
80
79
78
77
76
75
74
73
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
125
96
84
72
76
92
124
95
83
71
75
91
123
94
82
70
74
90
122
93
81
69
73
89
121
92
80
68
72
88
120
91
79
67
71
87
119
90
78
66
70
86
118
89
77
65
69
85
117
88
76
64
68
84
116
87
75
63
67
83
115
86
74
62
66
82
114
102
103
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
61
62
63
64
65
66
67
68
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
81
113
101
92
72
60
56
68
80
112
100
91
71
59
55
67
79
111
99
90
70
58
54
66
78
110
98
89
69
57
53
65
77
109
97
88
68
56
52
64
76
108
96
87
67
55
51
63
75
107
95
86
66
54
50
62
74
106
105
104
103
102
101
100
99
98
97
96
95
94
85
65
53
49
61
62
63
64
65
66
67
68
69
70
71
72
73
93
84
64
52
48
60
92
83
63
51
47
59
91
82
62
50
46
58
90
81
61
49
45
57
89
80
60
48
44
56
88
79
59
47
43
55
87
78
58
46
42
54
86
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
53
85
68
32
52
84
67
31
51
83
66
30
50
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
65
29
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
71
83
64
28
48
62
72
83
63
27
47
63
73
82
62
26
46
64
74
81
61
25
45
63
75
80
60
24
44
62
76
79
59
23
43
61
77
78
58
22
42
60
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
59
79
69
58
20
34
58
80
70
59
19
35
57
81
71
60
18
36
56
82
72
59
17
37
55
83
73
58
16
38
54
84
74
57
15
39
53
85
75
56
14
40
52
86
76
55
13
41
51
86
77
54
12
42
50
85
78
53
11
43
49
84
79
52
10
44
48
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
51
9
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
84
70
50
8
34
48
85
69
49
7
33
49
86
68
48
6
32
50
87
67
47
5
31
51
88
66
46
4
30
52
89
65
45
3
29
53
90
64
44
2
28
54
91
63
43
1
27
55
92
62
42
0
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
105
104
103
102
101
100
99
98
97
96
95
94
93
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
105
113
104
92
96
88
104
112
103
91
95
87
103
111
102
90
94
86
102
110
101
89
93
85
101
109
100
88
92
84
100
108
99
87
91
83
99
107
98
86
90
82
98
106
97
85
89
81
97
105
96
84
88
80
96
104
95
83
87
79
95
103
94
82
86
78
94
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
103
102
101
100
99
98
97
96
95
94
93
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
77
93
81
95
92
80
76
64
76
92
80
96
91
79
75
63
75
91
79
97
90
78
74
62
74
90
78
98
89
77
73
61
73
89
77
99
88
76
72
60
72
88
76
100
87
75
71
59
71
87
75
101
86
74
70
58
70
86
85
84
83
82
81
80
79
78
77
76
75
74
102
85
73
69
57
58
59
60
61
62
63
64
65
66
67
68
69
73
103
84
72
68
56
72
103
83
71
67
55
71
102
82
70
66
54
70
101
81
69
65
53
69
100
80
68
64
52
68
99
79
67
63
51
67
98
78
66
62
50
66
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
49
65
88
52
48
64
87
51
47
63
86
50
46
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
85
49
45
46
47
48
49
48
47
46
45
44
43
42
41
42
43
44
45
51
63
84
48
44
40
52
64
83
47
43
39
53
65
82
46
42
38
54
66
81
45
41
37
55
67
80
44
40
36
56
68
79
43
39
35
57
69
78
42
38
34
58
70
71
72
73
74
75
76
77
78
79
80
81
82
83
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
33
59
80
78
42
28
32
60
81
79
43
27
31
61
82
80
44
26
30
62
83
79
43
25
29
63
84
78
42
24
28
64
85
77
41
23
27
65
86
76
40
22
26
66
87
75
39
21
25
67
88
74
38
20
24
68
89
73
37
19
23
69
90
72
36
18
22
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
71
35
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
71
83
70
34
8
22
72
84
69
33
7
23
73
85
68
32
6
24
74
86
67
31
5
25
75
86
66
30
4
26
76
85
65
29
3
27
77
84
64
28
2
28
78
83
63
27
1
29
79
82
62
26
0
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
114
115
115
114
113
112
111
110
109
108
107
106
105
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
93
101
113
104
92
84
92
100
112
103
91
83
91
99
111
102
90
82
90
98
110
101
89
81
89
97
109
100
88
80
88
96
108
99
87
79
87
95
107
98
86
78
86
94
106
97
85
77
85
93
105
96
84
76
84
92
104
95
83
75
83
91
103
94
82
74
82
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
73
81
69
83
103
92
74
60
72
80
68
84
103
91
75
59
71
79
67
85
102
90
76
58
70
78
66
86
101
89
77
57
69
77
65
87
100
88
78
56
68
76
64
88
99
87
79
55
67
75
63
89
98
86
80
54
66
74
73
72
71
70
69
68
67
66
65
64
63
62
90
97
85
81
53
54
55
56
57
58
59
60
61
62
63
64
65
61
91
96
84
80
52
60
92
95
83
79
51
59
93
94
82
78
50
58
94
93
81
77
49
57
95
92
80
76
48
56
96
91
79
75
47
55
97
90
78
74
46
54
98
97
96
95
94
93
92
91
90
91
92
93
94
95
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
45
53
89
64
44
52
88
63
43
51
87
62
42
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
86
61
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
39
51
85
60
42
28
40
52
84
59
43
27
41
53
83
58
44
26
42
54
82
57
45
25
43
55
81
56
46
24
44
56
80
55
47
23
45
57
79
54
48
22
46
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
21
47
68
79
54
40
20
48
69
80
55
39
19
49
70
81
56
38
18
50
71
82
57
37
17
51
72
83
58
36
16
52
73
84
59
35
15
53
74
85
60
34
14
54
75
86
61
33
13
55
76
87
62
32
12
56
77
88
63
31
11
57
78
89
64
30
10
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
90
65
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
59
71
91
64
22
8
60
72
92
63
23
7
61
73
93
62
24
6
62
74
94
61
25
5
63
75
95
60
26
4
64
76
95
59
27
3
65
77
94
58
28
2
66
78
93
57
29
1
67
79
92
56
30
0
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
106
107
108
109
110
111
112
113
114
115
116
116
115
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
85
93
105
114
102
94
84
92
104
113
101
93
83
91
103
112
100
92
82
90
102
111
99
91
81
89
101
110
98
90
80
88
100
109
97
89
79
87
99
108
96
88
78
86
98
107
95
87
77
85
97
106
94
86
76
84
96
105
93
85
75
83
95
104
92
84
74
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
83
73
61
75
93
104
84
70
82
72
60
76
92
104
85
69
81
71
59
77
91
103
86
68
80
70
58
78
90
102
87
67
79
69
57
79
89
101
88
66
78
68
56
80
88
100
89
65
77
67
55
81
87
99
90
64
76
66
65
64
63
62
61
60
59
58
57
56
55
54
82
86
98
91
63
64
65
66
67
68
69
70
71
72
73
74
75
53
81
85
97
92
62
52
80
84
96
93
61
51
79
83
95
94
60
50
78
82
94
95
59
49
77
81
93
96
58
48
76
80
92
97
57
47
75
79
91
98
56
46
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
96
95
94
93
92
91
92
93
94
95
96
97
98
99
55
45
65
90
54
44
64
89
53
43
63
88
52
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
62
87
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
29
43
61
86
52
40
28
44
60
85
53
41
27
45
59
84
54
42
26
46
58
83
55
43
25
47
57
82
56
44
24
48
56
81
57
45
23
49
55
80
58
46
22
50
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
47
21
42
55
80
68
48
20
41
56
81
69
49
19
40
57
82
70
50
18
39
58
83
71
51
17
38
59
84
72
52
16
37
60
85
73
53
15
36
61
86
74
54
14
35
62
87
75
55
13
34
63
88
76
56
12
33
64
89
77
57
11
32
65
90
78
58
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
66
91
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
9
23
65
92
72
60
8
24
64
93
73
61
7
25
63
94
74
62
6
26
62
95
75
63
5
27
61
96
76
64
4
28
60
96
77
65
3
29
59
95
78
66
2
30
58
94
79
67
1
31
57
93
80
68
0
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
98
94
95
96
97
98
99
100
101
102
103
104
105
106
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
91
97
93
105
114
106
90
96
92
104
113
105
89
95
91
103
112
104
88
94
90
102
111
103
87
93
89
101
110
102
86
92
88
100
109
101
85
91
87
99
108
100
84
90
86
98
107
99
83
89
85
97
106
98
82
88
84
96
105
97
81
87
83
95
104
96
80
68
69
70
71
72
73
74
75
76
77
78
79
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
94
95
96
97
98
99
100
101
102
103
104
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
95
79
67
77
81
93
96
82
94
78
66
76
80
92
97
81
93
77
65
75
79
91
98
80
92
76
64
74
78
90
99
79
91
75
63
73
77
89
100
78
90
74
62
72
76
88
101
77
89
73
61
71
75
87
102
76
88
72
71
70
69
68
67
66
65
64
63
62
61
60
70
74
86
103
75
76
77
78
79
80
81
82
83
84
85
86
87
59
69
73
85
104
74
58
68
72
84
104
73
57
67
71
83
103
72
56
66
70
82
102
71
55
65
69
81
101
70
54
64
68
80
100
69
53
63
67
79
99
68
52
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
67
51
53
89
66
50
52
88
65
49
51
87
64
46
45
44
43
42
43
44
45
46
47
48
49
50
51
50
49
48
50
86
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
41
47
49
85
64
52
40
46
48
84
65
53
39
45
47
83
66
54
38
44
46
82
67
55
37
43
45
81
68
56
36
42
44
80
69
57
35
41
43
79
70
58
34
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
84
83
82
81
80
79
78
77
76
75
74
73
72
71
59
33
30
43
79
80
60
32
29
44
80
81
61
31
28
43
79
82
62
30
27
42
78
83
63
29
26
41
77
84
64
28
25
40
76
85
65
27
24
39
75
86
66
26
23
38
74
87
67
25
22
37
73
88
68
24
21
36
72
89
69
23
20
35
71
90
70
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
34
70
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
23
9
33
69
84
72
24
8
32
68
85
73
25
7
31
67
86
74
26
6
30
66
86
75
27
5
29
65
85
76
28
4
28
64
84
77
29
3
27
63
83
78
30
2
26
62
82
79
31
1
25
61
81
80
32
0
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
74
75
76
77
78
79
80
81
82
83
84
85
86
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
128
127
93
77
73
85
97
126
92
76
72
84
96
125
91
75
71
83
95
124
90
74
70
82
94
123
89
73
69
81
93
122
88
72
68
80
92
121
87
71
67
79
91
120
86
70
66
78
90
119
85
69
65
77
89
118
84
68
64
76
88
117
83
67
63
75
87
116
82
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
69
68
67
66
65
64
63
62
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
104
103
115
81
69
57
61
73
93
102
114
80
68
56
60
72
92
101
113
79
67
55
59
71
91
100
112
78
66
54
58
70
90
99
111
77
65
53
57
69
89
98
110
76
64
52
56
68
88
97
109
75
63
51
55
67
87
96
108
74
73
72
71
70
69
68
67
66
65
64
63
62
50
54
66
86
95
96
97
98
99
100
101
102
103
104
105
106
107
61
49
53
65
85
94
60
48
52
64
84
93
59
47
51
63
83
92
58
46
50
62
82
91
57
45
49
61
81
90
56
44
48
60
80
89
55
43
47
59
79
88
54
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
87
53
33
69
86
52
32
68
85
51
31
67
84
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
30
66
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
63
49
29
65
84
72
64
48
28
64
84
73
63
47
27
63
83
74
62
46
26
62
82
75
61
45
25
61
81
76
60
44
24
60
80
77
59
43
23
59
79
78
58
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
57
34
21
59
71
80
56
35
20
60
72
81
55
36
19
59
73
82
54
37
18
58
74
83
53
38
17
57
75
84
52
39
16
56
76
85
51
40
15
55
77
86
50
41
14
54
78
86
49
42
13
53
79
85
48
43
12
52
80
84
47
44
11
51
79
83
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
10
50
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
47
33
9
49
69
83
48
32
8
48
68
84
49
31
7
47
67
85
50
30
6
46
66
86
51
29
5
45
65
87
52
28
4
44
64
88
53
27
3
43
63
89
54
26
2
42
62
90
55
25
1
41
61
91
56
24
0
127
128
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
86
85
84
83
82
81
80
79
78
77
76
75
74
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
126
97
85
73
77
93
125
96
84
72
76
92
124
95
83
71
75
91
123
94
82
70
74
90
122
93
81
69
73
89
121
92
80
68
72
88
120
91
79
67
71
87
119
90
78
66
70
86
118
89
77
65
69
85
117
88
76
64
68
84
116
87
75
63
67
83
115
103
104
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
62
63
64
65
66
67
68
69
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
82
114
102
93
73
61
57
69
81
113
101
92
72
60
56
68
80
112
100
91
71
59
55
67
79
111
99
90
70
58
54
66
78
110
98
89
69
57
53
65
77
109
97
88
68
56
52
64
76
108
96
87
67
55
51
63
75
107
106
105
104
103
102
101
100
99
98
97
96
95
86
66
54
50
62
63
64
65
66
67
68
69
70
71
72
73
74
94
85
65
53
49
61
93
84
64
52
48
60
92
83
63
51
47
59
91
82
62
50
46
58
90
81
61
49
45
57
89
80
60
48
44
56
88
79
59
47
43
55
87
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
54
86
69
33
53
85
68
32
52
84
67
31
51
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
66
30
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
72
84
65
29
49
63
73
84
64
28
48
64
74
83
63
27
47
63
75
82
62
26
46
62
76
81
61
25
45
61
77
80
60
24
44
60
78
79
59
23
43
59
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
58
80
70
59
21
35
57
81
71
60
20
36
56
82
72
59
19
37
55
83
73
58
18
38
54
84
74
57
17
39
53
85
75
56
16
40
52
86
76
55
15
41
51
86
77
54
14
42
50
85
78
53
13
43
49
84
79
52
12
44
48
83
80
51
11
43
47
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
50
10
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
83
69
49
9
33
47
84
68
48
8
32
48
85
67
47
7
31
49
86
66
46
6
30
50
87
65
45
5
29
51
88
64
44
4
28
52
89
63
43
3
27
53
90
62
42
2
26
54
91
61
41
1
25
55
92
60
40
0
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
106
105
104
103
102
101
100
99
98
97
96
95
94
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
106
114
105
93
97
89
105
113
104
92
96
88
104
112
103
91
95
87
103
111
102
90
94
86
102
110
101
89
93
85
101
109
100
88
92
84
100
108
99
87
91
83
99
107
98
86
90
82
98
106
97
85
89
81
97
105
96
84
88
80
96
104
95
83
87
79
95
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
104
103
102
101
100
99
98
97
96
95
94
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
78
94
82
96
93
81
77
65
77
93
81
97
92
80
76
64
76
92
80
98
91
79
75
63
75
91
79
99
90
78
74
62
74
90
78
100
89
77
73
61
73
89
77
101
88
76
72
60
72
88
76
102
87
75
71
59
71
87
86
85
84
83
82
81
80
79
78
77
76
75
103
86
74
70
58
59
60
61
62
63
64
65
66
67
68
69
70
74
104
85
73
69
57
73
104
84
72
68
56
72
103
83
71
67
55
71
102
82
70
66
54
70
101
81
69
65
53
69
100
80
68
64
52
68
99
79
67
63
51
67
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
50
66
89
53
49
65
88
52
48
64
87
51
47
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
86
50
46
47
48
49
50
49
48
47
46
45
44
43
42
43
44
45
46
52
64
85
49
45
41
53
65
84
48
44
40
54
66
83
47
43
39
55
67
82
46
42
38
56
68
81
45
41
37
57
69
80
44
40
36
58
70
79
43
39
35
59
71
72
73
74
75
76
77
78
79
80
81
82
83
84
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
34
60
81
79
43
29
33
61
82
80
44
28
32
62
83
79
43
27
31
63
84
78
42
26
30
64
85
77
41
25
29
65
86
76
40
24
28
66
87
75
39
23
27
67
88
74
38
22
26
68
89
73
37
21
25
69
90
72
36
20
24
70
91
71
35
19
23
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
70
34
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
72
84
69
33
9
23
73
85
68
32
8
24
74
86
67
31
7
25
75
86
66
30
6
26
76
85
65
29
5
27
77
84
64
28
4
28
78
83
63
27
3
29
79
82
62
26
2
30
80
81
61
25
1
31
81
80
60
24
0
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
115
116
116
115
114
113
112
111
110
109
108
107
106
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
94
102
114
105
93
85
93
101
113
104
92
84
92
100
112
103
91
83
91
99
111
102
90
82
90
98
110
101
89
81
89
97
109
100
88
80
88
96
108
99
87
79
87
95
107
98
86
78
86
94
106
97
85
77
85
93
105
96
84
76
84
92
104
95
83
75
83
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
74
82
70
84
104
93
75
61
73
81
69
85
104
92
76
60
72
80
68
86
103
91
77
59
71
79
67
87
102
90
78
58
70
78
66
88
101
89
79
57
69
77
65
89
100
88
80
56
68
76
64
90
99
87
81
55
67
75
74
73
72
71
70
69
68
67
66
65
64
63
91
98
86
82
54
55
56
57
58
59
60
61
62
63
64
65
66
62
92
97
85
81
53
61
93
96
84
80
52
60
94
95
83
79
51
59
95
94
82
78
50
58
96
93
81
77
49
57
97
92
80
76
48
56
98
91
79
75
47
55
99
98
97
96
95
94
93
92
91
92
93
94
95
96
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
46
54
90
65
45
53
89
64
44
52
88
63
43
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
87
62
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
40
52
86
61
43
29
41
53
85
60
44
28
42
54
84
59
45
27
43
55
83
58
46
26
44
56
82
57
47
25
45
57
81
56
48
24
46
58
80
55
49
23
47
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
22
48
69
80
55
41
21
49
70
81
56
40
20
50
71
82
57
39
19
51
72
83
58
38
18
52
73
84
59
37
17
53
74
85
60
36
16
54
75
86
61
35
15
55
76
87
62
34
14
56
77
88
63
33
13
57
78
89
64
32
12
58
79
90
65
31
11
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
91
66
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
60
72
92
65
23
9
61
73
93
64
24
8
62
74
94
63
25
7
63
75
95
62
26
6
64
76
96
61
27
5
65
77
96
60
28
4
66
78
95
59
29
3
67
79
94
58
30
2
68
80
93
57
31
1
69
81
92
56
32
0
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
107
108
109
110
111
112
113
114
115
116
117
117
116
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
86
94
106
115
103
95
85
93
105
114
102
94
84
92
104
113
101
93
83
91
103
112
100
92
82
90
102
111
99
91
81
89
101
110
98
90
80
88
100
109
97
89
79
87
99
108
96
88
78
86
98
107
95
87
77
85
97
106
94
86
76
84
96
105
93
85
75
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
84
74
62
76
94
105
85
71
83
73
61
77
93
105
86
70
82
72
60
78
92
104
87
69
81
71
59
79
91
103
88
68
80
70
58
80
90
102
89
67
79
69
57
81
89
101
90
66
78
68
56
82
88
100
91
65
77
67
66
65
64
63
62
61
60
59
58
57
56
55
83
87
99
92
64
65
66
67
68
69
70
71
72
73
74
75
76
54
82
86
98
93
63
53
81
85
97
94
62
52
80
84
96
95
61
51
79
83
95
96
60
50
78
82
94
97
59
49
77
81
93
98
58
48
76
80
92
99
57
47
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
97
96
95
94
93
92
93
94
95
96
97
98
99
100
56
46
66
91
55
45
65
90
54
44
64
89
53
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
63
88
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
30
44
62
87
53
41
29
45
61
86
54
42
28
46
60
85
55
43
27
47
59
84
56
44
26
48
58
83
57
45
25
49
57
82
58
46
24
50
56
81
59
47
23
51
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
48
22
43
56
81
69
49
21
42
57
82
70
50
20
41
58
83
71
51
19
40
59
84
72
52
18
39
60
85
73
53
17
38
61
86
74
54
16
37
62
87
75
55
15
36
63
88
76
56
14
35
64
89
77
57
13
34
65
90
78
58
12
33
66
91
79
59
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
67
92
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
10
24
66
93
73
61
9
25
65
94
74
62
8
26
64
95
75
63
7
27
63
96
76
64
6
28
62
97
77
65
5
29
61
97
78
66
4
30
60
96
79
67
3
31
59
95
80
68
2
32
58
94
81
69
1
33
57
93
82
70
0
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
95
96
97
98
99
100
101
102
103
104
105
106
107
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
92
98
94
106
115
107
91
97
93
105
114
106
90
96
92
104
113
105
89
95
91
103
112
104
88
94
90
102
111
103
87
93
89
101
110
102
86
92
88
100
109
101
85
91
87
99
108
100
84
90
86
98
107
99
83
89
85
97
106
98
82
88
84
96
105
97
81
69
70
71
72
73
74
75
76
77
78
79
80
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
95
96
97
98
99
100
101
102
103
104
105
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
96
80
68
78
82
94
97
83
95
79
67
77
81
93
98
82
94
78
66
76
80
92
99
81
93
77
65
75
79
91
100
80
92
76
64
74
78
90
101
79
91
75
63
73
77
89
102
78
90
74
62
72
76
88
103
77
89
73
72
71
70
69
68
67
66
65
64
63
62
61
71
75
87
104
76
77
78
79
80
81
82
83
84
85
86
87
88
60
70
74
86
105
75
59
69
73
85
105
74
58
68
72
84
104
73
57
67
71
83
103
72
56
66
70
82
102
71
55
65
69
81
101
70
54
64
68
80
100
69
53
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
68
52
54
90
67
51
53
89
66
50
52
88
65
47
46
45
44
43
44
45
46
47
48
49
50
51
52
51
50
49
51
87
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
42
48
50
86
65
53
41
47
49
85
66
54
40
46
48
84
67
55
39
45
47
83
68
56
38
44
46
82
69
57
37
43
45
81
70
58
36
42
44
80
71
59
35
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
85
84
83
82
81
80
79
78
77
76
75
74
73
72
60
34
31
44
80
81
61
33
30
43
79
82
62
32
29
42
78
83
63
31
28
41
77
84
64
30
27
40
76
85
65
29
26
39
75
86
66
28
25
38
74
87
67
27
24
37
73
88
68
26
23
36
72
89
69
25
22
35
71
90
70
24
21
34
70
91
71
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
33
69
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
24
10
32
68
85
73
25
9
31
67
86
74
26
8
30
66
86
75
27
7
29
65
85
76
28
6
28
64
84
77
29
5
27
63
83
78
30
4
26
62
82
79
31
3
25
61
81
80
32
2
24
60
80
81
33
1
23
59
79
82
34
0
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
75
76
77
78
79
80
81
82
83
84
85
86
87
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
129
128
94
78
74
86
98
127
93
77
73
85
97
126
92
76
72
84
96
125
91
75
71
83
95
124
90
74
70
82
94
123
89
73
69
81
93
122
88
72
68
80
92
121
87
71
67
79
91
120
86
70
66
78
90
119
85
69
65
77
89
118
84
68
64
76
88
117
83
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
70
69
68
67
66
65
64
63
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
105
104
116
82
70
58
62
74
94
103
115
81
69
57
61
73
93
102
114
80
68
56
60
72
92
101
113
79
67
55
59
71
91
100
112
78
66
54
58
70
90
99
111
77
65
53
57
69
89
98
110
76
64
52
56
68
88
97
109
75
74
73
72
71
70
69
68
67
66
65
64
63
51
55
67
87
96
97
98
99
100
101
102
103
104
105
106
107
108
62
50
54
66
86
95
61
49
53
65
85
94
60
48
52
64
84
93
59
47
51
63
83
92
58
46
50
62
82
91
57
45
49
61
81
90
56
44
48
60
80
89
55
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
88
54
34
70
87
53
33
69
86
52
32
68
85
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
31
67
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
64
50
30
66
85
73
63
49
29
65
85
74
62
48
28
64
84
75
61
47
27
63
83
76
60
46
26
62
82
77
59
45
25
61
81
78
58
44
24
60
80
79
57
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
56
35
22
60
72
81
55
36
21
59
73
82
54
37
20
58
74
83
53
38
19
57
75
84
52
39
18
56
76
85
51
40
17
55
77
86
50
41
16
54
78
86
49
42
15
53
79
85
48
43
14
52
80
84
47
44
13
51
79
83
46
43
12
50
78
82
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
11
49
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
46
32
10
48
68
82
47
31
9
47
67
83
48
30
8
46
66
84
49
29
7
45
65
85
50
28
6
44
64
86
51
27
5
43
63
87
52
26
4
42
62
88
53
25
3
41
61
89
54
24
2
40
60
90
55
23
1
39
59
91
56
22
0
128
129
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
87
86
85
84
83
82
81
80
79
78
77
76
75
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
127
98
86
74
78
94
126
97
85
73
77
93
125
96
84
72
76
92
124
95
83
71
75
91
123
94
82
70
74
90
122
93
81
69
73
89
121
92
80
68
72
88
120
91
79
67
71
87
119
90
78
66
70
86
118
89
77
65
69
85
117
88
76
64
68
84
116
104
105
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
63
64
65
66
67
68
69
70
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
83
115
103
94
74
62
58
70
82
114
102
93
73
61
57
69
81
113
101
92
72
60
56
68
80
112
100
91
71
59
55
67
79
111
99
90
70
58
54
66
78
110
98
89
69
57
53
65
77
109
97
88
68
56
52
64
76
108
107
106
105
104
103
102
101
100
99
98
97
96
87
67
55
51
63
64
65
66
67
68
69
70
71
72
73
74
75
95
86
66
54
50
62
94
85
65
53
49
61
93
84
64
52
48
60
92
83
63
51
47
59
91
82
62
50
46
58
90
81
61
49
45
57
89
80
60
48
44
56
88
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
55
87
70
34
54
86
69
33
53
85
68
32
52
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
67
31
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
73
85
66
30
50
64
74
85
65
29
49
63
75
84
64
28
48
62
76
83
63
27
47
61
77
82
62
26
46
60
78
81
61
25
45
59
79
80
60
24
44
58
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
57
81
71
60
22
36
56
82
72
59
21
37
55
83
73
58
20
38
54
84
74
57
19
39
53
85
75
56
18
40
52
86
76
55
17
41
51
86
77
54
16
42
50
85
78
53
15
43
49
84
79
52
14
44
48
83
80
51
13
43
47
82
79
50
12
42
46
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
49
11
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
82
68
48
10
32
46
83
67
47
9
31
47
84
66
46
8
30
48
85
65
45
7
29
49
86
64
44
6
28
50
87
63
43
5
27
51
88
62
42
4
26
52
89
61
41
3
25
53
90
60
40
2
24
54
91
59
39
1
23
55
92
58
38
0
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
107
106
105
104
103
102
101
100
99
98
97
96
95
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
107
115
106
94
98
90
106
114
105
93
97
89
105
113
104
92
96
88
104
112
103
91
95
87
103
111
102
90
94
86
102
110
101
89
93
85
101
109
100
88
92
84
100
108
99
87
91
83
99
107
98
86
90
82
98
106
97
85
89
81
97
105
96
84
88
80
96
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
105
104
103
102
101
100
99
98
97
96
95
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
79
95
83
97
94
82
78
66
78
94
82
98
93
81
77
65
77
93
81
99
92
80
76
64
76
92
80
100
91
79
75
63
75
91
79
101
90
78
74
62
74
90
78
102
89
77
73
61
73
89
77
103
88
76
72
60
72
88
87
86
85
84
83
82
81
80
79
78
77
76
104
87
75
71
59
60
61
62
63
64
65
66
67
68
69
70
71
75
105
86
74
70
58
74
105
85
73
69
57
73
104
84
72
68
56
72
103
83
71
67
55
71
102
82
70
66
54
70
101
81
69
65
53
69
100
80
68
64
52
68
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
51
67
90
54
50
66
89
53
49
65
88
52
48
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
87
51
47
48
49
50
51
50
49
48
47
46
45
44
43
44
45
46
47
53
65
86
50
46
42
54
66
85
49
45
41
55
67
84
48
44
40
56
68
83
47
43
39
57
69
82
46
42
38
58
70
81
45
41
37
59
71
80
44
40
36
60
72
73
74
75
76
77
78
79
80
81
82
83
84
85
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
35
61
82
80
44
30
34
62
83
79
43
29
33
63
84
78
42
28
32
64
85
77
41
27
31
65
86
76
40
26
30
66
87
75
39
25
29
67
88
74
38
24
28
68
89
73
37
23
27
69
90
72
36
22
26
70
91
71
35
21
25
71
92
70
34
20
24
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
69
33
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
73
85
68
32
10
24
74
86
67
31
9
25
75
86
66
30
8
26
76
85
65
29
7
27
77
84
64
28
6
28
78
83
63
27
5
29
79
82
62
26
4
30
80
81
61
25
3
31
81
80
60
24
2
32
82
79
59
23
1
33
83
78
58
22
0
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
116
117
117
116
115
114
113
112
111
110
109
108
107
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
95
103
115
106
94
86
94
102
114
105
93
85
93
101
113
104
92
84
92
100
112
103
91
83
91
99
111
102
90
82
90
98
110
101
89
81
89
97
109
100
88
80
88
96
108
99
87
79
87
95
107
98
86
78
86
94
106
97
85
77
85
93
105
96
84
76
84
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
75
83
71
85
105
94
76
62
74
82
70
86
105
93
77
61
73
81
69
87
104
92
78
60
72
80
68
88
103
91
79
59
71
79
67
89
102
90
80
58
70
78
66
90
101
89
81
57
69
77
65
91
100
88
82
56
68
76
75
74
73
72
71
70
69
68
67
66
65
64
92
99
87
83
55
56
57
58
59
60
61
62
63
64
65
66
67
63
93
98
86
82
54
62
94
97
85
81
53
61
95
96
84
80
52
60
96
95
83
79
51
59
97
94
82
78
50
58
98
93
81
77
49
57
99
92
80
76
48
56
100
99
98
97
96
95
94
93
92
93
94
95
96
97
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
47
55
91
66
46
54
90
65
45
53
89
64
44
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
88
63
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
41
53
87
62
44
30
42
54
86
61
45
29
43
55
85
60
46
28
44
56
84
59
47
27
45
57
83
58
48
26
46
58
82
57
49
25
47
59
81
56
50
24
48
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
23
49
70
81
56
42
22
50
71
82
57
41
21
51
72
83
58
40
20
52
73
84
59
39
19
53
74
85
60
38
18
54
75
86
61
37
17
55
76
87
62
36
16
56
77
88
63
35
15
57
78
89
64
34
14
58
79
90
65
33
13
59
80
91
66
32
12
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
92
67
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
61
73
93
66
24
10
62
74
94
65
25
9
63
75
95
64
26
8
64
76
96
63
27
7
65
77
97
62
28
6
66
78
97
61
29
5
67
79
96
60
30
4
68
80
95
59
31
3
69
81
94
58
32
2
70
82
93
57
33
1
71
83
92
56
34
0
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
108
109
110
111
112
113
114
115
116
117
118
118
117
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
87
95
107
116
104
96
86
94
106
115
103
95
85
93
105
114
102
94
84
92
104
113
101
93
83
91
103
112
100
92
82
90
102
111
99
91
81
89
101
110
98
90
80
88
100
109
97
89
79
87
99
108
96
88
78
86
98
107
95
87
77
85
97
106
94
86
76
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
85
75
63
77
95
106
86
72
84
74
62
78
94
106
87
71
83
73
61
79
93
105
88
70
82
72
60
80
92
104
89
69
81
71
59
81
91
103
90
68
80
70
58
82
90
102
91
67
79
69
57
83
89
101
92
66
78
68
67
66
65
64
63
62
61
60
59
58
57
56
84
88
100
93
65
66
67
68
69
70
71
72
73
74
75
76
77
55
83
87
99
94
64
54
82
86
98
95
63
53
81
85
97
96
62
52
80
84
96
97
61
51
79
83
95
98
60
50
78
82
94
99
59
49
77
81
93
100
58
48
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
94
95
96
97
98
99
100
101
57
47
67
92
56
46
66
91
55
45
65
90
54
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
64
89
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
31
45
63
88
54
42
30
46
62
87
55
43
29
47
61
86
56
44
28
48
60
85
57
45
27
49
59
84
58
46
26
50
58
83
59
47
25
51
57
82
60
48
24
52
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
49
23
44
57
82
70
50
22
43
58
83
71
51
21
42
59
84
72
52
20
41
60
85
73
53
19
40
61
86
74
54
18
39
62
87
75
55
17
38
63
88
76
56
16
37
64
89
77
57
15
36
65
90
78
58
14
35
66
91
79
59
13
34
67
92
80
60
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
68
93
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
11
25
67
94
74
62
10
26
66
95
75
63
9
27
65
96
76
64
8
28
64
97
77
65
7
29
63
98
78
66
6
30
62
98
79
67
5
31
61
97
80
68
4
32
60
96
81
69
3
33
59
95
82
70
2
34
58
94
83
71
1
35
57
93
84
72
0
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
96
97
98
99
100
101
102
103
104
105
106
107
108
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
93
99
95
107
116
108
92
98
94
106
115
107
91
97
93
105
114
106
90
96
92
104
113
105
89
95
91
103
112
104
88
94
90
102
111
103
87
93
89
101
110
102
86
92
88
100
109
101
85
91
87
99
108
100
84
90
86
98
107
99
83
89
85
97
106
98
82
70
71
72
73
74
75
76
77
78
79
80
81
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
97
81
69
79
83
95
98
84
96
80
68
78
82
94
99
83
95
79
67
77
81
93
100
82
94
78
66
76
80
92
101
81
93
77
65
75
79
91
102
80
92
76
64
74
78
90
103
79
91
75
63
73
77
89
104
78
90
74
73
72
71
70
69
68
67
66
65
64
63
62
72
76
88
105
77
78
79
80
81
82
83
84
85
86
87
88
89
61
71
75
87
106
76
60
70
74
86
106
75
59
69
73
85
105
74
58
68
72
84
104
73
57
67
71
83
103
72
56
66
70
82
102
71
55
65
69
81
101
70
54
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
69
53
55
91
68
52
54
90
67
51
53
89
66
48
47
46
45
44
45
46
47
48
49
50
51
52
53
52
51
50
52
88
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
43
49
51
87
66
54
42
48
50
86
67
55
41
47
49
85
68
56
40
46
48
84
69
57
39
45
47
83
70
58
38
44
46
82
71
59
37
43
45
81
72
60
36
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
61
35
32
43
79
82
62
34
31
42
78
83
63
33
30
41
77
84
64
32
29
40
76
85
65
31
28
39
75
86
66
30
27
38
74
87
67
29
26
37
73
88
68
28
25
36
72
89
69
27
24
35
71
90
70
26
23
34
70
91
71
25
22
33
69
92
72
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
32
68
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
25
11
31
67
86
74
26
10
30
66
86
75
27
9
29
65
85
76
28
8
28
64
84
77
29
7
27
63
83
78
30
6
26
62
82
79
31
5
25
61
81
80
32
4
24
60
80
81
33
3
23
59
79
82
34
2
22
58
78
83
35
1
21
57
77
84
36
0
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
95
96
97
98
99
100
101
102
103
104
105
106
107
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
94
98
94
106
117
109
93
97
93
105
116
108
92
96
92
104
115
107
91
95
91
103
114
106
90
94
90
102
113
105
89
93
89
101
112
104
88
92
88
100
111
103
87
91
87
99
110
102
86
90
86
98
109
101
85
89
85
97
108
100
84
88
84
96
107
99
83
71
72
73
74
75
76
77
78
79
80
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
98
82
70
78
82
94
99
85
97
81
69
77
81
93
100
84
96
80
68
76
80
92
101
83
95
79
67
75
79
91
102
82
94
78
66
74
78
90
103
81
93
77
65
73
77
89
104
80
92
76
64
72
76
88
105
79
91
75
74
73
72
71
70
69
68
67
66
65
64
63
71
75
87
106
78
79
80
81
82
83
84
85
86
87
88
89
90
62
70
74
86
106
77
61
69
73
85
105
76
60
68
72
84
104
75
59
67
71
83
103
74
58
66
70
82
102
73
57
65
69
81
101
72
56
64
68
80
100
71
55
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
70
54
54
90
69
53
53
89
68
52
52
88
67
49
48
47
46
45
46
47
48
49
50
51
52
53
54
53
52
51
51
87
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
44
50
50
86
67
55
43
49
49
85
68
56
42
48
48
84
69
57
41
47
47
83
70
58
40
46
46
82
71
59
39
45
45
81
72
60
38
44
44
80
73
61
37
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
62
36
33
42
78
83
63
35
32
41
77
84
64
34
31
40
76
85
65
33
30
39
75
86
66
32
29
38
74
87
67
31
28
37
73
88
68
30
27
36
72
89
69
29
26
35
71
90
70
28
25
34
70
91
71
27
24
33
69
92
72
26
23
32
68
93
73
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
31
67
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
26
12
30
66
86
75
27
11
29
65
85
76
28
10
28
64
84
77
29
9
27
63
83
78
30
8
26
62
82
79
31
7
25
61
81
80
32
6
24
60
80
81
33
5
23
59
79
82
34
4
22
58
78
83
35
3
21
57
77
84
36
2
20
56
76
85
37
1
0
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
94
95
96
97
98
99
100
101
102
103
104
105
106
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
95
97
93
105
117
110
94
96
92
104
116
109
93
95
91
103
115
108
92
94
90
102
114
107
91
93
89
101
113
106
90
92
88
100
112
105
89
91
87
99
111
104
88
90
86
98
110
103
87
89
85
97
109
102
86
88
84
96
108
101
85
87
83
95
107
100
84
72
73
74
75
76
77
78
79
80
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
99
83
71
77
81
93
100
86
98
82
70
76
80
92
101
85
97
81
69
75
79
91
102
84
96
80
68
74
78
90
103
83
95
79
67
73
77
89
104
82
94
78
66
72
76
88
105
81
93
77
65
71
75
87
106
80
92
76
75
74
73
72
71
70
69
68
67
66
65
64
70
74
86
106
79
80
81
82
83
84
85
86
87
88
89
90
91
63
69
73
85
105
78
62
68
72
84
104
77
61
67
71
83
103
76
60
66
70
82
102
75
59
65
69
81
101
74
58
64
68
80
100
73
57
63
67
79
99
72
56
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
71
55
53
89
70
54
52
88
69
53
51
87
68
50
49
48
47
46
47
48
49
50
51
52
53
54
55
54
53
52
50
86
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
45
51
49
85
68
56
44
50
48
84
69
57
43
49
47
83
70
58
42
48
46
82
71
59
41
47
45
81
72
60
40
46
44
80
73
61
39
45
43
79
74
62
38
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
63
37
34
41
77
84
64
36
33
40
76
85
65
35
32
39
75
86
66
34
31
38
74
87
67
33
30
37
73
88
68
32
29
36
72
89
69
31
28
35
71
90
70
30
27
34
70
91
71
29
26
33
69
92
72
28
25
32
68
93
73
27
24
31
67
94
74
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
30
66
94
93
92
91
90
89
88
87
86
86
85
84
83
82
81
80
79
78
77
76
75
27
13
29
65
85
76
28
12
28
64
84
77
29
11
27
63
83
78
30
10
26
62
82
79
31
9
25
61
81
80
32
8
24
60
80
81
33
7
23
59
79
82
34
6
22
58
78
83
35
5
21
57
77
84
36
4
20
56
76
85
37
3
19
55
75
86
38
2
1
0
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
93
94
95
96
97
98
99
100
101
102
103
104
105
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
96
96
92
104
116
111
95
95
91
103
115
110
94
94
90
102
114
109
93
93
89
101
113
108
92
92
88
100
112
107
91
91
87
99
111
106
90
90
86
98
110
105
89
89
85
97
109
104
88
88
84
96
108
103
87
87
83
95
107
102
86
86
82
94
106
101
85
73
74
75
76
77
78
79
80
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
100
84
72
76
80
92
101
87
99
83
71
75
79
91
102
86
98
82
70
74
78
90
103
85
97
81
69
73
77
89
104
84
96
80
68
72
76
88
105
83
95
79
67
71
75
87
106
82
94
78
66
70
74
86
106
81
93
77
76
75
74
73
72
71
70
69
68
67
66
65
69
73
85
105
80
81
82
83
84
85
86
87
88
89
90
91
92
64
68
72
84
104
79
63
67
71
83
103
78
62
66
70
82
102
77
61
65
69
81
101
76
60
64
68
80
100
75
59
63
67
79
99
74
58
62
66
78
98
73
57
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
72
56
52
88
71
55
51
87
70
54
50
86
69
51
50
49
48
47
48
49
50
51
52
53
54
55
56
55
54
53
49
85
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
46
52
48
84
69
57
45
51
47
83
70
58
44
50
46
82
71
59
43
49
45
81
72
60
42
48
44
80
73
61
41
47
43
79
74
62
40
46
42
78
75
63
39
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
64
38
35
40
76
85
65
37
34
39
75
86
66
36
33
38
74
87
67
35
32
37
73
88
68
34
31
36
72
89
69
33
30
35
71
90
70
32
29
34
70
91
71
31
28
33
69
92
72
30
27
32
68
93
73
29
26
31
67
94
74
28
25
30
66
94
75
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
29
65
93
92
91
90
89
88
87
86
85
86
86
85
84
83
82
81
80
79
78
77
76
28
14
28
64
84
77
29
13
27
63
83
78
30
12
26
62
82
79
31
11
25
61
81
80
32
10
24
60
80
81
33
9
23
59
79
82
34
8
22
58
78
83
35
7
21
57
77
84
36
6
20
56
76
85
37
5
19
55
75
86
38
4
18
54
74
87
39
3
2
1
0
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
92
93
94
95
96
97
98
99
100
101
102
103
104
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
97
95
91
103
115
112
96
94
90
102
114
111
95
93
89
101
113
110
94
92
88
100
112
109
93
91
87
99
111
108
92
90
86
98
110
107
91
89
85
97
109
106
90
88
84
96
108
105
89
87
83
95
107
104
88
86
82
94
106
103
87
85
81
93
105
102
86
74
75
76
77
78
79
80
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
101
85
73
75
79
91
102
88
100
84
72
74
78
90
103
87
99
83
71
73
77
89
104
86
98
82
70
72
76
88
105
85
97
81
69
71
75
87
106
84
96
80
68
70
74
86
106
83
95
79
67
69
73
85
105
82
94
78
77
76
75
74
73
72
71
70
69
68
67
66
68
72
84
104
81
82
83
84
85
86
87
88
89
90
91
92
93
65
67
71
83
103
80
64
66
70
82
102
79
63
65
69
81
101
78
62
64
68
80
100
77
61
63
67
79
99
76
60
62
66
78
98
75
59
61
65
77
97
74
58
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
73
57
51
87
72
56
50
86
71
55
49
85
70
52
51
50
49
48
49
50
51
52
53
54
55
56
57
56
55
54
48
84
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
47
53
47
83
70
58
46
52
46
82
71
59
45
51
45
81
72
60
44
50
44
80
73
61
43
49
43
79
74
62
42
48
42
78
75
63
41
47
41
77
76
64
40
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
65
39
36
39
75
86
66
38
35
38
74
87
67
37
34
37
73
88
68
36
33
36
72
89
69
35
32
35
71
90
70
34
31
34
70
91
71
33
30
33
69
92
72
32
29
32
68
93
73
31
28
31
67
94
74
30
27
30
66
94
75
29
26
29
65
93
76
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
28
64
92
91
90
89
88
87
86
85
84
85
86
86
85
84
83
82
81
80
79
78
77
29
15
27
63
83
78
30
14
26
62
82
79
31
13
25
61
81
80
32
12
24
60
80
81
33
11
23
59
79
82
34
10
22
58
78
83
35
9
21
57
77
84
36
8
20
56
76
85
37
7
19
55
75
86
38
6
18
54
74
87
39
5
17
53
73
88
40
4
3
2
1
0
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
91
92
93
94
95
96
97
98
99
100
101
102
103
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
98
94
90
102
114
113
97
93
89
101
113
112
96
92
88
100
112
111
95
91
87
99
111
110
94
90
86
98
110
109
93
89
85
97
109
108
92
88
84
96
108
107
91
87
83
95
107
106
90
86
82
94
106
105
89
85
81
93
105
104
88
84
80
92
104
103
87
75
76
77
78
79
80
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
102
86
74
74
78
90
103
89
101
85
73
73
77
89
104
88
100
84
72
72
76
88
105
87
99
83
71
71
75
87
106
86
98
82
70
70
74
86
106
85
97
81
69
69
73
85
105
84
96
80
68
68
72
84
104
83
95
79
78
77
76
75
74
73
72
71
70
69
68
67
67
71
83
103
82
83
84
85
86
87
88
89
90
91
92
93
94
66
66
70
82
102
81
65
65
69
81
101
80
64
64
68
80
100
79
63
63
67
79
99
78
62
62
66
78
98
77
61
61
65
77
97
76
60
60
64
76
96
75
59
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
74
58
50
86
73
57
49
85
72
56
48
84
71
53
52
51
50
49
50
51
52
53
54
55
56
57
58
57
56
55
47
83
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
48
54
46
82
71
59
47
53
45
81
72
60
46
52
44
80
73
61
45
51
43
79
74
62
44
50
42
78
75
63
43
49
41
77
76
64
42
48
40
76
77
65
41
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
66
40
37
38
74
87
67
39
36
37
73
88
68
38
35
36
72
89
69
37
34
35
71
90
70
36
33
34
70
91
71
35
32
33
69
92
72
34
31
32
68
93
73
33
30
31
67
94
74
32
29
30
66
94
75
31
28
29
65
93
76
30
27
28
64
92
77
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
63
91
90
89
88
87
86
85
84
83
84
85
86
86
85
84
83
82
81
80
79
78
30
16
26
62
82
79
31
15
25
61
81
80
32
14
24
60
80
81
33
13
23
59
79
82
34
12
22
58
78
83
35
11
21
57
77
84
36
10
20
56
76
85
37
9
19
55
75
86
38
8
18
54
74
87
39
7
17
53
73
88
40
6
16
52
72
89
41
5
4
3
2
1
0
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
90
91
92
93
94
95
96
97
98
99
100
101
102
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
99
93
89
101
113
114
98
92
88
100
112
113
97
91
87
99
111
112
96
90
86
98
110
111
95
89
85
97
109
110
94
88
84
96
108
109
93
87
83
95
107
108
92
86
82
94
106
107
91
85
81
93
105
106
90
84
80
92
104
105
89
83
79
91
103
104
88
76
77
78
79
80
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
103
87
75
73
77
89
104
90
102
86
74
72
76
88
105
89
101
85
73
71
75
87
106
88
100
84
72
70
74
86
106
87
99
83
71
69
73
85
105
86
98
82
70
68
72
84
104
85
97
81
69
67
71
83
103
84
96
80
79
78
77
76
75
74
73
72
71
70
69
68
66
70
82
102
83
84
85
86
87
88
89
90
91
92
93
94
95
67
65
69
81
101
82
66
64
68
80
100
81
65
63
67
79
99
80
64
62
66
78
98
79
63
61
65
77
97
78
62
60
64
76
96
77
61
59
63
75
95
76
60
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
75
59
49
85
74
58
48
84
73
57
47
83
72
54
53
52
51
50
51
52
53
54
55
56
57
58
59
58
57
56
46
82
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
49
55
45
81
72
60
48
54
44
80
73
61
47
53
43
79
74
62
46
52
42
78
75
63
45
51
41
77
76
64
44
50
40
76
77
65
43
49
39
75
78
66
42
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
67
41
38
37
73
87
68
40
37
36
72
88
69
39
36
35
71
89
70
38
35
34
70
90
71
37
34
33
69
91
72
36
33
32
68
92
73
35
32
31
67
93
74
34
31
30
66
94
75
33
30
29
65
93
76
32
29
28
64
92
77
31
28
27
63
91
78
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
26
62
90
89
88
87
86
85
84
83
82
83
84
85
86
86
85
84
83
82
81
80
79
31
17
25
61
81
80
32
16
24
60
80
81
33
15
23
59
79
82
34
14
22
58
78
83
35
13
21
57
77
84
36
12
20
56
76
85
37
11
19
55
75
86
38
10
18
54
74
87
39
9
17
53
73
88
40
8
16
52
72
89
41
7
15
51
71
90
42
6
5
4
3
2
1
0
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
89
90
91
92
93
94
95
96
97
98
99
100
101
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
100
92
88
100
112
115
99
91
87
99
111
114
98
90
86
98
110
113
97
89
85
97
109
112
96
88
84
96
108
111
95
87
83
95
107
110
94
86
82
94
106
109
93
85
81
93
105
108
92
84
80
92
104
107
91
83
79
91
103
106
90
82
78
90
102
105
89
77
78
79
80
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
104
88
76
72
76
88
105
91
103
87
75
71
75
87
106
90
102
86
74
70
74
86
106
89
101
85
73
69
73
85
105
88
100
84
72
68
72
84
104
87
99
83
71
67
71
83
103
86
98
82
70
66
70
82
102
85
97
81
80
79
78
77
76
75
74
73
72
71
70
69
65
69
81
101
84
85
86
87
88
89
90
91
92
93
94
95
96
68
64
68
80
100
83
67
63
67
79
99
82
66
62
66
78
98
81
65
61
65
77
97
80
64
60
64
76
96
79
63
59
63
75
95
78
62
58
62
74
94
77
61
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
76
60
48
84
75
59
47
83
74
58
46
82
73
55
54
53
52
51
52
53
54
55
56
57
58
59
60
59
58
57
45
81
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
50
56
44
80
73
61
49
55
43
79
74
62
48
54
42
78
75
63
47
53
41
77
76
64
46
52
40
76
77
65
45
51
39
75
78
66
44
50
38
74
79
67
43
49
48
47
46
45
44
43
42
41
40
41
42
43
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
68
42
39
36
72
86
69
41
38
35
71
87
70
40
37
34
70
88
71
39
36
33
69
89
72
38
35
32
68
90
73
37
34
31
67
91
74
36
33
30
66
92
75
35
32
29
65
93
76
34
31
28
64
92
77
33
30
27
63
91
78
32
29
26
62
90
79
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
25
61
89
88
87
86
85
84
83
82
81
82
83
84
85
86
86
85
84
83
82
81
80
32
18
24
60
80
81
33
17
23
59
79
82
34
16
22
58
78
83
35
15
21
57
77
84
36
14
20
56
76
85
37
13
19
55
75
86
38
12
18
54
74
87
39
11
17
53
73
88
40
10
16
52
72
89
41
9
15
51
71
90
42
8
14
50
70
91
43
7
6
5
4
3
2
1
0
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
88
89
90
91
92
93
94
95
96
97
98
99
100
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
101
91
87
99
111
116
100
90
86
98
110
115
99
89
85
97
109
114
98
88
84
96
108
113
97
87
83
95
107
112
96
86
82
94
106
111
95
85
81
93
105
110
94
84
80
92
104
109
93
83
79
91
103
108
92
82
78
90
102
107
91
81
77
89
101
106
90
78
79
80
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
105
89
77
71
75
87
106
92
104
88
76
70
74
86
106
91
103
87
75
69
73
85
105
90
102
86
74
68
72
84
104
89
101
85
73
67
71
83
103
88
100
84
72
66
70
82
102
87
99
83
71
65
69
81
101
86
98
82
81
80
79
78
77
76
75
74
73
72
71
70
64
68
80
100
85
86
87
88
89
90
91
92
93
94
95
96
97
69
63
67
79
99
84
68
62
66
78
98
83
67
61
65
77
97
82
66
60
64
76
96
81
65
59
63
75
95
80
64
58
62
74
94
79
63
57
61
73
93
78
62
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
77
61
47
83
76
60
46
82
75
59
45
81
74
56
55
54
53
52
53
54
55
56
57
58
59
60
61
60
59
58
44
80
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
51
57
43
79
74
62
50
56
42
78
75
63
49
55
41
77
76
64
48
54
40
76
77
65
47
53
39
75
78
66
46
52
38
74
79
67
45
51
37
73
80
68
44
50
49
48
47
46
45
44
43
42
41
42
43
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
69
43
40
35
71
85
70
42
39
34
70
86
71
41
38
33
69
87
72
40
37
32
68
88
73
39
36
31
67
89
74
38
35
30
66
90
75
37
34
29
65
91
76
36
33
28
64
92
77
35
32
27
63
91
78
34
31
26
62
90
79
33
30
25
61
89
80
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
24
60
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
86
85
84
83
82
81
33
19
23
59
79
82
34
18
22
58
78
83
35
17
21
57
77
84
36
16
20
56
76
85
37
15
19
55
75
86
38
14
18
54
74
87
39
13
17
53
73
88
40
12
16
52
72
89
41
11
15
51
71
90
42
10
14
50
70
91
43
9
13
49
69
92
44
8
7
6
5
4
3
2
1
0
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
87
88
89
90
91
92
93
94
95
96
97
98
99
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
102
90
86
98
110
117
101
89
85
97
109
116
100
88
84
96
108
115
99
87
83
95
107
114
98
86
82
94
106
113
97
85
81
93
105
112
96
84
80
92
104
111
95
83
79
91
103
110
94
82
78
90
102
109
93
81
77
89
101
108
92
80
76
88
100
107
91
79
80
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
106
90
78
70
74
86
106
93
105
89
77
69
73
85
105
92
104
88
76
68
72
84
104
91
103
87
75
67
71
83
103
90
102
86
74
66
70
82
102
89
101
85
73
65
69
81
101
88
100
84
72
64
68
80
100
87
99
83
82
81
80
79
78
77
76
75
74
73
72
71
63
67
79
99
86
87
88
89
90
91
92
93
94
95
96
97
98
70
62
66
78
98
85
69
61
65
77
97
84
68
60
64
76
96
83
67
59
63
75
95
82
66
58
62
74
94
81
65
57
61
73
93
80
64
56
60
72
92
79
63
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
78
62
46
82
77
61
45
81
76
60
44
80
75
57
56
55
54
53
54
55
56
57
58
59
60
61
62
61
60
59
43
79
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
52
58
42
78
75
63
51
57
41
77
76
64
50
56
40
76
77
65
49
55
39
75
78
66
48
54
38
74
79
67
47
53
37
73
80
68
46
52
36
72
81
69
45
51
50
49
48
47
46
45
44
43
42
43
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
70
44
41
34
70
84
71
43
40
33
69
85
72
42
39
32
68
86
73
41
38
31
67
87
74
40
37
30
66
88
75
39
36
29
65
89
76
38
35
28
64
90
77
37
34
27
63
91
78
36
33
26
62
90
79
35
32
25
61
89
80
34
31
24
60
88
81
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
23
59
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
86
85
84
83
82
34
20
22
58
78
83
35
19
21
57
77
84
36
18
20
56
76
85
37
17
19
55
75
86
38
16
18
54
74
87
39
15
17
53
73
88
40
14
16
52
72
89
41
13
15
51
71
90
42
12
14
50
70
91
43
11
13
49
69
92
44
10
12
48
68
93
45
9
8
7
6
5
4
3
2
1
0
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
86
87
88
89
90
91
92
93
94
95
96
97
98
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
103
89
85
97
109
118
102
88
84
96
108
117
101
87
83
95
107
116
100
86
82
94
106
115
99
85
81
93
105
114
98
84
80
92
104
113
97
83
79
91
103
112
96
82
78
90
102
111
95
81
77
89
101
110
94
80
76
88
100
109
93
79
75
87
99
108
92
80
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
107
91
79
69
73
85
105
94
106
90
78
68
72
84
104
93
105
89
77
67
71
83
103
92
104
88
76
66
70
82
102
91
103
87
75
65
69
81
101
90
102
86
74
64
68
80
100
89
101
85
73
63
67
79
99
88
100
84
83
82
81
80
79
78
77
76
75
74
73
72
62
66
78
98
87
88
89
90
91
92
93
94
95
96
97
98
99
71
61
65
77
97
86
70
60
64
76
96
85
69
59
63
75
95
84
68
58
62
74
94
83
67
57
61
73
93
82
66
56
60
72
92
81
65
55
59
71
91
80
64
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
79
63
45
81
78
62
44
80
77
61
43
79
76
58
57
56
55
54
55
56
57
58
59
60
61
62
63
62
61
60
42
78
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
53
59
41
77
76
64
52
58
40
76
77
65
51
57
39
75
78
66
50
56
38
74
79
67
49
55
37
73
80
68
48
54
36
72
81
69
47
53
35
71
82
70
46
52
51
50
49
48
47
46
45
44
43
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
71
45
42
33
69
83
72
44
41
32
68
84
73
43
40
31
67
85
74
42
39
30
66
86
75
41
38
29
65
87
76
40
37
28
64
88
77
39
36
27
63
89
78
38
35
26
62
90
79
37
34
25
61
89
80
36
33
24
60
88
81
35
32
23
59
87
82
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
22
58
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
86
85
84
83
35
21
21
57
77
84
36
20
20
56
76
85
37
19
19
55
75
86
38
18
18
54
74
87
39
17
17
53
73
88
40
16
16
52
72
89
41
15
15
51
71
90
42
14
14
50
70
91
43
13
13
49
69
92
44
12
12
48
68
93
45
11
11
47
67
94
46
10
9
8
7
6
5
4
3
2
1
0
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
85
86
87
88
89
90
91
92
93
94
95
96
97
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
104
88
84
96
108
119
103
87
83
95
107
118
102
86
82
94
106
117
101
85
81
93
105
116
100
84
80
92
104
115
99
83
79
91
103
114
98
82
78
90
102
113
97
81
77
89
101
112
96
80
76
88
100
111
95
79
75
87
99
110
94
78
74
86
98
109
93
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
108
92
80
68
72
84
104
95
107
91
79
67
71
83
103
94
106
90
78
66
70
82
102
93
105
89
77
65
69
81
101
92
104
88
76
64
68
80
100
91
103
87
75
63
67
79
99
90
102
86
74
62
66
78
98
89
101
85
84
83
82
81
80
79
78
77
76
75
74
73
61
65
77
97
88
89
90
91
92
93
94
95
96
97
98
99
100
72
60
64
76
96
87
71
59
63
75
95
86
70
58
62
74
94
85
69
57
61
73
93
84
68
56
60
72
92
83
67
55
59
71
91
82
66
54
58
70
90
81
65
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
80
64
44
80
79
63
43
79
78
62
42
78
77
59
58
57
56
55
56
57
58
59
60
61
62
63
64
63
62
61
41
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
54
60
40
76
77
65
53
59
39
75
78
66
52
58
38
74
79
67
51
57
37
73
80
68
50
56
36
72
81
69
49
55
35
71
82
70
48
54
34
70
83
71
47
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
72
46
43
32
68
82
73
45
42
31
67
83
74
44
41
30
66
84
75
43
40
29
65
85
76
42
39
28
64
86
77
41
38
27
63
87
78
40
37
26
62
88
79
39
36
25
61
89
80
38
35
24
60
88
81
37
34
23
59
87
82
36
33
22
58
86
83
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
21
57
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
86
85
84
36
22
20
56
76
85
37
21
19
55
75
86
38
20
18
54
74
87
39
19
17
53
73
88
40
18
16
52
72
89
41
17
15
51
71
90
42
16
14
50
70
91
43
15
13
49
69
92
44
14
12
48
68
93
45
13
11
47
67
94
46
12
10
46
66
95
47
11
10
9
8
7
6
5
4
3
2
1
0
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
84
85
86
87
88
89
90
91
92
93
94
95
96
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
103
87
83
95
107
120
102
86
82
94
106
119
101
85
81
93
105
118
100
84
80
92
104
117
99
83
79
91
103
116
98
82
78
90
102
115
97
81
77
89
101
114
96
80
76
88
100
113
95
79
75
87
99
112
94
78
74
86
98
111
93
77
73
85
97
110
92
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
109
91
79
67
71
83
103
96
108
90
78
66
70
82
102
95
107
89
77
65
69
81
101
94
106
88
76
64
68
80
100
93
105
87
75
63
67
79
99
92
104
86
74
62
66
78
98
91
103
85
73
61
65
77
97
90
102
84
83
82
81
80
79
78
77
76
75
74
73
72
60
64
76
96
89
90
91
92
93
94
95
96
97
98
99
100
101
71
59
63
75
95
88
70
58
62
74
94
87
69
57
61
73
93
86
68
56
60
72
92
85
67
55
59
71
91
84
66
54
58
70
90
83
65
53
57
69
89
82
64
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
81
63
43
79
80
62
42
78
79
61
41
77
78
60
59
58
57
56
57
58
59
60
61
62
63
64
63
62
61
60
40
76
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
55
59
39
75
78
66
54
58
38
74
79
67
53
57
37
73
80
68
52
56
36
72
81
69
51
55
35
71
82
70
50
54
34
70
83
71
49
53
33
69
84
72
48
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
73
47
44
31
67
81
74
46
43
30
66
82
75
45
42
29
65
83
76
44
41
28
64
84
77
43
40
27
63
85
78
42
39
26
62
86
79
41
38
25
61
87
80
40
37
24
60
88
81
39
36
23
59
87
82
38
35
22
58
86
83
37
34
21
57
85
84
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
20
56
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
86
85
37
23
19
55
75
86
38
22
18
54
74
87
39
21
17
53
73
88
40
20
16
52
72
89
41
19
15
51
71
90
42
18
14
50
70
91
43
17
13
49
69
92
44
16
12
48
68
93
45
15
11
47
67
94
46
14
10
46
66
95
47
13
9
45
65
96
48
12
11
10
9
8
7
6
5
4
3
2
1
0
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
83
84
85
86
87
88
89
90
91
92
93
94
95
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
102
86
82
94
106
121
101
85
81
93
105
120
100
84
80
92
104
119
99
83
79
91
103
118
98
82
78
90
102
117
97
81
77
89
101
116
96
80
76
88
100
115
95
79
75
87
99
114
94
78
74
86
98
113
93
77
73
85
97
112
92
76
72
84
96
111
91
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
110
90
78
66
70
82
102
97
109
89
77
65
69
81
101
96
108
88
76
64
68
80
100
95
107
87
75
63
67
79
99
94
106
86
74
62
66
78
98
93
105
85
73
61
65
77
97
92
104
84
72
60
64
76
96
91
103
83
82
81
80
79
78
77
76
75
74
73
72
71
59
63
75
95
90
91
92
93
94
95
96
97
98
99
100
101
102
70
58
62
74
94
89
69
57
61
73
93
88
68
56
60
72
92
87
67
55
59
71
91
86
66
54
58
70
90
85
65
53
57
69
89
84
64
52
56
68
88
83
63
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
82
62
42
78
81
61
41
77
80
60
40
76
79
61
60
59
58
57
58
59
60
61
62
63
64
63
62
61
60
59
39
75
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
56
58
38
74
79
67
55
57
37
73
80
68
54
56
36
72
81
69
53
55
35
71
82
70
52
54
34
70
83
71
51
53
33
69
84
72
50
52
32
68
85
73
49
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
74
48
43
30
66
80
75
47
44
29
65
81
76
46
43
28
64
82
77
45
42
27
63
83
78
44
41
26
62
84
79
43
40
25
61
85
80
42
39
24
60
86
81
41
38
23
59
87
82
40
37
22
58
86
83
39
36
21
57
85
84
38
35
20
56
84
85
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
19
55
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
86
38
24
18
54
74
87
39
23
17
53
73
88
40
22
16
52
72
89
41
21
15
51
71
90
42
20
14
50
70
91
43
19
13
49
69
92
44
18
12
48
68
93
45
17
11
47
67
94
46
16
10
46
66
95
47
15
9
45
65
96
48
14
8
44
64
97
49
13
12
11
10
9
8
7
6
5
4
3
2
1
0
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
82
83
84
85
86
87
88
89
90
91
92
93
94
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
101
85
81
93
105
122
100
84
80
92
104
121
99
83
79
91
103
120
98
82
78
90
102
119
97
81
77
89
101
118
96
80
76
88
100
117
95
79
75
87
99
116
94
78
74
86
98
115
93
77
73
85
97
114
92
76
72
84
96
113
91
75
71
83
95
112
90
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
111
89
77
65
69
81
101
98
110
88
76
64
68
80
100
97
109
87
75
63
67
79
99
96
108
86
74
62
66
78
98
95
107
85
73
61
65
77
97
94
106
84
72
60
64
76
96
93
105
83
71
59
63
75
95
92
104
82
81
80
79
78
77
76
75
74
73
72
71
70
58
62
74
94
91
92
93
94
95
96
97
98
99
100
101
102
103
69
57
61
73
93
90
68
56
60
72
92
89
67
55
59
71
91
88
66
54
58
70
90
87
65
53
57
69
89
86
64
52
56
68
88
85
63
51
55
67
87
84
62
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
83
61
41
77
82
60
40
76
81
59
39
75
80
62
61
60
59
58
59
60
61
62
63
64
63
62
61
60
59
58
38
74
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
57
57
37
73
80
68
56
56
36
72
81
69
55
55
35
71
82
70
54
54
34
70
83
71
53
53
33
69
84
72
52
52
32
68
85
73
51
51
31
67
86
74
50
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
75
49
42
29
65
79
76
48
43
28
64
80
77
47
44
27
63
81
78
46
43
26
62
82
79
45
42
25
61
83
80
44
41
24
60
84
81
43
40
23
59
85
82
42
39
22
58
86
83
41
38
21
57
85
84
40
37
20
56
84
85
39
36
19
55
83
86
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
18
54
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
39
25
17
53
73
87
40
24
16
52
72
88
41
23
15
51
71
89
42
22
14
50
70
90
43
21
13
49
69
91
44
20
12
48
68
92
45
19
11
47
67
93
46
18
10
46
66
94
47
17
9
45
65
95
48
16
8
44
64
96
49
15
7
43
63
97
50
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
81
82
83
84
85
86
87
88
89
90
91
92
93
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
100
84
80
92
104
123
99
83
79
91
103
122
98
82
78
90
102
121
97
81
77
89
101
120
96
80
76
88
100
119
95
79
75
87
99
118
94
78
74
86
98
117
93
77
73
85
97
116
92
76
72
84
96
115
91
75
71
83
95
114
90
74
70
82
94
113
89
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
112
88
76
64
68
80
100
99
111
87
75
63
67
79
99
98
110
86
74
62
66
78
98
97
109
85
73
61
65
77
97
96
108
84
72
60
64
76
96
95
107
83
71
59
63
75
95
94
106
82
70
58
62
74
94
93
105
81
80
79
78
77
76
75
74
73
72
71
70
69
57
61
73
93
92
93
94
95
96
97
98
99
100
101
102
103
104
68
56
60
72
92
91
67
55
59
71
91
90
66
54
58
70
90
89
65
53
57
69
89
88
64
52
56
68
88
87
63
51
55
67
87
86
62
50
54
66
86
85
61
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
84
60
40
76
83
59
39
75
82
58
38
74
81
63
62
61
60
59
60
61
62
63
64
63
62
61
60
59
58
57
37
73
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
58
56
36
72
81
69
57
55
35
71
82
70
56
54
34
70
83
71
55
53
33
69
84
72
54
52
32
68
85
73
53
51
31
67
86
74
52
50
30
66
86
75
51
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
76
50
41
28
64
78
77
49
42
27
63
79
78
48
43
26
62
80
79
47
44
25
61
81
80
46
43
24
60
82
81
45
42
23
59
83
82
44
41
22
58
84
83
43
40
21
57
85
84
42
39
20
56
84
85
41
38
19
55
83
86
40
37
18
54
82
86
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
17
53
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
40
26
16
52
72
86
41
25
15
51
71
87
42
24
14
50
70
88
43
23
13
49
69
89
44
22
12
48
68
90
45
21
11
47
67
91
46
20
10
46
66
92
47
19
9
45
65
93
48
18
8
44
64
94
49
17
7
43
63
95
50
16
6
42
62
96
51
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
80
81
82
83
84
85
86
87
88
89
90
91
92
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
99
83
79
91
103
124
98
82
78
90
102
123
97
81
77
89
101
122
96
80
76
88
100
121
95
79
75
87
99
120
94
78
74
86
98
119
93
77
73
85
97
118
92
76
72
84
96
117
91
75
71
83
95
116
90
74
70
82
94
115
89
73
69
81
93
114
88
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
113
87
75
63
67
79
99
100
112
86
74
62
66
78
98
99
111
85
73
61
65
77
97
98
110
84
72
60
64
76
96
97
109
83
71
59
63
75
95
96
108
82
70
58
62
74
94
95
107
81
69
57
61
73
93
94
106
80
79
78
77
76
75
74
73
72
71
70
69
68
56
60
72
92
93
94
95
96
97
98
99
100
101
102
103
104
105
67
55
59
71
91
92
66
54
58
70
90
91
65
53
57
69
89
90
64
52
56
68
88
89
63
51
55
67
87
88
62
50
54
66
86
87
61
49
53
65
85
86
60
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
59
39
75
84
58
38
74
83
57
37
73
82
64
63
62
61
60
61
62
63
64
63
62
61
60
59
58
57
56
36
72
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
59
55
35
71
82
70
58
54
34
70
83
71
57
53
33
69
84
72
56
52
32
68
85
73
55
51
31
67
86
74
54
50
30
66
86
75
53
49
29
65
85
76
52
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
77
51
40
27
63
77
78
50
41
26
62
78
79
49
42
25
61
79
80
48
43
24
60
80
81
47
44
23
59
81
82
46
43
22
58
82
83
45
42
21
57
83
84
44
41
20
56
84
85
43
40
19
55
83
86
42
39
18
54
82
86
41
38
17
53
81
85
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
16
52
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
41
27
15
51
71
85
42
26
14
50
70
86
43
25
13
49
69
87
44
24
12
48
68
88
45
23
11
47
67
89
46
22
10
46
66
90
47
21
9
45
65
91
48
20
8
44
64
92
49
19
7
43
63
93
50
18
6
42
62
94
51
17
5
41
61
95
52
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
79
80
81
82
83
84
85
86
87
88
89
90
91
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
98
82
78
90
102
125
97
81
77
89
101
124
96
80
76
88
100
123
95
79
75
87
99
122
94
78
74
86
98
121
93
77
73
85
97
120
92
76
72
84
96
119
91
75
71
83
95
118
90
74
70
82
94
117
89
73
69
81
93
116
88
72
68
80
92
115
87
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
114
86
74
62
66
78
98
101
113
85
73
61
65
77
97
100
112
84
72
60
64
76
96
99
111
83
71
59
63
75
95
98
110
82
70
58
62
74
94
97
109
81
69
57
61
73
93
96
108
80
68
56
60
72
92
95
107
79
78
77
76
75
74
73
72
71
70
69
68
67
55
59
71
91
94
95
96
97
98
99
100
101
102
103
104
105
106
66
54
58
70
90
93
65
53
57
69
89
92
64
52
56
68
88
91
63
51
55
67
87
90
62
50
54
66
86
89
61
49
53
65
85
88
60
48
52
64
84
87
59
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
86
58
38
74
85
57
37
73
84
56
36
72
83
65
64
63
62
61
62
63
64
63
62
61
60
59
58
57
56
55
35
71
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
60
54
34
70
83
71
59
53
33
69
84
72
58
52
32
68
85
73
57
51
31
67
86
74
56
50
30
66
86
75
55
49
29
65
85
76
54
48
28
64
84
77
53
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
78
52
39
26
62
76
79
51
40
25
61
77
80
50
41
24
60
78
81
49
42
23
59
79
82
48
43
22
58
80
83
47
44
21
57
81
84
46
43
20
56
82
85
45
42
19
55
83
86
44
41
18
54
82
86
43
40
17
53
81
85
42
39
16
52
80
84
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
15
51
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
42
28
14
50
70
84
43
27
13
49
69
85
44
26
12
48
68
86
45
25
11
47
67
87
46
24
10
46
66
88
47
23
9
45
65
89
48
22
8
44
64
90
49
21
7
43
63
91
50
20
6
42
62
92
51
19
5
41
61
93
52
18
4
40
60
94
53
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
78
79
80
81
82
83
84
85
86
87
88
89
90
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
97
81
77
89
101
126
96
80
76
88
100
125
95
79
75
87
99
124
94
78
74
86
98
123
93
77
73
85
97
122
92
76
72
84
96
121
91
75
71
83
95
120
90
74
70
82
94
119
89
73
69
81
93
118
88
72
68
80
92
117
87
71
67
79
91
116
86
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
115
85
73
61
65
77
97
102
114
84
72
60
64
76
96
101
113
83
71
59
63
75
95
100
112
82
70
58
62
74
94
99
111
81
69
57
61
73
93
98
110
80
68
56
60
72
92
97
109
79
67
55
59
71
91
96
108
78
77
76
75
74
73
72
71
70
69
68
67
66
54
58
70
90
95
96
97
98
99
100
101
102
103
104
105
106
107
65
53
57
69
89
94
64
52
56
68
88
93
63
51
55
67
87
92
62
50
54
66
86
91
61
49
53
65
85
90
60
48
52
64
84
89
59
47
51
63
83
88
58
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
87
57
37
73
86
56
36
72
85
55
35
71
84
66
65
64
63
62
63
64
63
62
61
60
59
58
57
56
55
54
34
70
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
61
53
33
69
84
72
60
52
32
68
85
73
59
51
31
67
86
74
58
50
30
66
86
75
57
49
29
65
85
76
56
48
28
64
84
77
55
47
27
63
83
78
54
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
79
53
38
25
61
75
80
52
39
24
60
76
81
51
40
23
59
77
82
50
41
22
58
78
83
49
42
21
57
79
84
48
43
20
56
80
85
47
44
19
55
81
86
46
43
18
54
82
86
45
42
17
53
81
85
44
41
16
52
80
84
43
40
15
51
79
83
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
14
50
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
43
29
13
49
69
83
44
28
12
48
68
84
45
27
11
47
67
85
46
26
10
46
66
86
47
25
9
45
65
87
48
24
8
44
64
88
49
23
7
43
63
89
50
22
6
42
62
90
51
21
5
41
61
91
52
20
4
40
60
92
53
19
3
39
59
93
54
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
77
78
79
80
81
82
83
84
85
86
87
88
89
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
96
80
76
88
100
127
95
79
75
87
99
126
94
78
74
86
98
125
93
77
73
85
97
124
92
76
72
84
96
123
91
75
71
83
95
122
90
74
70
82
94
121
89
73
69
81
93
120
88
72
68
80
92
119
87
71
67
79
91
118
86
70
66
78
90
117
85
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
116
84
72
60
64
76
96
103
115
83
71
59
63
75
95
102
114
82
70
58
62
74
94
101
113
81
69
57
61
73
93
100
112
80
68
56
60
72
92
99
111
79
67
55
59
71
91
98
110
78
66
54
58
70
90
97
109
77
76
75
74
73
72
71
70
69
68
67
66
65
53
57
69
89
96
97
98
99
100
101
102
103
104
105
106
107
108
64
52
56
68
88
95
63
51
55
67
87
94
62
50
54
66
86
93
61
49
53
65
85
92
60
48
52
64
84
91
59
47
51
63
83
90
58
46
50
62
82
89
57
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
88
56
36
72
87
55
35
71
86
54
34
70
85
67
66
65
64
63
64
63
62
61
60
59
58
57
56
55
54
53
33
69
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
62
52
32
68
85
73
61
51
31
67
86
74
60
50
30
66
86
75
59
49
29
65
85
76
58
48
28
64
84
77
57
47
27
63
83
78
56
46
26
62
82
79
55
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
80
54
37
24
60
74
81
53
38
23
59
75
82
52
39
22
58
76
83
51
40
21
57
77
84
50
41
20
56
78
85
49
42
19
55
79
86
48
43
18
54
80
86
47
44
17
53
81
85
46
43
16
52
80
84
45
42
15
51
79
83
44
41
14
50
78
82
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
13
49
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
44
30
12
48
68
82
45
29
11
47
67
83
46
28
10
46
66
84
47
27
9
45
65
85
48
26
8
44
64
86
49
25
7
43
63
87
50
24
6
42
62
88
51
23
5
41
61
89
52
22
4
40
60
90
53
21
3
39
59
91
54
20
2
38
58
92
55
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
76
77
78
79
80
81
82
83
84
85
86
87
88
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
95
79
75
87
99
128
94
78
74
86
98
127
93
77
73
85
97
126
92
76
72
84
96
125
91
75
71
83
95
124
90
74
70
82
94
123
89
73
69
81
93
122
88
72
68
80
92
121
87
71
67
79
91
120
86
70
66
78
90
119
85
69
65
77
89
118
84
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
117
83
71
59
63
75
95
104
116
82
70
58
62
74
94
103
115
81
69
57
61
73
93
102
114
80
68
56
60
72
92
101
113
79
67
55
59
71
91
100
112
78
66
54
58
70
90
99
111
77
65
53
57
69
89
98
110
76
75
74
73
72
71
70
69
68
67
66
65
64
52
56
68
88
97
98
99
100
101
102
103
104
105
106
107
108
109
63
51
55
67
87
96
62
50
54
66
86
95
61
49
53
65
85
94
60
48
52
64
84
93
59
47
51
63
83
92
58
46
50
62
82
91
57
45
49
61
81
90
56
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
89
55
35
71
88
54
34
70
87
53
33
69
86
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
32
68
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
63
51
31
67
86
74
62
50
30
66
86
75
61
49
29
65
85
76
60
48
28
64
84
77
59
47
27
63
83
78
58
46
26
62
82
79
57
45
25
61
81
80
56
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
55
36
23
59
73
82
54
37
22
58
74
83
53
38
21
57
75
84
52
39
20
56
76
85
51
40
19
55
77
86
50
41
18
54
78
86
49
42
17
53
79
85
48
43
16
52
80
84
47
44
15
51
79
83
46
43
14
50
78
82
45
42
13
49
77
81
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
12
48
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
45
31
11
47
67
81
46
30
10
46
66
82
47
29
9
45
65
83
48
28
8
44
64
84
49
27
7
43
63
85
50
26
6
42
62
86
51
25
5
41
61
87
52
24
4
40
60
88
53
23
3
39
59
89
54
22
2
38
58
90
55
21
1
37
57
91
56
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
77
78
79
80
81
82
83
84
85
86
87
88
89
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
131
130
96
80
76
88
100
129
95
79
75
87
99
128
94
78
74
86
98
127
93
77
73
85
97
126
92
76
72
84
96
125
91
75
71
83
95
124
90
74
70
82
94
123
89
73
69
81
93
122
88
72
68
80
92
121
87
71
67
79
91
120
86
70
66
78
90
119
85
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
96
97
98
99
100
101
102
103
104
105
106
106
118
84
72
60
64
76
94
105
117
83
71
59
63
75
93
104
116
82
70
58
62
74
92
103
115
81
69
57
61
73
91
102
114
80
68
56
60
72
90
101
113
79
67
55
59
71
89
100
112
78
66
54
58
70
88
99
111
77
76
75
74
73
72
71
70
69
68
67
66
65
53
57
69
87
98
99
100
101
102
103
104
105
106
107
108
109
110
64
52
56
68
86
97
63
51
55
67
85
96
62
50
54
66
84
95
61
49
53
65
83
94
60
48
52
64
82
93
59
47
51
63
81
92
58
46
50
62
80
91
57
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
72
73
74
75
76
77
78
79
90
56
36
70
89
55
35
69
88
54
34
68
87
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
33
67
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
64
52
32
66
86
75
63
51
31
65
85
76
62
50
30
64
84
77
61
49
29
63
83
78
60
48
28
62
82
79
59
47
27
61
81
80
58
46
26
60
80
81
57
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
82
56
37
24
58
72
83
55
38
23
57
73
84
54
39
22
56
74
85
53
40
21
55
75
86
52
41
20
54
76
86
51
42
19
53
77
85
50
43
18
52
78
84
49
44
17
51
79
83
48
45
16
50
78
82
47
44
15
49
77
81
46
43
14
48
76
80
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
13
47
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
46
32
12
46
66
80
47
31
11
45
65
81
48
30
10
44
64
82
49
29
9
43
63
83
50
28
8
42
62
84
51
27
7
41
61
85
52
26
6
40
60
86
53
25
5
39
59
87
54
24
4
38
58
88
55
23
3
37
57
89
56
22
2
36
56
90
57
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
78
79
80
81
82
83
84
85
86
87
88
89
90
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
97
81
77
89
101
129
96
80
76
88
100
128
95
79
75
87
99
127
94
78
74
86
98
126
93
77
73
85
97
125
92
76
72
84
96
124
91
75
71
83
95
123
90
74
70
82
94
122
89
73
69
81
93
121
88
72
68
80
92
120
87
71
67
79
91
119
86
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
118
85
73
61
65
77
93
105
117
84
72
60
64
76
92
104
116
83
71
59
63
75
91
103
115
82
70
58
62
74
90
102
114
81
69
57
61
73
89
101
113
80
68
56
60
72
88
100
112
79
67
55
59
71
87
99
111
78
77
76
75
74
73
72
71
70
69
68
67
66
54
58
70
86
98
99
100
101
102
103
104
105
106
107
108
109
110
65
53
57
69
85
97
64
52
56
68
84
96
63
51
55
67
83
95
62
50
54
66
82
94
61
49
53
65
81
93
60
48
52
64
80
92
59
47
51
63
79
91
58
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
71
72
73
74
75
76
77
78
90
57
37
69
89
56
36
68
88
55
35
67
87
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
34
66
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
65
53
33
65
85
76
64
52
32
64
84
77
63
51
31
63
83
78
62
50
30
62
82
79
61
49
29
61
81
80
60
48
28
60
80
81
59
47
27
59
79
82
58
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
83
57
38
25
57
71
84
56
39
24
56
72
85
55
40
23
55
73
86
54
41
22
54
74
86
53
42
21
53
75
85
52
43
20
52
76
84
51
44
19
51
77
83
50
45
18
50
78
82
49
46
17
49
77
81
48
45
16
48
76
80
47
44
15
47
75
79
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
14
46
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
47
33
13
45
65
79
48
32
12
44
64
80
49
31
11
43
63
81
50
30
10
42
62
82
51
29
9
41
61
83
52
28
8
40
60
84
53
27
7
39
59
85
54
26
6
38
58
86
55
25
5
37
57
87
56
24
4
36
56
88
57
23
3
35
55
89
58
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
79
80
81
82
83
84
85
86
87
88
89
90
91
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
98
82
78
90
102
128
97
81
77
89
101
127
96
80
76
88
100
126
95
79
75
87
99
125
94
78
74
86
98
124
93
77
73
85
97
123
92
76
72
84
96
122
91
75
71
83
95
121
90
74
70
82
94
120
89
73
69
81
93
119
88
72
68
80
92
118
87
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
117
86
74
62
66
78
92
104
116
85
73
61
65
77
91
103
115
84
72
60
64
76
90
102
114
83
71
59
63
75
89
101
113
82
70
58
62
74
88
100
112
81
69
57
61
73
87
99
111
80
68
56
60
72
86
98
110
79
78
77
76
75
74
73
72
71
70
69
68
67
55
59
71
85
97
98
99
100
101
102
103
104
105
106
107
108
109
66
54
58
70
84
96
65
53
57
69
83
95
64
52
56
68
82
94
63
51
55
67
81
93
62
50
54
66
80
92
61
49
53
65
79
91
60
48
52
64
78
90
59
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
70
71
72
73
74
75
76
77
89
58
38
68
88
57
37
67
87
56
36
66
86
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
35
65
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
66
54
34
64
84
77
65
53
33
63
83
78
64
52
32
62
82
79
63
51
31
61
81
80
62
50
30
60
80
81
61
49
29
59
79
82
60
48
28
58
78
83
59
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
84
58
39
26
56
70
85
57
40
25
55
71
86
56
41
24
54
72
86
55
42
23
53
73
85
54
43
22
52
74
84
53
44
21
51
75
83
52
45
20
50
76
82
51
46
19
49
77
81
50
47
18
48
76
80
49
46
17
47
75
79
48
45
16
46
74
78
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
15
45
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
48
34
14
44
64
78
49
33
13
43
63
79
50
32
12
42
62
80
51
31
11
41
61
81
52
30
10
40
60
82
53
29
9
39
59
83
54
28
8
38
58
84
55
27
7
37
57
85
56
26
6
36
56
86
57
25
5
35
55
87
58
24
4
34
54
88
59
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
80
81
82
83
84
85
86
87
88
89
90
91
92
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
99
83
79
91
103
127
98
82
78
90
102
126
97
81
77
89
101
125
96
80
76
88
100
124
95
79
75
87
99
123
94
78
74
86
98
122
93
77
73
85
97
121
92
76
72
84
96
120
91
75
71
83
95
119
90
74
70
82
94
118
89
73
69
81
93
117
88
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
116
87
75
63
67
79
91
103
115
86
74
62
66
78
90
102
114
85
73
61
65
77
89
101
113
84
72
60
64
76
88
100
112
83
71
59
63
75
87
99
111
82
70
58
62
74
86
98
110
81
69
57
61
73
85
97
109
80
79
78
77
76
75
74
73
72
71
70
69
68
56
60
72
84
96
97
98
99
100
101
102
103
104
105
106
107
108
67
55
59
71
83
95
66
54
58
70
82
94
65
53
57
69
81
93
64
52
56
68
80
92
63
51
55
67
79
91
62
50
54
66
78
90
61
49
53
65
77
89
60
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
69
70
71
72
73
74
75
76
88
59
39
67
87
58
38
66
86
57
37
65
85
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
36
64
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
67
55
35
63
83
78
66
54
34
62
82
79
65
53
33
61
81
80
64
52
32
60
80
81
63
51
31
59
79
82
62
50
30
58
78
83
61
49
29
57
77
84
60
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
85
59
40
27
55
69
86
58
41
26
54
70
86
57
42
25
53
71
85
56
43
24
52
72
84
55
44
23
51
73
83
54
45
22
50
74
82
53
46
21
49
75
81
52
47
20
48
76
80
51
48
19
47
75
79
50
47
18
46
74
78
49
46
17
45
73
77
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
16
44
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
49
35
15
43
63
77
50
34
14
42
62
78
51
33
13
41
61
79
52
32
12
40
60
80
53
31
11
39
59
81
54
30
10
38
58
82
55
29
9
37
57
83
56
28
8
36
56
84
57
27
7
35
55
85
58
26
6
34
54
86
59
25
5
33
53
87
60
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
81
82
83
84
85
86
87
88
89
90
91
92
93
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
100
84
80
92
104
126
99
83
79
91
103
125
98
82
78
90
102
124
97
81
77
89
101
123
96
80
76
88
100
122
95
79
75
87
99
121
94
78
74
86
98
120
93
77
73
85
97
119
92
76
72
84
96
118
91
75
71
83
95
117
90
74
70
82
94
116
89
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
115
88
76
64
68
80
90
102
114
87
75
63
67
79
89
101
113
86
74
62
66
78
88
100
112
85
73
61
65
77
87
99
111
84
72
60
64
76
86
98
110
83
71
59
63
75
85
97
109
82
70
58
62
74
84
96
108
81
80
79
78
77
76
75
74
73
72
71
70
69
57
61
73
83
95
96
97
98
99
100
101
102
103
104
105
106
107
68
56
60
72
82
94
67
55
59
71
81
93
66
54
58
70
80
92
65
53
57
69
79
91
64
52
56
68
78
90
63
51
55
67
77
89
62
50
54
66
76
88
61
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
68
69
70
71
72
73
74
75
87
60
40
66
86
59
39
65
85
58
38
64
84
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
37
63
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
68
56
36
62
82
79
67
55
35
61
81
80
66
54
34
60
80
81
65
53
33
59
79
82
64
52
32
58
78
83
63
51
31
57
77
84
62
50
30
56
76
85
61
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
86
60
41
28
54
68
86
59
42
27
53
69
85
58
43
26
52
70
84
57
44
25
51
71
83
56
45
24
50
72
82
55
46
23
49
73
81
54
47
22
48
74
80
53
48
21
47
75
79
52
49
20
46
74
78
51
48
19
45
73
77
50
47
18
44
72
76
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
17
43
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
50
36
16
42
62
76
51
35
15
41
61
77
52
34
14
40
60
78
53
33
13
39
59
79
54
32
12
38
58
80
55
31
11
37
57
81
56
30
10
36
56
82
57
29
9
35
55
83
58
28
8
34
54
84
59
27
7
33
53
85
60
26
6
32
52
86
61
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
82
83
84
85
86
87
88
89
90
91
92
93
94
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
101
85
81
93
105
125
100
84
80
92
104
124
99
83
79
91
103
123
98
82
78
90
102
122
97
81
77
89
101
121
96
80
76
88
100
120
95
79
75
87
99
119
94
78
74
86
98
118
93
77
73
85
97
117
92
76
72
84
96
116
91
75
71
83
95
115
90
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
114
89
77
65
69
81
89
101
113
88
76
64
68
80
88
100
112
87
75
63
67
79
87
99
111
86
74
62
66
78
86
98
110
85
73
61
65
77
85
97
109
84
72
60
64
76
84
96
108
83
71
59
63
75
83
95
107
82
81
80
79
78
77
76
75
74
73
72
71
70
58
62
74
82
94
95
96
97
98
99
100
101
102
103
104
105
106
69
57
61
73
81
93
68
56
60
72
80
92
67
55
59
71
79
91
66
54
58
70
78
90
65
53
57
69
77
89
64
52
56
68
76
88
63
51
55
67
75
87
62
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
86
61
41
65
85
60
40
64
84
59
39
63
83
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
38
62
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
69
57
37
61
81
80
68
56
36
60
80
81
67
55
35
59
79
82
66
54
34
58
78
83
65
53
33
57
77
84
64
52
32
56
76
85
63
51
31
55
75
86
62
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
86
61
42
29
53
67
85
60
43
28
52
68
84
59
44
27
51
69
83
58
45
26
50
70
82
57
46
25
49
71
81
56
47
24
48
72
80
55
48
23
47
73
79
54
49
22
46
74
78
53
50
21
45
73
77
52
49
20
44
72
76
51
48
19
43
71
75
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
18
42
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
51
37
17
41
61
75
52
36
16
40
60
76
53
35
15
39
59
77
54
34
14
38
58
78
55
33
13
37
57
79
56
32
12
36
56
80
57
31
11
35
55
81
58
30
10
34
54
82
59
29
9
33
53
83
60
28
8
32
52
84
61
27
7
31
51
85
62
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
83
84
85
86
87
88
89
90
91
92
93
94
95
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
102
86
82
94
106
124
101
85
81
93
105
123
100
84
80
92
104
122
99
83
79
91
103
121
98
82
78
90
102
120
97
81
77
89
101
119
96
80
76
88
100
118
95
79
75
87
99
117
94
78
74
86
98
116
93
77
73
85
97
115
92
76
72
84
96
114
91
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
113
90
78
66
70
82
88
100
112
89
77
65
69
81
87
99
111
88
76
64
68
80
86
98
110
87
75
63
67
79
85
97
109
86
74
62
66
78
84
96
108
85
73
61
65
77
83
95
107
84
72
60
64
76
82
94
106
83
82
81
80
79
78
77
76
75
74
73
72
71
59
63
75
81
93
94
95
96
97
98
99
100
101
102
103
104
105
70
58
62
74
80
92
69
57
61
73
79
91
68
56
60
72
78
90
67
55
59
71
77
89
66
54
58
70
76
88
65
53
57
69
75
87
64
52
56
68
74
86
63
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
85
62
42
64
84
61
41
63
83
60
40
62
82
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
39
61
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
70
58
38
60
80
81
69
57
37
59
79
82
68
56
36
58
78
83
67
55
35
57
77
84
66
54
34
56
76
85
65
53
33
55
75
86
64
52
32
54
74
86
63
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
85
62
43
30
52
66
84
61
44
29
51
67
83
60
45
28
50
68
82
59
46
27
49
69
81
58
47
26
48
70
80
57
48
25
47
71
79
56
49
24
46
72
78
55
50
23
45
73
77
54
51
22
44
72
76
53
50
21
43
71
75
52
49
20
42
70
74
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
19
41
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
52
38
18
40
60
74
53
37
17
39
59
75
54
36
16
38
58
76
55
35
15
37
57
77
56
34
14
36
56
78
57
33
13
35
55
79
58
32
12
34
54
80
59
31
11
33
53
81
60
30
10
32
52
82
61
29
9
31
51
83
62
28
8
30
50
84
63
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
84
85
86
87
88
89
90
91
92
93
94
95
96
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
103
87
83
95
107
123
102
86
82
94
106
122
101
85
81
93
105
121
100
84
80
92
104
120
99
83
79
91
103
119
98
82
78
90
102
118
97
81
77
89
101
117
96
80
76
88
100
116
95
79
75
87
99
115
94
78
74
86
98
114
93
77
73
85
97
113
92
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
112
91
79
67
71
83
87
99
111
90
78
66
70
82
86
98
110
89
77
65
69
81
85
97
109
88
76
64
68
80
84
96
108
87
75
63
67
79
83
95
107
86
74
62
66
78
82
94
106
85
73
61
65
77
81
93
105
84
83
82
81
80
79
78
77
76
75
74
73
72
60
64
76
80
92
93
94
95
96
97
98
99
100
101
102
103
104
71
59
63
75
79
91
70
58
62
74
78
90
69
57
61
73
77
89
68
56
60
72
76
88
67
55
59
71
75
87
66
54
58
70
74
86
65
53
57
69
73
85
64
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
84
63
43
63
83
62
42
62
82
61
41
61
81
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
40
60
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
71
59
39
59
79
82
70
58
38
58
78
83
69
57
37
57
77
84
68
56
36
56
76
85
67
55
35
55
75
86
66
54
34
54
74
86
65
53
33
53
73
85
64
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
84
63
44
31
51
65
83
62
45
30
50
66
82
61
46
29
49
67
81
60
47
28
48
68
80
59
48
27
47
69
79
58
49
26
46
70
78
57
50
25
45
71
77
56
51
24
44
72
76
55
52
23
43
71
75
54
51
22
42
70
74
53
50
21
41
69
73
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
20
40
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
53
39
19
39
59
73
54
38
18
38
58
74
55
37
17
37
57
75
56
36
16
36
56
76
57
35
15
35
55
77
58
34
14
34
54
78
59
33
13
33
53
79
60
32
12
32
52
80
61
31
11
31
51
81
62
30
10
30
50
82
63
29
9
29
49
83
64
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
85
86
87
88
89
90
91
92
93
94
95
96
97
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
104
88
84
96
106
122
103
87
83
95
105
121
102
86
82
94
104
120
101
85
81
93
103
119
100
84
80
92
102
118
99
83
79
91
101
117
98
82
78
90
100
116
97
81
77
89
99
115
96
80
76
88
98
114
95
79
75
87
97
113
94
78
74
86
96
112
93
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
111
92
80
68
72
84
86
98
110
91
79
67
71
83
85
97
109
90
78
66
70
82
84
96
108
89
77
65
69
81
83
95
107
88
76
64
68
80
82
94
106
87
75
63
67
79
81
93
105
86
74
62
66
78
80
92
104
85
84
83
82
81
80
79
78
77
76
75
74
73
61
65
77
79
91
92
93
94
95
96
97
98
99
100
101
102
103
72
60
64
76
78
90
71
59
63
75
77
89
70
58
62
74
76
88
69
57
61
73
75
87
68
56
60
72
74
86
67
55
59
71
73
85
66
54
58
70
72
84
65
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
83
64
44
62
82
63
43
61
81
62
42
60
80
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
41
59
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
72
60
40
58
78
83
71
59
39
57
77
84
70
58
38
56
76
85
69
57
37
55
75
86
68
56
36
54
74
86
67
55
35
53
73
85
66
54
34
52
72
84
65
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
83
64
45
32
50
64
82
63
46
31
49
65
81
62
47
30
48
66
80
61
48
29
47
67
79
60
49
28
46
68
78
59
50
27
45
69
77
58
51
26
44
70
76
57
52
25
43
71
75
56
53
24
42
70
74
55
52
23
41
69
73
54
51
22
40
68
72
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
21
39
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
54
40
20
38
58
72
55
39
19
37
57
73
56
38
18
36
56
74
57
37
17
35
55
75
58
36
16
34
54
76
59
35
15
33
53
77
60
34
14
32
52
78
61
33
13
31
51
79
62
32
12
30
50
80
63
31
11
29
49
81
64
30
10
28
48
82
65
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
86
87
88
89
90
91
92
93
94
95
96
97
98
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
105
89
85
97
105
121
104
88
84
96
104
120
103
87
83
95
103
119
102
86
82
94
102
118
101
85
81
93
101
117
100
84
80
92
100
116
99
83
79
91
99
115
98
82
78
90
98
114
97
81
77
89
97
113
96
80
76
88
96
112
95
79
75
87
95
111
94
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
110
93
81
69
73
85
85
97
109
92
80
68
72
84
84
96
108
91
79
67
71
83
83
95
107
90
78
66
70
82
82
94
106
89
77
65
69
81
81
93
105
88
76
64
68
80
80
92
104
87
75
63
67
79
79
91
103
86
85
84
83
82
81
80
79
78
77
76
75
74
62
66
78
78
90
91
92
93
94
95
96
97
98
99
100
101
102
73
61
65
77
77
89
72
60
64
76
76
88
71
59
63
75
75
87
70
58
62
74
74
86
69
57
61
73
73
85
68
56
60
72
72
84
67
55
59
71
71
83
66
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
82
65
45
61
81
64
44
60
80
63
43
59
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
42
58
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
73
61
41
57
77
84
72
60
40
56
76
85
71
59
39
55
75
86
70
58
38
54
74
86
69
57
37
53
73
85
68
56
36
52
72
84
67
55
35
51
71
83
66
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
82
65
46
33
49
63
81
64
47
32
48
64
80
63
48
31
47
65
79
62
49
30
46
66
78
61
50
29
45
67
77
60
51
28
44
68
76
59
52
27
43
69
75
58
53
26
42
70
74
57
54
25
41
69
73
56
53
24
40
68
72
55
52
23
39
67
71
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
22
38
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
55
41
21
37
57
71
56
40
20
36
56
72
57
39
19
35
55
73
58
38
18
34
54
74
59
37
17
33
53
75
60
36
16
32
52
76
61
35
15
31
51
77
62
34
14
30
50
78
63
33
13
29
49
79
64
32
12
28
48
80
65
31
11
27
47
81
66
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
87
88
89
90
91
92
93
94
95
96
97
98
99
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
106
90
86
98
104
120
105
89
85
97
103
119
104
88
84
96
102
118
103
87
83
95
101
117
102
86
82
94
100
116
101
85
81
93
99
115
100
84
80
92
98
114
99
83
79
91
97
113
98
82
78
90
96
112
97
81
77
89
95
111
96
80
76
88
94
110
95
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
109
94
82
70
74
86
84
96
108
93
81
69
73
85
83
95
107
92
80
68
72
84
82
94
106
91
79
67
71
83
81
93
105
90
78
66
70
82
80
92
104
89
77
65
69
81
79
91
103
88
76
64
68
80
78
90
102
87
86
85
84
83
82
81
80
79
78
77
76
75
63
67
79
77
89
90
91
92
93
94
95
96
97
98
99
100
101
74
62
66
78
76
88
73
61
65
77
75
87
72
60
64
76
74
86
71
59
63
75
73
85
70
58
62
74
72
84
69
57
61
73
71
83
68
56
60
72
70
82
67
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
81
66
46
60
80
65
45
59
79
64
44
58
78
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
43
57
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
74
62
42
56
76
85
73
61
41
55
75
86
72
60
40
54
74
86
71
59
39
53
73
85
70
58
38
52
72
84
69
57
37
51
71
83
68
56
36
50
70
82
67
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
81
66
47
34
48
62
80
65
48
33
47
63
79
64
49
32
46
64
78
63
50
31
45
65
77
62
51
30
44
66
76
61
52
29
43
67
75
60
53
28
42
68
74
59
54
27
41
69
73
58
55
26
40
68
72
57
54
25
39
67
71
56
53
24
38
66
70
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
23
37
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
56
42
22
36
56
70
57
41
21
35
55
71
58
40
20
34
54
72
59
39
19
33
53
73
60
38
18
32
52
74
61
37
17
31
51
75
62
36
16
30
50
76
63
35
15
29
49
77
64
34
14
28
48
78
65
33
13
27
47
79
66
32
12
26
46
80
67
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
88
89
90
91
92
93
94
95
96
97
98
99
100
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
107
91
87
99
103
119
106
90
86
98
102
118
105
89
85
97
101
117
104
88
84
96
100
116
103
87
83
95
99
115
102
86
82
94
98
114
101
85
81
93
97
113
100
84
80
92
96
112
99
83
79
91
95
111
98
82
78
90
94
110
97
81
77
89
93
109
96
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
108
95
83
71
75
87
83
95
107
94
82
70
74
86
82
94
106
93
81
69
73
85
81
93
105
92
80
68
72
84
80
92
104
91
79
67
71
83
79
91
103
90
78
66
70
82
78
90
102
89
77
65
69
81
77
89
101
88
87
86
85
84
83
82
81
80
79
78
77
76
64
68
80
76
88
89
90
91
92
93
94
95
96
97
98
99
100
75
63
67
79
75
87
74
62
66
78
74
86
73
61
65
77
73
85
72
60
64
76
72
84
71
59
63
75
71
83
70
58
62
74
70
82
69
57
61
73
69
81
68
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
80
67
47
59
79
66
46
58
78
65
45
57
77
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
44
56
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
75
63
43
55
75
86
74
62
42
54
74
86
73
61
41
53
73
85
72
60
40
52
72
84
71
59
39
51
71
83
70
58
38
50
70
82
69
57
37
49
69
81
68
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
80
67
48
35
47
61
79
66
49
34
46
62
78
65
50
33
45
63
77
64
51
32
44
64
76
63
52
31
43
65
75
62
53
30
42
66
74
61
54
29
41
67
73
60
55
28
40
68
72
59
56
27
39
67
71
58
55
26
38
66
70
57
54
25
37
65
69
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
24
36
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
57
43
23
35
55
69
58
42
22
34
54
70
59
41
21
33
53
71
60
40
20
32
52
72
61
39
19
31
51
73
62
38
18
30
50
74
63
37
17
29
49
75
64
36
16
28
48
76
65
35
15
27
47
77
66
34
14
26
46
78
67
33
13
25
45
79
68
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
89
90
91
92
93
94
95
96
97
98
99
100
99
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
108
92
88
98
102
118
107
91
87
97
101
117
106
90
86
96
100
116
105
89
85
95
99
115
104
88
84
94
98
114
103
87
83
93
97
113
102
86
82
92
96
112
101
85
81
91
95
111
100
84
80
90
94
110
99
83
79
89
93
109
98
82
78
88
92
108
97
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
107
96
84
72
76
86
82
94
106
95
83
71
75
85
81
93
105
94
82
70
74
84
80
92
104
93
81
69
73
83
79
91
103
92
80
68
72
82
78
90
102
91
79
67
71
81
77
89
101
90
78
66
70
80
76
88
100
89
88
87
86
85
84
83
82
81
80
79
78
77
65
69
79
75
87
88
89
90
91
92
93
94
95
96
97
98
99
76
64
68
78
74
86
75
63
67
77
73
85
74
62
66
76
72
84
73
61
65
75
71
83
72
60
64
74
70
82
71
59
63
73
69
81
70
58
62
72
68
80
69
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
79
68
48
58
78
67
47
57
77
66
46
56
76
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
45
55
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
76
64
44
54
74
86
75
63
43
53
73
85
74
62
42
52
72
84
73
61
41
51
71
83
72
60
40
50
70
82
71
59
39
49
69
81
70
58
38
48
68
80
69
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
79
68
49
36
46
60
78
67
50
35
45
61
77
66
51
34
44
62
76
65
52
33
43
63
75
64
53
32
42
64
74
63
54
31
41
65
73
62
55
30
40
66
72
61
56
29
39
67
71
60
57
28
38
66
70
59
56
27
37
65
69
58
55
26
36
64
68
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
25
35
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
58
44
24
34
54
68
59
43
23
33
53
69
60
42
22
32
52
70
61
41
21
31
51
71
62
40
20
30
50
72
63
39
19
29
49
73
64
38
18
28
48
74
65
37
17
27
47
75
66
36
16
26
46
76
67
35
15
25
45
77
68
34
14
24
44
78
69
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
90
91
92
93
94
95
96
97
98
99
100
99
98
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
109
93
89
97
101
117
108
92
88
96
100
116
107
91
87
95
99
115
106
90
86
94
98
114
105
89
85
93
97
113
104
88
84
92
96
112
103
87
83
91
95
111
102
86
82
90
94
110
101
85
81
89
93
109
100
84
80
88
92
108
99
83
79
87
91
107
98
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
106
97
85
73
77
85
81
93
105
96
84
72
76
84
80
92
104
95
83
71
75
83
79
91
103
94
82
70
74
82
78
90
102
93
81
69
73
81
77
89
101
92
80
68
72
80
76
88
100
91
79
67
71
79
75
87
99
90
89
88
87
86
85
84
83
82
81
80
79
78
66
70
78
74
86
87
88
89
90
91
92
93
94
95
96
97
98
77
65
69
77
73
85
76
64
68
76
72
84
75
63
67
75
71
83
74
62
66
74
70
82
73
61
65
73
69
81
72
60
64
72
68
80
71
59
63
71
67
79
70
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
78
69
49
57
77
68
48
56
76
67
47
55
75
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
46
54
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
77
65
45
53
73
85
76
64
44
52
72
84
75
63
43
51
71
83
74
62
42
50
70
82
73
61
41
49
69
81
72
60
40
48
68
80
71
59
39
47
67
79
70
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
78
69
50
37
45
59
77
68
51
36
44
60
76
67
52
35
43
61
75
66
53
34
42
62
74
65
54
33
41
63
73
64
55
32
40
64
72
63
56
31
39
65
71
62
57
30
38
66
70
61
58
29
37
65
69
60
57
28
36
64
68
59
56
27
35
63
67
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
26
34
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
59
45
25
33
53
67
60
44
24
32
52
68
61
43
23
31
51
69
62
42
22
30
50
70
63
41
21
29
49
71
64
40
20
28
48
72
65
39
19
27
47
73
66
38
18
26
46
74
67
37
17
25
45
75
68
36
16
24
44
76
69
35
15
23
43
77
70
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
91
92
93
94
95
96
97
98
99
100
99
98
97
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
110
94
90
96
100
116
109
93
89
95
99
115
108
92
88
94
98
114
107
91
87
93
97
113
106
90
86
92
96
112
105
89
85
91
95
111
104
88
84
90
94
110
103
87
83
89
93
109
102
86
82
88
92
108
101
85
81
87
91
107
100
84
80
86
90
106
99
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
105
98
86
74
78
84
80
92
104
97
85
73
77
83
79
91
103
96
84
72
76
82
78
90
102
95
83
71
75
81
77
89
101
94
82
70
74
80
76
88
100
93
81
69
73
79
75
87
99
92
80
68
72
78
74
86
98
91
90
89
88
87
86
85
84
83
82
81
80
79
67
71
77
73
85
86
87
88
89
90
91
92
93
94
95
96
97
78
66
70
76
72
84
77
65
69
75
71
83
76
64
68
74
70
82
75
63
67
73
69
81
74
62
66
72
68
80
73
61
65
71
67
79
72
60
64
70
66
78
71
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
77
70
50
56
76
69
49
55
75
68
48
54
74
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
47
53
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
78
66
46
52
72
84
77
65
45
51
71
83
76
64
44
50
70
82
75
63
43
49
69
81
74
62
42
48
68
80
73
61
41
47
67
79
72
60
40
46
66
78
71
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
77
70
51
38
44
58
76
69
52
37
43
59
75
68
53
36
42
60
74
67
54
35
41
61
73
66
55
34
40
62
72
65
56
33
39
63
71
64
57
32
38
64
70
63
58
31
37
65
69
62
59
30
36
64
68
61
58
29
35
63
67
60
57
28
34
62
66
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
27
33
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
60
46
26
32
52
66
61
45
25
31
51
67
62
44
24
30
50
68
63
43
23
29
49
69
64
42
22
28
48
70
65
41
21
27
47
71
66
40
20
26
46
72
67
39
19
25
45
73
68
38
18
24
44
74
69
37
17
23
43
75
70
36
16
22
42
76
71
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
92
93
94
95
96
97
98
99
100
99
98
97
96
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
111
95
91
95
99
115
110
94
90
94
98
114
109
93
89
93
97
113
108
92
88
92
96
112
107
91
87
91
95
111
106
90
86
90
94
110
105
89
85
89
93
109
104
88
84
88
92
108
103
87
83
87
91
107
102
86
82
86
90
106
101
85
81
85
89
105
100
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
104
99
87
75
79
83
79
91
103
98
86
74
78
82
78
90
102
97
85
73
77
81
77
89
101
96
84
72
76
80
76
88
100
95
83
71
75
79
75
87
99
94
82
70
74
78
74
86
98
93
81
69
73
77
73
85
97
92
91
90
89
88
87
86
85
84
83
82
81
80
68
72
76
72
84
85
86
87
88
89
90
91
92
93
94
95
96
79
67
71
75
71
83
78
66
70
74
70
82
77
65
69
73
69
81
76
64
68
72
68
80
75
63
67
71
67
79
74
62
66
70
66
78
73
61
65
69
65
77
72
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
76
71
51
55
75
70
50
54
74
69
49
53
73
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
48
52
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
79
67
47
51
71
83
78
66
46
50
70
82
77
65
45
49
69
81
76
64
44
48
68
80
75
63
43
47
67
79
74
62
42
46
66
78
73
61
41
45
65
77
72
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
76
71
52
39
43
57
75
70
53
38
42
58
74
69
54
37
41
59
73
68
55
36
40
60
72
67
56
35
39
61
71
66
57
34
38
62
70
65
58
33
37
63
69
64
59
32
36
64
68
63
60
31
35
63
67
62
59
30
34
62
66
61
58
29
33
61
65
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
28
32
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
61
47
27
31
51
65
62
46
26
30
50
66
63
45
25
29
49
67
64
44
24
28
48
68
65
43
23
27
47
69
66
42
22
26
46
70
67
41
21
25
45
71
68
40
20
24
44
72
69
39
19
23
43
73
70
38
18
22
42
74
71
37
17
21
41
75
72
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
93
94
95
96
97
98
99
100
99
98
97
96
95
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
112
96
92
94
98
114
111
95
91
93
97
113
110
94
90
92
96
112
109
93
89
91
95
111
108
92
88
90
94
110
107
91
87
89
93
109
106
90
86
88
92
108
105
89
85
87
91
107
104
88
84
86
90
106
103
87
83
85
89
105
102
86
82
84
88
104
101
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
103
100
88
76
80
82
78
90
102
99
87
75
79
81
77
89
101
98
86
74
78
80
76
88
100
97
85
73
77
79
75
87
99
96
84
72
76
78
74
86
98
95
83
71
75
77
73
85
97
94
82
70
74
76
72
84
96
93
92
91
90
89
88
87
86
85
84
83
82
81
69
73
75
71
83
84
85
86
87
88
89
90
91
92
93
94
95
80
68
72
74
70
82
79
67
71
73
69
81
78
66
70
72
68
80
77
65
69
71
67
79
76
64
68
70
66
78
75
63
67
69
65
77
74
62
66
68
64
76
73
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
75
72
52
54
74
71
51
53
73
70
50
52
72
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
49
51
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
80
68
48
50
70
82
79
67
47
49
69
81
78
66
46
48
68
80
77
65
45
47
67
79
76
64
44
46
66
78
75
63
43
45
65
77
74
62
42
44
64
76
73
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
75
72
53
40
42
56
74
71
54
39
41
57
73
70
55
38
40
58
72
69
56
37
39
59
71
68
57
36
38
60
70
67
58
35
37
61
69
66
59
34
36
62
68
65
60
33
35
63
67
64
61
32
34
62
66
63
60
31
33
61
65
62
59
30
32
60
64
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
29
31
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
62
48
28
30
50
64
63
47
27
29
49
65
64
46
26
28
48
66
65
45
25
27
47
67
66
44
24
26
46
68
67
43
23
25
45
69
68
42
22
24
44
70
69
41
21
23
43
71
70
40
20
22
42
72
71
39
19
21
41
73
72
38
18
20
40
74
73
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
94
95
96
97
98
99
100
99
98
97
96
95
94
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
97
93
93
97
113
112
96
92
92
96
112
111
95
91
91
95
111
110
94
90
90
94
110
109
93
89
89
93
109
108
92
88
88
92
108
107
91
87
87
91
107
106
90
86
86
90
106
105
89
85
85
89
105
104
88
84
84
88
104
103
87
83
83
87
103
102
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
102
101
89
77
81
81
77
89
101
100
88
76
80
80
76
88
100
99
87
75
79
79
75
87
99
98
86
74
78
78
74
86
98
97
85
73
77
77
73
85
97
96
84
72
76
76
72
84
96
95
83
71
75
75
71
83
95
94
93
92
91
90
89
88
87
86
85
84
83
82
70
74
74
70
82
83
84
85
86
87
88
89
90
91
92
93
94
81
69
73
73
69
81
80
68
72
72
68
80
79
67
71
71
67
79
78
66
70
70
66
78
77
65
69
69
65
77
76
64
68
68
64
76
75
63
67
67
63
75
74
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
74
73
53
53
73
72
52
52
72
71
51
51
71
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
50
50
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
81
69
49
49
69
81
80
68
48
48
68
80
79
67
47
47
67
79
78
66
46
46
66
78
77
65
45
45
65
77
76
64
44
44
64
76
75
63
43
43
63
75
74
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
74
73
54
41
41
55
73
72
55
40
40
56
72
71
56
39
39
57
71
70
57
38
38
58
70
69
58
37
37
59
69
68
59
36
36
60
68
67
60
35
35
61
67
66
61
34
34
62
66
65
62
33
33
61
65
64
61
32
32
60
64
63
60
31
31
59
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
30
30
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
49
29
29
49
63
64
48
28
28
48
64
65
47
27
27
47
65
66
46
26
26
46
66
67
45
25
25
45
67
68
44
24
24
44
68
69
43
23
23
43
69
70
42
22
22
42
70
71
41
21
21
41
71
72
40
20
20
40
72
73
39
19
19
39
73
74
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
95
96
97
98
99
100
99
98
97
96
95
94
93
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
114
98
94
92
96
112
113
97
93
91
95
111
112
96
92
90
94
110
111
95
91
89
93
109
110
94
90
88
92
108
109
93
89
87
91
107
108
92
88
86
90
106
107
91
87
85
89
105
106
90
86
84
88
104
105
89
85
83
87
103
104
88
84
82
86
102
103
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
101
102
90
78
82
80
76
88
100
101
89
77
81
79
75
87
99
100
88
76
80
78
74
86
98
99
87
75
79
77
73
85
97
98
86
74
78
76
72
84
96
97
85
73
77
75
71
83
95
96
84
72
76
74
70
82
94
95
94
93
92
91
90
89
88
87
86
85
84
83
71
75
73
69
81
82
83
84
85
86
87
88
89
90
91
92
93
82
70
74
72
68
80
81
69
73
71
67
79
80
68
72
70
66
78
79
67
71
69
65
77
78
66
70
68
64
76
77
65
69
67
63
75
76
64
68
66
62
74
75
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
73
74
54
52
72
73
53
51
71
72
52
50
70
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
51
49
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
82
70
50
48
68
80
81
69
49
47
67
79
80
68
48
46
66
78
79
67
47
45
65
77
78
66
46
44
64
76
77
65
45
43
63
75
76
64
44
42
62
74
75
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
73
74
55
42
40
54
72
73
56
41
39
55
71
72
57
40
38
56
70
71
58
39
37
57
69
70
59
38
36
58
68
69
60
37
35
59
67
68
61
36
34
60
66
67
62
35
33
61
65
66
63
34
32
60
64
65
62
33
31
59
63
64
61
32
30
58
62
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
31
29
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
64
50
30
28
48
62
65
49
29
27
47
63
66
48
28
26
46
64
67
47
27
25
45
65
68
46
26
24
44
66
69
45
25
23
43
67
70
44
24
22
42
68
71
43
23
21
41
69
72
42
22
20
40
70
73
41
21
19
39
71
74
40
20
18
38
72
75
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
96
97
98
99
100
99
98
97
96
95
94
93
92
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
115
99
95
91
95
111
114
98
94
90
94
110
113
97
93
89
93
109
112
96
92
88
92
108
111
95
91
87
91
107
110
94
90
86
90
106
109
93
89
85
89
105
108
92
88
84
88
104
107
91
87
83
87
103
106
90
86
82
86
102
105
89
85
81
85
101
104
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
100
103
91
79
83
79
75
87
99
102
90
78
82
78
74
86
98
101
89
77
81
77
73
85
97
100
88
76
80
76
72
84
96
99
87
75
79
75
71
83
95
98
86
74
78
74
70
82
94
97
85
73
77
73
69
81
93
96
95
94
93
92
91
90
89
88
87
86
85
84
72
76
72
68
80
81
82
83
84
85
86
87
88
89
90
91
92
83
71
75
71
67
79
82
70
74
70
66
78
81
69
73
69
65
77
80
68
72
68
64
76
79
67
71
67
63
75
78
66
70
66
62
74
77
65
69
65
61
73
76
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
72
75
55
51
71
74
54
50
70
73
53
49
69
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
52
48
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
71
51
47
67
79
82
70
50
46
66
78
81
69
49
45
65
77
80
68
48
44
64
76
79
67
47
43
63
75
78
66
46
42
62
74
77
65
45
41
61
73
76
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
72
75
56
43
39
53
71
74
57
42
38
54
70
73
58
41
37
55
69
72
59
40
36
56
68
71
60
39
35
57
67
70
61
38
34
58
66
69
62
37
33
59
65
68
63
36
32
60
64
67
64
35
31
59
63
66
63
34
30
58
62
65
62
33
29
57
61
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
32
28
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
65
51
31
27
47
61
66
50
30
26
46
62
67
49
29
25
45
63
68
48
28
24
44
64
69
47
27
23
43
65
70
46
26
22
42
66
71
45
25
21
41
67
72
44
24
20
40
68
73
43
23
19
39
69
74
42
22
18
38
70
75
41
21
17
37
71
76
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
97
98
99
100
99
98
97
96
95
94
93
92
91
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
116
100
96
90
94
110
115
99
95
89
93
109
114
98
94
88
92
108
113
97
93
87
91
107
112
96
92
86
90
106
111
95
91
85
89
105
110
94
90
84
88
104
109
93
89
83
87
103
108
92
88
82
86
102
107
91
87
81
85
101
106
90
86
80
84
100
105
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
99
104
92
80
84
78
74
86
98
103
91
79
83
77
73
85
97
102
90
78
82
76
72
84
96
101
89
77
81
75
71
83
95
100
88
76
80
74
70
82
94
99
87
75
79
73
69
81
93
98
86
74
78
72
68
80
92
97
96
95
94
93
92
91
90
89
88
87
86
85
73
77
71
67
79
80
81
82
83
84
85
86
87
88
89
90
91
84
72
76
70
66
78
83
71
75
69
65
77
82
70
74
68
64
76
81
69
73
67
63
75
80
68
72
66
62
74
79
67
71
65
61
73
78
66
70
64
60
72
77
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
71
76
56
50
70
75
55
49
69
74
54
48
68
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
53
47
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
72
52
46
66
78
83
71
51
45
65
77
82
70
50
44
64
76
81
69
49
43
63
75
80
68
48
42
62
74
79
67
47
41
61
73
78
66
46
40
60
72
77
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
71
76
57
44
38
52
70
75
58
43
37
53
69
74
59
42
36
54
68
73
60
41
35
55
67
72
61
40
34
56
66
71
62
39
33
57
65
70
63
38
32
58
64
69
64
37
31
59
63
68
65
36
30
58
62
67
64
35
29
57
61
66
63
34
28
56
60
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
33
27
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
66
52
32
26
46
60
67
51
31
25
45
61
68
50
30
24
44
62
69
49
29
23
43
63
70
48
28
22
42
64
71
47
27
21
41
65
72
46
26
20
40
66
73
45
25
19
39
67
74
44
24
18
38
68
75
43
23
17
37
69
76
42
22
16
36
70
77
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
98
99
100
99
98
97
96
95
94
93
92
91
90
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
117
101
97
89
93
109
116
100
96
88
92
108
115
99
95
87
91
107
114
98
94
86
90
106
113
97
93
85
89
105
112
96
92
84
88
104
111
95
91
83
87
103
110
94
90
82
86
102
109
93
89
81
85
101
108
92
88
80
84
100
107
91
87
79
83
99
106
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
98
105
93
81
85
77
73
85
97
104
92
80
84
76
72
84
96
103
91
79
83
75
71
83
95
102
90
78
82
74
70
82
94
101
89
77
81
73
69
81
93
100
88
76
80
72
68
80
92
99
87
75
79
71
67
79
91
98
97
96
95
94
93
92
91
90
89
88
87
86
74
78
70
66
78
79
80
81
82
83
84
85
86
87
88
89
90
85
73
77
69
65
77
84
72
76
68
64
76
83
71
75
67
63
75
82
70
74
66
62
74
81
69
73
65
61
73
80
68
72
64
60
72
79
67
71
63
59
71
78
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
70
77
57
49
69
76
56
48
68
75
55
47
67
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
54
46
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
85
73
53
45
65
77
84
72
52
44
64
76
83
71
51
43
63
75
82
70
50
42
62
74
81
69
49
41
61
73
80
68
48
40
60
72
79
67
47
39
59
71
78
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
70
77
58
45
37
51
69
76
59
44
36
52
68
75
60
43
35
53
67
74
61
42
34
54
66
73
62
41
33
55
65
72
63
40
32
56
64
71
64
39
31
57
63
70
65
38
30
58
62
69
66
37
29
57
61
68
65
36
28
56
60
67
64
35
27
55
59
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
34
26
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
67
53
33
25
45
59
68
52
32
24
44
60
69
51
31
23
43
61
70
50
30
22
42
62
71
49
29
21
41
63
72
48
28
20
40
64
73
47
27
19
39
65
74
46
26
18
38
66
75
45
25
17
37
67
76
44
24
16
36
68
77
43
23
15
35
69
78
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
99
100
99
98
97
96
95
94
93
92
91
90
89
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
118
102
98
88
92
108
117
101
97
87
91
107
116
100
96
86
90
106
115
99
95
85
89
105
114
98
94
84
88
104
113
97
93
83
87
103
112
96
92
82
86
102
111
95
91
81
85
101
110
94
90
80
84
100
109
93
89
79
83
99
108
92
88
78
82
98
107
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
97
106
94
82
86
76
72
84
96
105
93
81
85
75
71
83
95
104
92
80
84
74
70
82
94
103
91
79
83
73
69
81
93
102
90
78
82
72
68
80
92
101
89
77
81
71
67
79
91
100
88
76
80
70
66
78
90
99
98
97
96
95
94
93
92
91
90
89
88
87
75
79
69
65
77
78
79
80
81
82
83
84
85
86
87
88
89
86
74
78
68
64
76
85
73
77
67
63
75
84
72
76
66
62
74
83
71
75
65
61
73
82
70
74
64
60
72
81
69
73
63
59
71
80
68
72
62
58
70
79
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
69
78
58
48
68
77
57
47
67
76
56
46
66
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
55
45
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
86
74
54
44
64
76
85
73
53
43
63
75
84
72
52
42
62
74
83
71
51
41
61
73
82
70
50
40
60
72
81
69
49
39
59
71
80
68
48
38
58
70
79
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
69
78
59
46
36
50
68
77
60
45
35
51
67
76
61
44
34
52
66
75
62
43
33
53
65
74
63
42
32
54
64
73
64
41
31
55
63
72
65
40
30
56
62
71
66
39
29
57
61
70
67
38
28
56
60
69
66
37
27
55
59
68
65
36
26
54
58
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
35
25
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
68
54
34
24
44
58
69
53
33
23
43
59
70
52
32
22
42
60
71
51
31
21
41
61
72
50
30
20
40
62
73
49
29
19
39
63
74
48
28
18
38
64
75
47
27
17
37
65
76
46
26
16
36
66
77
45
25
15
35
67
78
44
24
14
34
68
79
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
100
99
98
97
96
95
94
93
92
91
90
89
88
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
119
103
99
87
91
107
118
102
98
86
90
106
117
101
97
85
89
105
116
100
96
84
88
104
115
99
95
83
87
103
114
98
94
82
86
102
113
97
93
81
85
101
112
96
92
80
84
100
111
95
91
79
83
99
110
94
90
78
82
98
109
93
89
77
81
97
108
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
96
107
95
83
87
75
71
83
95
106
94
82
86
74
70
82
94
105
93
81
85
73
69
81
93
104
92
80
84
72
68
80
92
103
91
79
83
71
67
79
91
102
90
78
82
70
66
78
90
101
89
77
81
69
65
77
89
100
99
98
97
96
95
94
93
92
91
90
89
88
76
80
68
64
76
77
78
79
80
81
82
83
84
85
86
87
88
87
75
79
67
63
75
86
74
78
66
62
74
85
73
77
65
61
73
84
72
76
64
60
72
83
71
75
63
59
71
82
70
74
62
58
70
81
69
73
61
57
69
80
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
68
79
59
47
67
78
58
46
66
77
57
45
65
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
56
44
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
86
75
55
43
63
75
86
74
54
42
62
74
85
73
53
41
61
73
84
72
52
40
60
72
83
71
51
39
59
71
82
70
50
38
58
70
81
69
49
37
57
69
80
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
68
79
60
47
35
49
67
78
61
46
34
50
66
77
62
45
33
51
65
76
63
44
32
52
64
75
64
43
31
53
63
74
65
42
30
54
62
73
66
41
29
55
61
72
67
40
28
56
60
71
68
39
27
55
59
70
67
38
26
54
58
69
66
37
25
53
57
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
36
24
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
69
55
35
23
43
57
70
54
34
22
42
58
71
53
33
21
41
59
72
52
32
20
40
60
73
51
31
19
39
61
74
50
30
18
38
62
75
49
29
17
37
63
76
48
28
16
36
64
77
47
27
15
35
65
78
46
26
14
34
66
79
45
25
13
33
67
80
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
99
98
97
96
95
94
93
92
91
90
89
88
87
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
120
104
98
86
90
106
119
103
97
85
89
105
118
102
96
84
88
104
117
101
95
83
87
103
116
100
94
82
86
102
115
99
93
81
85
101
114
98
92
80
84
100
113
97
91
79
83
99
112
96
90
78
82
98
111
95
89
77
81
97
110
94
88
76
80
96
109
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
95
108
96
84
86
74
70
82
94
107
95
83
85
73
69
81
93
106
94
82
84
72
68
80
92
105
93
81
83
71
67
79
91
104
92
80
82
70
66
78
90
103
91
79
81
69
65
77
89
102
90
78
80
68
64
76
88
101
100
99
98
97
96
95
94
93
92
91
90
89
77
79
67
63
75
76
77
78
79
80
81
82
83
84
85
86
87
88
76
78
66
62
74
87
75
77
65
61
73
86
74
76
64
60
72
85
73
75
63
59
71
84
72
74
62
58
70
83
71
73
61
57
69
82
70
72
60
56
68
81
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
67
80
60
46
66
79
59
45
65
78
58
44
64
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
57
43
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
85
76
56
42
62
74
86
75
55
41
61
73
86
74
54
40
60
72
85
73
53
39
59
71
84
72
52
38
58
70
83
71
51
37
57
69
82
70
50
36
56
68
81
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
67
80
61
48
34
48
66
79
62
47
33
49
65
78
63
46
32
50
64
77
64
45
31
51
63
76
65
44
30
52
62
75
66
43
29
53
61
74
67
42
28
54
60
73
68
41
27
55
59
72
69
40
26
54
58
71
68
39
25
53
57
70
67
38
24
52
56
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
37
23
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
70
56
36
22
42
56
71
55
35
21
41
57
72
54
34
20
40
58
73
53
33
19
39
59
74
52
32
18
38
60
75
51
31
17
37
61
76
50
30
16
36
62
77
49
29
15
35
63
78
48
28
14
34
64
79
47
27
13
33
65
80
46
26
12
32
66
81
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
98
97
96
95
94
93
92
91
90
89
88
87
86
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
121
105
97
85
89
105
120
104
96
84
88
104
119
103
95
83
87
103
118
102
94
82
86
102
117
101
93
81
85
101
116
100
92
80
84
100
115
99
91
79
83
99
114
98
90
78
82
98
113
97
89
77
81
97
112
96
88
76
80
96
111
95
87
75
79
95
110
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
94
109
97
85
85
73
69
81
93
108
96
84
84
72
68
80
92
107
95
83
83
71
67
79
91
106
94
82
82
70
66
78
90
105
93
81
81
69
65
77
89
104
92
80
80
68
64
76
88
103
91
79
79
67
63
75
87
102
101
100
99
98
97
96
95
94
93
92
91
90
78
78
66
62
74
75
76
77
78
79
80
81
82
83
84
85
86
89
77
77
65
61
73
88
76
76
64
60
72
87
75
75
63
59
71
86
74
74
62
58
70
85
73
73
61
57
69
84
72
72
60
56
68
83
71
71
59
55
67
82
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
66
81
61
45
65
80
60
44
64
79
59
43
63
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
58
42
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
84
77
57
41
61
73
85
76
56
40
60
72
86
75
55
39
59
71
86
74
54
38
58
70
85
73
53
37
57
69
84
72
52
36
56
68
83
71
51
35
55
67
82
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
66
81
62
49
33
47
65
80
63
48
32
48
64
79
64
47
31
49
63
78
65
46
30
50
62
77
66
45
29
51
61
76
67
44
28
52
60
75
68
43
27
53
59
74
69
42
26
54
58
73
70
41
25
53
57
72
69
40
24
52
56
71
68
39
23
51
55
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
38
22
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
71
57
37
21
41
55
72
56
36
20
40
56
73
55
35
19
39
57
74
54
34
18
38
58
75
53
33
17
37
59
76
52
32
16
36
60
77
51
31
15
35
61
78
50
30
14
34
62
79
49
29
13
33
63
80
48
28
12
32
64
81
47
27
11
31
65
82
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
97
96
95
94
93
92
91
90
89
88
87
86
85
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
122
106
96
84
88
104
121
105
95
83
87
103
120
104
94
82
86
102
119
103
93
81
85
101
118
102
92
80
84
100
117
101
91
79
83
99
116
100
90
78
82
98
115
99
89
77
81
97
114
98
88
76
80
96
113
97
87
75
79
95
112
96
86
74
78
94
111
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
93
110
98
86
84
72
68
80
92
109
97
85
83
71
67
79
91
108
96
84
82
70
66
78
90
107
95
83
81
69
65
77
89
106
94
82
80
68
64
76
88
105
93
81
79
67
63
75
87
104
92
80
78
66
62
74
86
103
102
101
100
99
98
97
96
95
94
93
92
91
79
77
65
61
73
74
75
76
77
78
79
80
81
82
83
84
85
90
78
76
64
60
72
89
77
75
63
59
71
88
76
74
62
58
70
87
75
73
61
57
69
86
74
72
60
56
68
85
73
71
59
55
67
84
72
70
58
54
66
83
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
65
82
62
44
64
81
61
43
63
80
60
42
62
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
59
41
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
83
78
58
40
60
72
84
77
57
39
59
71
85
76
56
38
58
70
86
75
55
37
57
69
86
74
54
36
56
68
85
73
53
35
55
67
84
72
52
34
54
66
83
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
65
82
63
50
32
46
64
81
64
49
31
47
63
80
65
48
30
48
62
79
66
47
29
49
61
78
67
46
28
50
60
77
68
45
27
51
59
76
69
44
26
52
58
75
70
43
25
53
57
74
71
42
24
52
56
73
70
41
23
51
55
72
69
40
22
50
54
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
39
21
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
72
58
38
20
40
54
73
57
37
19
39
55
74
56
36
18
38
56
75
55
35
17
37
57
76
54
34
16
36
58
77
53
33
15
35
59
78
52
32
14
34
60
79
51
31
13
33
61
80
50
30
12
32
62
81
49
29
11
31
63
82
48
28
10
30
64
83
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
96
95
94
93
92
91
90
89
88
87
86
85
84
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
123
107
95
83
87
103
122
106
94
82
86
102
121
105
93
81
85
101
120
104
92
80
84
100
119
103
91
79
83
99
118
102
90
78
82
98
117
101
89
77
81
97
116
100
88
76
80
96
115
99
87
75
79
95
114
98
86
74
78
94
113
97
85
73
77
93
112
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
92
111
99
87
83
71
67
79
91
110
98
86
82
70
66
78
90
109
97
85
81
69
65
77
89
108
96
84
80
68
64
76
88
107
95
83
79
67
63
75
87
106
94
82
78
66
62
74
86
105
93
81
77
65
61
73
85
104
103
102
101
100
99
98
97
96
95
94
93
92
80
76
64
60
72
73
74
75
76
77
78
79
80
81
82
83
84
91
79
75
63
59
71
90
78
74
62
58
70
89
77
73
61
57
69
88
76
72
60
56
68
87
75
71
59
55
67
86
74
70
58
54
66
85
73
69
57
53
65
84
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
64
83
63
43
63
82
62
42
62
81
61
41
61
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
60
40
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
82
79
59
39
59
71
83
78
58
38
58
70
84
77
57
37
57
69
85
76
56
36
56
68
86
75
55
35
55
67
86
74
54
34
54
66
85
73
53
33
53
65
84
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
64
83
64
51
31
45
63
82
65
50
30
46
62
81
66
49
29
47
61
80
67
48
28
48
60
79
68
47
27
49
59
78
69
46
26
50
58
77
70
45
25
51
57
76
71
44
24
52
56
75
72
43
23
51
55
74
71
42
22
50
54
73
70
41
21
49
53
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
40
20
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
73
59
39
19
39
53
74
58
38
18
38
54
75
57
37
17
37
55
76
56
36
16
36
56
77
55
35
15
35
57
78
54
34
14
34
58
79
53
33
13
33
59
80
52
32
12
32
60
81
51
31
11
31
61
82
50
30
10
30
62
83
49
29
9
29
63
84
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
95
94
93
92
91
90
89
88
87
86
85
84
83
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
124
106
94
82
86
102
123
105
93
81
85
101
122
104
92
80
84
100
121
103
91
79
83
99
120
102
90
78
82
98
119
101
89
77
81
97
118
100
88
76
80
96
117
99
87
75
79
95
116
98
86
74
78
94
115
97
85
73
77
93
114
96
84
72
76
92
113
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
91
112
100
88
82
70
66
78
90
111
99
87
81
69
65
77
89
110
98
86
80
68
64
76
88
109
97
85
79
67
63
75
87
108
96
84
78
66
62
74
86
107
95
83
77
65
61
73
85
106
94
82
76
64
60
72
84
105
104
103
102
101
100
99
98
97
96
95
94
93
81
75
63
59
71
72
73
74
75
76
77
78
79
80
81
82
83
92
80
74
62
58
70
91
79
73
61
57
69
90
78
72
60
56
68
89
77
71
59
55
67
88
76
70
58
54
66
87
75
69
57
53
65
86
74
68
56
52
64
85
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
63
84
64
42
62
83
63
41
61
82
62
40
60
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
61
39
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
81
80
60
38
58
70
82
79
59
37
57
69
83
78
58
36
56
68
84
77
57
35
55
67
85
76
56
34
54
66
86
75
55
33
53
65
86
74
54
32
52
64
85
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
63
84
65
52
30
44
62
83
66
51
29
45
61
82
67
50
28
46
60
81
68
49
27
47
59
80
69
48
26
48
58
79
70
47
25
49
57
78
71
46
24
50
56
77
72
45
23
51
55
76
73
44
22
50
54
75
72
43
21
49
53
74
71
42
20
48
52
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
41
19
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
74
60
40
18
38
52
75
59
39
17
37
53
76
58
38
16
36
54
77
57
37
15
35
55
78
56
36
14
34
56
79
55
35
13
33
57
80
54
34
12
32
58
81
53
33
11
31
59
82
52
32
10
30
60
83
51
31
9
29
61
84
50
30
8
28
62
85
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
94
93
92
91
90
89
88
87
86
85
84
83
82
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
125
105
93
81
85
101
124
104
92
80
84
100
123
103
91
79
83
99
122
102
90
78
82
98
121
101
89
77
81
97
120
100
88
76
80
96
119
99
87
75
79
95
118
98
86
74
78
94
117
97
85
73
77
93
116
96
84
72
76
92
115
95
83
71
75
91
114
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
90
113
101
89
81
69
65
77
89
112
100
88
80
68
64
76
88
111
99
87
79
67
63
75
87
110
98
86
78
66
62
74
86
109
97
85
77
65
61
73
85
108
96
84
76
64
60
72
84
107
95
83
75
63
59
71
83
106
105
104
103
102
101
100
99
98
97
96
95
94
82
74
62
58
70
71
72
73
74
75
76
77
78
79
80
81
82
93
81
73
61
57
69
92
80
72
60
56
68
91
79
71
59
55
67
90
78
70
58
54
66
89
77
69
57
53
65
88
76
68
56
52
64
87
75
67
55
51
63
86
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
62
85
65
41
61
84
64
40
60
83
63
39
59
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
62
38
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
80
81
61
37
57
69
81
80
60
36
56
68
82
79
59
35
55
67
83
78
58
34
54
66
84
77
57
33
53
65
85
76
56
32
52
64
86
75
55
31
51
63
86
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
62
85
66
53
29
43
61
84
67
52
28
44
60
83
68
51
27
45
59
82
69
50
26
46
58
81
70
49
25
47
57
80
71
48
24
48
56
79
72
47
23
49
55
78
73
46
22
50
54
77
74
45
21
49
53
76
73
44
20
48
52
75
72
43
19
47
51
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
42
18
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
75
61
41
17
37
51
76
60
40
16
36
52
77
59
39
15
35
53
78
58
38
14
34
54
79
57
37
13
33
55
80
56
36
12
32
56
81
55
35
11
31
57
82
54
34
10
30
58
83
53
33
9
29
59
84
52
32
8
28
60
85
51
31
7
27
61
86
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
93
92
91
90
89
88
87
86
85
84
83
82
81
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
126
104
92
80
84
100
125
103
91
79
83
99
124
102
90
78
82
98
123
101
89
77
81
97
122
100
88
76
80
96
121
99
87
75
79
95
120
98
86
74
78
94
119
97
85
73
77
93
118
96
84
72
76
92
117
95
83
71
75
91
116
94
82
70
74
90
115
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
89
114
102
90
80
68
64
76
88
113
101
89
79
67
63
75
87
112
100
88
78
66
62
74
86
111
99
87
77
65
61
73
85
110
98
86
76
64
60
72
84
109
97
85
75
63
59
71
83
108
96
84
74
62
58
70
82
107
106
105
104
103
102
101
100
99
98
97
96
95
83
73
61
57
69
70
71
72
73
74
75
76
77
78
79
80
81
94
82
72
60
56
68
93
81
71
59
55
67
92
80
70
58
54
66
91
79
69
57
53
65
90
78
68
56
52
64
89
77
67
55
51
63
88
76
66
54
50
62
87
75
74
73
72
71
70
69
68
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
61
86
66
40
60
85
65
39
59
84
64
38
58
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
63
37
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
79
82
62
36
56
68
80
81
61
35
55
67
81
80
60
34
54
66
82
79
59
33
53
65
83
78
58
32
52
64
84
77
57
31
51
63
85
76
56
30
50
62
86
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
61
86
67
54
28
42
60
85
68
53
27
43
59
84
69
52
26
44
58
83
70
51
25
45
57
82
71
50
24
46
56
81
72
49
23
47
55
80
73
48
22
48
54
79
74
47
21
49
53
78
75
46
20
48
52
77
74
45
19
47
51
76
73
44
18
46
50
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
43
17
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
76
62
42
16
36
50
77
61
41
15
35
51
78
60
40
14
34
52
79
59
39
13
33
53
80
58
38
12
32
54
81
57
37
11
31
55
82
56
36
10
30
56
83
55
35
9
29
57
84
54
34
8
28
58
85
53
33
7
27
59
86
52
32
6
26
60
87
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
92
91
90
89
88
87
86
85
84
83
82
81
80
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
127
103
91
79
83
99
126
102
90
78
82
98
125
101
89
77
81
97
124
100
88
76
80
96
123
99
87
75
79
95
122
98
86
74
78
94
121
97
85
73
77
93
120
96
84
72
76
92
119
95
83
71
75
91
118
94
82
70
74
90
117
93
81
69
73
89
116
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
88
115
103
91
79
67
63
75
87
114
102
90
78
66
62
74
86
113
101
89
77
65
61
73
85
112
100
88
76
64
60
72
84
111
99
87
75
63
59
71
83
110
98
86
74
62
58
70
82
109
97
85
73
61
57
69
81
108
107
106
105
104
103
102
101
100
99
98
97
96
84
72
60
56
68
69
70
71
72
73
74
75
76
77
78
79
80
95
83
71
59
55
67
94
82
70
58
54
66
93
81
69
57
53
65
92
80
68
56
52
64
91
79
67
55
51
63
90
78
66
54
50
62
89
77
65
53
49
61
88
76
75
74
73
72
71
70
69
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
60
87
67
39
59
86
66
38
58
85
65
37
57
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
64
36
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
78
83
63
35
55
67
79
82
62
34
54
66
80
81
61
33
53
65
81
80
60
32
52
64
82
79
59
31
51
63
83
78
58
30
50
62
84
77
57
29
49
61
85
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
60
86
68
55
27
41
59
86
69
54
26
42
58
85
70
53
25
43
57
84
71
52
24
44
56
83
72
51
23
45
55
82
73
50
22
46
54
81
74
49
21
47
53
80
75
48
20
48
52
79
76
47
19
47
51
78
75
46
18
46
50
77
74
45
17
45
49
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
44
16
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
77
63
43
15
35
49
78
62
42
14
34
50
79
61
41
13
33
51
80
60
40
12
32
52
81
59
39
11
31
53
82
58
38
10
30
54
83
57
37
9
29
55
84
56
36
8
28
56
85
55
35
7
27
57
86
54
34
6
26
58
87
53
33
5
25
59
88
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
91
90
89
88
87
86
85
84
83
82
81
80
79
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
128
102
90
78
82
98
127
101
89
77
81
97
126
100
88
76
80
96
125
99
87
75
79
95
124
98
86
74
78
94
123
97
85
73
77
93
122
96
84
72
76
92
121
95
83
71
75
91
120
94
82
70
74
90
119
93
81
69
73
89
118
92
80
68
72
88
117
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
87
116
104
92
78
66
62
74
86
115
103
91
77
65
61
73
85
114
102
90
76
64
60
72
84
113
101
89
75
63
59
71
83
112
100
88
74
62
58
70
82
111
99
87
73
61
57
69
81
110
98
86
72
60
56
68
80
109
108
107
106
105
104
103
102
101
100
99
98
97
85
71
59
55
67
68
69
70
71
72
73
74
75
76
77
78
79
96
84
70
58
54
66
95
83
69
57
53
65
94
82
68
56
52
64
93
81
67
55
51
63
92
80
66
54
50
62
91
79
65
53
49
61
90
78
64
52
48
60
89
77
76
75
74
73
72
71
70
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
59
88
68
38
58
87
67
37
57
86
66
36
56
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
65
35
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
77
84
64
34
54
66
78
83
63
33
53
65
79
82
62
32
52
64
80
81
61
31
51
63
81
80
60
30
50
62
82
79
59
29
49
61
83
78
58
28
48
60
84
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
59
85
69
56
26
40
58
86
70
55
25
41
57
86
71
54
24
42
56
85
72
53
23
43
55
84
73
52
22
44
54
83
74
51
21
45
53
82
75
50
20
46
52
81
76
49
19
47
51
80
77
48
18
46
50
79
76
47
17
45
49
78
75
46
16
44
48
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
45
15
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
78
64
44
14
34
48
79
63
43
13
33
49
80
62
42
12
32
50
81
61
41
11
31
51
82
60
40
10
30
52
83
59
39
9
29
53
84
58
38
8
28
54
85
57
37
7
27
55
86
56
36
6
26
56
87
55
35
5
25
57
88
54
34
4
24
58
89
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
90
89
88
87
86
85
84
83
82
81
80
79
78
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
129
101
89
77
81
97
128
100
88
76
80
96
127
99
87
75
79
95
126
98
86
74
78
94
125
97
85
73
77
93
124
96
84
72
76
92
123
95
83
71
75
91
122
94
82
70
74
90
121
93
81
69
73
89
120
92
80
68
72
88
119
91
79
67
71
87
118
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
86
117
105
93
77
65
61
73
85
116
104
92
76
64
60
72
84
115
103
91
75
63
59
71
83
114
102
90
74
62
58
70
82
113
101
89
73
61
57
69
81
112
100
88
72
60
56
68
80
111
99
87
71
59
55
67
79
110
109
108
107
106
105
104
103
102
101
100
99
98
86
70
58
54
66
67
68
69
70
71
72
73
74
75
76
77
78
97
85
69
57
53
65
96
84
68
56
52
64
95
83
67
55
51
63
94
82
66
54
50
62
93
81
65
53
49
61
92
80
64
52
48
60
91
79
63
51
47
59
90
78
77
76
75
74
73
72
71
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
58
89
69
37
57
88
68
36
56
87
67
35
55
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
66
34
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
76
85
65
33
53
65
77
84
64
32
52
64
78
83
63
31
51
63
79
82
62
30
50
62
80
81
61
29
49
61
81
80
60
28
48
60
82
79
59
27
47
59
83
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
58
84
70
57
25
39
57
85
71
56
24
40
56
86
72
55
23
41
55
86
73
54
22
42
54
85
74
53
21
43
53
84
75
52
20
44
52
83
76
51
19
45
51
82
77
50
18
46
50
81
78
49
17
45
49
80
77
48
16
44
48
79
76
47
15
43
47
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
46
14
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
79
65
45
13
33
47
80
64
44
12
32
48
81
63
43
11
31
49
82
62
42
10
30
50
83
61
41
9
29
51
84
60
40
8
28
52
85
59
39
7
27
53
86
58
38
6
26
54
87
57
37
5
25
55
88
56
36
4
24
56
89
55
35
3
23
57
90
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
130
131
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
89
88
87
86
85
84
83
82
81
80
79
78
77
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
129
100
88
76
80
96
128
99
87
75
79
95
127
98
86
74
78
94
126
97
85
73
77
93
125
96
84
72
76
92
124
95
83
71
75
91
123
94
82
70
74
90
122
93
81
69
73
89
121
92
80
68
72
88
120
91
79
67
71
87
119
90
78
66
70
86
118
106
106
105
104
103
102
101
100
99
98
97
96
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
85
117
105
94
76
64
60
72
84
116
104
93
75
63
59
71
83
115
103
92
74
62
58
70
82
114
102
91
73
61
57
69
81
113
101
90
72
60
56
68
80
112
100
89
71
59
55
67
79
111
99
88
70
58
54
66
78
110
109
108
107
106
105
104
103
102
101
100
99
98
87
69
57
53
65
66
67
68
69
70
71
72
73
74
75
76
77
97
86
68
56
52
64
96
85
67
55
51
63
95
84
66
54
50
62
94
83
65
53
49
61
93
82
64
52
48
60
92
81
63
51
47
59
91
80
62
50
46
58
90
79
78
77
76
75
74
73
72
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
57
89
70
36
56
88
69
35
55
87
68
34
54
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
67
33
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
75
86
66
32
52
64
76
85
65
31
51
63
77
84
64
30
50
62
78
83
63
29
49
61
79
82
62
28
48
60
80
81
61
27
47
59
81
80
60
26
46
58
82
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
57
83
71
58
24
38
56
84
72
57
23
39
55
85
73
56
22
40
54
86
74
55
21
41
53
86
75
54
20
42
52
85
76
53
19
43
51
84
77
52
18
44
50
83
78
51
17
45
49
82
79
50
16
44
48
81
78
49
15
43
47
80
77
48
14
42
46
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
47
13
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
80
66
46
12
32
46
81
65
45
11
31
47
82
64
44
10
30
48
83
63
43
9
29
49
84
62
42
8
28
50
85
61
41
7
27
51
86
60
40
6
26
52
87
59
39
5
25
53
88
58
38
4
24
54
89
57
37
3
23
55
90
56
36
2
22
56
91
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
88
87
86
85
84
83
82
81
80
79
78
77
76
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
128
99
87
75
79
95
127
98
86
74
78
94
126
97
85
73
77
93
125
96
84
72
76
92
124
95
83
71
75
91
123
94
82
70
74
90
122
93
81
69
73
89
121
92
80
68
72
88
120
91
79
67
71
87
119
90
78
66
70
86
118
89
77
65
69
85
117
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
84
116
104
95
75
63
59
71
83
115
103
94
74
62
58
70
82
114
102
93
73
61
57
69
81
113
101
92
72
60
56
68
80
112
100
91
71
59
55
67
79
111
99
90
70
58
54
66
78
110
98
89
69
57
53
65
77
109
108
107
106
105
104
103
102
101
100
99
98
97
88
68
56
52
64
65
66
67
68
69
70
71
72
73
74
75
76
96
87
67
55
51
63
95
86
66
54
50
62
94
85
65
53
49
61
93
84
64
52
48
60
92
83
63
51
47
59
91
82
62
50
46
58
90
81
61
49
45
57
89
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
56
88
71
35
55
87
70
34
54
86
69
33
53
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
68
32
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
74
86
67
31
51
63
75
86
66
30
50
62
76
85
65
29
49
61
77
84
64
28
48
60
78
83
63
27
47
59
79
82
62
26
46
58
80
81
61
25
45
57
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
56
82
72
59
23
37
55
83
73
58
22
38
54
84
74
57
21
39
53
85
75
56
20
40
52
86
76
55
19
41
51
86
77
54
18
42
50
85
78
53
17
43
49
84
79
52
16
44
48
83
80
51
15
43
47
82
79
50
14
42
46
81
78
49
13
41
45
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
48
12
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
81
67
47
11
31
45
82
66
46
10
30
46
83
65
45
9
29
47
84
64
44
8
28
48
85
63
43
7
27
49
86
62
42
6
26
50
87
61
41
5
25
51
88
60
40
4
24
52
89
59
39
3
23
53
90
58
38
2
22
54
91
57
37
1
21
55
92
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
89
88
87
86
85
84
83
82
81
80
79
78
77
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
127
100
88
76
80
96
126
99
87
75
79
95
125
98
86
74
78
94
124
97
85
73
77
93
123
96
84
72
76
92
122
95
83
71
75
91
121
94
82
70
74
90
120
93
81
69
73
89
119
92
80
68
72
88
118
91
79
67
71
87
117
90
78
66
70
86
116
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
85
115
103
96
76
64
60
72
84
114
102
95
75
63
59
71
83
113
101
94
74
62
58
70
82
112
100
93
73
61
57
69
81
111
99
92
72
60
56
68
80
110
98
91
71
59
55
67
79
109
97
90
70
58
54
66
78
108
107
106
105
104
103
102
101
100
99
98
97
96
89
69
57
53
65
66
67
68
69
70
71
72
73
74
75
76
77
95
88
68
56
52
64
94
87
67
55
51
63
93
86
66
54
50
62
92
85
65
53
49
61
91
84
64
52
48
60
90
83
63
51
47
59
89
82
62
50
46
58
88
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
57
87
72
36
56
86
71
35
55
85
70
34
54
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
69
33
53
54
55
56
57
58
59
60
61
62
63
64
63
64
65
66
67
73
85
68
32
52
62
74
86
67
31
51
61
75
86
66
30
50
60
76
85
65
29
49
59
77
84
64
28
48
58
78
83
63
27
47
57
79
82
62
26
46
56
80
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
55
81
73
60
24
38
54
82
74
59
23
39
53
83
75
58
22
40
52
84
76
57
21
41
51
85
77
56
20
42
50
86
78
55
19
43
49
86
79
54
18
44
48
85
80
53
17
43
47
84
81
52
16
42
46
83
80
51
15
41
45
82
79
50
14
40
44
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
49
13
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
82
68
48
12
30
44
83
67
47
11
29
45
84
66
46
10
28
46
85
65
45
9
27
47
86
64
44
8
26
48
87
63
43
7
25
49
88
62
42
6
24
50
89
61
41
5
23
51
90
60
40
4
22
52
91
59
39
3
21
53
92
58
38
2
20
54
93
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
90
89
88
87
86
85
84
83
82
81
80
79
78
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
126
101
89
77
81
97
125
100
88
76
80
96
124
99
87
75
79
95
123
98
86
74
78
94
122
97
85
73
77
93
121
96
84
72
76
92
120
95
83
71
75
91
119
94
82
70
74
90
118
93
81
69
73
89
117
92
80
68
72
88
116
91
79
67
71
87
115
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
86
114
102
97
77
65
61
73
85
113
101
96
76
64
60
72
84
112
100
95
75
63
59
71
83
111
99
94
74
62
58
70
82
110
98
93
73
61
57
69
81
109
97
92
72
60
56
68
80
108
96
91
71
59
55
67
79
107
106
105
104
103
102
101
100
99
98
97
96
95
90
70
58
54
66
67
68
69
70
71
72
73
74
75
76
77
78
94
89
69
57
53
65
93
88
68
56
52
64
92
87
67
55
51
63
91
86
66
54
50
62
90
85
65
53
49
61
89
84
64
52
48
60
88
83
63
51
47
59
87
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
58
86
73
37
57
85
72
36
56
84
71
35
55
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
70
34
54
55
56
57
58
59
60
61
62
63
64
63
62
63
64
65
66
72
84
69
33
53
61
73
85
68
32
52
60
74
86
67
31
51
59
75
86
66
30
50
58
76
85
65
29
49
57
77
84
64
28
48
56
78
83
63
27
47
55
79
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
54
80
74
61
25
39
53
81
75
60
24
40
52
82
76
59
23
41
51
83
77
58
22
42
50
84
78
57
21
43
49
85
79
56
20
44
48
86
80
55
19
43
47
86
81
54
18
42
46
85
82
53
17
41
45
84
81
52
16
40
44
83
80
51
15
39
43
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
50
14
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
83
69
49
13
29
43
84
68
48
12
28
44
85
67
47
11
27
45
86
66
46
10
26
46
87
65
45
9
25
47
88
64
44
8
24
48
89
63
43
7
23
49
90
62
42
6
22
50
91
61
41
5
21
51
92
60
40
4
20
52
93
59
39
3
19
53
94
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
91
90
89
88
87
86
85
84
83
82
81
80
79
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
125
102
90
78
82
98
124
101
89
77
81
97
123
100
88
76
80
96
122
99
87
75
79
95
121
98
86
74
78
94
120
97
85
73
77
93
119
96
84
72
76
92
118
95
83
71
75
91
117
94
82
70
74
90
116
93
81
69
73
89
115
92
80
68
72
88
114
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
87
113
101
98
78
66
62
74
86
112
100
97
77
65
61
73
85
111
99
96
76
64
60
72
84
110
98
95
75
63
59
71
83
109
97
94
74
62
58
70
82
108
96
93
73
61
57
69
81
107
95
92
72
60
56
68
80
106
105
104
103
102
101
100
99
98
97
96
95
94
91
71
59
55
67
68
69
70
71
72
73
74
75
76
77
78
79
93
90
70
58
54
66
92
89
69
57
53
65
91
88
68
56
52
64
90
87
67
55
51
63
89
86
66
54
50
62
88
85
65
53
49
61
87
84
64
52
48
60
86
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
59
85
74
38
58
84
73
37
57
83
72
36
56
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
71
35
55
56
57
58
59
60
61
62
63
64
63
62
61
62
63
64
65
71
83
70
34
54
60
72
84
69
33
53
59
73
85
68
32
52
58
74
86
67
31
51
57
75
86
66
30
50
56
76
85
65
29
49
55
77
84
64
28
48
54
78
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
53
79
75
62
26
40
52
80
76
61
25
41
51
81
77
60
24
42
50
82
78
59
23
43
49
83
79
58
22
44
48
84
80
57
21
43
47
85
81
56
20
42
46
86
82
55
19
41
45
86
83
54
18
40
44
85
82
53
17
39
43
84
81
52
16
38
42
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
51
15
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
84
70
50
14
28
42
85
69
49
13
27
43
86
68
48
12
26
44
87
67
47
11
25
45
88
66
46
10
24
46
89
65
45
9
23
47
90
64
44
8
22
48
91
63
43
7
21
49
92
62
42
6
20
50
93
61
41
5
19
51
94
60
40
4
18
52
95
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
92
91
90
89
88
87
86
85
84
83
82
81
80
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
124
103
91
79
83
99
123
102
90
78
82
98
122
101
89
77
81
97
121
100
88
76
80
96
120
99
87
75
79
95
119
98
86
74
78
94
118
97
85
73
77
93
117
96
84
72
76
92
116
95
83
71
75
91
115
94
82
70
74
90
114
93
81
69
73
89
113
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
88
112
100
99
79
67
63
75
87
111
99
98
78
66
62
74
86
110
98
97
77
65
61
73
85
109
97
96
76
64
60
72
84
108
96
95
75
63
59
71
83
107
95
94
74
62
58
70
82
106
94
93
73
61
57
69
81
105
104
103
102
101
100
99
98
97
96
95
94
93
92
72
60
56
68
69
70
71
72
73
74
75
76
77
78
79
80
92
91
71
59
55
67
91
90
70
58
54
66
90
89
69
57
53
65
89
88
68
56
52
64
88
87
67
55
51
63
87
86
66
54
50
62
86
85
65
53
49
61
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
60
84
75
39
59
83
74
38
58
82
73
37
57
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
72
36
56
57
58
59
60
61
62
63
64
63
62
61
60
61
62
63
64
70
82
71
35
55
59
71
83
70
34
54
58
72
84
69
33
53
57
73
85
68
32
52
56
74
86
67
31
51
55
75
86
66
30
50
54
76
85
65
29
49
53
77
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
52
78
76
63
27
41
51
79
77
62
26
42
50
80
78
61
25
43
49
81
79
60
24
44
48
82
80
59
23
43
47
83
81
58
22
42
46
84
82
57
21
41
45
85
83
56
20
40
44
86
84
55
19
39
43
86
83
54
18
38
42
85
82
53
17
37
41
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
52
16
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
85
71
51
15
27
41
86
70
50
14
26
42
87
69
49
13
25
43
88
68
48
12
24
44
89
67
47
11
23
45
90
66
46
10
22
46
91
65
45
9
21
47
92
64
44
8
20
48
93
63
43
7
19
49
94
62
42
6
18
50
95
61
41
5
17
51
96
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
93
92
91
90
89
88
87
86
85
84
83
82
81
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
123
104
92
80
84
100
122
103
91
79
83
99
121
102
90
78
82
98
120
101
89
77
81
97
119
100
88
76
80
96
118
99
87
75
79
95
117
98
86
74
78
94
116
97
85
73
77
93
115
96
84
72
76
92
114
95
83
71
75
91
113
94
82
70
74
90
112
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
89
111
99
100
80
68
64
76
88
110
98
99
79
67
63
75
87
109
97
98
78
66
62
74
86
108
96
97
77
65
61
73
85
107
95
96
76
64
60
72
84
106
94
95
75
63
59
71
83
105
93
94
74
62
58
70
82
104
103
102
101
100
99
98
97
96
95
94
93
92
93
73
61
57
69
70
71
72
73
74
75
76
77
78
79
80
81
91
92
72
60
56
68
90
91
71
59
55
67
89
90
70
58
54
66
88
89
69
57
53
65
87
88
68
56
52
64
86
87
67
55
51
63
85
86
66
54
50
62
84
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
61
83
76
40
60
82
75
39
59
81
74
38
58
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
73
37
57
58
59
60
61
62
63
64
63
62
61
60
59
60
61
62
63
69
81
72
36
56
58
70
82
71
35
55
57
71
83
70
34
54
56
72
84
69
33
53
55
73
85
68
32
52
54
74
86
67
31
51
53
75
86
66
30
50
52
76
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
51
77
77
64
28
42
50
78
78
63
27
43
49
79
79
62
26
44
48
80
80
61
25
43
47
81
81
60
24
42
46
82
82
59
23
41
45
83
83
58
22
40
44
84
84
57
21
39
43
85
85
56
20
38
42
86
84
55
19
37
41
86
83
54
18
36
40
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
53
17
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
86
72
52
16
26
40
87
71
51
15
25
41
88
70
50
14
24
42
89
69
49
13
23
43
90
68
48
12
22
44
91
67
47
11
21
45
92
66
46
10
20
46
93
65
45
9
19
47
94
64
44
8
18
48
95
63
43
7
17
49
96
62
42
6
16
50
97
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
94
93
92
91
90
89
88
87
86
85
84
83
82
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
122
105
93
81
85
101
121
104
92
80
84
100
120
103
91
79
83
99
119
102
90
78
82
98
118
101
89
77
81
97
117
100
88
76
80
96
116
99
87
75
79
95
115
98
86
74
78
94
114
97
85
73
77
93
113
96
84
72
76
92
112
95
83
71
75
91
111
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
90
110
98
101
81
69
65
77
89
109
97
100
80
68
64
76
88
108
96
99
79
67
63
75
87
107
95
98
78
66
62
74
86
106
94
97
77
65
61
73
85
105
93
96
76
64
60
72
84
104
92
95
75
63
59
71
83
103
102
101
100
99
98
97
96
95
94
93
92
91
94
74
62
58
70
71
72
73
74
75
76
77
78
79
80
81
82
90
93
73
61
57
69
89
92
72
60
56
68
88
91
71
59
55
67
87
90
70
58
54
66
86
89
69
57
53
65
85
88
68
56
52
64
84
87
67
55
51
63
83
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
62
82
77
41
61
81
76
40
60
80
75
39
59
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
74
38
58
59
60
61
62
63
64
63
62
61
60
59
58
59
60
61
62
68
80
73
37
57
57
69
81
72
36
56
56
70
82
71
35
55
55
71
83
70
34
54
54
72
84
69
33
53
53
73
85
68
32
52
52
74
86
67
31
51
51
75
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
50
76
78
65
29
43
49
77
79
64
28
44
48
78
80
63
27
43
47
79
81
62
26
42
46
80
82
61
25
41
45
81
83
60
24
40
44
82
84
59
23
39
43
83
85
58
22
38
42
84
86
57
21
37
41
85
85
56
20
36
40
86
84
55
19
35
39
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
54
18
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
87
73
53
17
25
39
88
72
52
16
24
40
89
71
51
15
23
41
90
70
50
14
22
42
91
69
49
13
21
43
92
68
48
12
20
44
93
67
47
11
19
45
94
66
46
10
18
46
95
65
45
9
17
47
96
64
44
8
16
48
97
63
43
7
15
49
98
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
95
94
93
92
91
90
89
88
87
86
85
84
83
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
121
106
94
82
86
102
120
105
93
81
85
101
119
104
92
80
84
100
118
103
91
79
83
99
117
102
90
78
82
98
116
101
89
77
81
97
115
100
88
76
80
96
114
99
87
75
79
95
113
98
86
74
78
94
112
97
85
73
77
93
111
96
84
72
76
92
110
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
91
109
97
102
82
70
66
78
90
108
96
101
81
69
65
77
89
107
95
100
80
68
64
76
88
106
94
99
79
67
63
75
87
105
93
98
78
66
62
74
86
104
92
97
77
65
61
73
85
103
91
96
76
64
60
72
84
102
101
100
99
98
97
96
95
94
93
92
91
90
95
75
63
59
71
72
73
74
75
76
77
78
79
80
81
82
83
89
94
74
62
58
70
88
93
73
61
57
69
87
92
72
60
56
68
86
91
71
59
55
67
85
90
70
58
54
66
84
89
69
57
53
65
83
88
68
56
52
64
82
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
63
81
78
42
62
80
77
41
61
79
76
40
60
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
75
39
59
60
61
62
63
64
63
62
61
60
59
58
57
58
59
60
61
67
79
74
38
58
56
68
80
73
37
57
55
69
81
72
36
56
54
70
82
71
35
55
53
71
83
70
34
54
52
72
84
69
33
53
51
73
85
68
32
52
50
74
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
49
75
79
66
30
44
48
76
80
65
29
43
47
77
81
64
28
42
46
78
82
63
27
41
45
79
83
62
26
40
44
80
84
61
25
39
43
81
85
60
24
38
42
82
86
59
23
37
41
83
87
58
22
36
40
84
86
57
21
35
39
85
85
56
20
34
38
86
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
55
19
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
87
74
54
18
24
38
88
73
53
17
23
39
89
72
52
16
22
40
90
71
51
15
21
41
91
70
50
14
20
42
92
69
49
13
19
43
93
68
48
12
18
44
94
67
47
11
17
45
95
66
46
10
16
46
96
65
45
9
15
47
97
64
44
8
14
48
98
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
96
95
94
93
92
91
90
89
88
87
86
85
84
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
120
107
95
83
87
103
119
106
94
82
86
102
118
105
93
81
85
101
117
104
92
80
84
100
116
103
91
79
83
99
115
102
90
78
82
98
114
101
89
77
81
97
113
100
88
76
80
96
112
99
87
75
79
95
111
98
86
74
78
94
110
97
85
73
77
93
109
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
92
108
96
103
83
71
67
79
91
107
95
102
82
70
66
78
90
106
94
101
81
69
65
77
89
105
93
100
80
68
64
76
88
104
92
99
79
67
63
75
87
103
91
98
78
66
62
74
86
102
90
97
77
65
61
73
85
101
100
99
98
97
96
95
94
93
92
91
90
89
96
76
64
60
72
73
74
75
76
77
78
79
80
81
82
83
84
88
95
75
63
59
71
87
94
74
62
58
70
86
93
73
61
57
69
85
92
72
60
56
68
84
91
71
59
55
67
83
90
70
58
54
66
82
89
69
57
53
65
81
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
64
80
79
43
63
79
78
42
62
78
77
41
61
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
76
40
60
61
62
63
64
63
62
61
60
59
58
57
56
57
58
59
60
66
78
75
39
59
55
67
79
74
38
58
54
68
80
73
37
57
53
69
81
72
36
56
52
70
82
71
35
55
51
71
83
70
34
54
50
72
84
69
33
53
49
73
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
48
74
80
67
31
43
47
75
81
66
30
42
46
76
82
65
29
41
45
77
83
64
28
40
44
78
84
63
27
39
43
79
85
62
26
38
42
80
86
61
25
37
41
81
87
60
24
36
40
82
88
59
23
35
39
83
87
58
22
34
38
84
86
57
21
33
37
85
86
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
56
20
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
86
75
55
19
23
37
87
74
54
18
22
38
88
73
53
17
21
39
89
72
52
16
20
40
90
71
51
15
19
41
91
70
50
14
18
42
92
69
49
13
17
43
93
68
48
12
16
44
94
67
47
11
15
45
95
66
46
10
14
46
96
65
45
9
13
47
97
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
97
96
95
94
93
92
91
90
89
88
87
86
85
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
119
108
96
84
88
102
118
107
95
83
87
101
117
106
94
82
86
100
116
105
93
81
85
99
115
104
92
80
84
98
114
103
91
79
83
97
113
102
90
78
82
96
112
101
89
77
81
95
111
100
88
76
80
94
110
99
87
75
79
93
109
98
86
74
78
92
108
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
79
91
107
95
104
84
72
68
78
90
106
94
103
83
71
67
77
89
105
93
102
82
70
66
76
88
104
92
101
81
69
65
75
87
103
91
100
80
68
64
74
86
102
90
99
79
67
63
73
85
101
89
98
78
66
62
72
84
100
99
98
97
96
95
94
93
92
91
90
89
88
97
77
65
61
71
72
73
74
75
76
77
78
79
80
81
82
83
87
96
76
64
60
70
86
95
75
63
59
69
85
94
74
62
58
68
84
93
73
61
57
67
83
92
72
60
56
66
82
91
71
59
55
65
81
90
70
58
54
64
80
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
63
79
80
44
62
78
79
43
61
77
78
42
60
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
41
59
60
61
62
63
62
61
60
59
58
57
56
55
56
57
58
59
65
77
76
40
58
54
66
78
75
39
57
53
67
79
74
38
56
52
68
80
73
37
55
51
69
81
72
36
54
50
70
82
71
35
53
49
71
83
70
34
52
48
72
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
43
44
45
46
47
48
49
50
51
47
73
81
68
32
42
46
74
82
67
31
41
45
75
83
66
30
40
44
76
84
65
29
39
43
77
85
64
28
38
42
78
86
63
27
37
41
79
87
62
26
36
40
80
88
61
25
35
39
81
89
60
24
34
38
82
88
59
23
33
37
83
87
58
22
32
36
84
85
86
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
57
21
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
85
76
56
20
22
36
86
75
55
19
21
37
87
74
54
18
20
38
88
73
53
17
19
39
89
72
52
16
18
40
90
71
51
15
17
41
91
70
50
14
16
42
92
69
49
13
15
43
93
68
48
12
14
44
94
67
47
11
13
45
95
66
46
10
12
46
96
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
98
97
96
95
94
93
92
91
90
89
88
87
86
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
118
109
97
85
89
101
117
108
96
84
88
100
116
107
95
83
87
99
115
106
94
82
86
98
114
105
93
81
85
97
113
104
92
80
84
96
112
103
91
79
83
95
111
102
90
78
82
94
110
101
89
77
81
93
109
100
88
76
80
92
108
99
87
75
79
91
107
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
79
78
90
106
94
105
85
73
69
77
89
105
93
104
84
72
68
76
88
104
92
103
83
71
67
75
87
103
91
102
82
70
66
74
86
102
90
101
81
69
65
73
85
101
89
100
80
68
64
72
84
100
88
99
79
67
63
71
83
99
98
97
96
95
94
93
92
91
90
89
88
87
98
78
66
62
70
71
72
73
74
75
76
77
78
79
80
81
82
86
97
77
65
61
69
85
96
76
64
60
68
84
95
75
63
59
67
83
94
74
62
58
66
82
93
73
61
57
65
81
92
72
60
56
64
80
91
71
59
55
63
79
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
62
78
81
45
61
77
80
44
60
76
79
43
59
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
78
42
58
59
60
61
62
61
60
59
58
57
56
55
54
55
56
57
58
64
76
77
41
57
53
65
77
76
40
56
52
66
78
75
39
55
51
67
79
74
38
54
50
68
80
73
37
53
49
69
81
72
36
52
48
70
82
71
35
51
47
71
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
43
42
43
44
45
46
47
48
49
50
46
72
82
69
33
41
45
73
83
68
32
40
44
74
84
67
31
39
43
75
85
66
30
38
42
76
86
65
29
37
41
77
87
64
28
36
40
78
88
63
27
35
39
79
89
62
26
34
38
80
90
61
25
33
37
81
89
60
24
32
36
82
88
59
23
31
35
83
84
85
86
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
58
22
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
84
77
57
21
21
35
85
76
56
20
20
36
86
75
55
19
19
37
87
74
54
18
18
38
88
73
53
17
17
39
89
72
52
16
16
40
90
71
51
15
15
41
91
70
50
14
14
42
92
69
49
13
13
43
93
68
48
12
12
44
94
67
47
11
11
45
95
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
99
98
97
96
95
94
93
92
91
90
89
88
87
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
117
110
98
86
90
100
116
109
97
85
89
99
115
108
96
84
88
98
114
107
95
83
87
97
113
106
94
82
86
96
112
105
93
81
85
95
111
104
92
80
84
94
110
103
91
79
83
93
109
102
90
78
82
92
108
101
89
77
81
91
107
100
88
76
80
90
106
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
79
78
77
89
105
93
106
86
74
70
76
88
104
92
105
85
73
69
75
87
103
91
104
84
72
68
74
86
102
90
103
83
71
67
73
85
101
89
102
82
70
66
72
84
100
88
101
81
69
65
71
83
99
87
100
80
68
64
70
82
98
97
96
95
94
93
92
91
90
89
88
87
86
99
79
67
63
69
70
71
72
73
74
75
76
77
78
79
80
81
85
98
78
66
62
68
84
97
77
65
61
67
83
96
76
64
60
66
82
95
75
63
59
65
81
94
74
62
58
64
80
93
73
61
57
63
79
92
72
60
56
62
78
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
61
77
82
46
60
76
81
45
59
75
80
44
58
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
79
43
57
58
59
60
61
60
59
58
57
56
55
54
53
54
55
56
57
63
75
78
42
56
52
64
76
77
41
55
51
65
77
76
40
54
50
66
78
75
39
53
49
67
79
74
38
52
48
68
80
73
37
51
47
69
81
72
36
50
46
70
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
43
42
41
42
43
44
45
46
47
48
49
45
71
83
70
34
40
44
72
84
69
33
39
43
73
85
68
32
38
42
74
86
67
31
37
41
75
87
66
30
36
40
76
88
65
29
35
39
77
89
64
28
34
38
78
90
63
27
33
37
79
91
62
26
32
36
80
90
61
25
31
35
81
89
60
24
30
34
82
83
84
85
86
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
59
23
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
83
78
58
22
20
34
84
77
57
21
19
35
85
76
56
20
18
36
86
75
55
19
17
37
87
74
54
18
16
38
88
73
53
17
15
39
89
72
52
16
14
40
90
71
51
15
13
41
91
70
50
14
12
42
92
69
49
13
11
43
93
68
48
12
10
44
94
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
100
99
98
97
96
95
94
93
92
91
90
89
88
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
116
111
99
87
91
99
115
110
98
86
90
98
114
109
97
85
89
97
113
108
96
84
88
96
112
107
95
83
87
95
111
106
94
82
86
94
110
105
93
81
85
93
109
104
92
80
84
92
108
103
91
79
83
91
107
102
90
78
82
90
106
101
89
77
81
89
105
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
79
78
77
76
88
104
92
106
87
75
71
75
87
103
91
106
86
74
70
74
86
102
90
105
85
73
69
73
85
101
89
104
84
72
68
72
84
100
88
103
83
71
67
71
83
99
87
102
82
70
66
70
82
98
86
101
81
69
65
69
81
97
96
95
94
93
92
91
90
89
88
87
86
85
100
80
68
64
68
69
70
71
72
73
74
75
76
77
78
79
80
84
99
79
67
63
67
83
98
78
66
62
66
82
97
77
65
61
65
81
96
76
64
60
64
80
95
75
63
59
63
79
94
74
62
58
62
78
93
73
61
57
61
77
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
60
76
83
47
59
75
82
46
58
74
81
45
57
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
80
44
56
57
58
59
60
59
58
57
56
55
54
53
52
53
54
55
56
62
74
79
43
55
51
63
75
78
42
54
50
64
76
77
41
53
49
65
77
76
40
52
48
66
78
75
39
51
47
67
79
74
38
50
46
68
80
73
37
49
45
69
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
43
42
41
40
41
42
43
44
45
46
47
48
44
70
84
71
35
39
43
71
85
70
34
38
42
72
86
69
33
37
41
73
87
68
32
36
40
74
88
67
31
35
39
75
89
66
30
34
38
76
90
65
29
33
37
77
91
64
28
32
36
78
92
63
27
31
35
79
91
62
26
30
34
80
90
61
25
29
33
81
82
83
84
85
86
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
60
24
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
82
79
59
23
19
33
83
78
58
22
18
34
84
77
57
21
17
35
85
76
56
20
16
36
86
75
55
19
15
37
87
74
54
18
14
38
88
73
53
17
13
39
89
72
52
16
12
40
90
71
51
15
11
41
91
70
50
14
10
42
92
69
49
13
9
43
93
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
101
100
99
98
97
96
95
94
93
92
91
90
89
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
115
112
100
88
92
98
114
111
99
87
91
97
113
110
98
86
90
96
112
109
97
85
89
95
111
108
96
84
88
94
110
107
95
83
87
93
109
106
94
82
86
92
108
105
93
81
85
91
107
104
92
80
84
90
106
103
91
79
83
89
105
102
90
78
82
88
104
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
79
78
77
76
75
87
103
91
105
88
76
72
74
86
102
90
106
87
75
71
73
85
101
89
106
86
74
70
72
84
100
88
105
85
73
69
71
83
99
87
104
84
72
68
70
82
98
86
103
83
71
67
69
81
97
85
102
82
70
66
68
80
96
95
94
93
92
91
90
89
88
87
86
85
84
101
81
69
65
67
68
69
70
71
72
73
74
75
76
77
78
79
83
100
80
68
64
66
82
99
79
67
63
65
81
98
78
66
62
64
80
97
77
65
61
63
79
96
76
64
60
62
78
95
75
63
59
61
77
94
74
62
58
60
76
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
59
75
84
48
58
74
83
47
57
73
82
46
56
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
81
45
55
56
57
58
59
58
57
56
55
54
53
52
51
52
53
54
55
61
73
80
44
54
50
62
74
79
43
53
49
63
75
78
42
52
48
64
76
77
41
51
47
65
77
76
40
50
46
66
78
75
39
49
45
67
79
74
38
48
44
68
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
43
42
41
40
39
40
41
42
43
44
45
46
47
43
69
85
72
36
38
42
70
86
71
35
37
41
71
87
70
34
36
40
72
88
69
33
35
39
73
89
68
32
34
38
74
90
67
31
33
37
75
91
66
30
32
36
76
92
65
29
31
35
77
93
64
28
30
34
78
92
63
27
29
33
79
91
62
26
28
32
80
81
82
83
84
85
86
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
61
25
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
81
80
60
24
18
32
82
79
59
23
17
33
83
78
58
22
16
34
84
77
57
21
15
35
85
76
56
20
14
36
86
75
55
19
13
37
87
74
54
18
12
38
88
73
53
17
11
39
89
72
52
16
10
40
90
71
51
15
9
41
91
70
50
14
8
42
92
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
102
101
100
99
98
97
96
95
94
93
92
91
90
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
114
113
101
89
93
97
113
112
100
88
92
96
112
111
99
87
91
95
111
110
98
86
90
94
110
109
97
85
89
93
109
108
96
84
88
92
108
107
95
83
87
91
107
106
94
82
86
90
106
105
93
81
85
89
105
104
92
80
84
88
104
103
91
79
83
87
103
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
79
78
77
76
75
74
86
102
90
104
89
77
73
73
85
101
89
105
88
76
72
72
84
100
88
106
87
75
71
71
83
99
87
106
86
74
70
70
82
98
86
105
85
73
69
69
81
97
85
104
84
72
68
68
80
96
84
103
83
71
67
67
79
95
94
93
92
91
90
89
88
87
86
85
84
83
102
82
70
66
66
67
68
69
70
71
72
73
74
75
76
77
78
82
101
81
69
65
65
81
100
80
68
64
64
80
99
79
67
63
63
79
98
78
66
62
62
78
97
77
65
61
61
77
96
76
64
60
60
76
95
75
63
59
59
75
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
58
74
85
49
57
73
84
48
56
72
83
47
55
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
82
46
54
55
56
57
58
57
56
55
54
53
52
51
50
51
52
53
54
60
72
81
45
53
49
61
73
80
44
52
48
62
74
79
43
51
47
63
75
78
42
50
46
64
76
77
41
49
45
65
77
76
40
48
44
66
78
75
39
47
43
67
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
42
68
86
73
37
37
41
69
87
72
36
36
40
70
88
71
35
35
39
71
89
70
34
34
38
72
90
69
33
33
37
73
91
68
32
32
36
74
92
67
31
31
35
75
93
66
30
30
34
76
94
65
29
29
33
77
93
64
28
28
32
78
92
63
27
27
31
79
80
81
82
83
84
85
86
86
85
84
83
82
83
84
85
86
87
88
89
90
91
62
26
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
80
81
61
25
17
31
81
80
60
24
16
32
82
79
59
23
15
33
83
78
58
22
14
34
84
77
57
21
13
35
85
76
56
20
12
36
86
75
55
19
11
37
87
74
54
18
10
38
88
73
53
17
9
39
89
72
52
16
8
40
90
71
51
15
7
41
91
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
103
102
101
100
99
98
97
96
95
94
93
92
91
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
113
114
102
90
94
96
112
113
101
89
93
95
111
112
100
88
92
94
110
111
99
87
91
93
109
110
98
86
90
92
108
109
97
85
89
91
107
108
96
84
88
90
106
107
95
83
87
89
105
106
94
82
86
88
104
105
93
81
85
87
103
104
92
80
84
86
102
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
79
78
77
76
75
74
73
85
101
89
103
90
78
74
72
84
100
88
104
89
77
73
71
83
99
87
105
88
76
72
70
82
98
86
106
87
75
71
69
81
97
85
106
86
74
70
68
80
96
84
105
85
73
69
67
79
95
83
104
84
72
68
66
78
94
93
92
91
90
89
88
87
86
85
84
83
82
103
83
71
67
65
66
67
68
69
70
71
72
73
74
75
76
77
81
102
82
70
66
64
80
101
81
69
65
63
79
100
80
68
64
62
78
99
79
67
63
61
77
98
78
66
62
60
76
97
77
65
61
59
75
96
76
64
60
58
74
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
57
73
86
50
56
72
85
49
55
71
84
48
54
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
83
47
53
54
55
56
57
56
55
54
53
52
51
50
49
50
51
52
53
59
71
82
46
52
48
60
72
81
45
51
47
61
73
80
44
50
46
62
74
79
43
49
45
63
75
78
42
48
44
64
76
77
41
47
43
65
77
76
40
46
42
66
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
41
67
87
74
38
36
40
68
88
73
37
35
39
69
89
72
36
34
38
70
90
71
35
33
37
71
91
70
34
32
36
72
92
69
33
31
35
73
93
68
32
30
34
74
94
67
31
29
33
75
95
66
30
28
32
76
94
65
29
27
31
77
93
64
28
26
30
78
79
80
81
82
83
84
85
86
86
85
84
83
84
85
86
87
88
89
90
91
92
63
27
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
79
82
62
26
16
30
80
81
61
25
15
31
81
80
60
24
14
32
82
79
59
23
13
33
83
78
58
22
12
34
84
77
57
21
11
35
85
76
56
20
10
36
86
75
55
19
9
37
87
74
54
18
8
38
88
73
53
17
7
39
89
72
52
16
6
40
90
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
104
103
102
101
100
99
98
97
96
95
94
93
92
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
112
115
103
91
95
95
111
114
102
90
94
94
110
113
101
89
93
93
109
112
100
88
92
92
108
111
99
87
91
91
107
110
98
86
90
90
106
109
97
85
89
89
105
108
96
84
88
88
104
107
95
83
87
87
103
106
94
82
86
86
102
105
93
81
85
85
101
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
79
78
77
76
75
74
73
72
84
100
88
102
91
79
75
71
83
99
87
103
90
78
74
70
82
98
86
104
89
77
73
69
81
97
85
105
88
76
72
68
80
96
84
106
87
75
71
67
79
95
83
106
86
74
70
66
78
94
82
105
85
73
69
65
77
93
92
91
90
89
88
87
86
85
84
83
82
81
104
84
72
68
64
65
66
67
68
69
70
71
72
73
74
75
76
80
103
83
71
67
63
79
102
82
70
66
62
78
101
81
69
65
61
77
100
80
68
64
60
76
99
79
67
63
59
75
98
78
66
62
58
74
97
77
65
61
57
73
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
56
72
87
51
55
71
86
50
54
70
85
49
53
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
84
48
52
53
54
55
56
55
54
53
52
51
50
49
48
49
50
51
52
58
70
83
47
51
47
59
71
82
46
50
46
60
72
81
45
49
45
61
73
80
44
48
44
62
74
79
43
47
43
63
75
78
42
46
42
64
76
77
41
45
41
65
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
40
66
87
75
39
35
39
67
88
74
38
34
38
68
89
73
37
33
37
69
90
72
36
32
36
70
91
71
35
31
35
71
92
70
34
30
34
72
93
69
33
29
33
73
94
68
32
28
32
74
95
67
31
27
31
75
95
66
30
26
30
76
94
65
29
25
29
77
78
79
80
81
82
83
84
85
86
86
85
84
85
86
87
88
89
90
91
92
93
64
28
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
78
83
63
27
15
29
79
82
62
26
14
30
80
81
61
25
13
31
81
80
60
24
12
32
82
79
59
23
11
33
83
78
58
22
10
34
84
77
57
21
9
35
85
76
56
20
8
36
86
75
55
19
7
37
87
74
54
18
6
38
88
73
53
17
5
39
89
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
105
104
103
102
101
100
99
98
97
96
95
94
93
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
111
116
104
92
96
94
110
115
103
91
95
93
109
114
102
90
94
92
108
113
101
89
93
91
107
112
100
88
92
90
106
111
99
87
91
89
105
110
98
86
90
88
104
109
97
85
89
87
103
108
96
84
88
86
102
107
95
83
87
85
101
106
94
82
86
84
100
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
79
78
77
76
75
74
73
72
71
83
99
87
101
92
80
76
70
82
98
86
102
91
79
75
69
81
97
85
103
90
78
74
68
80
96
84
104
89
77
73
67
79
95
83
105
88
76
72
66
78
94
82
106
87
75
71
65
77
93
81
106
86
74
70
64
76
92
91
90
89
88
87
86
85
84
83
82
81
80
105
85
73
69
63
64
65
66
67
68
69
70
71
72
73
74
75
79
104
84
72
68
62
78
103
83
71
67
61
77
102
82
70
66
60
76
101
81
69
65
59
75
100
80
68
64
58
74
99
79
67
63
57
73
98
78
66
62
56
72
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
55
71
88
52
54
70
87
51
53
69
86
50
52
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
85
49
51
52
53
54
55
54
53
52
51
50
49
48
47
48
49
50
51
57
69
84
48
50
46
58
70
83
47
49
45
59
71
82
46
48
44
60
72
81
45
47
43
61
73
80
44
46
42
62
74
79
43
45
41
63
75
78
42
44
40
64
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
39
65
86
76
40
34
38
66
87
75
39
33
37
67
88
74
38
32
36
68
89
73
37
31
35
69
90
72
36
30
34
70
91
71
35
29
33
71
92
70
34
28
32
72
93
69
33
27
31
73
94
68
32
26
30
74
95
67
31
25
29
75
95
66
30
24
28
76
77
78
79
80
81
82
83
84
85
86
86
85
86
87
88
89
90
91
92
93
94
65
29
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
77
84
64
28
14
28
78
83
63
27
13
29
79
82
62
26
12
30
80
81
61
25
11
31
81
80
60
24
10
32
82
79
59
23
9
33
83
78
58
22
8
34
84
77
57
21
7
35
85
76
56
20
6
36
86
75
55
19
5
37
87
74
54
18
4
38
88
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
106
105
104
103
102
101
100
99
98
97
96
95
94
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
110
117
105
93
97
93
109
116
104
92
96
92
108
115
103
91
95
91
107
114
102
90
94
90
106
113
101
89
93
89
105
112
100
88
92
88
104
111
99
87
91
87
103
110
98
86
90
86
102
109
97
85
89
85
101
108
96
84
88
84
100
107
95
83
87
83
99
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
79
78
77
76
75
74
73
72
71
70
82
98
86
100
93
81
77
69
81
97
85
101
92
80
76
68
80
96
84
102
91
79
75
67
79
95
83
103
90
78
74
66
78
94
82
104
89
77
73
65
77
93
81
105
88
76
72
64
76
92
80
106
87
75
71
63
75
91
90
89
88
87
86
85
84
83
82
81
80
79
106
86
74
70
62
63
64
65
66
67
68
69
70
71
72
73
74
78
105
85
73
69
61
77
104
84
72
68
60
76
103
83
71
67
59
75
102
82
70
66
58
74
101
81
69
65
57
73
100
80
68
64
56
72
99
79
67
63
55
71
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
54
70
89
53
53
69
88
52
52
68
87
51
51
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
86
50
50
51
52
53
54
53
52
51
50
49
48
47
46
47
48
49
50
56
68
85
49
49
45
57
69
84
48
48
44
58
70
83
47
47
43
59
71
82
46
46
42
60
72
81
45
45
41
61
73
80
44
44
40
62
74
79
43
43
39
63
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
38
64
85
77
41
33
37
65
86
76
40
32
36
66
87
75
39
31
35
67
88
74
38
30
34
68
89
73
37
29
33
69
90
72
36
28
32
70
91
71
35
27
31
71
92
70
34
26
30
72
93
69
33
25
29
73
94
68
32
24
28
74
95
67
31
23
27
75
76
77
78
79
80
81
82
83
84
85
86
86
87
88
89
90
91
92
93
94
95
66
30
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
76
85
65
29
13
27
77
84
64
28
12
28
78
83
63
27
11
29
79
82
62
26
10
30
80
81
61
25
9
31
81
80
60
24
8
32
82
79
59
23
7
33
83
78
58
22
6
34
84
77
57
21
5
35
85
76
56
20
4
36
86
75
55
19
3
37
87
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
107
106
105
104
103
102
101
100
99
98
97
96
95
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
109
117
106
94
98
92
108
116
105
93
97
91
107
115
104
92
96
90
106
114
103
91
95
89
105
113
102
90
94
88
104
112
101
89
93
87
103
111
100
88
92
86
102
110
99
87
91
85
101
109
98
86
90
84
100
108
97
85
89
83
99
107
96
84
88
82
98
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
80
79
78
77
76
75
74
73
72
71
70
69
81
97
85
99
94
82
78
68
80
96
84
100
93
81
77
67
79
95
83
101
92
80
76
66
78
94
82
102
91
79
75
65
77
93
81
103
90
78
74
64
76
92
80
104
89
77
73
63
75
91
79
105
88
76
72
62
74
90
89
88
87
86
85
84
83
82
81
80
79
78
106
87
75
71
61
62
63
64
65
66
67
68
69
70
71
72
73
77
106
86
74
70
60
76
105
85
73
69
59
75
104
84
72
68
58
74
103
83
71
67
57
73
102
82
70
66
56
72
101
81
69
65
55
71
100
80
68
64
54
70
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
53
69
90
54
52
68
89
53
51
67
88
52
50
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
87
51
49
50
51
52
53
52
51
50
49
48
47
46
45
46
47
48
49
55
67
86
50
48
44
56
68
85
49
47
43
57
69
84
48
46
42
58
70
83
47
45
41
59
71
82
46
44
40
60
72
81
45
43
39
61
73
80
44
42
38
62
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
37
63
84
78
42
32
36
64
85
77
41
31
35
65
86
76
40
30
34
66
87
75
39
29
33
67
88
74
38
28
32
68
89
73
37
27
31
69
90
72
36
26
30
70
91
71
35
25
29
71
92
70
34
24
28
72
93
69
33
23
27
73
94
68
32
22
26
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
67
31
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
75
86
66
30
12
26
76
85
65
29
11
27
77
84
64
28
10
28
78
83
63
27
9
29
79
82
62
26
8
30
80
81
61
25
7
31
81
80
60
24
6
32
82
79
59
23
5
33
83
78
58
22
4
34
84
77
57
21
3
35
85
76
56
20
2
36
86
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
108
107
106
105
104
103
102
101
100
99
98
97
96
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
108
116
107
95
99
91
107
115
106
94
98
90
106
114
105
93
97
89
105
113
104
92
96
88
104
112
103
91
95
87
103
111
102
90
94
86
102
110
101
89
93
85
101
109
100
88
92
84
100
108
99
87
91
83
99
107
98
86
90
82
98
106
97
85
89
81
97
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
80
96
84
98
95
83
79
67
79
95
83
99
94
82
78
66
78
94
82
100
93
81
77
65
77
93
81
101
92
80
76
64
76
92
80
102
91
79
75
63
75
91
79
103
90
78
74
62
74
90
78
104
89
77
73
61
73
89
88
87
86
85
84
83
82
81
80
79
78
77
105
88
76
72
60
61
62
63
64
65
66
67
68
69
70
71
72
76
106
87
75
71
59
75
106
86
74
70
58
74
105
85
73
69
57
73
104
84
72
68
56
72
103
83
71
67
55
71
102
82
70
66
54
70
101
81
69
65
53
69
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
52
68
91
55
51
67
90
54
50
66
89
53
49
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
88
52
48
49
50
51
52
51
50
49
48
47
46
45
44
45
46
47
48
54
66
87
51
47
43
55
67
86
50
46
42
56
68
85
49
45
41
57
69
84
48
44
40
58
70
83
47
43
39
59
71
82
46
42
38
60
72
81
45
41
37
61
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
36
62
83
79
43
31
35
63
84
78
42
30
34
64
85
77
41
29
33
65
86
76
40
28
32
66
87
75
39
27
31
67
88
74
38
26
30
68
89
73
37
25
29
69
90
72
36
24
28
70
91
71
35
23
27
71
92
70
34
22
26
72
93
69
33
21
25
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
68
32
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
74
86
67
31
11
25
75
86
66
30
10
26
76
85
65
29
9
27
77
84
64
28
8
28
78
83
63
27
7
29
79
82
62
26
6
30
80
81
61
25
5
31
81
80
60
24
4
32
82
79
59
23
3
33
83
78
58
22
2
34
84
77
57
21
1
35
85
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
117
118
118
117
116
115
114
113
112
111
110
109
108
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
96
104
116
107
95
87
95
103
115
106
94
86
94
102
114
105
93
85
93
101
113
104
92
84
92
100
112
103
91
83
91
99
111
102
90
82
90
98
110
101
89
81
89
97
109
100
88
80
88
96
108
99
87
79
87
95
107
98
86
78
86
94
106
97
85
77
85
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
76
84
72
86
106
95
77
63
75
83
71
87
106
94
78
62
74
82
70
88
105
93
79
61
73
81
69
89
104
92
80
60
72
80
68
90
103
91
81
59
71
79
67
91
102
90
82
58
70
78
66
92
101
89
83
57
69
77
76
75
74
73
72
71
70
69
68
67
66
65
93
100
88
84
56
57
58
59
60
61
62
63
64
65
66
67
68
64
94
99
87
83
55
63
95
98
86
82
54
62
96
97
85
81
53
61
97
96
84
80
52
60
98
95
83
79
51
59
99
94
82
78
50
58
100
93
81
77
49
57
101
100
99
98
97
96
95
94
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
48
56
92
67
47
55
91
66
46
54
90
65
45
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
89
64
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
42
54
88
63
45
31
43
55
87
62
46
30
44
56
86
61
47
29
45
57
85
60
48
28
46
58
84
59
49
27
47
59
83
58
50
26
48
60
82
57
51
25
49
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
24
50
71
82
57
43
23
51
72
83
58
42
22
52
73
84
59
41
21
53
74
85
60
40
20
54
75
86
61
39
19
55
76
87
62
38
18
56
77
88
63
37
17
57
78
89
64
36
16
58
79
90
65
35
15
59
80
91
66
34
14
60
81
92
67
33
13
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
93
68
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
62
74
94
67
25
11
63
75
95
66
26
10
64
76
96
65
27
9
65
77
97
64
28
8
66
78
98
63
29
7
67
79
98
62
30
6
68
80
97
61
31
5
69
81
96
60
32
4
70
82
95
59
33
3
71
83
94
58
34
2
72
84
93
57
35
1
73
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
0
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
109
110
111
112
113
114
115
116
117
118
119
119
118
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
88
96
108
117
105
97
87
95
107
116
104
96
86
94
106
115
103
95
85
93
105
114
102
94
84
92
104
113
101
93
83
91
103
112
100
92
82
90
102
111
99
91
81
89
101
110
98
90
80
88
100
109
97
89
79
87
99
108
96
88
78
86
98
107
95
87
77
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
86
76
64
78
96
107
87
73
85
75
63
79
95
107
88
72
84
74
62
80
94
106
89
71
83
73
61
81
93
105
90
70
82
72
60
82
92
104
91
69
81
71
59
83
91
103
92
68
80
70
58
84
90
102
93
67
79
69
68
67
66
65
64
63
62
61
60
59
58
57
85
89
101
94
66
67
68
69
70
71
72
73
74
75
76
77
78
56
84
88
100
95
65
55
83
87
99
96
64
54
82
86
98
97
63
53
81
85
97
98
62
52
80
84
96
99
61
51
79
83
95
100
60
50
78
82
94
101
59
49
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
99
98
97
96
95
94
95
96
97
98
99
100
101
102
58
48
68
93
57
47
67
92
56
46
66
91
55
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
65
90
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
32
46
64
89
55
43
31
47
63
88
56
44
30
48
62
87
57
45
29
49
61
86
58
46
28
50
60
85
59
47
27
51
59
84
60
48
26
52
58
83
61
49
25
53
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
50
24
45
58
83
71
51
23
44
59
84
72
52
22
43
60
85
73
53
21
42
61
86
74
54
20
41
62
87
75
55
19
40
63
88
76
56
18
39
64
89
77
57
17
38
65
90
78
58
16
37
66
91
79
59
15
36
67
92
80
60
14
35
68
93
81
61
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
67
94
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
12
26
66
95
75
63
11
27
65
96
76
64
10
28
64
97
77
65
9
29
63
98
78
66
8
30
62
98
79
67
7
31
61
97
80
68
6
32
60
96
81
69
5
33
59
95
82
70
4
34
58
94
83
71
3
35
57
93
84
72
2
36
56
92
85
73
1
37
38
39
40
41
42
43
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
74
0
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
89
90
91
92
93
94
95
96
97
98
99
100
101
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
131
130
129
128
127
126
125
124
123
122
121
120
119
118
102
92
88
100
112
117
101
91
87
99
111
116
100
90
86
98
110
115
99
89
85
97
109
114
98
88
84
96
108
113
97
87
83
95
107
112
96
86
82
94
106
111
95
85
81
93
105
110
94
84
80
92
104
109
93
83
79
91
103
108
92
82
78
90
102
107
91
79
80
81
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
107
106
105
104
103
102
101
100
99
98
97
96
95
94
106
90
78
72
76
88
107
93
105
89
77
71
75
87
107
92
104
88
76
70
74
86
106
91
103
87
75
69
73
85
105
90
102
86
74
68
72
84
104
89
101
85
73
67
71
83
103
88
100
84
72
66
70
82
102
87
99
83
82
81
80
79
78
77
76
75
74
73
72
71
65
69
81
101
86
87
88
89
90
91
92
93
94
95
96
97
98
70
64
68
80
100
85
69
63
67
79
99
84
68
62
66
78
98
83
67
61
65
77
97
82
66
60
64
76
96
81
65
59
63
75
95
80
64
58
62
74
94
79
63
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
78
62
48
84
77
61
47
83
76
60
46
82
75
57
56
55
54
53
54
55
56
57
58
59
60
61
62
61
60
59
45
81
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
52
58
44
80
75
63
51
57
43
79
76
64
50
56
42
78
77
65
49
55
41
77
78
66
48
54
40
76
79
67
47
53
39
75
80
68
46
52
38
74
81
69
45
51
50
49
48
47
46
45
44
43
42
43
44
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
87
86
85
84
83
82
70
44
41
36
72
86
71
43
40
35
71
87
72
42
39
34
70
88
73
41
38
33
69
89
74
40
37
32
68
90
75
39
36
31
67
91
76
38
35
30
66
92
77
37
34
29
65
93
78
36
33
28
64
92
79
35
32
27
63
91
80
34
31
26
62
90
81
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
25
61
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
87
86
85
84
83
82
34
20
24
60
80
83
35
19
23
59
79
84
36
18
22
58
78
85
37
17
21
57
77
86
38
16
20
56
76
87
39
15
19
55
75
88
40
14
18
54
74
89
41
13
17
53
73
90
42
12
16
52
72
91
43
11
15
51
71
92
44
10
14
50
70
93
43
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
94
42
0
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
89
90
91
92
93
94
95
96
97
98
99
100
101
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
108
92
88
100
104
120
107
91
87
99
103
119
106
90
86
98
102
118
105
89
85
97
101
117
104
88
84
96
100
116
103
87
83
95
99
115
102
86
82
94
98
114
101
85
81
93
97
113
100
84
80
92
96
112
99
83
79
91
95
111
98
82
78
90
94
110
97
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
109
96
84
72
76
88
84
96
108
95
83
71
75
87
83
95
107
94
82
70
74
86
82
94
106
93
81
69
73
85
81
93
105
92
80
68
72
84
80
92
104
91
79
67
71
83
79
91
103
90
78
66
70
82
78
90
102
89
88
87
86
85
84
83
82
81
80
79
78
77
65
69
81
77
89
90
91
92
93
94
95
96
97
98
99
100
101
76
64
68
80
76
88
75
63
67
79
75
87
74
62
66
78
74
86
73
61
65
77
73
85
72
60
64
76
72
84
71
59
63
75
71
83
70
58
62
74
70
82
69
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
81
68
48
60
80
67
47
59
79
66
46
58
78
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
45
57
77
78
79
80
81
82
83
84
85
86
87
87
86
85
84
83
82
76
64
44
56
76
87
75
63
43
55
75
87
74
62
42
54
74
86
73
61
41
53
73
85
72
60
40
52
72
84
71
59
39
51
71
83
70
58
38
50
70
82
69
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
81
68
49
36
48
62
80
67
50
35
47
63
79
66
51
34
46
64
78
65
52
33
45
65
77
64
53
32
44
66
76
63
54
31
43
67
75
62
55
30
42
68
74
61
56
29
41
69
73
60
57
28
40
68
72
59
56
27
39
67
71
58
55
26
38
66
70
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
25
37
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
58
44
24
36
56
70
59
43
23
35
55
71
60
42
22
34
54
72
61
41
21
33
53
73
62
40
20
32
52
74
63
39
19
31
51
75
64
38
18
30
50
76
65
37
17
29
49
77
66
36
16
28
48
78
67
35
15
27
47
79
68
34
14
26
46
80
69
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
81
68
26
0
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
101
100
99
98
97
96
95
94
93
92
91
90
89
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
120
104
100
88
92
108
119
103
99
87
91
107
118
102
98
86
90
106
117
101
97
85
89
105
116
100
96
84
88
104
115
99
95
83
87
103
114
98
94
82
86
102
113
97
93
81
85
101
112
96
92
80
84
100
111
95
91
79
83
99
110
94
90
78
82
98
109
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
97
108
96
84
88
76
72
84
96
107
95
83
87
75
71
83
95
106
94
82
86
74
70
82
94
105
93
81
85
73
69
81
93
104
92
80
84
72
68
80
92
103
91
79
83
71
67
79
91
102
90
78
82
70
66
78
90
101
100
99
98
97
96
95
94
93
92
91
90
89
77
81
69
65
77
78
79
80
81
82
83
84
85
86
87
88
89
88
76
80
68
64
76
87
75
79
67
63
75
86
74
78
66
62
74
85
73
77
65
61
73
84
72
76
64
60
72
83
71
75
63
59
71
82
70
74
62
58
70
81
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
69
80
60
48
68
79
59
47
67
78
58
46
66
82
83
84
85
86
87
87
86
85
84
83
82
81
80
79
78
77
57
45
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
87
76
56
44
64
76
87
75
55
43
63
75
86
74
54
42
62
74
85
73
53
41
61
73
84
72
52
40
60
72
83
71
51
39
59
71
82
70
50
38
58
70
81
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
69
80
61
48
36
50
68
79
62
47
35
51
67
78
63
46
34
52
66
77
64
45
33
53
65
76
65
44
32
54
64
75
66
43
31
55
63
74
67
42
30
56
62
73
68
41
29
57
61
72
69
40
28
56
60
71
68
39
27
55
59
70
67
38
26
54
58
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
37
25
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
70
56
36
24
44
58
71
55
35
23
43
59
72
54
34
22
42
60
73
53
33
21
41
61
74
52
32
20
40
62
75
51
31
19
39
63
76
50
30
18
38
64
77
49
29
17
37
65
78
48
28
16
36
66
79
47
27
15
35
67
80
46
26
14
34
68
81
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
69
80
38
14
0
118
119
120
121
122
123
124
125
126
127
128
129
130
131
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
101
100
99
98
97
96
95
94
93
92
91
90
89
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
117
112
100
88
92
100
116
111
99
87
91
99
115
110
98
86
90
98
114
109
97
85
89
97
113
108
96
84
88
96
112
107
95
83
87
95
111
106
94
82
86
94
110
105
93
81
85
93
109
104
92
80
84
92
108
103
91
79
83
91
107
102
90
78
82
90
106
94
95
96
97
98
99
100
101
102
103
104
105
106
107
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
80
79
78
77
89
105
93
107
88
76
72
76
88
104
92
107
87
75
71
75
87
103
91
106
86
74
70
74
86
102
90
105
85
73
69
73
85
101
89
104
84
72
68
72
84
100
88
103
83
71
67
71
83
99
87
102
82
70
66
70
82
98
97
96
95
94
93
92
91
90
89
88
87
86
101
81
69
65
69
70
71
72
73
74
75
76
77
78
79
80
81
85
100
80
68
64
68
84
99
79
67
63
67
83
98
78
66
62
66
82
97
77
65
61
65
81
96
76
64
60
64
80
95
75
63
59
63
79
94
74
62
58
62
78
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
61
77
84
48
60
76
83
47
59
75
82
46
58
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
81
45
57
58
59
60
61
60
59
58
57
56
55
54
53
54
55
56
57
63
75
80
44
56
52
64
76
79
43
55
51
65
77
78
42
54
50
66
78
77
41
53
49
67
79
76
40
52
48
68
80
75
39
51
47
69
81
74
38
50
46
70
82
83
84
85
86
87
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
44
43
42
41
42
43
44
45
46
47
48
49
45
71
85
72
36
40
44
72
86
71
35
39
43
73
87
70
34
38
42
74
88
69
33
37
41
75
89
68
32
36
40
76
90
67
31
35
39
77
91
66
30
34
38
78
92
65
29
33
37
79
93
64
28
32
36
80
92
63
27
31
35
81
91
62
26
30
34
82
83
84
85
86
87
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
61
25
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
83
80
60
24
20
34
84
79
59
23
19
35
85
78
58
22
18
36
86
77
57
21
17
37
87
76
56
20
16
38
88
75
55
19
15
39
89
74
54
18
14
40
90
73
53
17
13
41
91
72
52
16
12
42
92
71
51
15
11
43
93
70
50
14
10
44
94
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
43
95
62
38
26
0
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
118
119
119
118
117
116
115
114
113
112
111
110
109
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
97
105
117
108
96
88
96
104
116
107
95
87
95
103
115
106
94
86
94
102
114
105
93
85
93
101
113
104
92
84
92
100
112
103
91
83
91
99
111
102
90
82
90
98
110
101
89
81
89
97
109
100
88
80
88
96
108
99
87
79
87
95
107
98
86
78
86
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
77
85
73
87
107
96
78
64
76
84
72
88
107
95
79
63
75
83
71
89
106
94
80
62
74
82
70
90
105
93
81
61
73
81
69
91
104
92
82
60
72
80
68
92
103
91
83
59
71
79
67
93
102
90
84
58
70
78
77
76
75
74
73
72
71
70
69
68
67
66
94
101
89
85
57
58
59
60
61
62
63
64
65
66
67
68
69
65
95
100
88
84
56
64
96
99
87
83
55
63
97
98
86
82
54
62
98
97
85
81
53
61
99
96
84
80
52
60
100
95
83
79
51
59
101
94
82
78
50
58
102
101
100
99
98
97
96
95
94
95
96
97
98
99
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
49
57
93
68
48
56
92
67
47
55
91
66
46
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
90
65
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
43
55
89
64
46
32
44
56
88
63
47
31
45
57
87
62
48
30
46
58
86
61
49
29
47
59
85
60
50
28
48
60
84
59
51
27
49
61
83
58
52
26
50
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
25
51
72
83
58
44
24
52
73
84
59
43
23
53
74
85
60
42
22
54
75
86
61
41
21
55
76
87
62
40
20
56
77
88
63
39
19
57
78
89
64
38
18
58
79
90
65
37
17
59
80
91
66
36
16
60
81
92
67
35
15
61
82
93
68
34
14
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
94
67
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
63
75
95
66
26
12
64
76
96
65
27
11
65
77
97
64
28
10
66
78
98
63
29
9
67
79
98
62
30
8
68
80
97
61
31
7
69
81
96
60
32
6
70
82
95
59
33
5
71
83
94
58
34
4
72
84
93
57
35
3
73
85
92
56
36
2
74
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
44
43
42
41
40
39
38
37
1
75
95
80
68
42
0
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
110
111
112
113
114
115
116
117
118
119
120
120
119
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
89
97
109
118
106
98
88
96
108
117
105
97
87
95
107
116
104
96
86
94
106
115
103
95
85
93
105
114
102
94
84
92
104
113
101
93
83
91
103
112
100
92
82
90
102
111
99
91
81
89
101
110
98
90
80
88
100
109
97
89
79
87
99
108
96
88
78
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
87
77
65
79
97
108
88
74
86
76
64
80
96
108
89
73
85
75
63
81
95
107
90
72
84
74
62
82
94
106
91
71
83
73
61
83
93
105
92
70
82
72
60
84
92
104
93
69
81
71
59
85
91
103
94
68
80
70
69
68
67
66
65
64
63
62
61
60
59
58
86
90
102
95
67
68
69
70
71
72
73
74
75
76
77
78
79
57
85
89
101
96
66
56
84
88
100
97
65
55
83
87
99
98
64
54
82
86
98
99
63
53
81
85
97
100
62
52
80
84
96
101
61
51
79
83
95
102
60
50
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
100
99
98
97
96
95
96
97
98
99
100
101
102
103
59
49
69
94
58
48
68
93
57
47
67
92
56
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
66
91
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
33
47
65
90
56
44
32
48
64
89
57
45
31
49
63
88
58
46
30
50
62
87
59
47
29
51
61
86
60
48
28
52
60
85
61
49
27
53
59
84
62
50
26
54
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
51
25
46
59
84
72
52
24
45
60
85
73
53
23
44
61
86
74
54
22
43
62
87
75
55
21
42
63
88
76
56
20
41
64
89
77
57
19
40
65
90
78
58
18
39
66
91
79
59
17
38
67
92
80
60
16
37
68
93
81
61
15
36
67
94
82
62
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
66
95
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
13
27
65
96
76
64
12
28
64
97
77
65
11
29
63
98
78
66
10
30
62
98
79
67
9
31
61
97
80
68
8
32
60
96
81
69
7
33
59
95
82
70
6
34
58
94
83
71
5
35
57
93
84
72
4
36
56
92
85
73
3
37
55
91
86
74
2
38
39
40
41
42
43
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
75
1
41
67
79
96
76
0
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
90
91
92
93
94
95
96
97
98
99
100
101
102
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
132
131
130
129
128
127
126
125
124
123
122
121
120
119
103
93
89
101
113
118
102
92
88
100
112
117
101
91
87
99
111
116
100
90
86
98
110
115
99
89
85
97
109
114
98
88
84
96
108
113
97
87
83
95
107
112
96
86
82
94
106
111
95
85
81
93
105
110
94
84
80
92
104
109
93
83
79
91
103
108
92
80
81
82
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
108
107
106
105
104
103
102
101
100
99
98
97
96
95
107
91
79
73
77
89
108
94
106
90
78
72
76
88
108
93
105
89
77
71
75
87
107
92
104
88
76
70
74
86
106
91
103
87
75
69
73
85
105
90
102
86
74
68
72
84
104
89
101
85
73
67
71
83
103
88
100
84
83
82
81
80
79
78
77
76
75
74
73
72
66
70
82
102
87
88
89
90
91
92
93
94
95
96
97
98
99
71
65
69
81
101
86
70
64
68
80
100
85
69
63
67
79
99
84
68
62
66
78
98
83
67
61
65
77
97
82
66
60
64
76
96
81
65
59
63
75
95
80
64
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
79
63
49
85
78
62
48
84
77
61
47
83
76
58
57
56
55
54
55
56
57
58
59
60
61
62
63
62
61
60
46
82
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
53
59
45
81
76
64
52
58
44
80
77
65
51
57
43
79
78
66
50
56
42
78
79
67
49
55
41
77
80
68
48
54
40
76
81
69
47
53
39
75
82
70
46
52
51
50
49
48
47
46
45
44
43
44
45
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
88
87
86
85
84
83
71
45
42
37
73
87
72
44
41
36
72
88
73
43
40
35
71
89
74
42
39
34
70
90
75
41
38
33
69
91
76
40
37
32
68
92
77
39
36
31
67
93
78
38
35
30
66
94
79
37
34
29
65
93
80
36
33
28
64
92
81
35
32
27
63
91
82
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
26
62
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
88
87
86
85
84
83
35
21
25
61
81
84
36
20
24
60
80
85
37
19
23
59
79
86
38
18
22
58
78
87
39
17
21
57
77
88
40
16
20
56
76
89
41
15
19
55
75
90
42
14
18
54
74
91
43
13
17
53
73
92
44
12
16
52
72
93
43
11
15
51
71
94
42
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
95
41
1
27
39
63
96
40
0
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
90
91
92
93
94
95
96
97
98
99
100
101
102
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
109
93
89
101
105
121
108
92
88
100
104
120
107
91
87
99
103
119
106
90
86
98
102
118
105
89
85
97
101
117
104
88
84
96
100
116
103
87
83
95
99
115
102
86
82
94
98
114
101
85
81
93
97
113
100
84
80
92
96
112
99
83
79
91
95
111
98
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
110
97
85
73
77
89
85
97
109
96
84
72
76
88
84
96
108
95
83
71
75
87
83
95
107
94
82
70
74
86
82
94
106
93
81
69
73
85
81
93
105
92
80
68
72
84
80
92
104
91
79
67
71
83
79
91
103
90
89
88
87
86
85
84
83
82
81
80
79
78
66
70
82
78
90
91
92
93
94
95
96
97
98
99
100
101
102
77
65
69
81
77
89
76
64
68
80
76
88
75
63
67
79
75
87
74
62
66
78
74
86
73
61
65
77
73
85
72
60
64
76
72
84
71
59
63
75
71
83
70
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
82
69
49
61
81
68
48
60
80
67
47
59
79
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
46
58
78
79
80
81
82
83
84
85
86
87
88
88
87
86
85
84
83
77
65
45
57
77
88
76
64
44
56
76
88
75
63
43
55
75
87
74
62
42
54
74
86
73
61
41
53
73
85
72
60
40
52
72
84
71
59
39
51
71
83
70
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
82
69
50
37
49
63
81
68
51
36
48
64
80
67
52
35
47
65
79
66
53
34
46
66
78
65
54
33
45
67
77
64
55
32
44
68
76
63
56
31
43
69
75
62
57
30
42
70
74
61
58
29
41
69
73
60
57
28
40
68
72
59
56
27
39
67
71
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
26
38
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
59
45
25
37
57
71
60
44
24
36
56
72
61
43
23
35
55
73
62
42
22
34
54
74
63
41
21
33
53
75
64
40
20
32
52
76
65
39
19
31
51
77
66
38
18
30
50
78
67
37
17
29
49
79
68
36
16
28
48
80
69
35
15
27
47
81
70
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
82
69
27
1
15
39
81
68
28
0
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
102
101
100
99
98
97
96
95
94
93
92
91
90
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
121
105
101
89
93
109
120
104
100
88
92
108
119
103
99
87
91
107
118
102
98
86
90
106
117
101
97
85
89
105
116
100
96
84
88
104
115
99
95
83
87
103
114
98
94
82
86
102
113
97
93
81
85
101
112
96
92
80
84
100
111
95
91
79
83
99
110
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
98
109
97
85
89
77
73
85
97
108
96
84
88
76
72
84
96
107
95
83
87
75
71
83
95
106
94
82
86
74
70
82
94
105
93
81
85
73
69
81
93
104
92
80
84
72
68
80
92
103
91
79
83
71
67
79
91
102
101
100
99
98
97
96
95
94
93
92
91
90
78
82
70
66
78
79
80
81
82
83
84
85
86
87
88
89
90
89
77
81
69
65
77
88
76
80
68
64
76
87
75
79
67
63
75
86
74
78
66
62
74
85
73
77
65
61
73
84
72
76
64
60
72
83
71
75
63
59
71
82
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
70
81
61
49
69
80
60
48
68
79
59
47
67
83
84
85
86
87
88
88
87
86
85
84
83
82
81
80
79
78
58
46
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
88
77
57
45
65
77
88
76
56
44
64
76
87
75
55
43
63
75
86
74
54
42
62
74
85
73
53
41
61
73
84
72
52
40
60
72
83
71
51
39
59
71
82
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
70
81
62
49
37
51
69
80
63
48
36
52
68
79
64
47
35
53
67
78
65
46
34
54
66
77
66
45
33
55
65
76
67
44
32
56
64
75
68
43
31
57
63
74
69
42
30
58
62
73
70
41
29
57
61
72
69
40
28
56
60
71
68
39
27
55
59
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
38
26
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
71
57
37
25
45
59
72
56
36
24
44
60
73
55
35
23
43
61
74
54
34
22
42
62
75
53
33
21
41
63
76
52
32
20
40
64
77
51
31
19
39
65
78
50
30
18
38
66
79
49
29
17
37
67
80
48
28
16
36
68
81
47
27
15
35
69
82
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
70
81
39
15
1
27
69
80
40
16
0
119
120
121
122
123
124
125
126
127
128
129
130
131
132
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
102
101
100
99
98
97
96
95
94
93
92
91
90
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
118
113
101
89
93
101
117
112
100
88
92
100
116
111
99
87
91
99
115
110
98
86
90
98
114
109
97
85
89
97
113
108
96
84
88
96
112
107
95
83
87
95
111
106
94
82
86
94
110
105
93
81
85
93
109
104
92
80
84
92
108
103
91
79
83
91
107
95
96
97
98
99
100
101
102
103
104
105
106
107
108
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
81
80
79
78
90
106
94
108
89
77
73
77
89
105
93
108
88
76
72
76
88
104
92
107
87
75
71
75
87
103
91
106
86
74
70
74
86
102
90
105
85
73
69
73
85
101
89
104
84
72
68
72
84
100
88
103
83
71
67
71
83
99
98
97
96
95
94
93
92
91
90
89
88
87
102
82
70
66
70
71
72
73
74
75
76
77
78
79
80
81
82
86
101
81
69
65
69
85
100
80
68
64
68
84
99
79
67
63
67
83
98
78
66
62
66
82
97
77
65
61
65
81
96
76
64
60
64
80
95
75
63
59
63
79
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
62
78
85
49
61
77
84
48
60
76
83
47
59
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
82
46
58
59
60
61
62
61
60
59
58
57
56
55
54
55
56
57
58
64
76
81
45
57
53
65
77
80
44
56
52
66
78
79
43
55
51
67
79
78
42
54
50
68
80
77
41
53
49
69
81
76
40
52
48
70
82
75
39
51
47
71
83
84
85
86
87
88
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
45
44
43
42
43
44
45
46
47
48
49
50
46
72
86
73
37
41
45
73
87
72
36
40
44
74
88
71
35
39
43
75
89
70
34
38
42
76
90
69
33
37
41
77
91
68
32
36
40
78
92
67
31
35
39
79
93
66
30
34
38
80
94
65
29
33
37
81
93
64
28
32
36
82
92
63
27
31
35
83
84
85
86
87
88
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
62
26
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
84
81
61
25
21
35
85
80
60
24
20
36
86
79
59
23
19
37
87
78
58
22
18
38
88
77
57
21
17
39
89
76
56
20
16
40
90
75
55
19
15
41
91
74
54
18
14
42
92
73
53
17
13
43
93
72
52
16
12
44
94
71
51
15
11
43
95
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
42
96
63
39
27
1
41
97
64
40
28
0
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
119
120
120
119
118
117
116
115
114
113
112
111
110
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
98
106
118
109
97
89
97
105
117
108
96
88
96
104
116
107
95
87
95
103
115
106
94
86
94
102
114
105
93
85
93
101
113
104
92
84
92
100
112
103
91
83
91
99
111
102
90
82
90
98
110
101
89
81
89
97
109
100
88
80
88
96
108
99
87
79
87
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
78
86
74
88
108
97
79
65
77
85
73
89
108
96
80
64
76
84
72
90
107
95
81
63
75
83
71
91
106
94
82
62
74
82
70
92
105
93
83
61
73
81
69
93
104
92
84
60
72
80
68
94
103
91
85
59
71
79
78
77
76
75
74
73
72
71
70
69
68
67
95
102
90
86
58
59
60
61
62
63
64
65
66
67
68
69
70
66
96
101
89
85
57
65
97
100
88
84
56
64
98
99
87
83
55
63
99
98
86
82
54
62
100
97
85
81
53
61
101
96
84
80
52
60
102
95
83
79
51
59
103
102
101
100
99
98
97
96
95
96
97
98
99
100
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
50
58
94
69
49
57
93
68
48
56
92
67
47
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
91
66
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
44
56
90
65
47
33
45
57
89
64
48
32
46
58
88
63
49
31
47
59
87
62
50
30
48
60
86
61
51
29
49
61
85
60
52
28
50
62
84
59
53
27
51
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
26
52
73
84
59
45
25
53
74
85
60
44
24
54
75
86
61
43
23
55
76
87
62
42
22
56
77
88
63
41
21
57
78
89
64
40
20
58
79
90
65
39
19
59
80
91
66
38
18
60
81
92
67
37
17
61
82
93
68
36
16
62
83
94
67
35
15
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
95
66
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
64
76
96
65
27
13
65
77
97
64
28
12
66
78
98
63
29
11
67
79
98
62
30
10
68
80
97
61
31
9
69
81
96
60
32
8
70
82
95
59
33
7
71
83
94
58
34
6
72
84
93
57
35
5
73
85
92
56
36
4
74
86
91
55
37
3
75
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
43
42
41
40
39
38
2
76
96
79
67
41
1
77
97
80
68
40
0
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
111
112
113
114
115
116
117
118
119
120
121
121
120
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
90
98
110
119
107
99
89
97
109
118
106
98
88
96
108
117
105
97
87
95
107
116
104
96
86
94
106
115
103
95
85
93
105
114
102
94
84
92
104
113
101
93
83
91
103
112
100
92
82
90
102
111
99
91
81
89
101
110
98
90
80
88
100
109
97
89
79
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
88
78
66
80
98
109
89
75
87
77
65
81
97
109
90
74
86
76
64
82
96
108
91
73
85
75
63
83
95
107
92
72
84
74
62
84
94
106
93
71
83
73
61
85
93
105
94
70
82
72
60
86
92
104
95
69
81
71
70
69
68
67
66
65
64
63
62
61
60
59
87
91
103
96
68
69
70
71
72
73
74
75
76
77
78
79
80
58
86
90
102
97
67
57
85
89
101
98
66
56
84
88
100
99
65
55
83
87
99
100
64
54
82
86
98
101
63
53
81
85
97
102
62
52
80
84
96
103
61
51
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
101
100
99
98
97
96
97
98
99
100
101
102
103
104
60
50
70
95
59
49
69
94
58
48
68
93
57
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
67
92
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
34
48
66
91
57
45
33
49
65
90
58
46
32
50
64
89
59
47
31
51
63
88
60
48
30
52
62
87
61
49
29
53
61
86
62
50
28
54
60
85
63
51
27
55
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
52
26
47
60
85
73
53
25
46
61
86
74
54
24
45
62
87
75
55
23
44
63
88
76
56
22
43
64
89
77
57
21
42
65
90
78
58
20
41
66
91
79
59
19
40
67
92
80
60
18
39
68
93
81
61
17
38
67
94
82
62
16
37
66
95
83
63
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
65
96
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
14
28
64
97
77
65
13
29
63
98
78
66
12
30
62
98
79
67
11
31
61
97
80
68
10
32
60
96
81
69
9
33
59
95
82
70
8
34
58
94
83
71
7
35
57
93
84
72
6
36
56
92
85
73
5
37
55
91
86
74
4
38
54
90
87
75
3
39
40
41
42
43
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
76
2
40
66
78
97
77
1
39
67
79
98
78
0
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
91
92
93
94
95
96
97
98
99
100
101
102
103
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
133
132
131
130
129
128
127
126
125
124
123
122
121
120
104
94
90
102
114
119
103
93
89
101
113
118
102
92
88
100
112
117
101
91
87
99
111
116
100
90
86
98
110
115
99
89
85
97
109
114
98
88
84
96
108
113
97
87
83
95
107
112
96
86
82
94
106
111
95
85
81
93
105
110
94
84
80
92
104
109
93
81
82
83
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
109
108
107
106
105
104
103
102
101
100
99
98
97
96
108
92
80
74
78
90
109
95
107
91
79
73
77
89
109
94
106
90
78
72
76
88
108
93
105
89
77
71
75
87
107
92
104
88
76
70
74
86
106
91
103
87
75
69
73
85
105
90
102
86
74
68
72
84
104
89
101
85
84
83
82
81
80
79
78
77
76
75
74
73
67
71
83
103
88
89
90
91
92
93
94
95
96
97
98
99
100
72
66
70
82
102
87
71
65
69
81
101
86
70
64
68
80
100
85
69
63
67
79
99
84
68
62
66
78
98
83
67
61
65
77
97
82
66
60
64
76
96
81
65
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
80
64
50
86
79
63
49
85
78
62
48
84
77
59
58
57
56
55
56
57
58
59
60
61
62
63
64
63
62
61
47
83
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
54
60
46
82
77
65
53
59
45
81
78
66
52
58
44
80
79
67
51
57
43
79
80
68
50
56
42
78
81
69
49
55
41
77
82
70
48
54
40
76
83
71
47
53
52
51
50
49
48
47
46
45
44
45
46
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
72
46
43
38
74
88
73
45
42
37
73
89
74
44
41
36
72
90
75
43
40
35
71
91
76
42
39
34
70
92
77
41
38
33
69
93
78
40
37
32
68
94
79
39
36
31
67
95
80
38
35
30
66
94
81
37
34
29
65
93
82
36
33
28
64
92
83
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
27
63
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
89
88
87
86
85
84
36
22
26
62
82
85
37
21
25
61
81
86
38
20
24
60
80
87
39
19
23
59
79
88
40
18
22
58
78
89
41
17
21
57
77
90
42
16
20
56
76
91
43
15
19
55
75
92
44
14
18
54
74
93
43
13
17
53
73
94
42
12
16
52
72
95
41
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
96
40
2
28
40
64
97
39
1
29
41
65
98
38
0
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
91
92
93
94
95
96
97
98
99
100
101
102
103
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
110
94
90
102
106
122
109
93
89
101
105
121
108
92
88
100
104
120
107
91
87
99
103
119
106
90
86
98
102
118
105
89
85
97
101
117
104
88
84
96
100
116
103
87
83
95
99
115
102
86
82
94
98
114
101
85
81
93
97
113
100
84
80
92
96
112
99
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
111
98
86
74
78
90
86
98
110
97
85
73
77
89
85
97
109
96
84
72
76
88
84
96
108
95
83
71
75
87
83
95
107
94
82
70
74
86
82
94
106
93
81
69
73
85
81
93
105
92
80
68
72
84
80
92
104
91
90
89
88
87
86
85
84
83
82
81
80
79
67
71
83
79
91
92
93
94
95
96
97
98
99
100
101
102
103
78
66
70
82
78
90
77
65
69
81
77
89
76
64
68
80
76
88
75
63
67
79
75
87
74
62
66
78
74
86
73
61
65
77
73
85
72
60
64
76
72
84
71
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
83
70
50
62
82
69
49
61
81
68
48
60
80
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
47
59
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
78
66
46
58
78
89
77
65
45
57
77
89
76
64
44
56
76
88
75
63
43
55
75
87
74
62
42
54
74
86
73
61
41
53
73
85
72
60
40
52
72
84
71
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
83
70
51
38
50
64
82
69
52
37
49
65
81
68
53
36
48
66
80
67
54
35
47
67
79
66
55
34
46
68
78
65
56
33
45
69
77
64
57
32
44
70
76
63
58
31
43
71
75
62
59
30
42
70
74
61
58
29
41
69
73
60
57
28
40
68
72
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
27
39
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
60
46
26
38
58
72
61
45
25
37
57
73
62
44
24
36
56
74
63
43
23
35
55
75
64
42
22
34
54
76
65
41
21
33
53
77
66
40
20
32
52
78
67
39
19
31
51
79
68
38
18
30
50
80
69
37
17
29
49
81
70
36
16
28
48
82
71
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
83
70
28
2
16
40
82
69
29
1
17
41
81
68
30
0
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
103
102
101
100
99
98
97
96
95
94
93
92
91
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
122
106
102
90
94
110
121
105
101
89
93
109
120
104
100
88
92
108
119
103
99
87
91
107
118
102
98
86
90
106
117
101
97
85
89
105
116
100
96
84
88
104
115
99
95
83
87
103
114
98
94
82
86
102
113
97
93
81
85
101
112
96
92
80
84
100
111
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
99
110
98
86
90
78
74
86
98
109
97
85
89
77
73
85
97
108
96
84
88
76
72
84
96
107
95
83
87
75
71
83
95
106
94
82
86
74
70
82
94
105
93
81
85
73
69
81
93
104
92
80
84
72
68
80
92
103
102
101
100
99
98
97
96
95
94
93
92
91
79
83
71
67
79
80
81
82
83
84
85
86
87
88
89
90
91
90
78
82
70
66
78
89
77
81
69
65
77
88
76
80
68
64
76
87
75
79
67
63
75
86
74
78
66
62
74
85
73
77
65
61
73
84
72
76
64
60
72
83
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
71
82
62
50
70
81
61
49
69
80
60
48
68
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
59
47
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
89
78
58
46
66
78
89
77
57
45
65
77
88
76
56
44
64
76
87
75
55
43
63
75
86
74
54
42
62
74
85
73
53
41
61
73
84
72
52
40
60
72
83
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
71
82
63
50
38
52
70
81
64
49
37
53
69
80
65
48
36
54
68
79
66
47
35
55
67
78
67
46
34
56
66
77
68
45
33
57
65
76
69
44
32
58
64
75
70
43
31
59
63
74
71
42
30
58
62
73
70
41
29
57
61
72
69
40
28
56
60
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
39
27
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
72
58
38
26
46
60
73
57
37
25
45
61
74
56
36
24
44
62
75
55
35
23
43
63
76
54
34
22
42
64
77
53
33
21
41
65
78
52
32
20
40
66
79
51
31
19
39
67
80
50
30
18
38
68
81
49
29
17
37
69
82
48
28
16
36
70
83
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
71
82
40
16
2
28
70
81
41
17
1
29
69
80
42
18
0
120
121
122
123
124
125
126
127
128
129
130
131
132
133
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
103
102
101
100
99
98
97
96
95
94
93
92
91
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
119
114
102
90
94
102
118
113
101
89
93
101
117
112
100
88
92
100
116
111
99
87
91
99
115
110
98
86
90
98
114
109
97
85
89
97
113
108
96
84
88
96
112
107
95
83
87
95
111
106
94
82
86
94
110
105
93
81
85
93
109
104
92
80
84
92
108
96
97
98
99
100
101
102
103
104
105
106
107
108
109
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
82
81
80
79
91
107
95
109
90
78
74
78
90
106
94
109
89
77
73
77
89
105
93
108
88
76
72
76
88
104
92
107
87
75
71
75
87
103
91
106
86
74
70
74
86
102
90
105
85
73
69
73
85
101
89
104
84
72
68
72
84
100
99
98
97
96
95
94
93
92
91
90
89
88
103
83
71
67
71
72
73
74
75
76
77
78
79
80
81
82
83
87
102
82
70
66
70
86
101
81
69
65
69
85
100
80
68
64
68
84
99
79
67
63
67
83
98
78
66
62
66
82
97
77
65
61
65
81
96
76
64
60
64
80
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
63
79
86
50
62
78
85
49
61
77
84
48
60
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
83
47
59
60
61
62
63
62
61
60
59
58
57
56
55
56
57
58
59
65
77
82
46
58
54
66
78
81
45
57
53
67
79
80
44
56
52
68
80
79
43
55
51
69
81
78
42
54
50
70
82
77
41
53
49
71
83
76
40
52
48
72
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
46
45
44
43
44
45
46
47
48
49
50
51
47
73
87
74
38
42
46
74
88
73
37
41
45
75
89
72
36
40
44
76
90
71
35
39
43
77
91
70
34
38
42
78
92
69
33
37
41
79
93
68
32
36
40
80
94
67
31
35
39
81
95
66
30
34
38
82
94
65
29
33
37
83
93
64
28
32
36
84
85
86
87
88
89
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
63
27
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
85
82
62
26
22
36
86
81
61
25
21
37
87
80
60
24
20
38
88
79
59
23
19
39
89
78
58
22
18
40
90
77
57
21
17
41
91
76
56
20
16
42
92
75
55
19
15
43
93
74
54
18
14
44
94
73
53
17
13
43
95
72
52
16
12
42
96
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
41
97
64
40
28
2
40
98
65
41
29
1
39
99
66
42
30
0
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
120
121
121
120
119
118
117
116
115
114
113
112
111
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
99
107
119
110
98
90
98
106
118
109
97
89
97
105
117
108
96
88
96
104
116
107
95
87
95
103
115
106
94
86
94
102
114
105
93
85
93
101
113
104
92
84
92
100
112
103
91
83
91
99
111
102
90
82
90
98
110
101
89
81
89
97
109
100
88
80
88
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
79
87
75
89
109
98
80
66
78
86
74
90
109
97
81
65
77
85
73
91
108
96
82
64
76
84
72
92
107
95
83
63
75
83
71
93
106
94
84
62
74
82
70
94
105
93
85
61
73
81
69
95
104
92
86
60
72
80
79
78
77
76
75
74
73
72
71
70
69
68
96
103
91
87
59
60
61
62
63
64
65
66
67
68
69
70
71
67
97
102
90
86
58
66
98
101
89
85
57
65
99
100
88
84
56
64
100
99
87
83
55
63
101
98
86
82
54
62
102
97
85
81
53
61
103
96
84
80
52
60
104
103
102
101
100
99
98
97
96
97
98
99
100
101
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
51
59
95
70
50
58
94
69
49
57
93
68
48
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
92
67
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
45
57
91
66
48
34
46
58
90
65
49
33
47
59
89
64
50
32
48
60
88
63
51
31
49
61
87
62
52
30
50
62
86
61
53
29
51
63
85
60
54
28
52
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
27
53
74
85
60
46
26
54
75
86
61
45
25
55
76
87
62
44
24
56
77
88
63
43
23
57
78
89
64
42
22
58
79
90
65
41
21
59
80
91
66
40
20
60
81
92
67
39
19
61
82
93
68
38
18
62
83
94
67
37
17
63
84
95
66
36
16
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
96
65
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
65
77
97
64
28
14
66
78
98
63
29
13
67
79
98
62
30
12
68
80
97
61
31
11
69
81
96
60
32
10
70
82
95
59
33
9
71
83
94
58
34
8
72
84
93
57
35
7
73
85
92
56
36
6
74
86
91
55
37
5
75
87
90
54
38
4
76
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
43
42
41
40
39
3
77
97
78
66
40
2
78
98
79
67
39
1
79
99
80
68
38
0
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
112
113
114
115
116
117
118
119
120
121
122
122
121
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
91
99
111
120
108
100
90
98
110
119
107
99
89
97
109
118
106
98
88
96
108
117
105
97
87
95
107
116
104
96
86
94
106
115
103
95
85
93
105
114
102
94
84
92
104
113
101
93
83
91
103
112
100
92
82
90
102
111
99
91
81
89
101
110
98
90
80
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
89
79
67
81
99
110
90
76
88
78
66
82
98
110
91
75
87
77
65
83
97
109
92
74
86
76
64
84
96
108
93
73
85
75
63
85
95
107
94
72
84
74
62
86
94
106
95
71
83
73
61
87
93
105
96
70
82
72
71
70
69
68
67
66
65
64
63
62
61
60
88
92
104
97
69
70
71
72
73
74
75
76
77
78
79
80
81
59
87
91
103
98
68
58
86
90
102
99
67
57
85
89
101
100
66
56
84
88
100
101
65
55
83
87
99
102
64
54
82
86
98
103
63
53
81
85
97
104
62
52
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
98
99
100
101
102
103
104
105
61
51
71
96
60
50
70
95
59
49
69
94
58
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
68
93
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
35
49
67
92
58
46
34
50
66
91
59
47
33
51
65
90
60
48
32
52
64
89
61
49
31
53
63
88
62
50
30
54
62
87
63
51
29
55
61
86
64
52
28
56
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
53
27
48
61
86
74
54
26
47
62
87
75
55
25
46
63
88
76
56
24
45
64
89
77
57
23
44
65
90
78
58
22
43
66
91
79
59
21
42
67
92
80
60
20
41
68
93
81
61
19
40
67
94
82
62
18
39
66
95
83
63
17
38
65
96
84
64
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
64
97
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
15
29
63
98
78
66
14
30
62
98
79
67
13
31
61
97
80
68
12
32
60
96
81
69
11
33
59
95
82
70
10
34
58
94
83
71
9
35
57
93
84
72
8
36
56
92
85
73
7
37
55
91
86
74
6
38
54
90
87
75
5
39
53
89
88
76
4
40
41
42
43
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
77
3
39
65
77
98
78
2
38
66
78
99
79
1
37
67
79
100
80
0
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
92
93
94
95
96
97
98
99
100
101
102
103
104
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
105
95
91
103
115
120
104
94
90
102
114
119
103
93
89
101
113
118
102
92
88
100
112
117
101
91
87
99
111
116
100
90
86
98
110
115
99
89
85
97
109
114
98
88
84
96
108
113
97
87
83
95
107
112
96
86
82
94
106
111
95
85
81
93
105
110
94
82
83
84
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
109
93
81
75
79
91
110
96
108
92
80
74
78
90
110
95
107
91
79
73
77
89
109
94
106
90
78
72
76
88
108
93
105
89
77
71
75
87
107
92
104
88
76
70
74
86
106
91
103
87
75
69
73
85
105
90
102
86
85
84
83
82
81
80
79
78
77
76
75
74
68
72
84
104
89
90
91
92
93
94
95
96
97
98
99
100
101
73
67
71
83
103
88
72
66
70
82
102
87
71
65
69
81
101
86
70
64
68
80
100
85
69
63
67
79
99
84
68
62
66
78
98
83
67
61
65
77
97
82
66
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
81
65
51
87
80
64
50
86
79
63
49
85
78
60
59
58
57
56
57
58
59
60
61
62
63
64
65
64
63
62
48
84
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
55
61
47
83
78
66
54
60
46
82
79
67
53
59
45
81
80
68
52
58
44
80
81
69
51
57
43
79
82
70
50
56
42
78
83
71
49
55
41
77
84
72
48
54
53
52
51
50
49
48
47
46
45
46
47
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
73
47
44
39
75
89
74
46
43
38
74
90
75
45
42
37
73
91
76
44
41
36
72
92
77
43
40
35
71
93
78
42
39
34
70
94
79
41
38
33
69
95
80
40
37
32
68
96
81
39
36
31
67
95
82
38
35
30
66
94
83
37
34
29
65
93
84
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
28
64
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
90
89
88
87
86
85
37
23
27
63
83
86
38
22
26
62
82
87
39
21
25
61
81
88
40
20
24
60
80
89
41
19
23
59
79
90
42
18
22
58
78
91
43
17
21
57
77
92
44
16
20
56
76
93
43
15
19
55
75
94
42
14
18
54
74
95
41
13
17
53
73
96
40
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
97
39
3
29
41
65
98
38
2
30
42
66
99
37
1
31
43
67
100
36
0
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
92
93
94
95
96
97
98
99
100
101
102
103
104
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
111
95
91
103
107
123
110
94
90
102
106
122
109
93
89
101
105
121
108
92
88
100
104
120
107
91
87
99
103
119
106
90
86
98
102
118
105
89
85
97
101
117
104
88
84
96
100
116
103
87
83
95
99
115
102
86
82
94
98
114
101
85
81
93
97
113
100
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
112
99
87
75
79
91
87
99
111
98
86
74
78
90
86
98
110
97
85
73
77
89
85
97
109
96
84
72
76
88
84
96
108
95
83
71
75
87
83
95
107
94
82
70
74
86
82
94
106
93
81
69
73
85
81
93
105
92
91
90
89
88
87
86
85
84
83
82
81
80
68
72
84
80
92
93
94
95
96
97
98
99
100
101
102
103
104
79
67
71
83
79
91
78
66
70
82
78
90
77
65
69
81
77
89
76
64
68
80
76
88
75
63
67
79
75
87
74
62
66
78
74
86
73
61
65
77
73
85
72
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
84
71
51
63
83
70
50
62
82
69
49
61
81
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
48
60
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
79
67
47
59
79
90
78
66
46
58
78
90
77
65
45
57
77
89
76
64
44
56
76
88
75
63
43
55
75
87
74
62
42
54
74
86
73
61
41
53
73
85
72
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
84
71
52
39
51
65
83
70
53
38
50
66
82
69
54
37
49
67
81
68
55
36
48
68
80
67
56
35
47
69
79
66
57
34
46
70
78
65
58
33
45
71
77
64
59
32
44
72
76
63
60
31
43
71
75
62
59
30
42
70
74
61
58
29
41
69
73
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
28
40
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
61
47
27
39
59
73
62
46
26
38
58
74
63
45
25
37
57
75
64
44
24
36
56
76
65
43
23
35
55
77
66
42
22
34
54
78
67
41
21
33
53
79
68
40
20
32
52
80
69
39
19
31
51
81
70
38
18
30
50
82
71
37
17
29
49
83
72
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
84
71
29
3
17
41
83
70
30
2
18
42
82
69
31
1
19
43
81
68
32
0
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
104
103
102
101
100
99
98
97
96
95
94
93
92
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
123
107
103
91
95
111
122
106
102
90
94
110
121
105
101
89
93
109
120
104
100
88
92
108
119
103
99
87
91
107
118
102
98
86
90
106
117
101
97
85
89
105
116
100
96
84
88
104
115
99
95
83
87
103
114
98
94
82
86
102
113
97
93
81
85
101
112
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
100
111
99
87
91
79
75
87
99
110
98
86
90
78
74
86
98
109
97
85
89
77
73
85
97
108
96
84
88
76
72
84
96
107
95
83
87
75
71
83
95
106
94
82
86
74
70
82
94
105
93
81
85
73
69
81
93
104
103
102
101
100
99
98
97
96
95
94
93
92
80
84
72
68
80
81
82
83
84
85
86
87
88
89
90
91
92
91
79
83
71
67
79
90
78
82
70
66
78
89
77
81
69
65
77
88
76
80
68
64
76
87
75
79
67
63
75
86
74
78
66
62
74
85
73
77
65
61
73
84
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
72
83
63
51
71
82
62
50
70
81
61
49
69
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
60
48
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
90
79
59
47
67
79
90
78
58
46
66
78
89
77
57
45
65
77
88
76
56
44
64
76
87
75
55
43
63
75
86
74
54
42
62
74
85
73
53
41
61
73
84
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
72
83
64
51
39
53
71
82
65
50
38
54
70
81
66
49
37
55
69
80
67
48
36
56
68
79
68
47
35
57
67
78
69
46
34
58
66
77
70
45
33
59
65
76
71
44
32
60
64
75
72
43
31
59
63
74
71
42
30
58
62
73
70
41
29
57
61
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
40
28
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
73
59
39
27
47
61
74
58
38
26
46
62
75
57
37
25
45
63
76
56
36
24
44
64
77
55
35
23
43
65
78
54
34
22
42
66
79
53
33
21
41
67
80
52
32
20
40
68
81
51
31
19
39
69
82
50
30
18
38
70
83
49
29
17
37
71
84
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
72
83
41
17
3
29
71
82
42
18
2
30
70
81
43
19
1
31
69
80
44
20
0
121
122
123
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
104
103
102
101
100
99
98
97
96
95
94
93
92
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
120
115
103
91
95
103
119
114
102
90
94
102
118
113
101
89
93
101
117
112
100
88
92
100
116
111
99
87
91
99
115
110
98
86
90
98
114
109
97
85
89
97
113
108
96
84
88
96
112
107
95
83
87
95
111
106
94
82
86
94
110
105
93
81
85
93
109
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
83
82
81
80
92
108
96
110
91
79
75
79
91
107
95
110
90
78
74
78
90
106
94
109
89
77
73
77
89
105
93
108
88
76
72
76
88
104
92
107
87
75
71
75
87
103
91
106
86
74
70
74
86
102
90
105
85
73
69
73
85
101
100
99
98
97
96
95
94
93
92
91
90
89
104
84
72
68
72
73
74
75
76
77
78
79
80
81
82
83
84
88
103
83
71
67
71
87
102
82
70
66
70
86
101
81
69
65
69
85
100
80
68
64
68
84
99
79
67
63
67
83
98
78
66
62
66
82
97
77
65
61
65
81
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
64
80
87
51
63
79
86
50
62
78
85
49
61
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
84
48
60
61
62
63
64
63
62
61
60
59
58
57
56
57
58
59
60
66
78
83
47
59
55
67
79
82
46
58
54
68
80
81
45
57
53
69
81
80
44
56
52
70
82
79
43
55
51
71
83
78
42
54
50
72
84
77
41
53
49
73
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
47
46
45
44
45
46
47
48
49
50
51
52
48
74
88
75
39
43
47
75
89
74
38
42
46
76
90
73
37
41
45
77
91
72
36
40
44
78
92
71
35
39
43
79
93
70
34
38
42
80
94
69
33
37
41
81
95
68
32
36
40
82
96
67
31
35
39
83
95
66
30
34
38
84
94
65
29
33
37
85
86
87
88
89
90
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
64
28
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
86
83
63
27
23
37
87
82
62
26
22
38
88
81
61
25
21
39
89
80
60
24
20
40
90
79
59
23
19
41
91
78
58
22
18
42
92
77
57
21
17
43
93
76
56
20
16
44
94
75
55
19
15
43
95
74
54
18
14
42
96
73
53
17
13
41
97
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
40
98
65
41
29
3
39
99
66
42
30
2
38
100
67
43
31
1
37
101
68
44
32
0
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
121
122
122
121
120
119
118
117
116
115
114
113
112
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
100
108
120
111
99
91
99
107
119
110
98
90
98
106
118
109
97
89
97
105
117
108
96
88
96
104
116
107
95
87
95
103
115
106
94
86
94
102
114
105
93
85
93
101
113
104
92
84
92
100
112
103
91
83
91
99
111
102
90
82
90
98
110
101
89
81
89
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
80
88
76
90
110
99
81
67
79
87
75
91
110
98
82
66
78
86
74
92
109
97
83
65
77
85
73
93
108
96
84
64
76
84
72
94
107
95
85
63
75
83
71
95
106
94
86
62
74
82
70
96
105
93
87
61
73
81
80
79
78
77
76
75
74
73
72
71
70
69
97
104
92
88
60
61
62
63
64
65
66
67
68
69
70
71
72
68
98
103
91
87
59
67
99
102
90
86
58
66
100
101
89
85
57
65
101
100
88
84
56
64
102
99
87
83
55
63
103
98
86
82
54
62
104
97
85
81
53
61
105
104
103
102
101
100
99
98
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
52
60
96
71
51
59
95
70
50
58
94
69
49
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
93
68
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
46
58
92
67
49
35
47
59
91
66
50
34
48
60
90
65
51
33
49
61
89
64
52
32
50
62
88
63
53
31
51
63
87
62
54
30
52
64
86
61
55
29
53
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
28
54
75
86
61
47
27
55
76
87
62
46
26
56
77
88
63
45
25
57
78
89
64
44
24
58
79
90
65
43
23
59
80
91
66
42
22
60
81
92
67
41
21
61
82
93
68
40
20
62
83
94
67
39
19
63
84
95
66
38
18
64
85
96
65
37
17
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
97
64
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
66
78
98
63
29
15
67
79
98
62
30
14
68
80
97
61
31
13
69
81
96
60
32
12
70
82
95
59
33
11
71
83
94
58
34
10
72
84
93
57
35
9
73
85
92
56
36
8
74
86
91
55
37
7
75
87
90
54
38
6
76
88
89
53
39
5
77
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
43
42
41
40
4
78
98
77
65
39
3
79
99
78
66
38
2
80
100
79
67
37
1
81
101
80
68
36
0
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
113
114
115
116
117
118
119
120
121
122
123
123
122
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
92
100
112
121
109
101
91
99
111
120
108
100
90
98
110
119
107
99
89
97
109
118
106
98
88
96
108
117
105
97
87
95
107
116
104
96
86
94
106
115
103
95
85
93
105
114
102
94
84
92
104
113
101
93
83
91
103
112
100
92
82
90
102
111
99
91
81
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
90
80
68
82
100
111
91
77
89
79
67
83
99
111
92
76
88
78
66
84
98
110
93
75
87
77
65
85
97
109
94
74
86
76
64
86
96
108
95
73
85
75
63
87
95
107
96
72
84
74
62
88
94
106
97
71
83
73
72
71
70
69
68
67
66
65
64
63
62
61
89
93
105
98
70
71
72
73
74
75
76
77
78
79
80
81
82
60
88
92
104
99
69
59
87
91
103
100
68
58
86
90
102
101
67
57
85
89
101
102
66
56
84
88
100
103
65
55
83
87
99
104
64
54
82
86
98
105
63
53
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
103
102
101
100
99
98
99
100
101
102
103
104
105
106
62
52
72
97
61
51
71
96
60
50
70
95
59
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
69
94
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
36
50
68
93
59
47
35
51
67
92
60
48
34
52
66
91
61
49
33
53
65
90
62
50
32
54
64
89
63
51
31
55
63
88
64
52
30
56
62
87
65
53
29
57
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
54
28
49
62
87
75
55
27
48
63
88
76
56
26
47
64
89
77
57
25
46
65
90
78
58
24
45
66
91
79
59
23
44
67
92
80
60
22
43
68
93
81
61
21
42
67
94
82
62
20
41
66
95
83
63
19
40
65
96
84
64
18
39
64
97
85
65
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
63
98
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
16
30
62
98
79
67
15
31
61
97
80
68
14
32
60
96
81
69
13
33
59
95
82
70
12
34
58
94
83
71
11
35
57
93
84
72
10
36
56
92
85
73
9
37
55
91
86
74
8
38
54
90
87
75
7
39
53
89
88
76
6
40
52
88
89
77
5
41
42
43
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
78
4
38
64
76
99
79
3
37
65
77
100
80
2
36
66
78
101
81
1
35
67
79
102
82
0
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
93
94
95
96
97
98
99
100
101
102
103
104
105
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
135
134
133
132
131
130
129
128
127
126
125
124
123
122
106
96
92
104
116
121
105
95
91
103
115
120
104
94
90
102
114
119
103
93
89
101
113
118
102
92
88
100
112
117
101
91
87
99
111
116
100
90
86
98
110
115
99
89
85
97
109
114
98
88
84
96
108
113
97
87
83
95
107
112
96
86
82
94
106
111
95
83
84
85
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
111
110
109
108
107
106
105
104
103
102
101
100
99
98
110
94
82
76
80
92
111
97
109
93
81
75
79
91
111
96
108
92
80
74
78
90
110
95
107
91
79
73
77
89
109
94
106
90
78
72
76
88
108
93
105
89
77
71
75
87
107
92
104
88
76
70
74
86
106
91
103
87
86
85
84
83
82
81
80
79
78
77
76
75
69
73
85
105
90
91
92
93
94
95
96
97
98
99
100
101
102
74
68
72
84
104
89
73
67
71
83
103
88
72
66
70
82
102
87
71
65
69
81
101
86
70
64
68
80
100
85
69
63
67
79
99
84
68
62
66
78
98
83
67
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
82
66
52
88
81
65
51
87
80
64
50
86
79
61
60
59
58
57
58
59
60
61
62
63
64
65
66
65
64
63
49
85
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
56
62
48
84
79
67
55
61
47
83
80
68
54
60
46
82
81
69
53
59
45
81
82
70
52
58
44
80
83
71
51
57
43
79
84
72
50
56
42
78
85
73
49
55
54
53
52
51
50
49
48
47
46
47
48
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
91
90
89
88
87
86
74
48
45
40
76
90
75
47
44
39
75
91
76
46
43
38
74
92
77
45
42
37
73
93
78
44
41
36
72
94
79
43
40
35
71
95
80
42
39
34
70
96
81
41
38
33
69
97
82
40
37
32
68
96
83
39
36
31
67
95
84
38
35
30
66
94
85
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
29
65
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
91
90
89
88
87
86
38
24
28
64
84
87
39
23
27
63
83
88
40
22
26
62
82
89
41
21
25
61
81
90
42
20
24
60
80
91
43
19
23
59
79
92
44
18
22
58
78
93
43
17
21
57
77
94
42
16
20
56
76
95
41
15
19
55
75
96
40
14
18
54
74
97
39
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
98
38
4
30
42
66
99
37
3
31
43
67
100
36
2
32
44
68
101
35
1
33
45
69
102
34
0
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
93
94
95
96
97
98
99
100
101
102
103
104
105
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
112
96
92
104
108
124
111
95
91
103
107
123
110
94
90
102
106
122
109
93
89
101
105
121
108
92
88
100
104
120
107
91
87
99
103
119
106
90
86
98
102
118
105
89
85
97
101
117
104
88
84
96
100
116
103
87
83
95
99
115
102
86
82
94
98
114
101
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
113
100
88
76
80
92
88
100
112
99
87
75
79
91
87
99
111
98
86
74
78
90
86
98
110
97
85
73
77
89
85
97
109
96
84
72
76
88
84
96
108
95
83
71
75
87
83
95
107
94
82
70
74
86
82
94
106
93
92
91
90
89
88
87
86
85
84
83
82
81
69
73
85
81
93
94
95
96
97
98
99
100
101
102
103
104
105
80
68
72
84
80
92
79
67
71
83
79
91
78
66
70
82
78
90
77
65
69
81
77
89
76
64
68
80
76
88
75
63
67
79
75
87
74
62
66
78
74
86
73
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
85
72
52
64
84
71
51
63
83
70
50
62
82
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
49
61
81
82
83
84
85
86
87
88
89
90
91
91
90
89
88
87
86
80
68
48
60
80
91
79
67
47
59
79
91
78
66
46
58
78
90
77
65
45
57
77
89
76
64
44
56
76
88
75
63
43
55
75
87
74
62
42
54
74
86
73
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
85
72
53
40
52
66
84
71
54
39
51
67
83
70
55
38
50
68
82
69
56
37
49
69
81
68
57
36
48
70
80
67
58
35
47
71
79
66
59
34
46
72
78
65
60
33
45
73
77
64
61
32
44
72
76
63
60
31
43
71
75
62
59
30
42
70
74
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
29
41
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
62
48
28
40
60
74
63
47
27
39
59
75
64
46
26
38
58
76
65
45
25
37
57
77
66
44
24
36
56
78
67
43
23
35
55
79
68
42
22
34
54
80
69
41
21
33
53
81
70
40
20
32
52
82
71
39
19
31
51
83
72
38
18
30
50
84
73
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
85
72
30
4
18
42
84
71
31
3
19
43
83
70
32
2
20
44
82
69
33
1
21
45
81
68
34
0
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
105
104
103
102
101
100
99
98
97
96
95
94
93
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
124
108
104
92
96
112
123
107
103
91
95
111
122
106
102
90
94
110
121
105
101
89
93
109
120
104
100
88
92
108
119
103
99
87
91
107
118
102
98
86
90
106
117
101
97
85
89
105
116
100
96
84
88
104
115
99
95
83
87
103
114
98
94
82
86
102
113
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
101
112
100
88
92
80
76
88
100
111
99
87
91
79
75
87
99
110
98
86
90
78
74
86
98
109
97
85
89
77
73
85
97
108
96
84
88
76
72
84
96
107
95
83
87
75
71
83
95
106
94
82
86
74
70
82
94
105
104
103
102
101
100
99
98
97
96
95
94
93
81
85
73
69
81
82
83
84
85
86
87
88
89
90
91
92
93
92
80
84
72
68
80
91
79
83
71
67
79
90
78
82
70
66
78
89
77
81
69
65
77
88
76
80
68
64
76
87
75
79
67
63
75
86
74
78
66
62
74
85
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
73
84
64
52
72
83
63
51
71
82
62
50
70
86
87
88
89
90
91
91
90
89
88
87
86
85
84
83
82
81
61
49
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
91
80
60
48
68
80
91
79
59
47
67
79
90
78
58
46
66
78
89
77
57
45
65
77
88
76
56
44
64
76
87
75
55
43
63
75
86
74
54
42
62
74
85
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
73
84
65
52
40
54
72
83
66
51
39
55
71
82
67
50
38
56
70
81
68
49
37
57
69
80
69
48
36
58
68
79
70
47
35
59
67
78
71
46
34
60
66
77
72
45
33
61
65
76
73
44
32
60
64
75
72
43
31
59
63
74
71
42
30
58
62
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
41
29
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
74
60
40
28
48
62
75
59
39
27
47
63
76
58
38
26
46
64
77
57
37
25
45
65
78
56
36
24
44
66
79
55
35
23
43
67
80
54
34
22
42
68
81
53
33
21
41
69
82
52
32
20
40
70
83
51
31
19
39
71
84
50
30
18
38
72
85
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
73
84
42
18
4
30
72
83
43
19
3
31
71
82
44
20
2
32
70
81
45
21
1
33
69
80
46
22
0
122
123
124
125
126
127
128
129
130
131
132
133
134
135
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
105
104
103
102
101
100
99
98
97
96
95
94
93
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
121
116
104
92
96
104
120
115
103
91
95
103
119
114
102
90
94
102
118
113
101
89
93
101
117
112
100
88
92
100
116
111
99
87
91
99
115
110
98
86
90
98
114
109
97
85
89
97
113
108
96
84
88
96
112
107
95
83
87
95
111
106
94
82
86
94
110
98
99
100
101
102
103
104
105
106
107
108
109
110
111
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
84
83
82
81
93
109
97
111
92
80
76
80
92
108
96
111
91
79
75
79
91
107
95
110
90
78
74
78
90
106
94
109
89
77
73
77
89
105
93
108
88
76
72
76
88
104
92
107
87
75
71
75
87
103
91
106
86
74
70
74
86
102
101
100
99
98
97
96
95
94
93
92
91
90
105
85
73
69
73
74
75
76
77
78
79
80
81
82
83
84
85
89
104
84
72
68
72
88
103
83
71
67
71
87
102
82
70
66
70
86
101
81
69
65
69
85
100
80
68
64
68
84
99
79
67
63
67
83
98
78
66
62
66
82
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
65
81
88
52
64
80
87
51
63
79
86
50
62
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
85
49
61
62
63
64
65
64
63
62
61
60
59
58
57
58
59
60
61
67
79
84
48
60
56
68
80
83
47
59
55
69
81
82
46
58
54
70
82
81
45
57
53
71
83
80
44
56
52
72
84
79
43
55
51
73
85
78
42
54
50
74
86
87
88
89
90
91
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
48
47
46
45
46
47
48
49
50
51
52
53
49
75
89
76
40
44
48
76
90
75
39
43
47
77
91
74
38
42
46
78
92
73
37
41
45
79
93
72
36
40
44
80
94
71
35
39
43
81
95
70
34
38
42
82
96
69
33
37
41
83
97
68
32
36
40
84
96
67
31
35
39
85
95
66
30
34
38
86
87
88
89
90
91
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
65
29
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
87
84
64
28
24
38
88
83
63
27
23
39
89
82
62
26
22
40
90
81
61
25
21
41
91
80
60
24
20
42
92
79
59
23
19
43
93
78
58
22
18
44
94
77
57
21
17
43
95
76
56
20
16
42
96
75
55
19
15
41
97
74
54
18
14
40
98
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
39
99
66
42
30
4
38
100
67
43
31
3
37
101
68
44
32
2
36
102
69
45
33
1
35
103
70
46
34
0
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
122
123
123
122
121
120
119
118
117
116
115
114
113
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
101
109
121
112
100
92
100
108
120
111
99
91
99
107
119
110
98
90
98
106
118
109
97
89
97
105
117
108
96
88
96
104
116
107
95
87
95
103
115
106
94
86
94
102
114
105
93
85
93
101
113
104
92
84
92
100
112
103
91
83
91
99
111
102
90
82
90
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
81
89
77
91
111
100
82
68
80
88
76
92
111
99
83
67
79
87
75
93
110
98
84
66
78
86
74
94
109
97
85
65
77
85
73
95
108
96
86
64
76
84
72
96
107
95
87
63
75
83
71
97
106
94
88
62
74
82
81
80
79
78
77
76
75
74
73
72
71
70
98
105
93
89
61
62
63
64
65
66
67
68
69
70
71
72
73
69
99
104
92
88
60
68
100
103
91
87
59
67
101
102
90
86
58
66
102
101
89
85
57
65
103
100
88
84
56
64
104
99
87
83
55
63
105
98
86
82
54
62
106
105
104
103
102
101
100
99
98
99
100
101
102
103
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
53
61
97
72
52
60
96
71
51
59
95
70
50
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
94
69
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
47
59
93
68
50
36
48
60
92
67
51
35
49
61
91
66
52
34
50
62
90
65
53
33
51
63
89
64
54
32
52
64
88
63
55
31
53
65
87
62
56
30
54
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
29
55
76
87
62
48
28
56
77
88
63
47
27
57
78
89
64
46
26
58
79
90
65
45
25
59
80
91
66
44
24
60
81
92
67
43
23
61
82
93
68
42
22
62
83
94
67
41
21
63
84
95
66
40
20
64
85
96
65
39
19
65
86
97
64
38
18
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
98
63
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
67
79
98
62
30
16
68
80
97
61
31
15
69
81
96
60
32
14
70
82
95
59
33
13
71
83
94
58
34
12
72
84
93
57
35
11
73
85
92
56
36
10
74
86
91
55
37
9
75
87
90
54
38
8
76
88
89
53
39
7
77
89
88
52
40
6
78
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
43
42
41
5
79
99
76
64
38
4
80
100
77
65
37
3
81
101
78
66
36
2
82
102
79
67
35
1
83
103
80
68
34
0
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
114
115
116
117
118
119
120
121
122
123
124
124
123
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
93
101
113
122
110
102
92
100
112
121
109
101
91
99
111
120
108
100
90
98
110
119
107
99
89
97
109
118
106
98
88
96
108
117
105
97
87
95
107
116
104
96
86
94
106
115
103
95
85
93
105
114
102
94
84
92
104
113
101
93
83
91
103
112
100
92
82
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
91
81
69
83
101
112
92
78
90
80
68
84
100
112
93
77
89
79
67
85
99
111
94
76
88
78
66
86
98
110
95
75
87
77
65
87
97
109
96
74
86
76
64
88
96
108
97
73
85
75
63
89
95
107
98
72
84
74
73
72
71
70
69
68
67
66
65
64
63
62
90
94
106
99
71
72
73
74
75
76
77
78
79
80
81
82
83
61
89
93
105
100
70
60
88
92
104
101
69
59
87
91
103
102
68
58
86
90
102
103
67
57
85
89
101
104
66
56
84
88
100
105
65
55
83
87
99
106
64
54
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
104
103
102
101
100
99
100
101
102
103
104
105
106
107
63
53
73
98
62
52
72
97
61
51
71
96
60
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
70
95
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
37
51
69
94
60
48
36
52
68
93
61
49
35
53
67
92
62
50
34
54
66
91
63
51
33
55
65
90
64
52
32
56
64
89
65
53
31
57
63
88
66
54
30
58
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
55
29
50
63
88
76
56
28
49
64
89
77
57
27
48
65
90
78
58
26
47
66
91
79
59
25
46
67
92
80
60
24
45
68
93
81
61
23
44
67
94
82
62
22
43
66
95
83
63
21
42
65
96
84
64
20
41
64
97
85
65
19
40
63
98
86
66
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
62
98
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
17
31
61
97
80
68
16
32
60
96
81
69
15
33
59
95
82
70
14
34
58
94
83
71
13
35
57
93
84
72
12
36
56
92
85
73
11
37
55
91
86
74
10
38
54
90
87
75
9
39
53
89
88
76
8
40
52
88
89
77
7
41
51
87
90
78
6
42
43
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
79
5
37
63
75
99
80
4
36
64
76
100
81
3
35
65
77
101
82
2
34
66
78
102
83
1
33
67
79
103
84
0
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
94
95
96
97
98
99
100
101
102
103
104
105
106
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
136
135
134
133
132
131
130
129
128
127
126
125
124
123
107
97
93
105
117
122
106
96
92
104
116
121
105
95
91
103
115
120
104
94
90
102
114
119
103
93
89
101
113
118
102
92
88
100
112
117
101
91
87
99
111
116
100
90
86
98
110
115
99
89
85
97
109
114
98
88
84
96
108
113
97
87
83
95
107
112
96
84
85
86
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
112
111
110
109
108
107
106
105
104
103
102
101
100
99
111
95
83
77
81
93
112
98
110
94
82
76
80
92
112
97
109
93
81
75
79
91
111
96
108
92
80
74
78
90
110
95
107
91
79
73
77
89
109
94
106
90
78
72
76
88
108
93
105
89
77
71
75
87
107
92
104
88
87
86
85
84
83
82
81
80
79
78
77
76
70
74
86
106
91
92
93
94
95
96
97
98
99
100
101
102
103
75
69
73
85
105
90
74
68
72
84
104
89
73
67
71
83
103
88
72
66
70
82
102
87
71
65
69
81
101
86
70
64
68
80
100
85
69
63
67
79
99
84
68
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
83
67
53
89
82
66
52
88
81
65
51
87
80
62
61
60
59
58
59
60
61
62
63
64
65
66
67
66
65
64
50
86
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
57
63
49
85
80
68
56
62
48
84
81
69
55
61
47
83
82
70
54
60
46
82
83
71
53
59
45
81
84
72
52
58
44
80
85
73
51
57
43
79
86
74
50
56
55
54
53
52
51
50
49
48
47
48
49
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
92
91
90
89
88
87
75
49
46
41
77
91
76
48
45
40
76
92
77
47
44
39
75
93
78
46
43
38
74
94
79
45
42
37
73
95
80
44
41
36
72
96
81
43
40
35
71
97
82
42
39
34
70
98
83
41
38
33
69
97
84
40
37
32
68
96
85
39
36
31
67
95
86
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
30
66
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
92
91
90
89
88
87
39
25
29
65
85
88
40
24
28
64
84
89
41
23
27
63
83
90
42
22
26
62
82
91
43
21
25
61
81
92
44
20
24
60
80
93
43
19
23
59
79
94
42
18
22
58
78
95
41
17
21
57
77
96
40
16
20
56
76
97
39
15
19
55
75
98
38
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
99
37
5
31
43
67
100
36
4
32
44
68
101
35
3
33
45
69
102
34
2
34
46
70
103
33
1
35
47
71
104
32
0
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
94
95
96
97
98
99
100
101
102
103
104
105
106
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
113
97
93
105
109
125
112
96
92
104
108
124
111
95
91
103
107
123
110
94
90
102
106
122
109
93
89
101
105
121
108
92
88
100
104
120
107
91
87
99
103
119
106
90
86
98
102
118
105
89
85
97
101
117
104
88
84
96
100
116
103
87
83
95
99
115
102
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
114
101
89
77
81
93
89
101
113
100
88
76
80
92
88
100
112
99
87
75
79
91
87
99
111
98
86
74
78
90
86
98
110
97
85
73
77
89
85
97
109
96
84
72
76
88
84
96
108
95
83
71
75
87
83
95
107
94
93
92
91
90
89
88
87
86
85
84
83
82
70
74
86
82
94
95
96
97
98
99
100
101
102
103
104
105
106
81
69
73
85
81
93
80
68
72
84
80
92
79
67
71
83
79
91
78
66
70
82
78
90
77
65
69
81
77
89
76
64
68
80
76
88
75
63
67
79
75
87
74
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
86
73
53
65
85
72
52
64
84
71
51
63
83
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
50
62
82
83
84
85
86
87
88
89
90
91
92
92
91
90
89
88
87
81
69
49
61
81
92
80
68
48
60
80
92
79
67
47
59
79
91
78
66
46
58
78
90
77
65
45
57
77
89
76
64
44
56
76
88
75
63
43
55
75
87
74
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
86
73
54
41
53
67
85
72
55
40
52
68
84
71
56
39
51
69
83
70
57
38
50
70
82
69
58
37
49
71
81
68
59
36
48
72
80
67
60
35
47
73
79
66
61
34
46
74
78
65
62
33
45
73
77
64
61
32
44
72
76
63
60
31
43
71
75
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
30
42
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
63
49
29
41
61
75
64
48
28
40
60
76
65
47
27
39
59
77
66
46
26
38
58
78
67
45
25
37
57
79
68
44
24
36
56
80
69
43
23
35
55
81
70
42
22
34
54
82
71
41
21
33
53
83
72
40
20
32
52
84
73
39
19
31
51
85
74
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
86
73
31
5
19
43
85
72
32
4
20
44
84
71
33
3
21
45
83
70
34
2
22
46
82
69
35
1
23
47
81
68
36
0
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
106
105
104
103
102
101
100
99
98
97
96
95
94
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
125
109
105
93
97
113
124
108
104
92
96
112
123
107
103
91
95
111
122
106
102
90
94
110
121
105
101
89
93
109
120
104
100
88
92
108
119
103
99
87
91
107
118
102
98
86
90
106
117
101
97
85
89
105
116
100
96
84
88
104
115
99
95
83
87
103
114
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
102
113
101
89
93
81
77
89
101
112
100
88
92
80
76
88
100
111
99
87
91
79
75
87
99
110
98
86
90
78
74
86
98
109
97
85
89
77
73
85
97
108
96
84
88
76
72
84
96
107
95
83
87
75
71
83
95
106
105
104
103
102
101
100
99
98
97
96
95
94
82
86
74
70
82
83
84
85
86
87
88
89
90
91
92
93
94
93
81
85
73
69
81
92
80
84
72
68
80
91
79
83
71
67
79
90
78
82
70
66
78
89
77
81
69
65
77
88
76
80
68
64
76
87
75
79
67
63
75
86
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
74
85
65
53
73
84
64
52
72
83
63
51
71
87
88
89
90
91
92
92
91
90
89
88
87
86
85
84
83
82
62
50
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
92
81
61
49
69
81
92
80
60
48
68
80
91
79
59
47
67
79
90
78
58
46
66
78
89
77
57
45
65
77
88
76
56
44
64
76
87
75
55
43
63
75
86
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
74
85
66
53
41
55
73
84
67
52
40
56
72
83
68
51
39
57
71
82
69
50
38
58
70
81
70
49
37
59
69
80
71
48
36
60
68
79
72
47
35
61
67
78
73
46
34
62
66
77
74
45
33
61
65
76
73
44
32
60
64
75
72
43
31
59
63
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
42
30
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
75
61
41
29
49
63
76
60
40
28
48
64
77
59
39
27
47
65
78
58
38
26
46
66
79
57
37
25
45
67
80
56
36
24
44
68
81
55
35
23
43
69
82
54
34
22
42
70
83
53
33
21
41
71
84
52
32
20
40
72
85
51
31
19
39
73
86
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
74
85
43
19
5
31
73
84
44
20
4
32
72
83
45
21
3
33
71
82
46
22
2
34
70
81
47
23
1
35
69
80
48
24
0
123
124
125
126
127
128
129
130
131
132
133
134
135
136
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
106
105
104
103
102
101
100
99
98
97
96
95
94
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
122
117
105
93
97
105
121
116
104
92
96
104
120
115
103
91
95
103
119
114
102
90
94
102
118
113
101
89
93
101
117
112
100
88
92
100
116
111
99
87
91
99
115
110
98
86
90
98
114
109
97
85
89
97
113
108
96
84
88
96
112
107
95
83
87
95
111
99
100
101
102
103
104
105
106
107
108
109
110
111
112
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
85
84
83
82
94
110
98
112
93
81
77
81
93
109
97
112
92
80
76
80
92
108
96
111
91
79
75
79
91
107
95
110
90
78
74
78
90
106
94
109
89
77
73
77
89
105
93
108
88
76
72
76
88
104
92
107
87
75
71
75
87
103
102
101
100
99
98
97
96
95
94
93
92
91
106
86
74
70
74
75
76
77
78
79
80
81
82
83
84
85
86
90
105
85
73
69
73
89
104
84
72
68
72
88
103
83
71
67
71
87
102
82
70
66
70
86
101
81
69
65
69
85
100
80
68
64
68
84
99
79
67
63
67
83
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
66
82
89
53
65
81
88
52
64
80
87
51
63
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
86
50
62
63
64
65
66
65
64
63
62
61
60
59
58
59
60
61
62
68
80
85
49
61
57
69
81
84
48
60
56
70
82
83
47
59
55
71
83
82
46
58
54
72
84
81
45
57
53
73
85
80
44
56
52
74
86
79
43
55
51
75
87
88
89
90
91
92
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
49
48
47
46
47
48
49
50
51
52
53
54
50
76
90
77
41
45
49
77
91
76
40
44
48
78
92
75
39
43
47
79
93
74
38
42
46
80
94
73
37
41
45
81
95
72
36
40
44
82
96
71
35
39
43
83
97
70
34
38
42
84
98
69
33
37
41
85
97
68
32
36
40
86
96
67
31
35
39
87
88
89
90
91
92
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
66
30
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
88
85
65
29
25
39
89
84
64
28
24
40
90
83
63
27
23
41
91
82
62
26
22
42
92
81
61
25
21
43
93
80
60
24
20
44
94
79
59
23
19
43
95
78
58
22
18
42
96
77
57
21
17
41
97
76
56
20
16
40
98
75
55
19
15
39
99
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
38
100
67
43
31
5
37
101
68
44
32
4
36
102
69
45
33
3
35
103
70
46
34
2
34
104
71
47
35
1
33
104
72
48
36
0
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
123
124
124
123
122
121
120
119
118
117
116
115
114
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
102
110
122
113
101
93
101
109
121
112
100
92
100
108
120
111
99
91
99
107
119
110
98
90
98
106
118
109
97
89
97
105
117
108
96
88
96
104
116
107
95
87
95
103
115
106
94
86
94
102
114
105
93
85
93
101
113
104
92
84
92
100
112
103
91
83
91
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
82
90
78
92
112
101
83
69
81
89
77
93
112
100
84
68
80
88
76
94
111
99
85
67
79
87
75
95
110
98
86
66
78
86
74
96
109
97
87
65
77
85
73
97
108
96
88
64
76
84
72
98
107
95
89
63
75
83
82
81
80
79
78
77
76
75
74
73
72
71
99
106
94
90
62
63
64
65
66
67
68
69
70
71
72
73
74
70
100
105
93
89
61
69
101
104
92
88
60
68
102
103
91
87
59
67
103
102
90
86
58
66
104
101
89
85
57
65
105
100
88
84
56
64
106
99
87
83
55
63
107
106
105
104
103
102
101
100
99
100
101
102
103
104
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
54
62
98
73
53
61
97
72
52
60
96
71
51
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
95
70
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
48
60
94
69
51
37
49
61
93
68
52
36
50
62
92
67
53
35
51
63
91
66
54
34
52
64
90
65
55
33
53
65
89
64
56
32
54
66
88
63
57
31
55
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
30
56
77
88
63
49
29
57
78
89
64
48
28
58
79
90
65
47
27
59
80
91
66
46
26
60
81
92
67
45
25
61
82
93
68
44
24
62
83
94
67
43
23
63
84
95
66
42
22
64
85
96
65
41
21
65
86
97
64
40
20
66
87
98
63
39
19
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
98
62
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
68
80
97
61
31
17
69
81
96
60
32
16
70
82
95
59
33
15
71
83
94
58
34
14
72
84
93
57
35
13
73
85
92
56
36
12
74
86
91
55
37
11
75
87
90
54
38
10
76
88
89
53
39
9
77
89
88
52
40
8
78
90
87
51
41
7
79
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
43
42
6
80
99
75
63
37
5
81
100
76
64
36
4
82
101
77
65
35
3
83
102
78
66
34
2
84
103
79
67
33
1
85
104
80
68
32
0
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
115
116
117
118
119
120
121
122
123
124
125
125
124
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
94
102
114
123
111
103
93
101
113
122
110
102
92
100
112
121
109
101
91
99
111
120
108
100
90
98
110
119
107
99
89
97
109
118
106
98
88
96
108
117
105
97
87
95
107
116
104
96
86
94
106
115
103
95
85
93
105
114
102
94
84
92
104
113
101
93
83
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
92
82
70
84
102
113
93
79
91
81
69
85
101
113
94
78
90
80
68
86
100
112
95
77
89
79
67
87
99
111
96
76
88
78
66
88
98
110
97
75
87
77
65
89
97
109
98
74
86
76
64
90
96
108
99
73
85
75
74
73
72
71
70
69
68
67
66
65
64
63
91
95
107
100
72
73
74
75
76
77
78
79
80
81
82
83
84
62
90
94
106
101
71
61
89
93
105
102
70
60
88
92
104
103
69
59
87
91
103
104
68
58
86
90
102
105
67
57
85
89
101
106
66
56
84
88
100
107
65
55
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
105
104
103
102
101
100
101
102
103
104
105
106
107
108
64
54
74
99
63
53
73
98
62
52
72
97
61
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
71
96
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
38
52
70
95
61
49
37
53
69
94
62
50
36
54
68
93
63
51
35
55
67
92
64
52
34
56
66
91
65
53
33
57
65
90
66
54
32
58
64
89
67
55
31
59
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
56
30
51
64
89
77
57
29
50
65
90
78
58
28
49
66
91
79
59
27
48
67
92
80
60
26
47
68
93
81
61
25
46
67
94
82
62
24
45
66
95
83
63
23
44
65
96
84
64
22
43
64
97
85
65
21
42
63
98
86
66
20
41
62
98
87
67
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
61
97
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
18
32
60
96
81
69
17
33
59
95
82
70
16
34
58
94
83
71
15
35
57
93
84
72
14
36
56
92
85
73
13
37
55
91
86
74
12
38
54
90
87
75
11
39
53
89
88
76
10
40
52
88
89
77
9
41
51
87
90
78
8
42
50
86
91
79
7
43
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
80
6
36
62
74
98
81
5
35
63
75
99
82
4
34
64
76
100
83
3
33
65
77
101
84
2
32
66
78
102
85
1
31
67
79
103
86
0
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
95
96
97
98
99
100
101
102
103
104
105
106
107
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
137
136
135
134
133
132
131
130
129
128
127
126
125
124
108
98
94
106
118
123
107
97
93
105
117
122
106
96
92
104
116
121
105
95
91
103
115
120
104
94
90
102
114
119
103
93
89
101
113
118
102
92
88
100
112
117
101
91
87
99
111
116
100
90
86
98
110
115
99
89
85
97
109
114
98
88
84
96
108
113
97
85
86
87
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
112
96
84
78
82
94
113
99
111
95
83
77
81
93
113
98
110
94
82
76
80
92
112
97
109
93
81
75
79
91
111
96
108
92
80
74
78
90
110
95
107
91
79
73
77
89
109
94
106
90
78
72
76
88
108
93
105
89
88
87
86
85
84
83
82
81
80
79
78
77
71
75
87
107
92
93
94
95
96
97
98
99
100
101
102
103
104
76
70
74
86
106
91
75
69
73
85
105
90
74
68
72
84
104
89
73
67
71
83
103
88
72
66
70
82
102
87
71
65
69
81
101
86
70
64
68
80
100
85
69
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
84
68
54
90
83
67
53
89
82
66
52
88
81
63
62
61
60
59
60
61
62
63
64
65
66
67
68
67
66
65
51
87
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
58
64
50
86
81
69
57
63
49
85
82
70
56
62
48
84
83
71
55
61
47
83
84
72
54
60
46
82
85
73
53
59
45
81
86
74
52
58
44
80
87
75
51
57
56
55
54
53
52
51
50
49
48
49
50
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
76
50
47
42
78
92
77
49
46
41
77
93
78
48
45
40
76
94
79
47
44
39
75
95
80
46
43
38
74
96
81
45
42
37
73
97
82
44
41
36
72
98
83
43
40
35
71
99
84
42
39
34
70
98
85
41
38
33
69
97
86
40
37
32
68
96
87
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
31
67
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
93
92
91
90
89
88
40
26
30
66
86
89
41
25
29
65
85
90
42
24
28
64
84
91
43
23
27
63
83
92
44
22
26
62
82
93
43
21
25
61
81
94
42
20
24
60
80
95
41
19
23
59
79
96
40
18
22
58
78
97
39
17
21
57
77
98
38
16
20
56
76
99
37
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
100
36
6
32
44
68
101
35
5
33
45
69
102
34
4
34
46
70
103
33
3
35
47
71
104
32
2
36
48
72
105
31
1
37
49
73
105
30
0
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
95
96
97
98
99
100
101
102
103
104
105
106
107
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
114
98
94
106
110
126
113
97
93
105
109
125
112
96
92
104
108
124
111
95
91
103
107
123
110
94
90
102
106
122
109
93
89
101
105
121
108
92
88
100
104
120
107
91
87
99
103
119
106
90
86
98
102
118
105
89
85
97
101
117
104
88
84
96
100
116
103
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
115
102
90
78
82
94
90
102
114
101
89
77
81
93
89
101
113
100
88
76
80
92
88
100
112
99
87
75
79
91
87
99
111
98
86
74
78
90
86
98
110
97
85
73
77
89
85
97
109
96
84
72
76
88
84
96
108
95
94
93
92
91
90
89
88
87
86
85
84
83
71
75
87
83
95
96
97
98
99
100
101
102
103
104
105
106
107
82
70
74
86
82
94
81
69
73
85
81
93
80
68
72
84
80
92
79
67
71
83
79
91
78
66
70
82
78
90
77
65
69
81
77
89
76
64
68
80
76
88
75
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
87
74
54
66
86
73
53
65
85
72
52
64
84
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
51
63
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
82
70
50
62
82
93
81
69
49
61
81
93
80
68
48
60
80
92
79
67
47
59
79
91
78
66
46
58
78
90
77
65
45
57
77
89
76
64
44
56
76
88
75
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
87
74
55
42
54
68
86
73
56
41
53
69
85
72
57
40
52
70
84
71
58
39
51
71
83
70
59
38
50
72
82
69
60
37
49
73
81
68
61
36
48
74
80
67
62
35
47
75
79
66
63
34
46
74
78
65
62
33
45
73
77
64
61
32
44
72
76
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
31
43
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
64
50
30
42
62
76
65
49
29
41
61
77
66
48
28
40
60
78
67
47
27
39
59
79
68
46
26
38
58
80
69
45
25
37
57
81
70
44
24
36
56
82
71
43
23
35
55
83
72
42
22
34
54
84
73
41
21
33
53
85
74
40
20
32
52
86
75
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
87
74
32
6
20
44
86
73
33
5
21
45
85
72
34
4
22
46
84
71
35
3
23
47
83
70
36
2
24
48
82
69
37
1
25
49
81
68
38
0
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
107
106
105
104
103
102
101
100
99
98
97
96
95
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
126
110
106
94
98
114
125
109
105
93
97
113
124
108
104
92
96
112
123
107
103
91
95
111
122
106
102
90
94
110
121
105
101
89
93
109
120
104
100
88
92
108
119
103
99
87
91
107
118
102
98
86
90
106
117
101
97
85
89
105
116
100
96
84
88
104
115
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
103
114
102
90
94
82
78
90
102
113
101
89
93
81
77
89
101
112
100
88
92
80
76
88
100
111
99
87
91
79
75
87
99
110
98
86
90
78
74
86
98
109
97
85
89
77
73
85
97
108
96
84
88
76
72
84
96
107
106
105
104
103
102
101
100
99
98
97
96
95
83
87
75
71
83
84
85
86
87
88
89
90
91
92
93
94
95
94
82
86
74
70
82
93
81
85
73
69
81
92
80
84
72
68
80
91
79
83
71
67
79
90
78
82
70
66
78
89
77
81
69
65
77
88
76
80
68
64
76
87
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
75
86
66
54
74
85
65
53
73
84
64
52
72
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
63
51
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
93
82
62
50
70
82
93
81
61
49
69
81
92
80
60
48
68
80
91
79
59
47
67
79
90
78
58
46
66
78
89
77
57
45
65
77
88
76
56
44
64
76
87
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
75
86
67
54
42
56
74
85
68
53
41
57
73
84
69
52
40
58
72
83
70
51
39
59
71
82
71
50
38
60
70
81
72
49
37
61
69
80
73
48
36
62
68
79
74
47
35
63
67
78
75
46
34
62
66
77
74
45
33
61
65
76
73
44
32
60
64
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
43
31
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
76
62
42
30
50
64
77
61
41
29
49
65
78
60
40
28
48
66
79
59
39
27
47
67
80
58
38
26
46
68
81
57
37
25
45
69
82
56
36
24
44
70
83
55
35
23
43
71
84
54
34
22
42
72
85
53
33
21
41
73
86
52
32
20
40
74
87
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
75
86
44
20
6
32
74
85
45
21
5
33
73
84
46
22
4
34
72
83
47
23
3
35
71
82
48
24
2
36
70
81
49
25
1
37
69
80
50
26
0
124
125
126
127
128
129
130
131
132
133
134
135
136
137
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
107
106
105
104
103
102
101
100
99
98
97
96
95
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
123
118
106
94
98
106
122
117
105
93
97
105
121
116
104
92
96
104
120
115
103
91
95
103
119
114
102
90
94
102
118
113
101
89
93
101
117
112
100
88
92
100
116
111
99
87
91
99
115
110
98
86
90
98
114
109
97
85
89
97
113
108
96
84
88
96
112
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
86
85
84
83
95
111
99
113
94
82
78
82
94
110
98
113
93
81
77
81
93
109
97
112
92
80
76
80
92
108
96
111
91
79
75
79
91
107
95
110
90
78
74
78
90
106
94
109
89
77
73
77
89
105
93
108
88
76
72
76
88
104
103
102
101
100
99
98
97
96
95
94
93
92
107
87
75
71
75
76
77
78
79
80
81
82
83
84
85
86
87
91
106
86
74
70
74
90
105
85
73
69
73
89
104
84
72
68
72
88
103
83
71
67
71
87
102
82
70
66
70
86
101
81
69
65
69
85
100
80
68
64
68
84
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
67
83
90
54
66
82
89
53
65
81
88
52
64
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
87
51
63
64
65
66
67
66
65
64
63
62
61
60
59
60
61
62
63
69
81
86
50
62
58
70
82
85
49
61
57
71
83
84
48
60
56
72
84
83
47
59
55
73
85
82
46
58
54
74
86
81
45
57
53
75
87
80
44
56
52
76
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
50
49
48
47
48
49
50
51
52
53
54
55
51
77
91
78
42
46
50
78
92
77
41
45
49
79
93
76
40
44
48
80
94
75
39
43
47
81
95
74
38
42
46
82
96
73
37
41
45
83
97
72
36
40
44
84
98
71
35
39
43
85
99
70
34
38
42
86
98
69
33
37
41
87
97
68
32
36
40
88
89
90
91
92
93
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
67
31
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
89
86
66
30
26
40
90
85
65
29
25
41
91
84
64
28
24
42
92
83
63
27
23
43
93
82
62
26
22
44
94
81
61
25
21
43
95
80
60
24
20
42
96
79
59
23
19
41
97
78
58
22
18
40
98
77
57
21
17
39
99
76
56
20
16
38
100
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
37
101
68
44
32
6
36
102
69
45
33
5
35
103
70
46
34
4
34
104
71
47
35
3
33
105
72
48
36
2
32
105
73
49
37
1
31
104
74
50
38
0
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
124
125
125
124
123
122
121
120
119
118
117
116
115
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
103
111
123
114
102
94
102
110
122
113
101
93
101
109
121
112
100
92
100
108
120
111
99
91
99
107
119
110
98
90
98
106
118
109
97
89
97
105
117
108
96
88
96
104
116
107
95
87
95
103
115
106
94
86
94
102
114
105
93
85
93
101
113
104
92
84
92
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
83
91
79
93
113
102
84
70
82
90
78
94
113
101
85
69
81
89
77
95
112
100
86
68
80
88
76
96
111
99
87
67
79
87
75
97
110
98
88
66
78
86
74
98
109
97
89
65
77
85
73
99
108
96
90
64
76
84
83
82
81
80
79
78
77
76
75
74
73
72
100
107
95
91
63
64
65
66
67
68
69
70
71
72
73
74
75
71
101
106
94
90
62
70
102
105
93
89
61
69
103
104
92
88
60
68
104
103
91
87
59
67
105
102
90
86
58
66
106
101
89
85
57
65
107
100
88
84
56
64
108
107
106
105
104
103
102
101
100
101
102
103
104
105
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
55
63
99
74
54
62
98
73
53
61
97
72
52
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
96
71
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
49
61
95
70
52
38
50
62
94
69
53
37
51
63
93
68
54
36
52
64
92
67
55
35
53
65
91
66
56
34
54
66
90
65
57
33
55
67
89
64
58
32
56
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
31
57
78
89
64
50
30
58
79
90
65
49
29
59
80
91
66
48
28
60
81
92
67
47
27
61
82
93
68
46
26
62
83
94
67
45
25
63
84
95
66
44
24
64
85
96
65
43
23
65
86
97
64
42
22
66
87
98
63
41
21
67
88
98
62
40
20
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
97
61
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
69
81
96
60
32
18
70
82
95
59
33
17
71
83
94
58
34
16
72
84
93
57
35
15
73
85
92
56
36
14
74
86
91
55
37
13
75
87
90
54
38
12
76
88
89
53
39
11
77
89
88
52
40
10
78
90
87
51
41
9
79
91
86
50
42
8
80
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
43
7
81
98
74
62
36
6
82
99
75
63
35
5
83
100
76
64
34
4
84
101
77
65
33
3
85
102
78
66
32
2
86
103
79
67
31
1
87
104
80
68
30
0
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
116
117
118
119
120
121
122
123
124
125
126
126
125
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
95
103
115
124
112
104
94
102
114
123
111
103
93
101
113
122
110
102
92
100
112
121
109
101
91
99
111
120
108
100
90
98
110
119
107
99
89
97
109
118
106
98
88
96
108
117
105
97
87
95
107
116
104
96
86
94
106
115
103
95
85
93
105
114
102
94
84
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
93
83
71
85
103
114
94
80
92
82
70
86
102
114
95
79
91
81
69
87
101
113
96
78
90
80
68
88
100
112
97
77
89
79
67
89
99
111
98
76
88
78
66
90
98
110
99
75
87
77
65
91
97
109
100
74
86
76
75
74
73
72
71
70
69
68
67
66
65
64
92
96
108
101
73
74
75
76
77
78
79
80
81
82
83
84
85
63
91
95
107
102
72
62
90
94
106
103
71
61
89
93
105
104
70
60
88
92
104
105
69
59
87
91
103
106
68
58
86
90
102
107
67
57
85
89
101
108
66
56
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
102
103
104
105
106
107
108
109
65
55
75
100
64
54
74
99
63
53
73
98
62
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
72
97
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
39
53
71
96
62
50
38
54
70
95
63
51
37
55
69
94
64
52
36
56
68
93
65
53
35
57
67
92
66
54
34
58
66
91
67
55
33
59
65
90
68
56
32
60
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
57
31
52
65
90
78
58
30
51
66
91
79
59
29
50
67
92
80
60
28
49
68
93
81
61
27
48
67
94
82
62
26
47
66
95
83
63
25
46
65
96
84
64
24
45
64
97
85
65
23
44
63
98
86
66
22
43
62
98
87
67
21
42
61
97
88
68
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
60
96
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
19
33
59
95
82
70
18
34
58
94
83
71
17
35
57
93
84
72
16
36
56
92
85
73
15
37
55
91
86
74
14
38
54
90
87
75
13
39
53
89
88
76
12
40
52
88
89
77
11
41
51
87
90
78
10
42
50
86
91
79
9
43
49
85
92
80
8
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
81
7
35
61
73
97
82
6
34
62
74
98
83
5
33
63
75
99
84
4
32
64
76
100
85
3
31
65
77
101
86
2
30
66
78
102
87
1
29
67
79
103
88
0
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
96
97
98
99
100
101
102
103
104
105
106
107
108
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
138
137
136
135
134
133
132
131
130
129
128
127
126
125
109
99
95
107
119
124
108
98
94
106
118
123
107
97
93
105
117
122
106
96
92
104
116
121
105
95
91
103
115
120
104
94
90
102
114
119
103
93
89
101
113
118
102
92
88
100
112
117
101
91
87
99
111
116
100
90
86
98
110
115
99
89
85
97
109
114
98
86
87
88
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
114
113
112
111
110
109
108
107
106
105
104
103
102
101
113
97
85
79
83
95
114
100
112
96
84
78
82
94
114
99
111
95
83
77
81
93
113
98
110
94
82
76
80
92
112
97
109
93
81
75
79
91
111
96
108
92
80
74
78
90
110
95
107
91
79
73
77
89
109
94
106
90
89
88
87
86
85
84
83
82
81
80
79
78
72
76
88
108
93
94
95
96
97
98
99
100
101
102
103
104
105
77
71
75
87
107
92
76
70
74
86
106
91
75
69
73
85
105
90
74
68
72
84
104
89
73
67
71
83
103
88
72
66
70
82
102
87
71
65
69
81
101
86
70
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
85
69
55
91
84
68
54
90
83
67
53
89
82
64
63
62
61
60
61
62
63
64
65
66
67
68
69
68
67
66
52
88
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
59
65
51
87
82
70
58
64
50
86
83
71
57
63
49
85
84
72
56
62
48
84
85
73
55
61
47
83
86
74
54
60
46
82
87
75
53
59
45
81
88
76
52
58
57
56
55
54
53
52
51
50
49
50
51
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
77
51
48
43
79
93
78
50
47
42
78
94
79
49
46
41
77
95
80
48
45
40
76
96
81
47
44
39
75
97
82
46
43
38
74
98
83
45
42
37
73
99
84
44
41
36
72
100
85
43
40
35
71
99
86
42
39
34
70
98
87
41
38
33
69
97
88
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
32
68
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
94
93
92
91
90
89
41
27
31
67
87
90
42
26
30
66
86
91
43
25
29
65
85
92
44
24
28
64
84
93
43
23
27
63
83
94
42
22
26
62
82
95
41
21
25
61
81
96
40
20
24
60
80
97
39
19
23
59
79
98
38
18
22
58
78
99
37
17
21
57
77
100
36
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
101
35
7
33
45
69
102
34
6
34
46
70
103
33
5
35
47
71
104
32
4
36
48
72
105
31
3
37
49
73
106
30
2
38
50
74
106
29
1
39
51
75
105
28
0
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
96
97
98
99
100
101
102
103
104
105
106
107
108
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
115
99
95
107
111
127
114
98
94
106
110
126
113
97
93
105
109
125
112
96
92
104
108
124
111
95
91
103
107
123
110
94
90
102
106
122
109
93
89
101
105
121
108
92
88
100
104
120
107
91
87
99
103
119
106
90
86
98
102
118
105
89
85
97
101
117
104
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
116
103
91
79
83
95
91
103
115
102
90
78
82
94
90
102
114
101
89
77
81
93
89
101
113
100
88
76
80
92
88
100
112
99
87
75
79
91
87
99
111
98
86
74
78
90
86
98
110
97
85
73
77
89
85
97
109
96
95
94
93
92
91
90
89
88
87
86
85
84
72
76
88
84
96
97
98
99
100
101
102
103
104
105
106
107
108
83
71
75
87
83
95
82
70
74
86
82
94
81
69
73
85
81
93
80
68
72
84
80
92
79
67
71
83
79
91
78
66
70
82
78
90
77
65
69
81
77
89
76
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
88
75
55
67
87
74
54
66
86
73
53
65
85
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
52
64
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
83
71
51
63
83
94
82
70
50
62
82
94
81
69
49
61
81
93
80
68
48
60
80
92
79
67
47
59
79
91
78
66
46
58
78
90
77
65
45
57
77
89
76
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
88
75
56
43
55
69
87
74
57
42
54
70
86
73
58
41
53
71
85
72
59
40
52
72
84
71
60
39
51
73
83
70
61
38
50
74
82
69
62
37
49
75
81
68
63
36
48
76
80
67
64
35
47
75
79
66
63
34
46
74
78
65
62
33
45
73
77
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
32
44
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
65
51
31
43
63
77
66
50
30
42
62
78
67
49
29
41
61
79
68
48
28
40
60
80
69
47
27
39
59
81
70
46
26
38
58
82
71
45
25
37
57
83
72
44
24
36
56
84
73
43
23
35
55
85
74
42
22
34
54
86
75
41
21
33
53
87
76
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
88
75
33
7
21
45
87
74
34
6
22
46
86
73
35
5
23
47
85
72
36
4
24
48
84
71
37
3
25
49
83
70
38
2
26
50
82
69
39
1
27
51
81
68
40
0
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
108
107
106
105
104
103
102
101
100
99
98
97
96
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
127
111
107
95
99
115
126
110
106
94
98
114
125
109
105
93
97
113
124
108
104
92
96
112
123
107
103
91
95
111
122
106
102
90
94
110
121
105
101
89
93
109
120
104
100
88
92
108
119
103
99
87
91
107
118
102
98
86
90
106
117
101
97
85
89
105
116
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
104
115
103
91
95
83
79
91
103
114
102
90
94
82
78
90
102
113
101
89
93
81
77
89
101
112
100
88
92
80
76
88
100
111
99
87
91
79
75
87
99
110
98
86
90
78
74
86
98
109
97
85
89
77
73
85
97
108
107
106
105
104
103
102
101
100
99
98
97
96
84
88
76
72
84
85
86
87
88
89
90
91
92
93
94
95
96
95
83
87
75
71
83
94
82
86
74
70
82
93
81
85
73
69
81
92
80
84
72
68
80
91
79
83
71
67
79
90
78
82
70
66
78
89
77
81
69
65
77
88
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
76
87
67
55
75
86
66
54
74
85
65
53
73
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
64
52
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
94
83
63
51
71
83
94
82
62
50
70
82
93
81
61
49
69
81
92
80
60
48
68
80
91
79
59
47
67
79
90
78
58
46
66
78
89
77
57
45
65
77
88
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
76
87
68
55
43
57
75
86
69
54
42
58
74
85
70
53
41
59
73
84
71
52
40
60
72
83
72
51
39
61
71
82
73
50
38
62
70
81
74
49
37
63
69
80
75
48
36
64
68
79
76
47
35
63
67
78
75
46
34
62
66
77
74
45
33
61
65
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
44
32
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
77
63
43
31
51
65
78
62
42
30
50
66
79
61
41
29
49
67
80
60
40
28
48
68
81
59
39
27
47
69
82
58
38
26
46
70
83
57
37
25
45
71
84
56
36
24
44
72
85
55
35
23
43
73
86
54
34
22
42
74
87
53
33
21
41
75
88
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
76
87
45
21
7
33
75
86
46
22
6
34
74
85
47
23
5
35
73
84
48
24
4
36
72
83
49
25
3
37
71
82
50
26
2
38
70
81
51
27
1
39
69
80
52
28
0
125
126
127
128
129
130
131
132
133
134
135
136
137
138
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
108
107
106
105
104
103
102
101
100
99
98
97
96
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
124
119
107
95
99
107
123
118
106
94
98
106
122
117
105
93
97
105
121
116
104
92
96
104
120
115
103
91
95
103
119
114
102
90
94
102
118
113
101
89
93
101
117
112
100
88
92
100
116
111
99
87
91
99
115
110
98
86
90
98
114
109
97
85
89
97
113
101
102
103
104
105
106
107
108
109
110
111
112
113
114
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
87
86
85
84
96
112
100
114
95
83
79
83
95
111
99
114
94
82
78
82
94
110
98
113
93
81
77
81
93
109
97
112
92
80
76
80
92
108
96
111
91
79
75
79
91
107
95
110
90
78
74
78
90
106
94
109
89
77
73
77
89
105
104
103
102
101
100
99
98
97
96
95
94
93
108
88
76
72
76
77
78
79
80
81
82
83
84
85
86
87
88
92
107
87
75
71
75
91
106
86
74
70
74
90
105
85
73
69
73
89
104
84
72
68
72
88
103
83
71
67
71
87
102
82
70
66
70
86
101
81
69
65
69
85
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
68
84
91
55
67
83
90
54
66
82
89
53
65
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
88
52
64
65
66
67
68
67
66
65
64
63
62
61
60
61
62
63
64
70
82
87
51
63
59
71
83
86
50
62
58
72
84
85
49
61
57
73
85
84
48
60
56
74
86
83
47
59
55
75
87
82
46
58
54
76
88
81
45
57
53
77
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
51
50
49
48
49
50
51
52
53
54
55
56
52
78
92
79
43
47
51
79
93
78
42
46
50
80
94
77
41
45
49
81
95
76
40
44
48
82
96
75
39
43
47
83
97
74
38
42
46
84
98
73
37
41
45
85
99
72
36
40
44
86
100
71
35
39
43
87
99
70
34
38
42
88
98
69
33
37
41
89
90
91
92
93
94
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
68
32
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
90
87
67
31
27
41
91
86
66
30
26
42
92
85
65
29
25
43
93
84
64
28
24
44
94
83
63
27
23
43
95
82
62
26
22
42
96
81
61
25
21
41
97
80
60
24
20
40
98
79
59
23
19
39
99
78
58
22
18
38
100
77
57
21
17
37
101
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
36
102
69
45
33
7
35
103
70
46
34
6
34
104
71
47
35
5
33
105
72
48
36
4
32
106
73
49
37
3
31
106
74
50
38
2
30
105
75
51
39
1
29
104
76
52
40
0
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
125
126
126
125
124
123
122
121
120
119
118
117
116
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
104
112
124
115
103
95
103
111
123
114
102
94
102
110
122
113
101
93
101
109
121
112
100
92
100
108
120
111
99
91
99
107
119
110
98
90
98
106
118
109
97
89
97
105
117
108
96
88
96
104
116
107
95
87
95
103
115
106
94
86
94
102
114
105
93
85
93
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
84
92
80
94
114
103
85
71
83
91
79
95
114
102
86
70
82
90
78
96
113
101
87
69
81
89
77
97
112
100
88
68
80
88
76
98
111
99
89
67
79
87
75
99
110
98
90
66
78
86
74
100
109
97
91
65
77
85
84
83
82
81
80
79
78
77
76
75
74
73
101
108
96
92
64
65
66
67
68
69
70
71
72
73
74
75
76
72
102
107
95
91
63
71
103
106
94
90
62
70
104
105
93
89
61
69
105
104
92
88
60
68
106
103
91
87
59
67
107
102
90
86
58
66
108
101
89
85
57
65
109
108
107
106
105
104
103
102
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
56
64
100
75
55
63
99
74
54
62
98
73
53
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
97
72
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
50
62
96
71
53
39
51
63
95
70
54
38
52
64
94
69
55
37
53
65
93
68
56
36
54
66
92
67
57
35
55
67
91
66
58
34
56
68
90
65
59
33
57
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
32
58
79
90
65
51
31
59
80
91
66
50
30
60
81
92
67
49
29
61
82
93
68
48
28
62
83
94
67
47
27
63
84
95
66
46
26
64
85
96
65
45
25
65
86
97
64
44
24
66
87
98
63
43
23
67
88
98
62
42
22
68
89
97
61
41
21
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
96
60
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
70
82
95
59
33
19
71
83
94
58
34
18
72
84
93
57
35
17
73
85
92
56
36
16
74
86
91
55
37
15
75
87
90
54
38
14
76
88
89
53
39
13
77
89
88
52
40
12
78
90
87
51
41
11
79
91
86
50
42
10
80
92
85
49
43
9
81
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
8
82
97
73
61
35
7
83
98
74
62
34
6
84
99
75
63
33
5
85
100
76
64
32
4
86
101
77
65
31
3
87
102
78
66
30
2
88
103
79
67
29
1
89
104
80
68
28
0
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
117
118
119
120
121
122
123
124
125
126
127
127
126
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
96
104
116
125
113
105
95
103
115
124
112
104
94
102
114
123
111
103
93
101
113
122
110
102
92
100
112
121
109
101
91
99
111
120
108
100
90
98
110
119
107
99
89
97
109
118
106
98
88
96
108
117
105
97
87
95
107
116
104
96
86
94
106
115
103
95
85
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
94
84
72
86
104
115
95
81
93
83
71
87
103
115
96
80
92
82
70
88
102
114
97
79
91
81
69
89
101
113
98
78
90
80
68
90
100
112
99
77
89
79
67
91
99
111
100
76
88
78
66
92
98
110
101
75
87
77
76
75
74
73
72
71
70
69
68
67
66
65
93
97
109
102
74
75
76
77
78
79
80
81
82
83
84
85
86
64
92
96
108
103
73
63
91
95
107
104
72
62
90
94
106
105
71
61
89
93
105
106
70
60
88
92
104
107
69
59
87
91
103
108
68
58
86
90
102
109
67
57
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
107
106
105
104
103
102
103
104
105
106
107
108
109
110
66
56
76
101
65
55
75
100
64
54
74
99
63
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
73
98
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
40
54
72
97
63
51
39
55
71
96
64
52
38
56
70
95
65
53
37
57
69
94
66
54
36
58
68
93
67
55
35
59
67
92
68
56
34
60
66
91
69
57
33
61
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
58
32
53
66
91
79
59
31
52
67
92
80
60
30
51
68
93
81
61
29
50
67
94
82
62
28
49
66
95
83
63
27
48
65
96
84
64
26
47
64
97
85
65
25
46
63
98
86
66
24
45
62
98
87
67
23
44
61
97
88
68
22
43
60
96
89
69
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
59
95
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
20
34
58
94
83
71
19
35
57
93
84
72
18
36
56
92
85
73
17
37
55
91
86
74
16
38
54
90
87
75
15
39
53
89
88
76
14
40
52
88
89
77
13
41
51
87
90
78
12
42
50
86
91
79
11
43
49
85
92
80
10
44
48
84
93
81
9
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
82
8
34
60
72
96
83
7
33
61
73
97
84
6
32
62
74
98
85
5
31
63
75
99
86
4
30
64
76
100
87
3
29
65
77
101
88
2
28
66
78
102
89
1
27
67
79
103
90
0
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
97
98
99
100
101
102
103
104
105
106
107
108
109
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
139
138
137
136
135
134
133
132
131
130
129
128
127
126
110
100
96
108
120
125
109
99
95
107
119
124
108
98
94
106
118
123
107
97
93
105
117
122
106
96
92
104
116
121
105
95
91
103
115
120
104
94
90
102
114
119
103
93
89
101
113
118
102
92
88
100
112
117
101
91
87
99
111
116
100
90
86
98
110
115
99
87
88
89
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
115
114
113
112
111
110
109
108
107
106
105
104
103
102
114
98
86
80
84
96
115
101
113
97
85
79
83
95
115
100
112
96
84
78
82
94
114
99
111
95
83
77
81
93
113
98
110
94
82
76
80
92
112
97
109
93
81
75
79
91
111
96
108
92
80
74
78
90
110
95
107
91
90
89
88
87
86
85
84
83
82
81
80
79
73
77
89
109
94
95
96
97
98
99
100
101
102
103
104
105
106
78
72
76
88
108
93
77
71
75
87
107
92
76
70
74
86
106
91
75
69
73
85
105
90
74
68
72
84
104
89
73
67
71
83
103
88
72
66
70
82
102
87
71
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
86
70
56
92
85
69
55
91
84
68
54
90
83
65
64
63
62
61
62
63
64
65
66
67
68
69
70
69
68
67
53
89
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
60
66
52
88
83
71
59
65
51
87
84
72
58
64
50
86
85
73
57
63
49
85
86
74
56
62
48
84
87
75
55
61
47
83
88
76
54
60
46
82
89
77
53
59
58
57
56
55
54
53
52
51
50
51
52
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
95
94
93
92
91
90
78
52
49
44
80
94
79
51
48
43
79
95
80
50
47
42
78
96
81
49
46
41
77
97
82
48
45
40
76
98
83
47
44
39
75
99
84
46
43
38
74
100
85
45
42
37
73
101
86
44
41
36
72
100
87
43
40
35
71
99
88
42
39
34
70
98
89
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
33
69
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
95
94
93
92
91
90
42
28
32
68
88
91
43
27
31
67
87
92
44
26
30
66
86
93
43
25
29
65
85
94
42
24
28
64
84
95
41
23
27
63
83
96
40
22
26
62
82
97
39
21
25
61
81
98
38
20
24
60
80
99
37
19
23
59
79
100
36
18
22
58
78
101
35
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
102
34
8
34
46
70
103
33
7
35
47
71
104
32
6
36
48
72
105
31
5
37
49
73
106
30
4
38
50
74
107
29
3
39
51
75
107
28
2
40
52
76
106
27
1
41
53
77
105
26
0
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
97
98
99
100
101
102
103
104
105
106
107
108
109
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
116
100
96
108
112
128
115
99
95
107
111
127
114
98
94
106
110
126
113
97
93
105
109
125
112
96
92
104
108
124
111
95
91
103
107
123
110
94
90
102
106
122
109
93
89
101
105
121
108
92
88
100
104
120
107
91
87
99
103
119
106
90
86
98
102
118
105
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
117
104
92
80
84
96
92
104
116
103
91
79
83
95
91
103
115
102
90
78
82
94
90
102
114
101
89
77
81
93
89
101
113
100
88
76
80
92
88
100
112
99
87
75
79
91
87
99
111
98
86
74
78
90
86
98
110
97
96
95
94
93
92
91
90
89
88
87
86
85
73
77
89
85
97
98
99
100
101
102
103
104
105
106
107
108
109
84
72
76
88
84
96
83
71
75
87
83
95
82
70
74
86
82
94
81
69
73
85
81
93
80
68
72
84
80
92
79
67
71
83
79
91
78
66
70
82
78
90
77
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
89
76
56
68
88
75
55
67
87
74
54
66
86
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
53
65
85
86
87
88
89
90
91
92
93
94
95
95
94
93
92
91
90
84
72
52
64
84
95
83
71
51
63
83
95
82
70
50
62
82
94
81
69
49
61
81
93
80
68
48
60
80
92
79
67
47
59
79
91
78
66
46
58
78
90
77
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
89
76
57
44
56
70
88
75
58
43
55
71
87
74
59
42
54
72
86
73
60
41
53
73
85
72
61
40
52
74
84
71
62
39
51
75
83
70
63
38
50
76
82
69
64
37
49
77
81
68
65
36
48
76
80
67
64
35
47
75
79
66
63
34
46
74
78
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
33
45
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
66
52
32
44
64
78
67
51
31
43
63
79
68
50
30
42
62
80
69
49
29
41
61
81
70
48
28
40
60
82
71
47
27
39
59
83
72
46
26
38
58
84
73
45
25
37
57
85
74
44
24
36
56
86
75
43
23
35
55
87
76
42
22
34
54
88
77
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
89
76
34
8
22
46
88
75
35
7
23
47
87
74
36
6
24
48
86
73
37
5
25
49
85
72
38
4
26
50
84
71
39
3
27
51
83
70
40
2
28
52
82
69
41
1
29
53
81
68
42
0
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
109
108
107
106
105
104
103
102
101
100
99
98
97
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
128
112
108
96
100
116
127
111
107
95
99
115
126
110
106
94
98
114
125
109
105
93
97
113
124
108
104
92
96
112
123
107
103
91
95
111
122
106
102
90
94
110
121
105
101
89
93
109
120
104
100
88
92
108
119
103
99
87
91
107
118
102
98
86
90
106
117
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
105
116
104
92
96
84
80
92
104
115
103
91
95
83
79
91
103
114
102
90
94
82
78
90
102
113
101
89
93
81
77
89
101
112
100
88
92
80
76
88
100
111
99
87
91
79
75
87
99
110
98
86
90
78
74
86
98
109
108
107
106
105
104
103
102
101
100
99
98
97
85
89
77
73
85
86
87
88
89
90
91
92
93
94
95
96
97
96
84
88
76
72
84
95
83
87
75
71
83
94
82
86
74
70
82
93
81
85
73
69
81
92
80
84
72
68
80
91
79
83
71
67
79
90
78
82
70
66
78
89
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
77
88
68
56
76
87
67
55
75
86
66
54
74
90
91
92
93
94
95
95
94
93
92
91
90
89
88
87
86
85
65
53
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
95
84
64
52
72
84
95
83
63
51
71
83
94
82
62
50
70
82
93
81
61
49
69
81
92
80
60
48
68
80
91
79
59
47
67
79
90
78
58
46
66
78
89
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
77
88
69
56
44
58
76
87
70
55
43
59
75
86
71
54
42
60
74
85
72
53
41
61
73
84
73
52
40
62
72
83
74
51
39
63
71
82
75
50
38
64
70
81
76
49
37
65
69
80
77
48
36
64
68
79
76
47
35
63
67
78
75
46
34
62
66
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
45
33
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
78
64
44
32
52
66
79
63
43
31
51
67
80
62
42
30
50
68
81
61
41
29
49
69
82
60
40
28
48
70
83
59
39
27
47
71
84
58
38
26
46
72
85
57
37
25
45
73
86
56
36
24
44
74
87
55
35
23
43
75
88
54
34
22
42
76
89
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
77
88
46
22
8
34
76
87
47
23
7
35
75
86
48
24
6
36
74
85
49
25
5
37
73
84
50
26
4
38
72
83
51
27
3
39
71
82
52
28
2
40
70
81
53
29
1
41
69
80
54
30
0
126
127
128
129
130
131
132
133
134
135
136
137
138
139
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
109
108
107
106
105
104
103
102
101
100
99
98
97
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
125
120
108
96
100
108
124
119
107
95
99
107
123
118
106
94
98
106
122
117
105
93
97
105
121
116
104
92
96
104
120
115
103
91
95
103
119
114
102
90
94
102
118
113
101
89
93
101
117
112
100
88
92
100
116
111
99
87
91
99
115
110
98
86
90
98
114
102
103
104
105
106
107
108
109
110
111
112
113
114
115
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
88
87
86
85
97
113
101
115
96
84
80
84
96
112
100
115
95
83
79
83
95
111
99
114
94
82
78
82
94
110
98
113
93
81
77
81
93
109
97
112
92
80
76
80
92
108
96
111
91
79
75
79
91
107
95
110
90
78
74
78
90
106
105
104
103
102
101
100
99
98
97
96
95
94
109
89
77
73
77
78
79
80
81
82
83
84
85
86
87
88
89
93
108
88
76
72
76
92
107
87
75
71
75
91
106
86
74
70
74
90
105
85
73
69
73
89
104
84
72
68
72
88
103
83
71
67
71
87
102
82
70
66
70
86
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
69
85
92
56
68
84
91
55
67
83
90
54
66
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
89
53
65
66
67
68
69
68
67
66
65
64
63
62
61
62
63
64
65
71
83
88
52
64
60
72
84
87
51
63
59
73
85
86
50
62
58
74
86
85
49
61
57
75
87
84
48
60
56
76
88
83
47
59
55
77
89
82
46
58
54
78
90
91
92
93
94
95
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
52
51
50
49
50
51
52
53
54
55
56
57
53
79
93
80
44
48
52
80
94
79
43
47
51
81
95
78
42
46
50
82
96
77
41
45
49
83
97
76
40
44
48
84
98
75
39
43
47
85
99
74
38
42
46
86
100
73
37
41
45
87
101
72
36
40
44
88
100
71
35
39
43
89
99
70
34
38
42
90
91
92
93
94
95
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
69
33
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
91
88
68
32
28
42
92
87
67
31
27
43
93
86
66
30
26
44
94
85
65
29
25
43
95
84
64
28
24
42
96
83
63
27
23
41
97
82
62
26
22
40
98
81
61
25
21
39
99
80
60
24
20
38
100
79
59
23
19
37
101
78
58
22
18
36
102
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
35
103
70
46
34
8
34
104
71
47
35
7
33
105
72
48
36
6
32
106
73
49
37
5
31
107
74
50
38
4
30
107
75
51
39
3
29
106
76
52
40
2
28
105
77
53
41
1
27
104
78
54
42
0
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
126
127
127
126
125
124
123
122
121
120
119
118
117
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
105
113
125
116
104
96
104
112
124
115
103
95
103
111
123
114
102
94
102
110
122
113
101
93
101
109
121
112
100
92
100
108
120
111
99
91
99
107
119
110
98
90
98
106
118
109
97
89
97
105
117
108
96
88
96
104
116
107
95
87
95
103
115
106
94
86
94
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
85
93
81
95
115
104
86
72
84
92
80
96
115
103
87
71
83
91
79
97
114
102
88
70
82
90
78
98
113
101
89
69
81
89
77
99
112
100
90
68
80
88
76
100
111
99
91
67
79
87
75
101
110
98
92
66
78
86
85
84
83
82
81
80
79
78
77
76
75
74
102
109
97
93
65
66
67
68
69
70
71
72
73
74
75
76
77
73
103
108
96
92
64
72
104
107
95
91
63
71
105
106
94
90
62
70
106
105
93
89
61
69
107
104
92
88
60
68
108
103
91
87
59
67
109
102
90
86
58
66
110
109
108
107
106
105
104
103
102
103
104
105
106
107
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
57
65
101
76
56
64
100
75
55
63
99
74
54
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
98
73
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
51
63
97
72
54
40
52
64
96
71
55
39
53
65
95
70
56
38
54
66
94
69
57
37
55
67
93
68
58
36
56
68
92
67
59
35
57
69
91
66
60
34
58
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
33
59
80
91
66
52
32
60
81
92
67
51
31
61
82
93
68
50
30
62
83
94
67
49
29
63
84
95
66
48
28
64
85
96
65
47
27
65
86
97
64
46
26
66
87
98
63
45
25
67
88
98
62
44
24
68
89
97
61
43
23
69
90
96
60
42
22
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
95
59
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
71
83
94
58
34
20
72
84
93
57
35
19
73
85
92
56
36
18
74
86
91
55
37
17
75
87
90
54
38
16
76
88
89
53
39
15
77
89
88
52
40
14
78
90
87
51
41
13
79
91
86
50
42
12
80
92
85
49
43
11
81
93
84
48
44
10
82
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
9
83
96
72
60
34
8
84
97
73
61
33
7
85
98
74
62
32
6
86
99
75
63
31
5
87
100
76
64
30
4
88
101
77
65
29
3
89
102
78
66
28
2
90
103
79
67
27
1
91
104
80
68
26
0
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
118
119
120
121
122
123
124
125
126
127
128
128
127
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
97
105
117
126
114
106
96
104
116
125
113
105
95
103
115
124
112
104
94
102
114
123
111
103
93
101
113
122
110
102
92
100
112
121
109
101
91
99
111
120
108
100
90
98
110
119
107
99
89
97
109
118
106
98
88
96
108
117
105
97
87
95
107
116
104
96
86
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
95
85
73
87
105
116
96
82
94
84
72
88
104
116
97
81
93
83
71
89
103
115
98
80
92
82
70
90
102
114
99
79
91
81
69
91
101
113
100
78
90
80
68
92
100
112
101
77
89
79
67
93
99
111
102
76
88
78
77
76
75
74
73
72
71
70
69
68
67
66
94
98
110
103
75
76
77
78
79
80
81
82
83
84
85
86
87
65
93
97
109
104
74
64
92
96
108
105
73
63
91
95
107
106
72
62
90
94
106
107
71
61
89
93
105
108
70
60
88
92
104
109
69
59
87
91
103
110
68
58
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
108
107
106
105
104
103
104
105
106
107
108
109
110
111
67
57
77
102
66
56
76
101
65
55
75
100
64
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
74
99
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
41
55
73
98
64
52
40
56
72
97
65
53
39
57
71
96
66
54
38
58
70
95
67
55
37
59
69
94
68
56
36
60
68
93
69
57
35
61
67
92
70
58
34
62
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
59
33
54
67
92
80
60
32
53
68
93
81
61
31
52
67
94
82
62
30
51
66
95
83
63
29
50
65
96
84
64
28
49
64
97
85
65
27
48
63
98
86
66
26
47
62
98
87
67
25
46
61
97
88
68
24
45
60
96
89
69
23
44
59
95
90
70
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
58
94
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
21
35
57
93
84
72
20
36
56
92
85
73
19
37
55
91
86
74
18
38
54
90
87
75
17
39
53
89
88
76
16
40
52
88
89
77
15
41
51
87
90
78
14
42
50
86
91
79
13
43
49
85
92
80
12
44
48
84
93
81
11
43
47
83
94
82
10
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
83
9
33
59
71
95
84
8
32
60
72
96
85
7
31
61
73
97
86
6
30
62
74
98
87
5
29
63
75
99
88
4
28
64
76
100
89
3
27
65
77
101
90
2
26
66
78
102
91
1
25
67
79
103
92
0
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
98
99
100
101
102
103
104
105
106
107
108
109
110
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
140
139
138
137
136
135
134
133
132
131
130
129
128
127
111
101
97
109
121
126
110
100
96
108
120
125
109
99
95
107
119
124
108
98
94
106
118
123
107
97
93
105
117
122
106
96
92
104
116
121
105
95
91
103
115
120
104
94
90
102
114
119
103
93
89
101
113
118
102
92
88
100
112
117
101
91
87
99
111
116
100
88
89
90
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
116
115
114
113
112
111
110
109
108
107
106
105
104
103
115
99
87
81
85
97
116
102
114
98
86
80
84
96
116
101
113
97
85
79
83
95
115
100
112
96
84
78
82
94
114
99
111
95
83
77
81
93
113
98
110
94
82
76
80
92
112
97
109
93
81
75
79
91
111
96
108
92
91
90
89
88
87
86
85
84
83
82
81
80
74
78
90
110
95
96
97
98
99
100
101
102
103
104
105
106
107
79
73
77
89
109
94
78
72
76
88
108
93
77
71
75
87
107
92
76
70
74
86
106
91
75
69
73
85
105
90
74
68
72
84
104
89
73
67
71
83
103
88
72
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
87
71
57
93
86
70
56
92
85
69
55
91
84
66
65
64
63
62
63
64
65
66
67
68
69
70
71
70
69
68
54
90
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
61
67
53
89
84
72
60
66
52
88
85
73
59
65
51
87
86
74
58
64
50
86
87
75
57
63
49
85
88
76
56
62
48
84
89
77
55
61
47
83
90
78
54
60
59
58
57
56
55
54
53
52
51
52
53
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
96
95
94
93
92
91
79
53
50
45
81
95
80
52
49
44
80
96
81
51
48
43
79
97
82
50
47
42
78
98
83
49
46
41
77
99
84
48
45
40
76
100
85
47
44
39
75
101
86
46
43
38
74
102
87
45
42
37
73
101
88
44
41
36
72
100
89
43
40
35
71
99
90
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
34
70
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
96
95
94
93
92
91
43
29
33
69
89
92
44
28
32
68
88
93
43
27
31
67
87
94
42
26
30
66
86
95
41
25
29
65
85
96
40
24
28
64
84
97
39
23
27
63
83
98
38
22
26
62
82
99
37
21
25
61
81
100
36
20
24
60
80
101
35
19
23
59
79
102
34
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
103
33
9
35
47
71
104
32
8
36
48
72
105
31
7
37
49
73
106
30
6
38
50
74
107
29
5
39
51
75
108
28
4
40
52
76
108
27
3
41
53
77
107
26
2
42
54
78
106
25
1
43
55
79
105
24
0
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
98
99
100
101
102
103
104
105
106
107
108
109
110
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
117
101
97
109
113
129
116
100
96
108
112
128
115
99
95
107
111
127
114
98
94
106
110
126
113
97
93
105
109
125
112
96
92
104
108
124
111
95
91
103
107
123
110
94
90
102
106
122
109
93
89
101
105
121
108
92
88
100
104
120
107
91
87
99
103
119
106
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
118
105
93
81
85
97
93
105
117
104
92
80
84
96
92
104
116
103
91
79
83
95
91
103
115
102
90
78
82
94
90
102
114
101
89
77
81
93
89
101
113
100
88
76
80
92
88
100
112
99
87
75
79
91
87
99
111
98
97
96
95
94
93
92
91
90
89
88
87
86
74
78
90
86
98
99
100
101
102
103
104
105
106
107
108
109
110
85
73
77
89
85
97
84
72
76
88
84
96
83
71
75
87
83
95
82
70
74
86
82
94
81
69
73
85
81
93
80
68
72
84
80
92
79
67
71
83
79
91
78
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
90
77
57
69
89
76
56
68
88
75
55
67
87
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
54
66
86
87
88
89
90
91
92
93
94
95
96
96
95
94
93
92
91
85
73
53
65
85
96
84
72
52
64
84
96
83
71
51
63
83
95
82
70
50
62
82
94
81
69
49
61
81
93
80
68
48
60
80
92
79
67
47
59
79
91
78
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
90
77
58
45
57
71
89
76
59
44
56
72
88
75
60
43
55
73
87
74
61
42
54
74
86
73
62
41
53
75
85
72
63
40
52
76
84
71
64
39
51
77
83
70
65
38
50
78
82
69
66
37
49
77
81
68
65
36
48
76
80
67
64
35
47
75
79
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
34
46
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
67
53
33
45
65
79
68
52
32
44
64
80
69
51
31
43
63
81
70
50
30
42
62
82
71
49
29
41
61
83
72
48
28
40
60
84
73
47
27
39
59
85
74
46
26
38
58
86
75
45
25
37
57
87
76
44
24
36
56
88
77
43
23
35
55
89
78
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
90
77
35
9
23
47
89
76
36
8
24
48
88
75
37
7
25
49
87
74
38
6
26
50
86
73
39
5
27
51
85
72
40
4
28
52
84
71
41
3
29
53
83
70
42
2
30
54
82
69
43
1
31
55
81
68
44
0
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
110
109
108
107
106
105
104
103
102
101
100
99
98
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
129
113
109
97
101
117
128
112
108
96
100
116
127
111
107
95
99
115
126
110
106
94
98
114
125
109
105
93
97
113
124
108
104
92
96
112
123
107
103
91
95
111
122
106
102
90
94
110
121
105
101
89
93
109
120
104
100
88
92
108
119
103
99
87
91
107
118
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
106
117
105
93
97
85
81
93
105
116
104
92
96
84
80
92
104
115
103
91
95
83
79
91
103
114
102
90
94
82
78
90
102
113
101
89
93
81
77
89
101
112
100
88
92
80
76
88
100
111
99
87
91
79
75
87
99
110
109
108
107
106
105
104
103
102
101
100
99
98
86
90
78
74
86
87
88
89
90
91
92
93
94
95
96
97
98
97
85
89
77
73
85
96
84
88
76
72
84
95
83
87
75
71
83
94
82
86
74
70
82
93
81
85
73
69
81
92
80
84
72
68
80
91
79
83
71
67
79
90
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
78
89
69
57
77
88
68
56
76
87
67
55
75
91
92
93
94
95
96
96
95
94
93
92
91
90
89
88
87
86
66
54
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
96
85
65
53
73
85
96
84
64
52
72
84
95
83
63
51
71
83
94
82
62
50
70
82
93
81
61
49
69
81
92
80
60
48
68
80
91
79
59
47
67
79
90
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
78
89
70
57
45
59
77
88
71
56
44
60
76
87
72
55
43
61
75
86
73
54
42
62
74
85
74
53
41
63
73
84
75
52
40
64
72
83
76
51
39
65
71
82
77
50
38
66
70
81
78
49
37
65
69
80
77
48
36
64
68
79
76
47
35
63
67
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
46
34
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
79
65
45
33
53
67
80
64
44
32
52
68
81
63
43
31
51
69
82
62
42
30
50
70
83
61
41
29
49
71
84
60
40
28
48
72
85
59
39
27
47
73
86
58
38
26
46
74
87
57
37
25
45
75
88
56
36
24
44
76
89
55
35
23
43
77
90
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
78
89
47
23
9
35
77
88
48
24
8
36
76
87
49
25
7
37
75
86
50
26
6
38
74
85
51
27
5
39
73
84
52
28
4
40
72
83
53
29
3
41
71
82
54
30
2
42
70
81
55
31
1
43
69
80
56
32
0
127
128
129
130
131
132
133
134
135
136
137
138
139
140
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
110
109
108
107
106
105
104
103
102
101
100
99
98
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
126
121
109
97
101
109
125
120
108
96
100
108
124
119
107
95
99
107
123
118
106
94
98
106
122
117
105
93
97
105
121
116
104
92
96
104
120
115
103
91
95
103
119
114
102
90
94
102
118
113
101
89
93
101
117
112
100
88
92
100
116
111
99
87
91
99
115
103
104
105
106
107
108
109
110
111
112
113
114
115
116
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
89
88
87
86
98
114
102
116
97
85
81
85
97
113
101
116
96
84
80
84
96
112
100
115
95
83
79
83
95
111
99
114
94
82
78
82
94
110
98
113
93
81
77
81
93
109
97
112
92
80
76
80
92
108
96
111
91
79
75
79
91
107
106
105
104
103
102
101
100
99
98
97
96
95
110
90
78
74
78
79
80
81
82
83
84
85
86
87
88
89
90
94
109
89
77
73
77
93
108
88
76
72
76
92
107
87
75
71
75
91
106
86
74
70
74
90
105
85
73
69
73
89
104
84
72
68
72
88
103
83
71
67
71
87
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
70
86
93
57
69
85
92
56
68
84
91
55
67
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
90
54
66
67
68
69
70
69
68
67
66
65
64
63
62
63
64
65
66
72
84
89
53
65
61
73
85
88
52
64
60
74
86
87
51
63
59
75
87
86
50
62
58
76
88
85
49
61
57
77
89
84
48
60
56
78
90
83
47
59
55
79
91
92
93
94
95
96
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
53
52
51
50
51
52
53
54
55
56
57
58
54
80
94
81
45
49
53
81
95
80
44
48
52
82
96
79
43
47
51
83
97
78
42
46
50
84
98
77
41
45
49
85
99
76
40
44
48
86
100
75
39
43
47
87
101
74
38
42
46
88
102
73
37
41
45
89
101
72
36
40
44
90
100
71
35
39
43
91
92
93
94
95
96
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
70
34
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
92
89
69
33
29
43
93
88
68
32
28
44
94
87
67
31
27
43
95
86
66
30
26
42
96
85
65
29
25
41
97
84
64
28
24
40
98
83
63
27
23
39
99
82
62
26
22
38
100
81
61
25
21
37
101
80
60
24
20
36
102
79
59
23
19
35
103
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
34
104
71
47
35
9
33
105
72
48
36
8
32
106
73
49
37
7
31
107
74
50
38
6
30
108
75
51
39
5
29
108
76
52
40
4
28
107
77
53
41
3
27
106
78
54
42
2
26
105
79
55
43
1
25
104
80
56
44
0
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
127
128
128
127
126
125
124
123
122
121
120
119
118
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
106
114
126
117
105
97
105
113
125
116
104
96
104
112
124
115
103
95
103
111
123
114
102
94
102
110
122
113
101
93
101
109
121
112
100
92
100
108
120
111
99
91
99
107
119
110
98
90
98
106
118
109
97
89
97
105
117
108
96
88
96
104
116
107
95
87
95
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
86
94
82
96
116
105
87
73
85
93
81
97
116
104
88
72
84
92
80
98
115
103
89
71
83
91
79
99
114
102
90
70
82
90
78
100
113
101
91
69
81
89
77
101
112
100
92
68
80
88
76
102
111
99
93
67
79
87
86
85
84
83
82
81
80
79
78
77
76
75
103
110
98
94
66
67
68
69
70
71
72
73
74
75
76
77
78
74
104
109
97
93
65
73
105
108
96
92
64
72
106
107
95
91
63
71
107
106
94
90
62
70
108
105
93
89
61
69
109
104
92
88
60
68
110
103
91
87
59
67
111
110
109
108
107
106
105
104
103
104
105
106
107
108
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
58
66
102
77
57
65
101
76
56
64
100
75
55
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
99
74
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
52
64
98
73
55
41
53
65
97
72
56
40
54
66
96
71
57
39
55
67
95
70
58
38
56
68
94
69
59
37
57
69
93
68
60
36
58
70
92
67
61
35
59
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
34
60
81
92
67
53
33
61
82
93
68
52
32
62
83
94
67
51
31
63
84
95
66
50
30
64
85
96
65
49
29
65
86
97
64
48
28
66
87
98
63
47
27
67
88
98
62
46
26
68
89
97
61
45
25
69
90
96
60
44
24
70
91
95
59
43
23
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
94
58
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
72
84
93
57
35
21
73
85
92
56
36
20
74
86
91
55
37
19
75
87
90
54
38
18
76
88
89
53
39
17
77
89
88
52
40
16
78
90
87
51
41
15
79
91
86
50
42
14
80
92
85
49
43
13
81
93
84
48
44
12
82
94
83
47
43
11
83
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
10
84
95
71
59
33
9
85
96
72
60
32
8
86
97
73
61
31
7
87
98
74
62
30
6
88
99
75
63
29
5
89
100
76
64
28
4
90
101
77
65
27
3
91
102
78
66
26
2
92
103
79
67
25
1
93
104
80
68
24
0
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
119
120
121
122
123
124
125
126
127
128
129
129
128
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
98
106
118
127
115
107
97
105
117
126
114
106
96
104
116
125
113
105
95
103
115
124
112
104
94
102
114
123
111
103
93
101
113
122
110
102
92
100
112
121
109
101
91
99
111
120
108
100
90
98
110
119
107
99
89
97
109
118
106
98
88
96
108
117
105
97
87
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
96
86
74
88
106
117
97
83
95
85
73
89
105
117
98
82
94
84
72
90
104
116
99
81
93
83
71
91
103
115
100
80
92
82
70
92
102
114
101
79
91
81
69
93
101
113
102
78
90
80
68
94
100
112
103
77
89
79
78
77
76
75
74
73
72
71
70
69
68
67
95
99
111
104
76
77
78
79
80
81
82
83
84
85
86
87
88
66
94
98
110
105
75
65
93
97
109
106
74
64
92
96
108
107
73
63
91
95
107
108
72
62
90
94
106
109
71
61
89
93
105
110
70
60
88
92
104
111
69
59
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
109
108
107
106
105
104
105
106
107
108
109
110
111
112
68
58
78
103
67
57
77
102
66
56
76
101
65
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
75
100
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
42
56
74
99
65
53
41
57
73
98
66
54
40
58
72
97
67
55
39
59
71
96
68
56
38
60
70
95
69
57
37
61
69
94
70
58
36
62
68
93
71
59
35
63
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
60
34
55
68
93
81
61
33
54
67
94
82
62
32
53
66
95
83
63
31
52
65
96
84
64
30
51
64
97
85
65
29
50
63
98
86
66
28
49
62
98
87
67
27
48
61
97
88
68
26
47
60
96
89
69
25
46
59
95
90
70
24
45
58
94
91
71
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
57
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
22
36
56
92
85
73
21
37
55
91
86
74
20
38
54
90
87
75
19
39
53
89
88
76
18
40
52
88
89
77
17
41
51
87
90
78
16
42
50
86
91
79
15
43
49
85
92
80
14
44
48
84
93
81
13
43
47
83
94
82
12
42
46
82
95
83
11
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
84
10
32
58
70
94
85
9
31
59
71
95
86
8
30
60
72
96
87
7
29
61
73
97
88
6
28
62
74
98
89
5
27
63
75
99
90
4
26
64
76
100
91
3
25
65
77
101
92
2
24
66
78
102
93
1
23
67
79
103
94
0
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
99
100
101
102
103
104
105
106
107
108
109
110
111
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
141
140
139
138
137
136
135
134
133
132
131
130
129
128
112
102
98
110
122
127
111
101
97
109
121
126
110
100
96
108
120
125
109
99
95
107
119
124
108
98
94
106
118
123
107
97
93
105
117
122
106
96
92
104
116
121
105
95
91
103
115
120
104
94
90
102
114
119
103
93
89
101
113
118
102
92
88
100
112
117
101
89
90
91
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
117
116
115
114
113
112
111
110
109
108
107
106
105
104
116
100
88
82
86
98
117
103
115
99
87
81
85
97
117
102
114
98
86
80
84
96
116
101
113
97
85
79
83
95
115
100
112
96
84
78
82
94
114
99
111
95
83
77
81
93
113
98
110
94
82
76
80
92
112
97
109
93
92
91
90
89
88
87
86
85
84
83
82
81
75
79
91
111
96
97
98
99
100
101
102
103
104
105
106
107
108
80
74
78
90
110
95
79
73
77
89
109
94
78
72
76
88
108
93
77
71
75
87
107
92
76
70
74
86
106
91
75
69
73
85
105
90
74
68
72
84
104
89
73
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
88
72
58
94
87
71
57
93
86
70
56
92
85
67
66
65
64
63
64
65
66
67
68
69
70
71
72
71
70
69
55
91
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
62
68
54
90
85
73
61
67
53
89
86
74
60
66
52
88
87
75
59
65
51
87
88
76
58
64
50
86
89
77
57
63
49
85
90
78
56
62
48
84
91
79
55
61
60
59
58
57
56
55
54
53
52
53
54
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
97
96
95
94
93
92
80
54
51
46
82
96
81
53
50
45
81
97
82
52
49
44
80
98
83
51
48
43
79
99
84
50
47
42
78
100
85
49
46
41
77
101
86
48
45
40
76
102
87
47
44
39
75
103
88
46
43
38
74
102
89
45
42
37
73
101
90
44
41
36
72
100
91
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
35
71
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
97
96
95
94
93
92
44
30
34
70
90
93
43
29
33
69
89
94
42
28
32
68
88
95
41
27
31
67
87
96
40
26
30
66
86
97
39
25
29
65
85
98
38
24
28
64
84
99
37
23
27
63
83
100
36
22
26
62
82
101
35
21
25
61
81
102
34
20
24
60
80
103
33
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
104
32
10
36
48
72
105
31
9
37
49
73
106
30
8
38
50
74
107
29
7
39
51
75
108
28
6
40
52
76
109
27
5
41
53
77
109
26
4
42
54
78
108
25
3
43
55
79
107
24
2
44
56
80
106
23
1
45
57
81
105
22
0
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
99
100
101
102
103
104
105
106
107
108
109
110
111
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
118
102
98
110
114
130
117
101
97
109
113
129
116
100
96
108
112
128
115
99
95
107
111
127
114
98
94
106
110
126
113
97
93
105
109
125
112
96
92
104
108
124
111
95
91
103
107
123
110
94
90
102
106
122
109
93
89
101
105
121
108
92
88
100
104
120
107
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
119
106
94
82
86
98
94
106
118
105
93
81
85
97
93
105
117
104
92
80
84
96
92
104
116
103
91
79
83
95
91
103
115
102
90
78
82
94
90
102
114
101
89
77
81
93
89
101
113
100
88
76
80
92
88
100
112
99
98
97
96
95
94
93
92
91
90
89
88
87
75
79
91
87
99
100
101
102
103
104
105
106
107
108
109
110
111
86
74
78
90
86
98
85
73
77
89
85
97
84
72
76
88
84
96
83
71
75
87
83
95
82
70
74
86
82
94
81
69
73
85
81
93
80
68
72
84
80
92
79
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
91
78
58
70
90
77
57
69
89
76
56
68
88
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
55
67
87
88
89
90
91
92
93
94
95
96
97
97
96
95
94
93
92
86
74
54
66
86
97
85
73
53
65
85
97
84
72
52
64
84
96
83
71
51
63
83
95
82
70
50
62
82
94
81
69
49
61
81
93
80
68
48
60
80
92
79
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
91
78
59
46
58
72
90
77
60
45
57
73
89
76
61
44
56
74
88
75
62
43
55
75
87
74
63
42
54
76
86
73
64
41
53
77
85
72
65
40
52
78
84
71
66
39
51
79
83
70
67
38
50
78
82
69
66
37
49
77
81
68
65
36
48
76
80
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
35
47
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
68
54
34
46
66
80
69
53
33
45
65
81
70
52
32
44
64
82
71
51
31
43
63
83
72
50
30
42
62
84
73
49
29
41
61
85
74
48
28
40
60
86
75
47
27
39
59
87
76
46
26
38
58
88
77
45
25
37
57
89
78
44
24
36
56
90
79
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
91
78
36
10
24
48
90
77
37
9
25
49
89
76
38
8
26
50
88
75
39
7
27
51
87
74
40
6
28
52
86
73
41
5
29
53
85
72
42
4
30
54
84
71
43
3
31
55
83
70
44
2
32
56
82
69
45
1
33
57
81
68
46
0
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
111
110
109
108
107
106
105
104
103
102
101
100
99
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
130
114
110
98
102
118
129
113
109
97
101
117
128
112
108
96
100
116
127
111
107
95
99
115
126
110
106
94
98
114
125
109
105
93
97
113
124
108
104
92
96
112
123
107
103
91
95
111
122
106
102
90
94
110
121
105
101
89
93
109
120
104
100
88
92
108
119
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
107
118
106
94
98
86
82
94
106
117
105
93
97
85
81
93
105
116
104
92
96
84
80
92
104
115
103
91
95
83
79
91
103
114
102
90
94
82
78
90
102
113
101
89
93
81
77
89
101
112
100
88
92
80
76
88
100
111
110
109
108
107
106
105
104
103
102
101
100
99
87
91
79
75
87
88
89
90
91
92
93
94
95
96
97
98
99
98
86
90
78
74
86
97
85
89
77
73
85
96
84
88
76
72
84
95
83
87
75
71
83
94
82
86
74
70
82
93
81
85
73
69
81
92
80
84
72
68
80
91
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
79
90
70
58
78
89
69
57
77
88
68
56
76
92
93
94
95
96
97
97
96
95
94
93
92
91
90
89
88
87
67
55
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
97
86
66
54
74
86
97
85
65
53
73
85
96
84
64
52
72
84
95
83
63
51
71
83
94
82
62
50
70
82
93
81
61
49
69
81
92
80
60
48
68
80
91
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
79
90
71
58
46
60
78
89
72
57
45
61
77
88
73
56
44
62
76
87
74
55
43
63
75
86
75
54
42
64
74
85
76
53
41
65
73
84
77
52
40
66
72
83
78
51
39
67
71
82
79
50
38
66
70
81
78
49
37
65
69
80
77
48
36
64
68
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
47
35
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
80
66
46
34
54
68
81
65
45
33
53
69
82
64
44
32
52
70
83
63
43
31
51
71
84
62
42
30
50
72
85
61
41
29
49
73
86
60
40
28
48
74
87
59
39
27
47
75
88
58
38
26
46
76
89
57
37
25
45
77
90
56
36
24
44
78
91
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
79
90
48
24
10
36
78
89
49
25
9
37
77
88
50
26
8
38
76
87
51
27
7
39
75
86
52
28
6
40
74
85
53
29
5
41
73
84
54
30
4
42
72
83
55
31
3
43
71
82
56
32
2
44
70
81
57
33
1
45
69
80
58
34
0
128
129
130
131
132
133
134
135
136
137
138
139
140
141
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
111
110
109
108
107
106
105
104
103
102
101
100
99
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
127
122
110
98
102
110
126
121
109
97
101
109
125
120
108
96
100
108
124
119
107
95
99
107
123
118
106
94
98
106
122
117
105
93
97
105
121
116
104
92
96
104
120
115
103
91
95
103
119
114
102
90
94
102
118
113
101
89
93
101
117
112
100
88
92
100
116
104
105
106
107
108
109
110
111
112
113
114
115
116
117
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
90
89
88
87
99
115
103
117
98
86
82
86
98
114
102
117
97
85
81
85
97
113
101
116
96
84
80
84
96
112
100
115
95
83
79
83
95
111
99
114
94
82
78
82
94
110
98
113
93
81
77
81
93
109
97
112
92
80
76
80
92
108
107
106
105
104
103
102
101
100
99
98
97
96
111
91
79
75
79
80
81
82
83
84
85
86
87
88
89
90
91
95
110
90
78
74
78
94
109
89
77
73
77
93
108
88
76
72
76
92
107
87
75
71
75
91
106
86
74
70
74
90
105
85
73
69
73
89
104
84
72
68
72
88
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
71
87
94
58
70
86
93
57
69
85
92
56
68
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
91
55
67
68
69
70
71
70
69
68
67
66
65
64
63
64
65
66
67
73
85
90
54
66
62
74
86
89
53
65
61
75
87
88
52
64
60
76
88
87
51
63
59
77
89
86
50
62
58
78
90
85
49
61
57
79
91
84
48
60
56
80
92
93
94
95
96
97
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
54
53
52
51
52
53
54
55
56
57
58
59
55
81
95
82
46
50
54
82
96
81
45
49
53
83
97
80
44
48
52
84
98
79
43
47
51
85
99
78
42
46
50
86
100
77
41
45
49
87
101
76
40
44
48
88
102
75
39
43
47
89
103
74
38
42
46
90
102
73
37
41
45
91
101
72
36
40
44
92
93
94
95
96
97
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
71
35
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
93
90
70
34
30
44
94
89
69
33
29
43
95
88
68
32
28
42
96
87
67
31
27
41
97
86
66
30
26
40
98
85
65
29
25
39
99
84
64
28
24
38
100
83
63
27
23
37
101
82
62
26
22
36
102
81
61
25
21
35
103
80
60
24
20
34
104
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
33
105
72
48
36
10
32
106
73
49
37
9
31
107
74
50
38
8
30
108
75
51
39
7
29
109
76
52
40
6
28
109
77
53
41
5
27
108
78
54
42
4
26
107
79
55
43
3
25
106
80
56
44
2
24
105
81
57
45
1
23
104
82
58
46
0
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
128
129
129
128
127
126
125
124
123
122
121
120
119
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
107
115
127
118
106
98
106
114
126
117
105
97
105
113
125
116
104
96
104
112
124
115
103
95
103
111
123
114
102
94
102
110
122
113
101
93
101
109
121
112
100
92
100
108
120
111
99
91
99
107
119
110
98
90
98
106
118
109
97
89
97
105
117
108
96
88
96
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
87
95
83
97
117
106
88
74
86
94
82
98
117
105
89
73
85
93
81
99
116
104
90
72
84
92
80
100
115
103
91
71
83
91
79
101
114
102
92
70
82
90
78
102
113
101
93
69
81
89
77
103
112
100
94
68
80
88
87
86
85
84
83
82
81
80
79
78
77
76
104
111
99
95
67
68
69
70
71
72
73
74
75
76
77
78
79
75
105
110
98
94
66
74
106
109
97
93
65
73
107
108
96
92
64
72
108
107
95
91
63
71
109
106
94
90
62
70
110
105
93
89
61
69
111
104
92
88
60
68
112
111
110
109
108
107
106
105
104
105
106
107
108
109
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
59
67
103
78
58
66
102
77
57
65
101
76
56
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
100
75
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
53
65
99
74
56
42
54
66
98
73
57
41
55
67
97
72
58
40
56
68
96
71
59
39
57
69
95
70
60
38
58
70
94
69
61
37
59
71
93
68
62
36
60
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
35
61
82
93
68
54
34
62
83
94
67
53
33
63
84
95
66
52
32
64
85
96
65
51
31
65
86
97
64
50
30
66
87
98
63
49
29
67
88
98
62
48
28
68
89
97
61
47
27
69
90
96
60
46
26
70
91
95
59
45
25
71
92
94
58
44
24
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
57
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
73
85
92
56
36
22
74
86
91
55
37
21
75
87
90
54
38
20
76
88
89
53
39
19
77
89
88
52
40
18
78
90
87
51
41
17
79
91
86
50
42
16
80
92
85
49
43
15
81
93
84
48
44
14
82
94
83
47
43
13
83
95
82
46
42
12
84
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
11
85
94
70
58
32
10
86
95
71
59
31
9
87
96
72
60
30
8
88
97
73
61
29
7
89
98
74
62
28
6
90
99
75
63
27
5
91
100
76
64
26
4
92
101
77
65
25
3
93
102
78
66
24
2
94
103
79
67
23
1
95
104
80
68
22
0
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
120
121
122
123
124
125
126
127
128
129
130
130
129
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
99
107
119
128
116
108
98
106
118
127
115
107
97
105
117
126
114
106
96
104
116
125
113
105
95
103
115
124
112
104
94
102
114
123
111
103
93
101
113
122
110
102
92
100
112
121
109
101
91
99
111
120
108
100
90
98
110
119
107
99
89
97
109
118
106
98
88
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
97
87
75
89
107
118
98
84
96
86
74
90
106
118
99
83
95
85
73
91
105
117
100
82
94
84
72
92
104
116
101
81
93
83
71
93
103
115
102
80
92
82
70
94
102
114
103
79
91
81
69
95
101
113
104
78
90
80
79
78
77
76
75
74
73
72
71
70
69
68
96
100
112
105
77
78
79
80
81
82
83
84
85
86
87
88
89
67
95
99
111
106
76
66
94
98
110
107
75
65
93
97
109
108
74
64
92
96
108
109
73
63
91
95
107
110
72
62
90
94
106
111
71
61
89
93
105
112
70
60
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
106
107
108
109
110
111
112
113
69
59
79
104
68
58
78
103
67
57
77
102
66
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
76
101
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
43
57
75
100
66
54
42
58
74
99
67
55
41
59
73
98
68
56
40
60
72
97
69
57
39
61
71
96
70
58
38
62
70
95
71
59
37
63
69
94
72
60
36
64
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
61
35
56
67
94
82
62
34
55
66
95
83
63
33
54
65
96
84
64
32
53
64
97
85
65
31
52
63
98
86
66
30
51
62
98
87
67
29
50
61
97
88
68
28
49
60
96
89
69
27
48
59
95
90
70
26
47
58
94
91
71
25
46
57
93
92
72
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
56
92
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
23
37
55
91
86
74
22
38
54
90
87
75
21
39
53
89
88
76
20
40
52
88
89
77
19
41
51
87
90
78
18
42
50
86
91
79
17
43
49
85
92
80
16
44
48
84
93
81
15
43
47
83
94
82
14
42
46
82
95
83
13
41
45
81
96
84
12
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
85
11
31
57
69
93
86
10
30
58
70
94
87
9
29
59
71
95
88
8
28
60
72
96
89
7
27
61
73
97
90
6
26
62
74
98
91
5
25
63
75
99
92
4
24
64
76
100
93
3
23
65
77
101
94
2
22
66
78
102
95
1
21
67
79
103
96
0
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
119
120
121
122
123
124
125
126
127
128
129
130
130
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
100
108
118
129
117
109
99
107
117
128
116
108
98
106
116
127
115
107
97
105
115
126
114
106
96
104
114
125
113
105
95
103
113
124
112
104
94
102
112
123
111
103
93
101
111
122
110
102
92
100
110
121
109
101
91
99
109
120
108
100
90
98
108
119
107
99
89
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
98
88
76
90
106
118
99
85
97
87
75
91
105
117
100
84
96
86
74
92
104
116
101
83
95
85
73
93
103
115
102
82
94
84
72
94
102
114
103
81
93
83
71
95
101
113
104
80
92
82
70
96
100
112
105
79
91
81
80
79
78
77
76
75
74
73
72
71
70
69
95
99
111
106
78
79
80
81
82
83
84
85
86
87
88
89
90
68
94
98
110
107
77
67
93
97
109
108
76
66
92
96
108
109
75
65
91
95
107
110
74
64
90
94
106
111
73
63
89
93
105
112
72
62
88
92
104
113
71
61
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
107
108
109
110
111
112
113
114
70
60
78
105
69
59
77
104
68
58
76
103
67
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
75
102
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
44
58
74
101
67
55
43
59
73
100
68
56
42
60
72
99
69
57
41
61
71
98
70
58
40
62
70
97
71
59
39
63
69
96
72
60
38
64
68
95
73
61
37
65
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
62
36
57
66
95
83
63
35
56
65
96
84
64
34
55
64
97
85
65
33
54
63
98
86
66
32
53
62
98
87
67
31
52
61
97
88
68
30
51
60
96
89
69
29
50
59
95
90
70
28
49
58
94
91
71
27
48
57
93
92
72
26
47
56
92
93
73
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
55
91
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
24
38
54
90
87
75
23
39
53
89
88
76
22
40
52
88
89
77
21
41
51
87
90
78
20
42
50
86
91
79
19
43
49
85
92
80
18
44
48
84
93
81
17
43
47
83
94
82
16
42
46
82
95
83
15
41
45
81
96
84
14
40
44
80
97
85
13
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
86
12
30
56
68
92
87
11
29
57
69
93
88
10
28
58
70
94
89
9
27
59
71
95
90
8
26
60
72
96
91
7
25
61
73
97
92
6
24
62
74
98
93
5
23
63
75
99
94
4
22
64
76
100
95
3
21
65
77
101
96
2
20
66
78
102
97
1
0
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
118
119
120
121
122
123
124
125
126
127
128
129
130
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
101
109
117
129
118
110
100
108
116
128
117
109
99
107
115
127
116
108
98
106
114
126
115
107
97
105
113
125
114
106
96
104
112
124
113
105
95
103
111
123
112
104
94
102
110
122
111
103
93
101
109
121
110
102
92
100
108
120
109
101
91
99
107
119
108
100
90
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
99
89
77
91
105
117
100
86
98
88
76
92
104
116
101
85
97
87
75
93
103
115
102
84
96
86
74
94
102
114
103
83
95
85
73
95
101
113
104
82
94
84
72
96
100
112
105
81
93
83
71
95
99
111
106
80
92
82
81
80
79
78
77
76
75
74
73
72
71
70
94
98
110
107
79
80
81
82
83
84
85
86
87
88
89
90
91
69
93
97
109
108
78
68
92
96
108
109
77
67
91
95
107
110
76
66
90
94
106
111
75
65
89
93
105
112
74
64
88
92
104
113
73
63
87
91
103
114
72
62
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
108
109
110
111
112
113
114
115
71
61
77
106
70
60
76
105
69
59
75
104
68
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
74
103
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
45
59
73
102
68
56
44
60
72
101
69
57
43
61
71
100
70
58
42
62
70
99
71
59
41
63
69
98
72
60
40
64
68
97
73
61
39
65
67
96
74
62
38
66
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
63
37
58
65
96
84
64
36
57
64
97
85
65
35
56
63
98
86
66
34
55
62
98
87
67
33
54
61
97
88
68
32
53
60
96
89
69
31
52
59
95
90
70
30
51
58
94
91
71
29
50
57
93
92
72
28
49
56
92
93
73
27
48
55
91
94
74
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
54
90
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
25
39
53
89
88
76
24
40
52
88
89
77
23
41
51
87
90
78
22
42
50
86
91
79
21
43
49
85
92
80
20
44
48
84
93
81
19
43
47
83
94
82
18
42
46
82
95
83
17
41
45
81
96
84
16
40
44
80
97
85
15
39
43
79
98
86
14
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
87
13
29
55
67
91
88
12
28
56
68
92
89
11
27
57
69
93
90
10
26
58
70
94
91
9
25
59
71
95
92
8
24
60
72
96
93
7
23
61
73
97
94
6
22
62
74
98
95
5
21
63
75
99
96
4
20
64
76
100
97
3
19
65
77
101
98
2
1
0
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
117
118
119
120
121
122
123
124
125
126
127
128
129
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
102
110
116
128
119
111
101
109
115
127
118
110
100
108
114
126
117
109
99
107
113
125
116
108
98
106
112
124
115
107
97
105
111
123
114
106
96
104
110
122
113
105
95
103
109
121
112
104
94
102
108
120
111
103
93
101
107
119
110
102
92
100
106
118
109
101
91
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
100
90
78
92
104
116
101
87
99
89
77
93
103
115
102
86
98
88
76
94
102
114
103
85
97
87
75
95
101
113
104
84
96
86
74
96
100
112
105
83
95
85
73
95
99
111
106
82
94
84
72
94
98
110
107
81
93
83
82
81
80
79
78
77
76
75
74
73
72
71
93
97
109
108
80
81
82
83
84
85
86
87
88
89
90
91
92
70
92
96
108
109
79
69
91
95
107
110
78
68
90
94
106
111
77
67
89
93
105
112
76
66
88
92
104
113
75
65
87
91
103
114
74
64
86
90
102
115
73
63
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
109
110
111
112
113
114
115
116
72
62
76
107
71
61
75
106
70
60
74
105
69
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
73
104
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
46
60
72
103
69
57
45
61
71
102
70
58
44
62
70
101
71
59
43
63
69
100
72
60
42
64
68
99
73
61
41
65
67
98
74
62
40
66
66
97
75
63
39
67
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
64
38
59
64
97
85
65
37
58
63
98
86
66
36
57
62
98
87
67
35
56
61
97
88
68
34
55
60
96
89
69
33
54
59
95
90
70
32
53
58
94
91
71
31
52
57
93
92
72
30
51
56
92
93
73
29
50
55
91
94
74
28
49
54
90
95
75
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
53
89
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
26
40
52
88
89
77
25
41
51
87
90
78
24
42
50
86
91
79
23
43
49
85
92
80
22
44
48
84
93
81
21
43
47
83
94
82
20
42
46
82
95
83
19
41
45
81
96
84
18
40
44
80
97
85
17
39
43
79
98
86
16
38
42
78
98
87
15
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
88
14
28
54
66
90
89
13
27
55
67
91
90
12
26
56
68
92
91
11
25
57
69
93
92
10
24
58
70
94
93
9
23
59
71
95
94
8
22
60
72
96
95
7
21
61
73
97
96
6
20
62
74
98
97
5
19
63
75
99
98
4
18
64
76
100
99
3
2
1
0
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
116
117
118
119
120
121
122
123
124
125
126
127
128
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
103
111
115
127
120
112
102
110
114
126
119
111
101
109
113
125
118
110
100
108
112
124
117
109
99
107
111
123
116
108
98
106
110
122
115
107
97
105
109
121
114
106
96
104
108
120
113
105
95
103
107
119
112
104
94
102
106
118
111
103
93
101
105
117
110
102
92
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
101
91
79
93
103
115
102
88
100
90
78
94
102
114
103
87
99
89
77
95
101
113
104
86
98
88
76
96
100
112
105
85
97
87
75
95
99
111
106
84
96
86
74
94
98
110
107
83
95
85
73
93
97
109
108
82
94
84
83
82
81
80
79
78
77
76
75
74
73
72
92
96
108
109
81
82
83
84
85
86
87
88
89
90
91
92
93
71
91
95
107
110
80
70
90
94
106
111
79
69
89
93
105
112
78
68
88
92
104
113
77
67
87
91
103
114
76
66
86
90
102
115
75
65
85
89
101
116
74
64
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
110
111
112
113
114
115
116
117
73
63
75
108
72
62
74
107
71
61
73
106
70
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
72
105
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
47
61
71
104
70
58
46
62
70
103
71
59
45
63
69
102
72
60
44
64
68
101
73
61
43
65
67
100
74
62
42
66
66
99
75
63
41
67
65
98
76
64
40
68
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
65
39
60
63
98
86
66
38
59
62
98
87
67
37
58
61
97
88
68
36
57
60
96
89
69
35
56
59
95
90
70
34
55
58
94
91
71
33
54
57
93
92
72
32
53
56
92
93
73
31
52
55
91
94
74
30
51
54
90
95
75
29
50
53
89
96
76
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
52
88
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
27
41
51
87
90
78
26
42
50
86
91
79
25
43
49
85
92
80
24
44
48
84
93
81
23
43
47
83
94
82
22
42
46
82
95
83
21
41
45
81
96
84
20
40
44
80
97
85
19
39
43
79
98
86
18
38
42
78
98
87
17
37
41
77
97
88
16
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
89
15
27
53
65
89
90
14
26
54
66
90
91
13
25
55
67
91
92
12
24
56
68
92
93
11
23
57
69
93
94
10
22
58
70
94
95
9
21
59
71
95
96
8
20
60
72
96
97
7
19
61
73
97
98
6
18
62
74
98
99
5
17
63
75
99
100
4
3
2
1
0
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
115
116
117
118
119
120
121
122
123
124
125
126
127
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
104
112
114
126
121
113
103
111
113
125
120
112
102
110
112
124
119
111
101
109
111
123
118
110
100
108
110
122
117
109
99
107
109
121
116
108
98
106
108
120
115
107
97
105
107
119
114
106
96
104
106
118
113
105
95
103
105
117
112
104
94
102
104
116
111
103
93
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
102
92
80
94
102
114
103
89
101
91
79
95
101
113
104
88
100
90
78
96
100
112
105
87
99
89
77
95
99
111
106
86
98
88
76
94
98
110
107
85
97
87
75
93
97
109
108
84
96
86
74
92
96
108
109
83
95
85
84
83
82
81
80
79
78
77
76
75
74
73
91
95
107
110
82
83
84
85
86
87
88
89
90
91
92
93
94
72
90
94
106
111
81
71
89
93
105
112
80
70
88
92
104
113
79
69
87
91
103
114
78
68
86
90
102
115
77
67
85
89
101
116
76
66
84
88
100
117
75
65
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
111
112
113
114
115
116
117
118
74
64
74
109
73
63
73
108
72
62
72
107
71
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
71
106
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
48
62
70
105
71
59
47
63
69
104
72
60
46
64
68
103
73
61
45
65
67
102
74
62
44
66
66
101
75
63
43
67
65
100
76
64
42
68
64
99
77
65
41
69
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
66
40
61
62
98
87
67
39
60
61
97
88
68
38
59
60
96
89
69
37
58
59
95
90
70
36
57
58
94
91
71
35
56
57
93
92
72
34
55
56
92
93
73
33
54
55
91
94
74
32
53
54
90
95
75
31
52
53
89
96
76
30
51
52
88
97
77
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
87
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
28
42
50
86
91
79
27
43
49
85
92
80
26
44
48
84
93
81
25
43
47
83
94
82
24
42
46
82
95
83
23
41
45
81
96
84
22
40
44
80
97
85
21
39
43
79
98
86
20
38
42
78
98
87
19
37
41
77
97
88
18
36
40
76
96
89
17
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
90
16
26
52
64
88
91
15
25
53
65
89
92
14
24
54
66
90
93
13
23
55
67
91
94
12
22
56
68
92
95
11
21
57
69
93
96
10
20
58
70
94
97
9
19
59
71
95
98
8
18
60
72
96
99
7
17
61
73
97
100
6
16
62
74
98
101
5
4
3
2
1
0
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
114
115
116
117
118
119
120
121
122
123
124
125
126
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
105
113
113
125
122
114
104
112
112
124
121
113
103
111
111
123
120
112
102
110
110
122
119
111
101
109
109
121
118
110
100
108
108
120
117
109
99
107
107
119
116
108
98
106
106
118
115
107
97
105
105
117
114
106
96
104
104
116
113
105
95
103
103
115
112
104
94
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
103
93
81
95
101
113
104
90
102
92
80
96
100
112
105
89
101
91
79
95
99
111
106
88
100
90
78
94
98
110
107
87
99
89
77
93
97
109
108
86
98
88
76
92
96
108
109
85
97
87
75
91
95
107
110
84
96
86
85
84
83
82
81
80
79
78
77
76
75
74
90
94
106
111
83
84
85
86
87
88
89
90
91
92
93
94
95
73
89
93
105
112
82
72
88
92
104
113
81
71
87
91
103
114
80
70
86
90
102
115
79
69
85
89
101
116
78
68
84
88
100
117
77
67
83
87
99
118
76
66
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
75
65
73
109
74
64
72
108
73
63
71
107
72
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
70
106
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
49
63
69
105
72
60
48
64
68
104
73
61
47
65
67
103
74
62
46
66
66
102
75
63
45
67
65
101
76
64
44
68
64
100
77
65
43
69
63
99
78
66
42
70
71
70
69
68
67
66
65
64
63
64
65
66
67
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
67
41
62
61
97
88
68
40
61
60
96
89
69
39
60
59
95
90
70
38
59
58
94
91
71
37
58
57
93
92
72
36
57
56
92
93
73
35
56
55
91
94
74
34
55
54
90
95
75
33
54
53
89
96
76
32
53
52
88
97
77
31
52
51
87
98
78
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
50
86
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
29
43
49
85
92
80
28
44
48
84
93
81
27
43
47
83
94
82
26
42
46
82
95
83
25
41
45
81
96
84
24
40
44
80
97
85
23
39
43
79
98
86
22
38
42
78
98
87
21
37
41
77
97
88
20
36
40
76
96
89
19
35
39
75
95
90
18
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
91
17
25
51
63
87
92
16
24
52
64
88
93
15
23
53
65
89
94
14
22
54
66
90
95
13
21
55
67
91
96
12
20
56
68
92
97
11
19
57
69
93
98
10
18
58
70
94
99
9
17
59
71
95
100
8
16
60
72
96
101
7
15
61
73
97
102
6
5
4
3
2
1
0
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
113
114
115
116
117
118
119
120
121
122
123
124
125
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
106
114
112
124
123
115
105
113
111
123
122
114
104
112
110
122
121
113
103
111
109
121
120
112
102
110
108
120
119
111
101
109
107
119
118
110
100
108
106
118
117
109
99
107
105
117
116
108
98
106
104
116
115
107
97
105
103
115
114
106
96
104
102
114
113
105
95
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
104
94
82
96
100
112
105
91
103
93
81
95
99
111
106
90
102
92
80
94
98
110
107
89
101
91
79
93
97
109
108
88
100
90
78
92
96
108
109
87
99
89
77
91
95
107
110
86
98
88
76
90
94
106
111
85
97
87
86
85
84
83
82
81
80
79
78
77
76
75
89
93
105
112
84
85
86
87
88
89
90
91
92
93
94
95
96
74
88
92
104
113
83
73
87
91
103
114
82
72
86
90
102
115
81
71
85
89
101
116
80
70
84
88
100
117
79
69
83
87
99
118
78
68
82
86
98
118
77
67
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
76
66
72
108
75
65
71
107
74
64
70
106
73
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
69
105
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
50
64
68
104
73
61
49
65
67
103
74
62
48
66
66
102
75
63
47
67
65
101
76
64
46
68
64
100
77
65
45
69
63
99
78
66
44
70
62
98
79
67
43
71
72
71
70
69
68
67
66
65
64
65
66
67
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
68
42
63
60
96
89
69
41
62
59
95
90
70
40
61
58
94
91
71
39
60
57
93
92
72
38
59
56
92
93
73
37
58
55
91
94
74
36
57
54
90
95
75
35
56
53
89
96
76
34
55
52
88
97
77
33
54
51
87
98
78
32
53
50
86
99
79
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
49
85
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
30
44
48
84
93
81
29
43
47
83
94
82
28
42
46
82
95
83
27
41
45
81
96
84
26
40
44
80
97
85
25
39
43
79
98
86
24
38
42
78
98
87
23
37
41
77
97
88
22
36
40
76
96
89
21
35
39
75
95
90
20
34
38
74
94
91
19
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
92
18
24
50
62
86
93
17
23
51
63
87
94
16
22
52
64
88
95
15
21
53
65
89
96
14
20
54
66
90
97
13
19
55
67
91
98
12
18
56
68
92
99
11
17
57
69
93
100
10
16
58
70
94
101
9
15
59
71
95
102
8
14
60
72
96
103
7
6
5
4
3
2
1
0
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
107
115
111
123
124
116
106
114
110
122
123
115
105
113
109
121
122
114
104
112
108
120
121
113
103
111
107
119
120
112
102
110
106
118
119
111
101
109
105
117
118
110
100
108
104
116
117
109
99
107
103
115
116
108
98
106
102
114
115
107
97
105
101
113
114
106
96
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
105
95
83
95
99
111
106
92
104
94
82
94
98
110
107
91
103
93
81
93
97
109
108
90
102
92
80
92
96
108
109
89
101
91
79
91
95
107
110
88
100
90
78
90
94
106
111
87
99
89
77
89
93
105
112
86
98
88
87
86
85
84
83
82
81
80
79
78
77
76
88
92
104
113
85
86
87
88
89
90
91
92
93
94
95
96
97
75
87
91
103
114
84
74
86
90
102
115
83
73
85
89
101
116
82
72
84
88
100
117
81
71
83
87
99
118
80
70
82
86
98
118
79
69
81
85
97
117
78
68
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
77
67
71
107
76
66
70
106
75
65
69
105
74
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
68
104
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
51
65
67
103
74
62
50
66
66
102
75
63
49
67
65
101
76
64
48
68
64
100
77
65
47
69
63
99
78
66
46
70
62
98
79
67
45
71
61
97
80
68
44
72
73
72
71
70
69
68
67
66
65
66
67
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
69
43
64
59
95
90
70
42
63
58
94
91
71
41
62
57
93
92
72
40
61
56
92
93
73
39
60
55
91
94
74
38
59
54
90
95
75
37
58
53
89
96
76
36
57
52
88
97
77
35
56
51
87
98
78
34
55
50
86
99
79
33
54
49
85
100
80
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
48
84
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
31
43
47
83
94
82
30
42
46
82
95
83
29
41
45
81
96
84
28
40
44
80
97
85
27
39
43
79
98
86
26
38
42
78
98
87
25
37
41
77
97
88
24
36
40
76
96
89
23
35
39
75
95
90
22
34
38
74
94
91
21
33
37
73
93
92
20
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
19
23
49
61
85
94
18
22
50
62
86
95
17
21
51
63
87
96
16
20
52
64
88
97
15
19
53
65
89
98
14
18
54
66
90
99
13
17
55
67
91
100
12
16
56
68
92
101
11
15
57
69
93
102
10
14
58
70
94
103
9
13
59
71
95
104
8
7
6
5
4
3
2
1
0
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
111
112
113
114
115
116
117
118
119
120
121
122
123
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
108
114
110
122
125
117
107
113
109
121
124
116
106
112
108
120
123
115
105
111
107
119
122
114
104
110
106
118
121
113
103
109
105
117
120
112
102
108
104
116
119
111
101
107
103
115
118
110
100
106
102
114
117
109
99
105
101
113
116
108
98
104
100
112
115
107
97
85
86
87
88
89
90
91
92
93
94
95
96
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
106
96
84
94
98
110
107
93
105
95
83
93
97
109
108
92
104
94
82
92
96
108
109
91
103
93
81
91
95
107
110
90
102
92
80
90
94
106
111
89
101
91
79
89
93
105
112
88
100
90
78
88
92
104
113
87
99
89
88
87
86
85
84
83
82
81
80
79
78
77
87
91
103
114
86
87
88
89
90
91
92
93
94
95
96
97
98
76
86
90
102
115
85
75
85
89
101
116
84
74
84
88
100
117
83
73
83
87
99
118
82
72
82
86
98
118
81
71
81
85
97
117
80
70
80
84
96
116
79
69
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
78
68
70
106
77
67
69
105
76
66
68
104
75
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
67
103
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
52
66
66
102
75
63
51
67
65
101
76
64
50
68
64
100
77
65
49
69
63
99
78
66
48
70
62
98
79
67
47
71
61
97
80
68
46
72
60
96
81
69
45
73
72
71
70
69
68
67
66
65
64
65
66
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
70
44
63
58
94
91
71
43
62
57
93
92
72
42
61
56
92
93
73
41
60
55
91
94
74
40
59
54
90
95
75
39
58
53
89
96
76
38
57
52
88
97
77
37
56
51
87
98
78
36
55
50
86
99
79
35
54
49
85
100
80
34
53
48
84
101
81
33
34
35
36
37
38
39
40
41
42
43
44
43
44
45
46
47
48
49
50
51
52
47
83
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
32
42
46
82
95
83
31
41
45
81
96
84
30
40
44
80
97
85
29
39
43
79
98
86
28
38
42
78
98
87
27
37
41
77
97
88
26
36
40
76
96
89
25
35
39
75
95
90
24
34
38
74
94
91
23
33
37
73
93
92
22
32
36
72
92
93
21
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
94
20
22
48
60
84
95
19
21
49
61
85
96
18
20
50
62
86
97
17
19
51
63
87
98
16
18
52
64
88
99
15
17
53
65
89
100
14
16
54
66
90
101
13
15
55
67
91
102
12
14
56
68
92
103
11
13
57
69
93
104
10
12
58
70
94
105
9
8
7
6
5
4
3
2
1
0
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
110
111
112
113
114
115
116
117
118
119
120
121
122
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
109
113
109
121
126
118
108
112
108
120
125
117
107
111
107
119
124
116
106
110
106
118
123
115
105
109
105
117
122
114
104
108
104
116
121
113
103
107
103
115
120
112
102
106
102
114
119
111
101
105
101
113
118
110
100
104
100
112
117
109
99
103
99
111
116
108
98
86
87
88
89
90
91
92
93
94
95
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
107
97
85
93
97
109
108
94
106
96
84
92
96
108
109
93
105
95
83
91
95
107
110
92
104
94
82
90
94
106
111
91
103
93
81
89
93
105
112
90
102
92
80
88
92
104
113
89
101
91
79
87
91
103
114
88
100
90
89
88
87
86
85
84
83
82
81
80
79
78
86
90
102
115
87
88
89
90
91
92
93
94
95
96
97
98
99
77
85
89
101
116
86
76
84
88
100
117
85
75
83
87
99
118
84
74
82
86
98
118
83
73
81
85
97
117
82
72
80
84
96
116
81
71
79
83
95
115
80
70
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
79
69
69
105
78
68
68
104
77
67
67
103
76
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
66
102
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
53
67
65
101
76
64
52
68
64
100
77
65
51
69
63
99
78
66
50
70
62
98
79
67
49
71
61
97
80
68
48
72
60
96
81
69
47
73
59
95
82
70
46
72
71
70
69
68
67
66
65
64
63
64
65
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
71
45
62
57
93
92
72
44
61
56
92
93
73
43
60
55
91
94
74
42
59
54
90
95
75
41
58
53
89
96
76
40
57
52
88
97
77
39
56
51
87
98
78
38
55
50
86
99
79
37
54
49
85
100
80
36
53
48
84
101
81
35
52
47
83
102
82
34
35
36
37
38
39
40
41
42
43
44
43
42
43
44
45
46
47
48
49
50
51
46
82
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
33
41
45
81
96
84
32
40
44
80
97
85
31
39
43
79
98
86
30
38
42
78
98
87
29
37
41
77
97
88
28
36
40
76
96
89
27
35
39
75
95
90
26
34
38
74
94
91
25
33
37
73
93
92
24
32
36
72
92
93
23
31
35
71
91
94
22
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
95
21
21
47
59
83
96
20
20
48
60
84
97
19
19
49
61
85
98
18
18
50
62
86
99
17
17
51
63
87
100
16
16
52
64
88
101
15
15
53
65
89
102
14
14
54
66
90
103
13
13
55
67
91
104
12
12
56
68
92
105
11
11
57
69
93
106
10
9
8
7
6
5
4
3
2
1
0
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
109
110
111
112
113
114
115
116
117
118
119
120
121
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
110
112
108
120
127
119
109
111
107
119
126
118
108
110
106
118
125
117
107
109
105
117
124
116
106
108
104
116
123
115
105
107
103
115
122
114
104
106
102
114
121
113
103
105
101
113
120
112
102
104
100
112
119
111
101
103
99
111
118
110
100
102
98
110
117
109
99
87
88
89
90
91
92
93
94
95
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
108
98
86
92
96
108
109
95
107
97
85
91
95
107
110
94
106
96
84
90
94
106
111
93
105
95
83
89
93
105
112
92
104
94
82
88
92
104
113
91
103
93
81
87
91
103
114
90
102
92
80
86
90
102
115
89
101
91
90
89
88
87
86
85
84
83
82
81
80
79
85
89
101
116
88
89
90
91
92
93
94
95
96
97
98
99
100
78
84
88
100
117
87
77
83
87
99
118
86
76
82
86
98
118
85
75
81
85
97
117
84
74
80
84
96
116
83
73
79
83
95
115
82
72
78
82
94
114
81
71
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
80
70
68
104
79
69
67
103
78
68
66
102
77
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
65
101
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
54
68
64
100
77
65
53
69
63
99
78
66
52
70
62
98
79
67
51
71
61
97
80
68
50
72
60
96
81
69
49
73
59
95
82
70
48
72
58
94
83
71
47
71
70
69
68
67
66
65
64
63
62
63
64
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
72
46
61
56
92
93
73
45
60
55
91
94
74
44
59
54
90
95
75
43
58
53
89
96
76
42
57
52
88
97
77
41
56
51
87
98
78
40
55
50
86
99
79
39
54
49
85
100
80
38
53
48
84
101
81
37
52
47
83
102
82
36
51
46
82
103
83
35
36
37
38
39
40
41
42
43
44
43
42
41
42
43
44
45
46
47
48
49
50
45
81
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
34
40
44
80
97
85
33
39
43
79
98
86
32
38
42
78
98
87
31
37
41
77
97
88
30
36
40
76
96
89
29
35
39
75
95
90
28
34
38
74
94
91
27
33
37
73
93
92
26
32
36
72
92
93
25
31
35
71
91
94
24
30
34
70
90
95
23
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
96
22
20
46
58
82
97
21
19
47
59
83
98
20
18
48
60
84
99
19
17
49
61
85
100
18
16
50
62
86
101
17
15
51
63
87
102
16
14
52
64
88
103
15
13
53
65
89
104
14
12
54
66
90
105
13
11
55
67
91
106
12
10
56
68
92
107
11
10
9
8
7
6
5
4
3
2
1
0
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
108
109
110
111
112
113
114
115
116
117
118
119
120
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
111
111
107
119
128
120
110
110
106
118
127
119
109
109
105
117
126
118
108
108
104
116
125
117
107
107
103
115
124
116
106
106
102
114
123
115
105
105
101
113
122
114
104
104
100
112
121
113
103
103
99
111
120
112
102
102
98
110
119
111
101
101
97
109
118
110
100
88
89
90
91
92
93
94
95
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
109
99
87
91
95
107
110
96
108
98
86
90
94
106
111
95
107
97
85
89
93
105
112
94
106
96
84
88
92
104
113
93
105
95
83
87
91
103
114
92
104
94
82
86
90
102
115
91
103
93
81
85
89
101
116
90
102
92
91
90
89
88
87
86
85
84
83
82
81
80
84
88
100
117
89
90
91
92
93
94
95
96
97
98
99
100
101
79
83
87
99
118
88
78
82
86
98
118
87
77
81
85
97
117
86
76
80
84
96
116
85
75
79
83
95
115
84
74
78
82
94
114
83
73
77
81
93
113
82
72
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
81
71
67
103
80
70
66
102
79
69
65
101
78
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
64
100
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
55
69
63
99
78
66
54
70
62
98
79
67
53
71
61
97
80
68
52
72
60
96
81
69
51
73
59
95
82
70
50
72
58
94
83
71
49
71
57
93
84
72
48
70
69
68
67
66
65
64
63
62
61
62
63
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
73
47
60
55
91
94
74
46
59
54
90
95
75
45
58
53
89
96
76
44
57
52
88
97
77
43
56
51
87
98
78
42
55
50
86
99
79
41
54
49
85
100
80
40
53
48
84
101
81
39
52
47
83
102
82
38
51
46
82
103
83
37
50
45
81
104
84
36
37
38
39
40
41
42
43
44
43
42
41
40
41
42
43
44
45
46
47
48
49
44
80
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
35
39
43
79
98
86
34
38
42
78
98
87
33
37
41
77
97
88
32
36
40
76
96
89
31
35
39
75
95
90
30
34
38
74
94
91
29
33
37
73
93
92
28
32
36
72
92
93
27
31
35
71
91
94
26
30
34
70
90
95
25
29
33
69
89
96
24
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
97
23
19
45
57
81
98
22
18
46
58
82
99
21
17
47
59
83
100
20
16
48
60
84
101
19
15
49
61
85
102
18
14
50
62
86
103
17
13
51
63
87
104
16
12
52
64
88
105
15
11
53
65
89
106
14
10
54
66
90
107
13
9
55
67
91
108
12
11
10
9
8
7
6
5
4
3
2
1
0
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
107
108
109
110
111
112
113
114
115
116
117
118
119
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
112
110
106
118
129
121
111
109
105
117
128
120
110
108
104
116
127
119
109
107
103
115
126
118
108
106
102
114
125
117
107
105
101
113
124
116
106
104
100
112
123
115
105
103
99
111
122
114
104
102
98
110
121
113
103
101
97
109
120
112
102
100
96
108
119
111
101
89
90
91
92
93
94
95
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
110
100
88
90
94
106
111
97
109
99
87
89
93
105
112
96
108
98
86
88
92
104
113
95
107
97
85
87
91
103
114
94
106
96
84
86
90
102
115
93
105
95
83
85
89
101
116
92
104
94
82
84
88
100
117
91
103
93
92
91
90
89
88
87
86
85
84
83
82
81
83
87
99
118
90
91
92
93
94
95
96
97
98
99
100
101
102
80
82
86
98
118
89
79
81
85
97
117
88
78
80
84
96
116
87
77
79
83
95
115
86
76
78
82
94
114
85
75
77
81
93
113
84
74
76
80
92
112
83
73
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
82
72
66
102
81
71
65
101
80
70
64
100
79
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
63
99
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
56
70
62
98
79
67
55
71
61
97
80
68
54
72
60
96
81
69
53
73
59
95
82
70
52
72
58
94
83
71
51
71
57
93
84
72
50
70
56
92
85
73
49
69
68
67
66
65
64
63
62
61
60
61
62
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
74
48
59
54
90
95
75
47
58
53
89
96
76
46
57
52
88
97
77
45
56
51
87
98
78
44
55
50
86
99
79
43
54
49
85
100
80
42
53
48
84
101
81
41
52
47
83
102
82
40
51
46
82
103
83
39
50
45
81
104
84
38
49
44
80
105
85
37
38
39
40
41
42
43
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
43
79
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
36
38
42
78
98
87
35
37
41
77
97
88
34
36
40
76
96
89
33
35
39
75
95
90
32
34
38
74
94
91
31
33
37
73
93
92
30
32
36
72
92
93
29
31
35
71
91
94
28
30
34
70
90
95
27
29
33
69
89
96
26
28
32
68
88
97
25
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
98
24
18
44
56
80
99
23
17
45
57
81
100
22
16
46
58
82
101
21
15
47
59
83
102
20
14
48
60
84
103
19
13
49
61
85
104
18
12
50
62
86
105
17
11
51
63
87
106
16
10
52
64
88
107
15
9
53
65
89
108
14
8
54
66
90
109
13
12
11
10
9
8
7
6
5
4
3
2
1
0
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
106
107
108
109
110
111
112
113
114
115
116
117
118
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
113
109
105
117
129
122
112
108
104
116
128
121
111
107
103
115
127
120
110
106
102
114
126
119
109
105
101
113
125
118
108
104
100
112
124
117
107
103
99
111
123
116
106
102
98
110
122
115
105
101
97
109
121
114
104
100
96
108
120
113
103
99
95
107
119
112
102
90
91
92
93
94
95
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
111
101
89
89
93
105
112
98
110
100
88
88
92
104
113
97
109
99
87
87
91
103
114
96
108
98
86
86
90
102
115
95
107
97
85
85
89
101
116
94
106
96
84
84
88
100
117
93
105
95
83
83
87
99
118
92
104
94
93
92
91
90
89
88
87
86
85
84
83
82
82
86
98
118
91
92
93
94
95
96
97
98
99
100
101
102
103
81
81
85
97
117
90
80
80
84
96
116
89
79
79
83
95
115
88
78
78
82
94
114
87
77
77
81
93
113
86
76
76
80
92
112
85
75
75
79
91
111
84
74
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
83
73
65
101
82
72
64
100
81
71
63
99
80
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
62
98
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
57
71
61
97
80
68
56
72
60
96
81
69
55
73
59
95
82
70
54
72
58
94
83
71
53
71
57
93
84
72
52
70
56
92
85
73
51
69
55
91
86
74
50
68
67
66
65
64
63
62
61
60
59
60
61
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
75
49
58
53
89
96
76
48
57
52
88
97
77
47
56
51
87
98
78
46
55
50
86
99
79
45
54
49
85
100
80
44
53
48
84
101
81
43
52
47
83
102
82
42
51
46
82
103
83
41
50
45
81
104
84
40
49
44
80
105
85
39
48
43
79
106
86
38
39
40
41
42
43
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
42
78
106
105
104
103
102
101
100
99
98
98
97
96
95
94
93
92
91
90
89
88
87
37
37
41
77
97
88
36
36
40
76
96
89
35
35
39
75
95
90
34
34
38
74
94
91
33
33
37
73
93
92
32
32
36
72
92
93
31
31
35
71
91
94
30
30
34
70
90
95
29
29
33
69
89
96
28
28
32
68
88
97
27
27
31
67
87
98
26
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
99
25
17
43
55
79
100
24
16
44
56
80
101
23
15
45
57
81
102
22
14
46
58
82
103
21
13
47
59
83
104
20
12
48
60
84
105
19
11
49
61
85
106
18
10
50
62
86
107
17
9
51
63
87
108
16
8
52
64
88
109
15
7
53
65
89
110
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
105
106
107
108
109
110
111
112
113
114
115
116
117
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
114
108
104
116
128
123
113
107
103
115
127
122
112
106
102
114
126
121
111
105
101
113
125
120
110
104
100
112
124
119
109
103
99
111
123
118
108
102
98
110
122
117
107
101
97
109
121
116
106
100
96
108
120
115
105
99
95
107
119
114
104
98
94
106
118
113
103
91
92
93
94
95
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
112
102
90
88
92
104
113
99
111
101
89
87
91
103
114
98
110
100
88
86
90
102
115
97
109
99
87
85
89
101
116
96
108
98
86
84
88
100
117
95
107
97
85
83
87
99
118
94
106
96
84
82
86
98
118
93
105
95
94
93
92
91
90
89
88
87
86
85
84
83
81
85
97
117
92
93
94
95
96
97
98
99
100
101
102
103
104
82
80
84
96
116
91
81
79
83
95
115
90
80
78
82
94
114
89
79
77
81
93
113
88
78
76
80
92
112
87
77
75
79
91
111
86
76
74
78
90
110
85
75
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
84
74
64
100
83
73
63
99
82
72
62
98
81
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
61
97
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
58
72
60
96
81
69
57
73
59
95
82
70
56
72
58
94
83
71
55
71
57
93
84
72
54
70
56
92
85
73
53
69
55
91
86
74
52
68
54
90
87
75
51
67
66
65
64
63
62
61
60
59
58
59
60
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
76
50
57
52
88
97
77
49
56
51
87
98
78
48
55
50
86
99
79
47
54
49
85
100
80
46
53
48
84
101
81
45
52
47
83
102
82
44
51
46
82
103
83
43
50
45
81
104
84
42
49
44
80
105
85
41
48
43
79
106
86
40
47
42
78
106
87
39
40
41
42
43
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
41
77
105
104
103
102
101
100
99
98
97
98
98
97
96
95
94
93
92
91
90
89
88
38
36
40
76
96
89
37
35
39
75
95
90
36
34
38
74
94
91
35
33
37
73
93
92
34
32
36
72
92
93
33
31
35
71
91
94
32
30
34
70
90
95
31
29
33
69
89
96
30
28
32
68
88
97
29
27
31
67
87
98
28
26
30
66
86
99
27
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
100
26
16
42
54
78
101
25
15
43
55
79
102
24
14
44
56
80
103
23
13
45
57
81
104
22
12
46
58
82
105
21
11
47
59
83
106
20
10
48
60
84
107
19
9
49
61
85
108
18
8
50
62
86
109
17
7
51
63
87
110
16
6
52
64
88
110
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
104
105
106
107
108
109
110
111
112
113
114
115
116
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
115
107
103
115
127
124
114
106
102
114
126
123
113
105
101
113
125
122
112
104
100
112
124
121
111
103
99
111
123
120
110
102
98
110
122
119
109
101
97
109
121
118
108
100
96
108
120
117
107
99
95
107
119
116
106
98
94
106
118
115
105
97
93
105
117
114
104
92
93
94
95
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
113
103
91
87
91
103
114
100
112
102
90
86
90
102
115
99
111
101
89
85
89
101
116
98
110
100
88
84
88
100
117
97
109
99
87
83
87
99
118
96
108
98
86
82
86
98
118
95
107
97
85
81
85
97
117
94
106
96
95
94
93
92
91
90
89
88
87
86
85
84
80
84
96
116
93
94
95
96
97
98
99
100
101
102
103
104
105
83
79
83
95
115
92
82
78
82
94
114
91
81
77
81
93
113
90
80
76
80
92
112
89
79
75
79
91
111
88
78
74
78
90
110
87
77
73
77
89
109
86
76
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
85
75
63
99
84
74
62
98
83
73
61
97
82
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
60
96
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
59
73
59
95
82
70
58
72
58
94
83
71
57
71
57
93
84
72
56
70
56
92
85
73
55
69
55
91
86
74
54
68
54
90
87
75
53
67
53
89
88
76
52
66
65
64
63
62
61
60
59
58
57
58
59
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
77
51
56
51
87
98
78
50
55
50
86
99
79
49
54
49
85
100
80
48
53
48
84
101
81
47
52
47
83
102
82
46
51
46
82
103
83
45
50
45
81
104
84
44
49
44
80
105
85
43
48
43
79
106
86
42
47
42
78
106
87
41
46
41
77
105
88
40
41
42
43
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
40
76
104
103
102
101
100
99
98
97
96
97
98
98
97
96
95
94
93
92
91
90
89
39
35
39
75
95
90
38
34
38
74
94
91
37
33
37
73
93
92
36
32
36
72
92
93
35
31
35
71
91
94
34
30
34
70
90
95
33
29
33
69
89
96
32
28
32
68
88
97
31
27
31
67
87
98
30
26
30
66
86
99
29
25
29
65
85
100
28
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
101
27
15
41
53
77
102
26
14
42
54
78
103
25
13
43
55
79
104
24
12
44
56
80
105
23
11
45
57
81
106
22
10
46
58
82
107
21
9
47
59
83
108
20
8
48
60
84
109
19
7
49
61
85
110
18
6
50
62
86
110
17
5
51
63
87
109
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
103
104
105
106
107
108
109
110
111
112
113
114
115
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
116
106
102
114
126
125
115
105
101
113
125
124
114
104
100
112
124
123
113
103
99
111
123
122
112
102
98
110
122
121
111
101
97
109
121
120
110
100
96
108
120
119
109
99
95
107
119
118
108
98
94
106
118
117
107
97
93
105
117
116
106
96
92
104
116
115
105
93
94
95
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
114
104
92
86
90
102
115
101
113
103
91
85
89
101
116
100
112
102
90
84
88
100
117
99
111
101
89
83
87
99
118
98
110
100
88
82
86
98
118
97
109
99
87
81
85
97
117
96
108
98
86
80
84
96
116
95
107
97
96
95
94
93
92
91
90
89
88
87
86
85
79
83
95
115
94
95
96
97
98
99
100
101
102
103
104
105
106
84
78
82
94
114
93
83
77
81
93
113
92
82
76
80
92
112
91
81
75
79
91
111
90
80
74
78
90
110
89
79
73
77
89
109
88
78
72
76
88
108
87
77
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
86
76
62
98
85
75
61
97
84
74
60
96
83
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
59
95
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
60
72
58
94
83
71
59
71
57
93
84
72
58
70
56
92
85
73
57
69
55
91
86
74
56
68
54
90
87
75
55
67
53
89
88
76
54
66
52
88
89
77
53
65
64
63
62
61
60
59
58
57
56
57
58
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
78
52
55
50
86
99
79
51
54
49
85
100
80
50
53
48
84
101
81
49
52
47
83
102
82
48
51
46
82
103
83
47
50
45
81
104
84
46
49
44
80
105
85
45
48
43
79
106
86
44
47
42
78
106
87
43
46
41
77
105
88
42
45
40
76
104
89
41
42
43
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
39
75
103
102
101
100
99
98
97
96
95
96
97
98
98
97
96
95
94
93
92
91
90
40
34
38
74
94
91
39
33
37
73
93
92
38
32
36
72
92
93
37
31
35
71
91
94
36
30
34
70
90
95
35
29
33
69
89
96
34
28
32
68
88
97
33
27
31
67
87
98
32
26
30
66
86
99
31
25
29
65
85
100
30
24
28
64
84
101
29
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
102
28
14
40
52
76
103
27
13
41
53
77
104
26
12
42
54
78
105
25
11
43
55
79
106
24
10
44
56
80
107
23
9
45
57
81
108
22
8
46
58
82
109
21
7
47
59
83
110
20
6
48
60
84
110
19
5
49
61
85
109
18
4
50
62
86
108
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
102
103
104
105
106
107
108
109
110
111
112
113
114
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
115
105
101
113
125
126
114
104
100
112
124
125
113
103
99
111
123
124
112
102
98
110
122
123
111
101
97
109
121
122
110
100
96
108
120
121
109
99
95
107
119
120
108
98
94
106
118
119
107
97
93
105
117
118
106
96
92
104
116
117
105
95
91
103
115
116
104
92
93
94
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
115
103
91
85
89
101
116
102
114
102
90
84
88
100
117
101
113
101
89
83
87
99
118
100
112
100
88
82
86
98
118
99
111
99
87
81
85
97
117
98
110
98
86
80
84
96
116
97
109
97
85
79
83
95
115
96
108
96
95
94
93
92
91
90
89
88
87
86
85
84
78
82
94
114
95
96
97
98
99
100
101
102
103
104
105
106
107
83
77
81
93
113
94
82
76
80
92
112
93
81
75
79
91
111
92
80
74
78
90
110
91
79
73
77
89
109
90
78
72
76
88
108
89
77
71
75
87
107
88
76
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
87
75
61
97
86
74
60
96
85
73
59
95
84
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
72
58
94
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
61
71
57
93
84
72
60
70
56
92
85
73
59
69
55
91
86
74
58
68
54
90
87
75
57
67
53
89
88
76
56
66
52
88
89
77
55
65
51
87
90
78
54
64
63
62
61
60
59
58
57
56
55
56
57
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
79
53
54
49
85
99
80
52
53
48
84
100
81
51
52
47
83
101
82
50
51
46
82
102
83
49
50
45
81
103
84
48
49
44
80
104
85
47
48
43
79
105
86
46
47
42
78
106
87
45
46
41
77
105
88
44
45
40
76
104
89
43
44
39
75
103
90
42
43
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
38
74
102
101
100
99
98
97
96
95
94
95
96
97
98
98
97
96
95
94
93
92
91
41
33
37
73
93
92
40
32
36
72
92
93
39
31
35
71
91
94
38
30
34
70
90
95
37
29
33
69
89
96
36
28
32
68
88
97
35
27
31
67
87
98
34
26
30
66
86
99
33
25
29
65
85
100
32
24
28
64
84
101
31
23
27
63
83
102
30
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
103
29
13
39
51
75
104
28
12
40
52
76
105
27
11
41
53
77
106
26
10
42
54
78
107
25
9
43
55
79
108
24
8
44
56
80
109
23
7
45
57
81
110
22
6
46
58
82
110
21
5
47
59
83
109
20
4
48
60
84
108
19
3
49
61
85
107
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
101
102
103
104
105
106
107
108
109
110
111
112
113
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
114
104
100
112
124
127
113
103
99
111
123
126
112
102
98
110
122
125
111
101
97
109
121
124
110
100
96
108
120
123
109
99
95
107
119
122
108
98
94
106
118
121
107
97
93
105
117
120
106
96
92
104
116
119
105
95
91
103
115
118
104
94
90
102
114
117
103
91
92
93
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
116
102
90
84
88
100
117
103
115
101
89
83
87
99
118
102
114
100
88
82
86
98
118
101
113
99
87
81
85
97
117
100
112
98
86
80
84
96
116
99
111
97
85
79
83
95
115
98
110
96
84
78
82
94
114
97
109
95
94
93
92
91
90
89
88
87
86
85
84
83
77
81
93
113
96
97
98
99
100
101
102
103
104
105
106
107
108
82
76
80
92
112
95
81
75
79
91
111
94
80
74
78
90
110
93
79
73
77
89
109
92
78
72
76
88
108
91
77
71
75
87
107
90
76
70
74
86
106
89
75
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
88
74
60
96
87
73
59
95
86
72
58
94
85
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
72
71
57
93
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
62
70
56
92
85
73
61
69
55
91
86
74
60
68
54
90
87
75
59
67
53
89
88
76
58
66
52
88
89
77
57
65
51
87
90
78
56
64
50
86
91
79
55
63
62
61
60
59
58
57
56
55
54
55
56
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
80
54
53
48
84
98
81
53
52
47
83
99
82
52
51
46
82
100
83
51
50
45
81
101
84
50
49
44
80
102
85
49
48
43
79
103
86
48
47
42
78
104
87
47
46
41
77
105
88
46
45
40
76
104
89
45
44
39
75
103
90
44
43
38
74
102
91
43
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
37
73
101
100
99
98
97
96
95
94
93
94
95
96
97
98
98
97
96
95
94
93
92
42
32
36
72
92
93
41
31
35
71
91
94
40
30
34
70
90
95
39
29
33
69
89
96
38
28
32
68
88
97
37
27
31
67
87
98
36
26
30
66
86
99
35
25
29
65
85
100
34
24
28
64
84
101
33
23
27
63
83
102
32
22
26
62
82
103
31
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
104
30
12
38
50
74
105
29
11
39
51
75
106
28
10
40
52
76
107
27
9
41
53
77
108
26
8
42
54
78
109
25
7
43
55
79
110
24
6
44
56
80
110
23
5
45
57
81
109
22
4
46
58
82
108
21
3
47
59
83
107
20
2
48
60
84
106
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
100
101
102
103
104
105
106
107
108
109
110
111
112
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
113
103
99
111
123
128
112
102
98
110
122
127
111
101
97
109
121
126
110
100
96
108
120
125
109
99
95
107
119
124
108
98
94
106
118
123
107
97
93
105
117
122
106
96
92
104
116
121
105
95
91
103
115
120
104
94
90
102
114
119
103
93
89
101
113
118
102
90
91
92
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
117
101
89
83
87
99
118
104
116
100
88
82
86
98
118
103
115
99
87
81
85
97
117
102
114
98
86
80
84
96
116
101
113
97
85
79
83
95
115
100
112
96
84
78
82
94
114
99
111
95
83
77
81
93
113
98
110
94
93
92
91
90
89
88
87
86
85
84
83
82
76
80
92
112
97
98
99
100
101
102
103
104
105
106
107
108
109
81
75
79
91
111
96
80
74
78
90
110
95
79
73
77
89
109
94
78
72
76
88
108
93
77
71
75
87
107
92
76
70
74
86
106
91
75
69
73
85
105
90
74
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
89
73
59
95
88
72
58
94
87
71
57
93
86
68
67
66
65
64
65
66
67
68
69
70
71
72
73
72
71
70
56
92
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
63
69
55
91
86
74
62
68
54
90
87
75
61
67
53
89
88
76
60
66
52
88
89
77
59
65
51
87
90
78
58
64
50
86
91
79
57
63
49
85
92
80
56
62
61
60
59
58
57
56
55
54
53
54
55
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
81
55
52
47
83
97
82
54
51
46
82
98
83
53
50
45
81
99
84
52
49
44
80
100
85
51
48
43
79
101
86
50
47
42
78
102
87
49
46
41
77
103
88
48
45
40
76
104
89
47
44
39
75
103
90
46
43
38
74
102
91
45
42
37
73
101
92
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
36
72
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
98
97
96
95
94
93
43
31
35
71
91
94
42
30
34
70
90
95
41
29
33
69
89
96
40
28
32
68
88
97
39
27
31
67
87
98
38
26
30
66
86
99
37
25
29
65
85
100
36
24
28
64
84
101
35
23
27
63
83
102
34
22
26
62
82
103
33
21
25
61
81
104
32
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
105
31
11
37
49
73
106
30
10
38
50
74
107
29
9
39
51
75
108
28
8
40
52
76
109
27
7
41
53
77
110
26
6
42
54
78
110
25
5
43
55
79
109
24
4
44
56
80
108
23
3
45
57
81
107
22
2
46
58
82
106
21
1
47
59
83
105
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
112
113
114
115
116
117
118
119
120
121
122
123
124
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
131
115
111
123
127
143
130
114
110
122
126
142
129
113
109
121
125
141
128
112
108
120
124
140
127
111
107
119
123
139
126
110
106
118
122
138
125
109
105
117
121
137
124
108
104
116
120
136
123
107
103
115
119
135
122
106
102
114
118
134
121
105
101
113
117
133
120
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
132
119
107
95
99
111
107
119
131
118
106
94
98
110
106
118
130
117
105
93
97
109
105
117
129
116
104
92
96
108
104
116
128
115
103
91
95
107
103
115
127
114
102
90
94
106
102
114
126
113
101
89
93
105
101
113
125
112
111
110
109
108
107
106
105
104
103
102
101
100
88
92
104
100
112
113
114
115
116
117
118
119
120
121
122
123
124
99
87
91
103
99
111
98
86
90
102
98
110
97
85
89
101
97
109
96
84
88
100
96
108
95
83
87
99
95
107
94
82
86
98
94
106
93
81
85
97
93
105
92
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
104
91
71
83
103
90
70
82
102
89
69
81
101
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
68
80
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
99
87
67
79
99
110
98
86
66
78
98
110
97
85
65
77
97
109
96
84
64
76
96
108
95
83
63
75
95
107
94
82
62
74
94
106
93
81
61
73
93
105
92
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
104
91
72
59
71
85
103
90
73
58
70
86
102
89
74
57
69
87
101
88
75
56
68
88
100
87
76
55
67
89
99
86
77
54
66
90
98
85
78
53
65
91
97
84
79
52
64
92
96
83
80
51
63
91
95
82
79
50
62
90
94
81
78
49
61
89
93
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
48
60
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
79
67
47
59
79
93
78
66
46
58
78
94
77
65
45
57
77
95
76
64
44
56
76
96
75
63
43
55
75
97
74
62
42
54
74
98
73
61
41
53
73
99
72
60
40
52
72
100
71
59
39
51
71
101
70
58
38
50
70
102
69
57
37
49
69
103
68
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
104
67
47
23
37
61
103
66
46
22
38
62
102
65
45
21
39
63
101
64
44
20
40
64
100
63
43
19
41
65
99
62
42
18
42
66
98
61
41
17
43
67
97
60
40
16
44
68
96
59
39
15
45
69
95
58
38
14
46
70
94
57
37
13
47
71
93
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
0
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
111
112
113
114
115
116
117
118
119
120
121
122
123
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
130
114
110
122
126
142
129
113
109
121
125
141
128
112
108
120
124
140
127
111
107
119
123
139
126
110
106
118
122
138
125
109
105
117
121
137
124
108
104
116
120
136
123
107
103
115
119
135
122
106
102
114
118
134
121
105
101
113
117
133
120
104
100
112
116
132
119
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
131
118
106
94
98
110
106
118
130
117
105
93
97
109
105
117
129
116
104
92
96
108
104
116
128
115
103
91
95
107
103
115
127
114
102
90
94
106
102
114
126
113
101
89
93
105
101
113
125
112
100
88
92
104
100
112
124
111
110
109
108
107
106
105
104
103
102
101
100
99
87
91
103
99
111
112
113
114
115
116
117
118
119
120
121
122
123
98
86
90
102
98
110
97
85
89
101
97
109
96
84
88
100
96
108
95
83
87
99
95
107
94
82
86
98
94
106
93
81
85
97
93
105
92
80
84
96
92
104
91
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
103
90
70
82
102
89
69
81
101
88
68
80
100
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
67
79
99
100
101
102
103
104
105
106
107
108
109
109
108
107
106
105
104
98
86
66
78
98
109
97
85
65
77
97
109
96
84
64
76
96
108
95
83
63
75
95
107
94
82
62
74
94
106
93
81
61
73
93
105
92
80
60
72
92
104
91
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
103
90
71
58
70
84
102
89
72
57
69
85
101
88
73
56
68
86
100
87
74
55
67
87
99
86
75
54
66
88
98
85
76
53
65
89
97
84
77
52
64
90
96
83
78
51
63
91
95
82
79
50
62
90
94
81
78
49
61
89
93
80
77
48
60
88
92
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
47
59
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
80
66
46
58
78
92
79
65
45
57
77
93
78
64
44
56
76
94
77
63
43
55
75
95
76
62
42
54
74
96
75
61
41
53
73
97
74
60
40
52
72
98
73
59
39
51
71
99
72
58
38
50
70
100
71
57
37
49
69
101
70
56
36
48
68
102
69
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
103
68
48
22
36
60
102
67
47
21
37
61
101
66
46
20
38
62
100
65
45
19
39
63
99
64
44
18
40
64
98
63
43
17
41
65
97
62
42
16
42
66
96
61
41
15
43
67
95
60
40
14
44
68
94
59
39
13
45
69
93
58
38
12
46
70
92
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
1
0
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
110
111
112
113
114
115
116
117
118
119
120
121
122
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
129
113
109
121
125
141
128
112
108
120
124
140
127
111
107
119
123
139
126
110
106
118
122
138
125
109
105
117
121
137
124
108
104
116
120
136
123
107
103
115
119
135
122
106
102
114
118
134
121
105
101
113
117
133
120
104
100
112
116
132
119
103
99
111
115
131
118
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
130
117
105
93
97
109
105
117
129
116
104
92
96
108
104
116
128
115
103
91
95
107
103
115
127
114
102
90
94
106
102
114
126
113
101
89
93
105
101
113
125
112
100
88
92
104
100
112
124
111
99
87
91
103
99
111
123
110
109
108
107
106
105
104
103
102
101
100
99
98
86
90
102
98
110
111
112
113
114
115
116
117
118
119
120
121
122
97
85
89
101
97
109
96
84
88
100
96
108
95
83
87
99
95
107
94
82
86
98
94
106
93
81
85
97
93
105
92
80
84
96
92
104
91
79
83
95
91
103
90
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
102
89
69
81
101
88
68
80
100
87
67
79
99
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
66
78
98
99
100
101
102
103
104
105
106
107
108
108
107
106
105
104
103
97
85
65
77
97
108
96
84
64
76
96
108
95
83
63
75
95
107
94
82
62
74
94
106
93
81
61
73
93
105
92
80
60
72
92
104
91
79
59
71
91
103
90
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
102
89
70
57
69
83
101
88
71
56
68
84
100
87
72
55
67
85
99
86
73
54
66
86
98
85
74
53
65
87
97
84
75
52
64
88
96
83
76
51
63
89
95
82
77
50
62
90
94
81
78
49
61
89
93
80
77
48
60
88
92
79
76
47
59
87
91
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
46
58
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
79
65
45
57
77
91
80
64
44
56
76
92
79
63
43
55
75
93
78
62
42
54
74
94
77
61
41
53
73
95
76
60
40
52
72
96
75
59
39
51
71
97
74
58
38
50
70
98
73
57
37
49
69
99
72
56
36
48
68
100
71
55
35
47
67
101
70
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
102
69
47
21
35
59
101
68
48
20
36
60
100
67
47
19
37
61
99
66
46
18
38
62
98
65
45
17
39
63
97
64
44
16
40
64
96
63
43
15
41
65
95
62
42
14
42
66
94
61
41
13
43
67
93
60
40
12
44
68
92
59
39
11
45
69
91
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
2
1
0
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
109
110
111
112
113
114
115
116
117
118
119
120
121
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
128
112
108
120
124
140
127
111
107
119
123
139
126
110
106
118
122
138
125
109
105
117
121
137
124
108
104
116
120
136
123
107
103
115
119
135
122
106
102
114
118
134
121
105
101
113
117
133
120
104
100
112
116
132
119
103
99
111
115
131
118
102
98
110
114
130
117
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
129
116
104
92
96
108
104
116
128
115
103
91
95
107
103
115
127
114
102
90
94
106
102
114
126
113
101
89
93
105
101
113
125
112
100
88
92
104
100
112
124
111
99
87
91
103
99
111
123
110
98
86
90
102
98
110
122
109
108
107
106
105
104
103
102
101
100
99
98
97
85
89
101
97
109
110
111
112
113
114
115
116
117
118
119
120
121
96
84
88
100
96
108
95
83
87
99
95
107
94
82
86
98
94
106
93
81
85
97
93
105
92
80
84
96
92
104
91
79
83
95
91
103
90
78
82
94
90
102
89
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
101
88
68
80
100
87
67
79
99
86
66
78
98
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
65
77
97
98
99
100
101
102
103
104
105
106
107
107
106
105
104
103
102
96
84
64
76
96
107
95
83
63
75
95
107
94
82
62
74
94
106
93
81
61
73
93
105
92
80
60
72
92
104
91
79
59
71
91
103
90
78
58
70
90
102
89
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
101
88
69
56
68
82
100
87
70
55
67
83
99
86
71
54
66
84
98
85
72
53
65
85
97
84
73
52
64
86
96
83
74
51
63
87
95
82
75
50
62
88
94
81
76
49
61
89
93
80
77
48
60
88
92
79
76
47
59
87
91
78
75
46
58
86
90
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
45
57
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
78
64
44
56
76
90
79
63
43
55
75
91
80
62
42
54
74
92
79
61
41
53
73
93
78
60
40
52
72
94
77
59
39
51
71
95
76
58
38
50
70
96
75
57
37
49
69
97
74
56
36
48
68
98
73
55
35
47
67
99
72
54
34
46
66
100
71
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
101
70
46
20
34
58
100
69
47
19
35
59
99
68
48
18
36
60
98
67
47
17
37
61
97
66
46
16
38
62
96
65
45
15
39
63
95
64
44
14
40
64
94
63
43
13
41
65
93
62
42
12
42
66
92
61
41
11
43
67
91
60
40
10
44
68
90
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
3
2
1
0
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
108
109
110
111
112
113
114
115
116
117
118
119
120
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
127
111
107
119
123
139
126
110
106
118
122
138
125
109
105
117
121
137
124
108
104
116
120
136
123
107
103
115
119
135
122
106
102
114
118
134
121
105
101
113
117
133
120
104
100
112
116
132
119
103
99
111
115
131
118
102
98
110
114
130
117
101
97
109
113
129
116
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
128
115
103
91
95
107
103
115
127
114
102
90
94
106
102
114
126
113
101
89
93
105
101
113
125
112
100
88
92
104
100
112
124
111
99
87
91
103
99
111
123
110
98
86
90
102
98
110
122
109
97
85
89
101
97
109
121
108
107
106
105
104
103
102
101
100
99
98
97
96
84
88
100
96
108
109
110
111
112
113
114
115
116
117
118
119
120
95
83
87
99
95
107
94
82
86
98
94
106
93
81
85
97
93
105
92
80
84
96
92
104
91
79
83
95
91
103
90
78
82
94
90
102
89
77
81
93
89
101
88
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
100
87
67
79
99
86
66
78
98
85
65
77
97
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
64
76
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
95
83
63
75
95
106
94
82
62
74
94
106
93
81
61
73
93
105
92
80
60
72
92
104
91
79
59
71
91
103
90
78
58
70
90
102
89
77
57
69
89
101
88
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
100
87
68
55
67
81
99
86
69
54
66
82
98
85
70
53
65
83
97
84
71
52
64
84
96
83
72
51
63
85
95
82
73
50
62
86
94
81
74
49
61
87
93
80
75
48
60
88
92
79
76
47
59
87
91
78
75
46
58
86
90
77
74
45
57
85
89
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
44
56
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
77
63
43
55
75
89
78
62
42
54
74
90
79
61
41
53
73
91
80
60
40
52
72
92
79
59
39
51
71
93
78
58
38
50
70
94
77
57
37
49
69
95
76
56
36
48
68
96
75
55
35
47
67
97
74
54
34
46
66
98
73
53
33
45
65
99
72
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
100
71
45
19
33
57
99
70
46
18
34
58
98
69
47
17
35
59
97
68
48
16
36
60
96
67
47
15
37
61
95
66
46
14
38
62
94
65
45
13
39
63
93
64
44
12
40
64
92
63
43
11
41
65
91
62
42
10
42
66
90
61
41
9
43
67
89
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
4
3
2
1
0
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
107
108
109
110
111
112
113
114
115
116
117
118
119
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
126
110
106
118
122
138
125
109
105
117
121
137
124
108
104
116
120
136
123
107
103
115
119
135
122
106
102
114
118
134
121
105
101
113
117
133
120
104
100
112
116
132
119
103
99
111
115
131
118
102
98
110
114
130
117
101
97
109
113
129
116
100
96
108
112
128
115
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
127
114
102
90
94
106
102
114
126
113
101
89
93
105
101
113
125
112
100
88
92
104
100
112
124
111
99
87
91
103
99
111
123
110
98
86
90
102
98
110
122
109
97
85
89
101
97
109
121
108
96
84
88
100
96
108
120
107
106
105
104
103
102
101
100
99
98
97
96
95
83
87
99
95
107
108
109
110
111
112
113
114
115
116
117
118
119
94
82
86
98
94
106
93
81
85
97
93
105
92
80
84
96
92
104
91
79
83
95
91
103
90
78
82
94
90
102
89
77
81
93
89
101
88
76
80
92
88
100
87
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
99
86
66
78
98
85
65
77
97
84
64
76
96
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
63
75
95
96
97
98
99
100
101
102
103
104
105
105
104
103
102
101
100
94
82
62
74
94
105
93
81
61
73
93
105
92
80
60
72
92
104
91
79
59
71
91
103
90
78
58
70
90
102
89
77
57
69
89
101
88
76
56
68
88
100
87
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
99
86
67
54
66
80
98
85
68
53
65
81
97
84
69
52
64
82
96
83
70
51
63
83
95
82
71
50
62
84
94
81
72
49
61
85
93
80
73
48
60
86
92
79
74
47
59
87
91
78
75
46
58
86
90
77
74
45
57
85
89
76
73
44
56
84
88
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
43
55
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
76
62
42
54
74
88
77
61
41
53
73
89
78
60
40
52
72
90
79
59
39
51
71
91
80
58
38
50
70
92
79
57
37
49
69
93
78
56
36
48
68
94
77
55
35
47
67
95
76
54
34
46
66
96
75
53
33
45
65
97
74
52
32
44
64
98
73
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
99
72
44
18
32
56
98
71
45
17
33
57
97
70
46
16
34
58
96
69
47
15
35
59
95
68
48
14
36
60
94
67
47
13
37
61
93
66
46
12
38
62
92
65
45
11
39
63
91
64
44
10
40
64
90
63
43
9
41
65
89
62
42
8
42
66
88
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
5
4
3
2
1
0
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
106
107
108
109
110
111
112
113
114
115
116
117
118
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
125
109
105
117
121
137
124
108
104
116
120
136
123
107
103
115
119
135
122
106
102
114
118
134
121
105
101
113
117
133
120
104
100
112
116
132
119
103
99
111
115
131
118
102
98
110
114
130
117
101
97
109
113
129
116
100
96
108
112
128
115
99
95
107
111
127
114
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
126
113
101
89
93
105
101
113
125
112
100
88
92
104
100
112
124
111
99
87
91
103
99
111
123
110
98
86
90
102
98
110
122
109
97
85
89
101
97
109
121
108
96
84
88
100
96
108
120
107
95
83
87
99
95
107
119
106
105
104
103
102
101
100
99
98
97
96
95
94
82
86
98
94
106
107
108
109
110
111
112
113
114
115
116
117
118
93
81
85
97
93
105
92
80
84
96
92
104
91
79
83
95
91
103
90
78
82
94
90
102
89
77
81
93
89
101
88
76
80
92
88
100
87
75
79
91
87
99
86
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
98
85
65
77
97
84
64
76
96
83
63
75
95
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
62
74
94
95
96
97
98
99
100
101
102
103
104
104
103
102
101
100
99
93
81
61
73
93
104
92
80
60
72
92
104
91
79
59
71
91
103
90
78
58
70
90
102
89
77
57
69
89
101
88
76
56
68
88
100
87
75
55
67
87
99
86
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
98
85
66
53
65
79
97
84
67
52
64
80
96
83
68
51
63
81
95
82
69
50
62
82
94
81
70
49
61
83
93
80
71
48
60
84
92
79
72
47
59
85
91
78
73
46
58
86
90
77
74
45
57
85
89
76
73
44
56
84
88
75
72
43
55
83
87
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
42
54
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
75
61
41
53
73
87
76
60
40
52
72
88
77
59
39
51
71
89
78
58
38
50
70
90
79
57
37
49
69
91
80
56
36
48
68
92
79
55
35
47
67
93
78
54
34
46
66
94
77
53
33
45
65
95
76
52
32
44
64
96
75
51
31
43
63
97
74
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
98
73
43
17
31
55
97
72
44
16
32
56
96
71
45
15
33
57
95
70
46
14
34
58
94
69
47
13
35
59
93
68
48
12
36
60
92
67
47
11
37
61
91
66
46
10
38
62
90
65
45
9
39
63
89
64
44
8
40
64
88
63
43
7
41
65
87
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
6
5
4
3
2
1
0
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
105
106
107
108
109
110
111
112
113
114
115
116
117
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
124
108
104
116
120
136
123
107
103
115
119
135
122
106
102
114
118
134
121
105
101
113
117
133
120
104
100
112
116
132
119
103
99
111
115
131
118
102
98
110
114
130
117
101
97
109
113
129
116
100
96
108
112
128
115
99
95
107
111
127
114
98
94
106
110
126
113
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
125
112
100
88
92
104
100
112
124
111
99
87
91
103
99
111
123
110
98
86
90
102
98
110
122
109
97
85
89
101
97
109
121
108
96
84
88
100
96
108
120
107
95
83
87
99
95
107
119
106
94
82
86
98
94
106
118
105
104
103
102
101
100
99
98
97
96
95
94
93
81
85
97
93
105
106
107
108
109
110
111
112
113
114
115
116
117
92
80
84
96
92
104
91
79
83
95
91
103
90
78
82
94
90
102
89
77
81
93
89
101
88
76
80
92
88
100
87
75
79
91
87
99
86
74
78
90
86
98
85
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
97
84
64
76
96
83
63
75
95
82
62
74
94
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
61
73
93
94
95
96
97
98
99
100
101
102
103
103
102
101
100
99
98
92
80
60
72
92
103
91
79
59
71
91
103
90
78
58
70
90
102
89
77
57
69
89
101
88
76
56
68
88
100
87
75
55
67
87
99
86
74
54
66
86
98
85
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
97
84
65
52
64
78
96
83
66
51
63
79
95
82
67
50
62
80
94
81
68
49
61
81
93
80
69
48
60
82
92
79
70
47
59
83
91
78
71
46
58
84
90
77
72
45
57
85
89
76
73
44
56
84
88
75
72
43
55
83
87
74
71
42
54
82
86
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
41
53
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
74
60
40
52
72
86
75
59
39
51
71
87
76
58
38
50
70
88
77
57
37
49
69
89
78
56
36
48
68
90
79
55
35
47
67
91
80
54
34
46
66
92
79
53
33
45
65
93
78
52
32
44
64
94
77
51
31
43
63
95
76
50
30
42
62
96
75
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
97
74
42
16
30
54
96
73
43
15
31
55
95
72
44
14
32
56
94
71
45
13
33
57
93
70
46
12
34
58
92
69
47
11
35
59
91
68
48
10
36
60
90
67
47
9
37
61
89
66
46
8
38
62
88
65
45
7
39
63
87
64
44
6
40
64
86
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
7
6
5
4
3
2
1
0
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
104
105
106
107
108
109
110
111
112
113
114
115
116
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
123
107
103
115
119
135
122
106
102
114
118
134
121
105
101
113
117
133
120
104
100
112
116
132
119
103
99
111
115
131
118
102
98
110
114
130
117
101
97
109
113
129
116
100
96
108
112
128
115
99
95
107
111
127
114
98
94
106
110
126
113
97
93
105
109
125
112
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
124
111
99
87
91
103
99
111
123
110
98
86
90
102
98
110
122
109
97
85
89
101
97
109
121
108
96
84
88
100
96
108
120
107
95
83
87
99
95
107
119
106
94
82
86
98
94
106
118
105
93
81
85
97
93
105
117
104
103
102
101
100
99
98
97
96
95
94
93
92
80
84
96
92
104
105
106
107
108
109
110
111
112
113
114
115
116
91
79
83
95
91
103
90
78
82
94
90
102
89
77
81
93
89
101
88
76
80
92
88
100
87
75
79
91
87
99
86
74
78
90
86
98
85
73
77
89
85
97
84
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
96
83
63
75
95
82
62
74
94
81
61
73
93
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
60
72
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
91
79
59
71
91
102
90
78
58
70
90
102
89
77
57
69
89
101
88
76
56
68
88
100
87
75
55
67
87
99
86
74
54
66
86
98
85
73
53
65
85
97
84
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
96
83
64
51
63
77
95
82
65
50
62
78
94
81
66
49
61
79
93
80
67
48
60
80
92
79
68
47
59
81
91
78
69
46
58
82
90
77
70
45
57
83
89
76
71
44
56
84
88
75
72
43
55
83
87
74
71
42
54
82
86
73
70
41
53
81
85
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
40
52
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
73
59
39
51
71
85
74
58
38
50
70
86
75
57
37
49
69
87
76
56
36
48
68
88
77
55
35
47
67
89
78
54
34
46
66
90
79
53
33
45
65
91
80
52
32
44
64
92
79
51
31
43
63
93
78
50
30
42
62
94
77
49
29
41
61
95
76
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
96
75
41
15
29
53
95
74
42
14
30
54
94
73
43
13
31
55
93
72
44
12
32
56
92
71
45
11
33
57
91
70
46
10
34
58
90
69
47
9
35
59
89
68
48
8
36
60
88
67
47
7
37
61
87
66
46
6
38
62
86
65
45
5
39
63
85
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
8
7
6
5
4
3
2
1
0
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
103
104
105
106
107
108
109
110
111
112
113
114
115
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
122
106
102
114
118
134
121
105
101
113
117
133
120
104
100
112
116
132
119
103
99
111
115
131
118
102
98
110
114
130
117
101
97
109
113
129
116
100
96
108
112
128
115
99
95
107
111
127
114
98
94
106
110
126
113
97
93
105
109
125
112
96
92
104
108
124
111
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
123
110
98
86
90
102
98
110
122
109
97
85
89
101
97
109
121
108
96
84
88
100
96
108
120
107
95
83
87
99
95
107
119
106
94
82
86
98
94
106
118
105
93
81
85
97
93
105
117
104
92
80
84
96
92
104
116
103
102
101
100
99
98
97
96
95
94
93
92
91
79
83
95
91
103
104
105
106
107
108
109
110
111
112
113
114
115
90
78
82
94
90
102
89
77
81
93
89
101
88
76
80
92
88
100
87
75
79
91
87
99
86
74
78
90
86
98
85
73
77
89
85
97
84
72
76
88
84
96
83
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
95
82
62
74
94
81
61
73
93
80
60
72
92
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
59
71
91
92
93
94
95
96
97
98
99
100
101
101
100
99
98
97
96
90
78
58
70
90
101
89
77
57
69
89
101
88
76
56
68
88
100
87
75
55
67
87
99
86
74
54
66
86
98
85
73
53
65
85
97
84
72
52
64
84
96
83
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
95
82
63
50
62
76
94
81
64
49
61
77
93
80
65
48
60
78
92
79
66
47
59
79
91
78
67
46
58
80
90
77
68
45
57
81
89
76
69
44
56
82
88
75
70
43
55
83
87
74
71
42
54
82
86
73
70
41
53
81
85
72
69
40
52
80
84
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
39
51
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
72
58
38
50
70
84
73
57
37
49
69
85
74
56
36
48
68
86
75
55
35
47
67
87
76
54
34
46
66
88
77
53
33
45
65
89
78
52
32
44
64
90
79
51
31
43
63
91
80
50
30
42
62
92
79
49
29
41
61
93
78
48
28
40
60
94
77
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
95
76
40
14
28
52
94
75
41
13
29
53
93
74
42
12
30
54
92
73
43
11
31
55
91
72
44
10
32
56
90
71
45
9
33
57
89
70
46
8
34
58
88
69
47
7
35
59
87
68
48
6
36
60
86
67
47
5
37
61
85
66
46
4
38
62
84
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
9
8
7
6
5
4
3
2
1
0
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
102
103
104
105
106
107
108
109
110
111
112
113
114
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
121
105
101
113
117
133
120
104
100
112
116
132
119
103
99
111
115
131
118
102
98
110
114
130
117
101
97
109
113
129
116
100
96
108
112
128
115
99
95
107
111
127
114
98
94
106
110
126
113
97
93
105
109
125
112
96
92
104
108
124
111
95
91
103
107
123
110
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
122
109
97
85
89
101
97
109
121
108
96
84
88
100
96
108
120
107
95
83
87
99
95
107
119
106
94
82
86
98
94
106
118
105
93
81
85
97
93
105
117
104
92
80
84
96
92
104
116
103
91
79
83
95
91
103
115
102
101
100
99
98
97
96
95
94
93
92
91
90
78
82
94
90
102
103
104
105
106
107
108
109
110
111
112
113
114
89
77
81
93
89
101
88
76
80
92
88
100
87
75
79
91
87
99
86
74
78
90
86
98
85
73
77
89
85
97
84
72
76
88
84
96
83
71
75
87
83
95
82
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
94
81
61
73
93
80
60
72
92
79
59
71
91
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
58
70
90
91
92
93
94
95
96
97
98
99
100
100
99
98
97
96
95
89
77
57
69
89
100
88
76
56
68
88
100
87
75
55
67
87
99
86
74
54
66
86
98
85
73
53
65
85
97
84
72
52
64
84
96
83
71
51
63
83
95
82
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
94
81
62
49
61
75
93
80
63
48
60
76
92
79
64
47
59
77
91
78
65
46
58
78
90
77
66
45
57
79
89
76
67
44
56
80
88
75
68
43
55
81
87
74
69
42
54
82
86
73
70
41
53
81
85
72
69
40
52
80
84
71
68
39
51
79
83
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
38
50
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
71
57
37
49
69
83
72
56
36
48
68
84
73
55
35
47
67
85
74
54
34
46
66
86
75
53
33
45
65
87
76
52
32
44
64
88
77
51
31
43
63
89
78
50
30
42
62
90
79
49
29
41
61
91
80
48
28
40
60
92
79
47
27
39
59
93
78
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
94
77
39
13
27
51
93
76
40
12
28
52
92
75
41
11
29
53
91
74
42
10
30
54
90
73
43
9
31
55
89
72
44
8
32
56
88
71
45
7
33
57
87
70
46
6
34
58
86
69
47
5
35
59
85
68
48
4
36
60
84
67
47
3
37
61
83
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
10
9
8
7
6
5
4
3
2
1
0
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
101
102
103
104
105
106
107
108
109
110
111
112
113
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
120
104
100
112
116
132
119
103
99
111
115
131
118
102
98
110
114
130
117
101
97
109
113
129
116
100
96
108
112
128
115
99
95
107
111
127
114
98
94
106
110
126
113
97
93
105
109
125
112
96
92
104
108
124
111
95
91
103
107
123
110
94
90
102
106
122
109
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
121
108
96
84
88
100
96
108
120
107
95
83
87
99
95
107
119
106
94
82
86
98
94
106
118
105
93
81
85
97
93
105
117
104
92
80
84
96
92
104
116
103
91
79
83
95
91
103
115
102
90
78
82
94
90
102
114
101
100
99
98
97
96
95
94
93
92
91
90
89
77
81
93
89
101
102
103
104
105
106
107
108
109
110
111
112
113
88
76
80
92
88
100
87
75
79
91
87
99
86
74
78
90
86
98
85
73
77
89
85
97
84
72
76
88
84
96
83
71
75
87
83
95
82
70
74
86
82
94
81
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
93
80
60
72
92
79
59
71
91
78
58
70
90
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
57
69
89
90
91
92
93
94
95
96
97
98
99
99
98
97
96
95
94
88
76
56
68
88
99
87
75
55
67
87
99
86
74
54
66
86
98
85
73
53
65
85
97
84
72
52
64
84
96
83
71
51
63
83
95
82
70
50
62
82
94
81
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
93
80
61
48
60
74
92
79
62
47
59
75
91
78
63
46
58
76
90
77
64
45
57
77
89
76
65
44
56
78
88
75
66
43
55
79
87
74
67
42
54
80
86
73
68
41
53
81
85
72
69
40
52
80
84
71
68
39
51
79
83
70
67
38
50
78
82
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
37
49
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
70
56
36
48
68
82
71
55
35
47
67
83
72
54
34
46
66
84
73
53
33
45
65
85
74
52
32
44
64
86
75
51
31
43
63
87
76
50
30
42
62
88
77
49
29
41
61
89
78
48
28
40
60
90
79
47
27
39
59
91
80
46
26
38
58
92
79
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
93
78
38
12
26
50
92
77
39
11
27
51
91
76
40
10
28
52
90
75
41
9
29
53
89
74
42
8
30
54
88
73
43
7
31
55
87
72
44
6
32
56
86
71
45
5
33
57
85
70
46
4
34
58
84
69
47
3
35
59
83
68
48
2
36
60
82
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
11
10
9
8
7
6
5
4
3
2
1
0
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
100
101
102
103
104
105
106
107
108
109
110
111
112
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
119
103
99
111
115
131
118
102
98
110
114
130
117
101
97
109
113
129
116
100
96
108
112
128
115
99
95
107
111
127
114
98
94
106
110
126
113
97
93
105
109
125
112
96
92
104
108
124
111
95
91
103
107
123
110
94
90
102
106
122
109
93
89
101
105
121
108
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
120
107
95
83
87
99
95
107
119
106
94
82
86
98
94
106
118
105
93
81
85
97
93
105
117
104
92
80
84
96
92
104
116
103
91
79
83
95
91
103
115
102
90
78
82
94
90
102
114
101
89
77
81
93
89
101
113
100
99
98
97
96
95
94
93
92
91
90
89
88
76
80
92
88
100
101
102
103
104
105
106
107
108
109
110
111
112
87
75
79
91
87
99
86
74
78
90
86
98
85
73
77
89
85
97
84
72
76
88
84
96
83
71
75
87
83
95
82
70
74
86
82
94
81
69
73
85
81
93
80
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
92
79
59
71
91
78
58
70
90
77
57
69
89
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
56
68
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
87
75
55
67
87
98
86
74
54
66
86
98
85
73
53
65
85
97
84
72
52
64
84
96
83
71
51
63
83
95
82
70
50
62
82
94
81
69
49
61
81
93
80
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
92
79
60
47
59
73
91
78
61
46
58
74
90
77
62
45
57
75
89
76
63
44
56
76
88
75
64
43
55
77
87
74
65
42
54
78
86
73
66
41
53
79
85
72
67
40
52
80
84
71
68
39
51
79
83
70
67
38
50
78
82
69
66
37
49
77
81
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
36
48
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
69
55
35
47
67
81
70
54
34
46
66
82
71
53
33
45
65
83
72
52
32
44
64
84
73
51
31
43
63
85
74
50
30
42
62
86
75
49
29
41
61
87
76
48
28
40
60
88
77
47
27
39
59
89
78
46
26
38
58
90
79
45
25
37
57
91
80
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
92
79
37
11
25
49
91
78
38
10
26
50
90
77
39
9
27
51
89
76
40
8
28
52
88
75
41
7
29
53
87
74
42
6
30
54
86
73
43
5
31
55
85
72
44
4
32
56
84
71
45
3
33
57
83
70
46
2
34
58
82
69
47
1
35
59
81
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
12
11
10
9
8
7
6
5
4
3
2
1
0
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
112
111
110
109
108
107
106
105
104
103
102
101
100
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
131
115
111
99
103
119
130
114
110
98
102
118
129
113
109
97
101
117
128
112
108
96
100
116
127
111
107
95
99
115
126
110
106
94
98
114
125
109
105
93
97
113
124
108
104
92
96
112
123
107
103
91
95
111
122
106
102
90
94
110
121
105
101
89
93
109
120
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
108
119
107
95
99
87
83
95
107
118
106
94
98
86
82
94
106
117
105
93
97
85
81
93
105
116
104
92
96
84
80
92
104
115
103
91
95
83
79
91
103
114
102
90
94
82
78
90
102
113
101
89
93
81
77
89
101
112
111
110
109
108
107
106
105
104
103
102
101
100
88
92
80
76
88
89
90
91
92
93
94
95
96
97
98
99
100
99
87
91
79
75
87
98
86
90
78
74
86
97
85
89
77
73
85
96
84
88
76
72
84
95
83
87
75
71
83
94
82
86
74
70
82
93
81
85
73
69
81
92
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
80
91
71
59
79
90
70
58
78
89
69
57
77
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
68
56
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
98
87
67
55
75
87
98
86
66
54
74
86
97
85
65
53
73
85
96
84
64
52
72
84
95
83
63
51
71
83
94
82
62
50
70
82
93
81
61
49
69
81
92
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
80
91
72
59
47
61
79
90
73
58
46
62
78
89
74
57
45
63
77
88
75
56
44
64
76
87
76
55
43
65
75
86
77
54
42
66
74
85
78
53
41
67
73
84
79
52
40
68
72
83
80
51
39
67
71
82
79
50
38
66
70
81
78
49
37
65
69
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
48
36
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
81
67
47
35
55
69
82
66
46
34
54
70
83
65
45
33
53
71
84
64
44
32
52
72
85
63
43
31
51
73
86
62
42
30
50
74
87
61
41
29
49
75
88
60
40
28
48
76
89
59
39
27
47
77
90
58
38
26
46
78
91
57
37
25
45
79
92
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
80
91
49
25
11
37
79
90
50
26
10
38
78
89
51
27
9
39
77
88
52
28
8
40
76
87
53
29
7
41
75
86
54
30
6
42
74
85
55
31
5
43
73
84
56
32
4
44
72
83
57
33
3
45
71
82
58
34
2
46
70
81
59
35
1
47
69
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
48
47
46
45
44
43
42
41
40
39
38
37
36
0
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
113
112
111
110
109
108
107
106
105
104
103
102
101
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
132
116
112
100
104
120
131
115
111
99
103
119
130
114
110
98
102
118
129
113
109
97
101
117
128
112
108
96
100
116
127
111
107
95
99
115
126
110
106
94
98
114
125
109
105
93
97
113
124
108
104
92
96
112
123
107
103
91
95
111
122
106
102
90
94
110
121
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
109
120
108
96
100
88
84
96
108
119
107
95
99
87
83
95
107
118
106
94
98
86
82
94
106
117
105
93
97
85
81
93
105
116
104
92
96
84
80
92
104
115
103
91
95
83
79
91
103
114
102
90
94
82
78
90
102
113
112
111
110
109
108
107
106
105
104
103
102
101
89
93
81
77
89
90
91
92
93
94
95
96
97
98
99
100
101
100
88
92
80
76
88
99
87
91
79
75
87
98
86
90
78
74
86
97
85
89
77
73
85
96
84
88
76
72
84
95
83
87
75
71
83
94
82
86
74
70
82
93
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
81
92
72
60
80
91
71
59
79
90
70
58
78
94
95
96
97
98
99
99
98
97
96
95
94
93
92
91
90
89
69
57
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
99
88
68
56
76
88
99
87
67
55
75
87
98
86
66
54
74
86
97
85
65
53
73
85
96
84
64
52
72
84
95
83
63
51
71
83
94
82
62
50
70
82
93
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
81
92
73
60
48
62
80
91
74
59
47
63
79
90
75
58
46
64
78
89
76
57
45
65
77
88
77
56
44
66
76
87
78
55
43
67
75
86
79
54
42
68
74
85
80
53
41
69
73
84
81
52
40
68
72
83
80
51
39
67
71
82
79
50
38
66
70
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
49
37
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
82
68
48
36
56
70
83
67
47
35
55
71
84
66
46
34
54
72
85
65
45
33
53
73
86
64
44
32
52
74
87
63
43
31
51
75
88
62
42
30
50
76
89
61
41
29
49
77
90
60
40
28
48
78
91
59
39
27
47
79
92
58
38
26
46
80
93
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
79
92
50
26
12
38
78
91
51
27
11
39
77
90
52
28
10
40
76
89
53
29
9
41
75
88
54
30
8
42
74
87
55
31
7
43
73
86
56
32
6
44
72
85
57
33
5
45
71
84
58
34
4
46
70
83
59
35
3
47
69
82
60
36
2
48
68
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
49
48
47
46
45
44
43
42
41
40
39
38
37
1
0
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
114
113
112
111
110
109
108
107
106
105
104
103
102
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
133
117
113
101
105
121
132
116
112
100
104
120
131
115
111
99
103
119
130
114
110
98
102
118
129
113
109
97
101
117
128
112
108
96
100
116
127
111
107
95
99
115
126
110
106
94
98
114
125
109
105
93
97
113
124
108
104
92
96
112
123
107
103
91
95
111
122
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
110
121
109
97
101
89
85
97
109
120
108
96
100
88
84
96
108
119
107
95
99
87
83
95
107
118
106
94
98
86
82
94
106
117
105
93
97
85
81
93
105
116
104
92
96
84
80
92
104
115
103
91
95
83
79
91
103
114
113
112
111
110
109
108
107
106
105
104
103
102
90
94
82
78
90
91
92
93
94
95
96
97
98
99
100
101
102
101
89
93
81
77
89
100
88
92
80
76
88
99
87
91
79
75
87
98
86
90
78
74
86
97
85
89
77
73
85
96
84
88
76
72
84
95
83
87
75
71
83
94
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
82
93
73
61
81
92
72
60
80
91
71
59
79
95
96
97
98
99
100
100
99
98
97
96
95
94
93
92
91
90
70
58
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
100
89
69
57
77
89
100
88
68
56
76
88
99
87
67
55
75
87
98
86
66
54
74
86
97
85
65
53
73
85
96
84
64
52
72
84
95
83
63
51
71
83
94
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
82
93
74
61
49
63
81
92
75
60
48
64
80
91
76
59
47
65
79
90
77
58
46
66
78
89
78
57
45
67
77
88
79
56
44
68
76
87
80
55
43
69
75
86
81
54
42
70
74
85
82
53
41
69
73
84
81
52
40
68
72
83
80
51
39
67
71
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
50
38
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
83
69
49
37
57
71
84
68
48
36
56
72
85
67
47
35
55
73
86
66
46
34
54
74
87
65
45
33
53
75
88
64
44
32
52
76
89
63
43
31
51
77
90
62
42
30
50
78
91
61
41
29
49
79
92
60
40
28
48
80
93
59
39
27
47
79
94
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
78
93
51
27
13
39
77
92
52
28
12
40
76
91
53
29
11
41
75
90
54
30
10
42
74
89
55
31
9
43
73
88
56
32
8
44
72
87
57
33
7
45
71
86
58
34
6
46
70
85
59
35
5
47
69
84
60
36
4
48
68
83
61
37
3
47
67
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
50
49
48
47
46
45
44
43
42
41
40
39
38
2
1
0
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
115
114
113
112
111
110
109
108
107
106
105
104
103
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
134
118
114
102
106
122
133
117
113
101
105
121
132
116
112
100
104
120
131
115
111
99
103
119
130
114
110
98
102
118
129
113
109
97
101
117
128
112
108
96
100
116
127
111
107
95
99
115
126
110
106
94
98
114
125
109
105
93
97
113
124
108
104
92
96
112
123
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
111
122
110
98
102
90
86
98
110
121
109
97
101
89
85
97
109
120
108
96
100
88
84
96
108
119
107
95
99
87
83
95
107
118
106
94
98
86
82
94
106
117
105
93
97
85
81
93
105
116
104
92
96
84
80
92
104
115
114
113
112
111
110
109
108
107
106
105
104
103
91
95
83
79
91
92
93
94
95
96
97
98
99
100
101
102
103
102
90
94
82
78
90
101
89
93
81
77
89
100
88
92
80
76
88
99
87
91
79
75
87
98
86
90
78
74
86
97
85
89
77
73
85
96
84
88
76
72
84
95
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
83
94
74
62
82
93
73
61
81
92
72
60
80
96
97
98
99
100
101
101
100
99
98
97
96
95
94
93
92
91
71
59
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
101
90
70
58
78
90
101
89
69
57
77
89
100
88
68
56
76
88
99
87
67
55
75
87
98
86
66
54
74
86
97
85
65
53
73
85
96
84
64
52
72
84
95
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
83
94
75
62
50
64
82
93
76
61
49
65
81
92
77
60
48
66
80
91
78
59
47
67
79
90
79
58
46
68
78
89
80
57
45
69
77
88
81
56
44
70
76
87
82
55
43
71
75
86
83
54
42
70
74
85
82
53
41
69
73
84
81
52
40
68
72
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
51
39
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
84
70
50
38
58
72
85
69
49
37
57
73
86
68
48
36
56
74
87
67
47
35
55
75
88
66
46
34
54
76
89
65
45
33
53
77
90
64
44
32
52
78
91
63
43
31
51
79
92
62
42
30
50
80
93
61
41
29
49
79
94
60
40
28
48
78
95
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
77
94
52
28
14
40
76
93
53
29
13
41
75
92
54
30
12
42
74
91
55
31
11
43
73
90
56
32
10
44
72
89
57
33
9
45
71
88
58
34
8
46
70
87
59
35
7
47
69
86
60
36
6
48
68
85
61
37
5
47
67
84
62
38
4
46
66
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
51
50
49
48
47
46
45
44
43
42
41
40
39
3
2
1
0
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
116
115
114
113
112
111
110
109
108
107
106
105
104
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
135
119
115
103
107
123
134
118
114
102
106
122
133
117
113
101
105
121
132
116
112
100
104
120
131
115
111
99
103
119
130
114
110
98
102
118
129
113
109
97
101
117
128
112
108
96
100
116
127
111
107
95
99
115
126
110
106
94
98
114
125
109
105
93
97
113
124
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
112
123
111
99
103
91
87
99
111
122
110
98
102
90
86
98
110
121
109
97
101
89
85
97
109
120
108
96
100
88
84
96
108
119
107
95
99
87
83
95
107
118
106
94
98
86
82
94
106
117
105
93
97
85
81
93
105
116
115
114
113
112
111
110
109
108
107
106
105
104
92
96
84
80
92
93
94
95
96
97
98
99
100
101
102
103
104
103
91
95
83
79
91
102
90
94
82
78
90
101
89
93
81
77
89
100
88
92
80
76
88
99
87
91
79
75
87
98
86
90
78
74
86
97
85
89
77
73
85
96
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
84
95
75
63
83
94
74
62
82
93
73
61
81
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
72
60
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
102
91
71
59
79
91
102
90
70
58
78
90
101
89
69
57
77
89
100
88
68
56
76
88
99
87
67
55
75
87
98
86
66
54
74
86
97
85
65
53
73
85
96
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
84
95
76
63
51
65
83
94
77
62
50
66
82
93
78
61
49
67
81
92
79
60
48
68
80
91
80
59
47
69
79
90
81
58
46
70
78
89
82
57
45
71
77
88
83
56
44
72
76
87
84
55
43
71
75
86
83
54
42
70
74
85
82
53
41
69
73
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
52
40
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
85
71
51
39
59
73
86
70
50
38
58
74
87
69
49
37
57
75
88
68
48
36
56
76
89
67
47
35
55
77
90
66
46
34
54
78
91
65
45
33
53
79
92
64
44
32
52
80
93
63
43
31
51
79
94
62
42
30
50
78
95
61
41
29
49
77
96
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
76
95
53
29
15
41
75
94
54
30
14
42
74
93
55
31
13
43
73
92
56
32
12
44
72
91
57
33
11
45
71
90
58
34
10
46
70
89
59
35
9
47
69
88
60
36
8
48
68
87
61
37
7
47
67
86
62
38
6
46
66
85
63
39
5
45
65
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
52
51
50
49
48
47
46
45
44
43
42
41
40
4
3
2
1
0
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
117
116
115
114
113
112
111
110
109
108
107
106
105
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
136
120
116
104
108
124
135
119
115
103
107
123
134
118
114
102
106
122
133
117
113
101
105
121
132
116
112
100
104
120
131
115
111
99
103
119
130
114
110
98
102
118
129
113
109
97
101
117
128
112
108
96
100
116
127
111
107
95
99
115
126
110
106
94
98
114
125
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
113
124
112
100
104
92
88
100
112
123
111
99
103
91
87
99
111
122
110
98
102
90
86
98
110
121
109
97
101
89
85
97
109
120
108
96
100
88
84
96
108
119
107
95
99
87
83
95
107
118
106
94
98
86
82
94
106
117
116
115
114
113
112
111
110
109
108
107
106
105
93
97
85
81
93
94
95
96
97
98
99
100
101
102
103
104
105
104
92
96
84
80
92
103
91
95
83
79
91
102
90
94
82
78
90
101
89
93
81
77
89
100
88
92
80
76
88
99
87
91
79
75
87
98
86
90
78
74
86
97
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
85
96
76
64
84
95
75
63
83
94
74
62
82
98
99
100
101
102
103
103
102
101
100
99
98
97
96
95
94
93
73
61
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
103
92
72
60
80
92
103
91
71
59
79
91
102
90
70
58
78
90
101
89
69
57
77
89
100
88
68
56
76
88
99
87
67
55
75
87
98
86
66
54
74
86
97
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
85
96
77
64
52
66
84
95
78
63
51
67
83
94
79
62
50
68
82
93
80
61
49
69
81
92
81
60
48
70
80
91
82
59
47
71
79
90
83
58
46
72
78
89
84
57
45
73
77
88
85
56
44
72
76
87
84
55
43
71
75
86
83
54
42
70
74
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
53
41
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
86
72
52
40
60
74
87
71
51
39
59
75
88
70
50
38
58
76
89
69
49
37
57
77
90
68
48
36
56
78
91
67
47
35
55
79
92
66
46
34
54
80
93
65
45
33
53
79
94
64
44
32
52
78
95
63
43
31
51
77
96
62
42
30
50
76
97
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
75
96
54
30
16
42
74
95
55
31
15
43
73
94
56
32
14
44
72
93
57
33
13
45
71
92
58
34
12
46
70
91
59
35
11
47
69
90
60
36
10
48
68
89
61
37
9
47
67
88
62
38
8
46
66
87
63
39
7
45
65
86
64
40
6
44
64
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
53
52
51
50
49
48
47
46
45
44
43
42
41
5
4
3
2
1
0
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
118
117
116
115
114
113
112
111
110
109
108
107
106
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
137
121
117
105
109
125
136
120
116
104
108
124
135
119
115
103
107
123
134
118
114
102
106
122
133
117
113
101
105
121
132
116
112
100
104
120
131
115
111
99
103
119
130
114
110
98
102
118
129
113
109
97
101
117
128
112
108
96
100
116
127
111
107
95
99
115
126
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
114
125
113
101
105
93
89
101
113
124
112
100
104
92
88
100
112
123
111
99
103
91
87
99
111
122
110
98
102
90
86
98
110
121
109
97
101
89
85
97
109
120
108
96
100
88
84
96
108
119
107
95
99
87
83
95
107
118
117
116
115
114
113
112
111
110
109
108
107
106
94
98
86
82
94
95
96
97
98
99
100
101
102
103
104
105
106
105
93
97
85
81
93
104
92
96
84
80
92
103
91
95
83
79
91
102
90
94
82
78
90
101
89
93
81
77
89
100
88
92
80
76
88
99
87
91
79
75
87
98
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
86
97
77
65
85
96
76
64
84
95
75
63
83
99
100
101
102
103
104
104
103
102
101
100
99
98
97
96
95
94
74
62
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
104
93
73
61
81
93
104
92
72
60
80
92
103
91
71
59
79
91
102
90
70
58
78
90
101
89
69
57
77
89
100
88
68
56
76
88
99
87
67
55
75
87
98
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
86
97
78
65
53
67
85
96
79
64
52
68
84
95
80
63
51
69
83
94
81
62
50
70
82
93
82
61
49
71
81
92
83
60
48
72
80
91
84
59
47
73
79
90
85
58
46
74
78
89
86
57
45
73
77
88
85
56
44
72
76
87
84
55
43
71
75
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
54
42
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
87
73
53
41
61
75
88
72
52
40
60
76
89
71
51
39
59
77
90
70
50
38
58
78
91
69
49
37
57
79
92
68
48
36
56
80
93
67
47
35
55
79
94
66
46
34
54
78
95
65
45
33
53
77
96
64
44
32
52
76
97
63
43
31
51
75
98
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
74
97
55
31
17
43
73
96
56
32
16
44
72
95
57
33
15
45
71
94
58
34
14
46
70
93
59
35
13
47
69
92
60
36
12
48
68
91
61
37
11
47
67
90
62
38
10
46
66
89
63
39
9
45
65
88
64
40
8
44
64
87
65
41
7
43
63
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
54
53
52
51
50
49
48
47
46
45
44
43
42
6
5
4
3
2
1
0
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
119
118
117
116
115
114
113
112
111
110
109
108
107
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
138
122
118
106
110
126
137
121
117
105
109
125
136
120
116
104
108
124
135
119
115
103
107
123
134
118
114
102
106
122
133
117
113
101
105
121
132
116
112
100
104
120
131
115
111
99
103
119
130
114
110
98
102
118
129
113
109
97
101
117
128
112
108
96
100
116
127
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
115
126
114
102
106
94
90
102
114
125
113
101
105
93
89
101
113
124
112
100
104
92
88
100
112
123
111
99
103
91
87
99
111
122
110
98
102
90
86
98
110
121
109
97
101
89
85
97
109
120
108
96
100
88
84
96
108
119
118
117
116
115
114
113
112
111
110
109
108
107
95
99
87
83
95
96
97
98
99
100
101
102
103
104
105
106
107
106
94
98
86
82
94
105
93
97
85
81
93
104
92
96
84
80
92
103
91
95
83
79
91
102
90
94
82
78
90
101
89
93
81
77
89
100
88
92
80
76
88
99
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
87
98
78
66
86
97
77
65
85
96
76
64
84
100
101
102
103
104
105
105
104
103
102
101
100
99
98
97
96
95
75
63
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
105
94
74
62
82
94
105
93
73
61
81
93
104
92
72
60
80
92
103
91
71
59
79
91
102
90
70
58
78
90
101
89
69
57
77
89
100
88
68
56
76
88
99
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
87
98
79
66
54
68
86
97
80
65
53
69
85
96
81
64
52
70
84
95
82
63
51
71
83
94
83
62
50
72
82
93
84
61
49
73
81
92
85
60
48
74
80
91
86
59
47
75
79
90
87
58
46
74
78
89
86
57
45
73
77
88
85
56
44
72
76
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
55
43
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
88
74
54
42
62
76
89
73
53
41
61
77
90
72
52
40
60
78
91
71
51
39
59
79
92
70
50
38
58
80
93
69
49
37
57
79
94
68
48
36
56
78
95
67
47
35
55
77
96
66
46
34
54
76
97
65
45
33
53
75
98
64
44
32
52
74
99
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
73
98
56
32
18
44
72
97
57
33
17
45
71
96
58
34
16
46
70
95
59
35
15
47
69
94
60
36
14
48
68
93
61
37
13
47
67
92
62
38
12
46
66
91
63
39
11
45
65
90
64
40
10
44
64
89
65
41
9
43
63
88
66
42
8
42
62
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
55
54
53
52
51
50
49
48
47
46
45
44
43
7
6
5
4
3
2
1
0
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
120
119
118
117
116
115
114
113
112
111
110
109
108
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
139
123
119
107
111
127
138
122
118
106
110
126
137
121
117
105
109
125
136
120
116
104
108
124
135
119
115
103
107
123
134
118
114
102
106
122
133
117
113
101
105
121
132
116
112
100
104
120
131
115
111
99
103
119
130
114
110
98
102
118
129
113
109
97
101
117
128
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
116
127
115
103
107
95
91
103
115
126
114
102
106
94
90
102
114
125
113
101
105
93
89
101
113
124
112
100
104
92
88
100
112
123
111
99
103
91
87
99
111
122
110
98
102
90
86
98
110
121
109
97
101
89
85
97
109
120
119
118
117
116
115
114
113
112
111
110
109
108
96
100
88
84
96
97
98
99
100
101
102
103
104
105
106
107
108
107
95
99
87
83
95
106
94
98
86
82
94
105
93
97
85
81
93
104
92
96
84
80
92
103
91
95
83
79
91
102
90
94
82
78
90
101
89
93
81
77
89
100
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
88
99
79
67
87
98
78
66
86
97
77
65
85
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
76
64
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
106
95
75
63
83
95
106
94
74
62
82
94
105
93
73
61
81
93
104
92
72
60
80
92
103
91
71
59
79
91
102
90
70
58
78
90
101
89
69
57
77
89
100
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
88
99
80
67
55
69
87
98
81
66
54
70
86
97
82
65
53
71
85
96
83
64
52
72
84
95
84
63
51
73
83
94
85
62
50
74
82
93
86
61
49
75
81
92
87
60
48
76
80
91
88
59
47
75
79
90
87
58
46
74
78
89
86
57
45
73
77
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
56
44
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
89
75
55
43
63
77
90
74
54
42
62
78
91
73
53
41
61
79
92
72
52
40
60
80
93
71
51
39
59
79
94
70
50
38
58
78
95
69
49
37
57
77
96
68
48
36
56
76
97
67
47
35
55
75
98
66
46
34
54
74
99
65
45
33
53
73
100
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
72
99
57
33
19
45
71
98
58
34
18
46
70
97
59
35
17
47
69
96
60
36
16
48
68
95
61
37
15
47
67
94
62
38
14
46
66
93
63
39
13
45
65
92
64
40
12
44
64
91
65
41
11
43
63
90
66
42
10
42
62
89
67
43
9
41
61
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
56
55
54
53
52
51
50
49
48
47
46
45
44
8
7
6
5
4
3
2
1
0
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
121
120
119
118
117
116
115
114
113
112
111
110
109
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
140
124
120
108
112
128
139
123
119
107
111
127
138
122
118
106
110
126
137
121
117
105
109
125
136
120
116
104
108
124
135
119
115
103
107
123
134
118
114
102
106
122
133
117
113
101
105
121
132
116
112
100
104
120
131
115
111
99
103
119
130
114
110
98
102
118
129
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
117
128
116
104
108
96
92
104
116
127
115
103
107
95
91
103
115
126
114
102
106
94
90
102
114
125
113
101
105
93
89
101
113
124
112
100
104
92
88
100
112
123
111
99
103
91
87
99
111
122
110
98
102
90
86
98
110
121
120
119
118
117
116
115
114
113
112
111
110
109
97
101
89
85
97
98
99
100
101
102
103
104
105
106
107
108
109
108
96
100
88
84
96
107
95
99
87
83
95
106
94
98
86
82
94
105
93
97
85
81
93
104
92
96
84
80
92
103
91
95
83
79
91
102
90
94
82
78
90
101
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
89
100
80
68
88
99
79
67
87
98
78
66
86
102
103
104
105
106
107
107
106
105
104
103
102
101
100
99
98
97
77
65
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
107
96
76
64
84
96
107
95
75
63
83
95
106
94
74
62
82
94
105
93
73
61
81
93
104
92
72
60
80
92
103
91
71
59
79
91
102
90
70
58
78
90
101
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
89
100
81
68
56
70
88
99
82
67
55
71
87
98
83
66
54
72
86
97
84
65
53
73
85
96
85
64
52
74
84
95
86
63
51
75
83
94
87
62
50
76
82
93
88
61
49
77
81
92
89
60
48
76
80
91
88
59
47
75
79
90
87
58
46
74
78
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
57
45
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
90
76
56
44
64
78
91
75
55
43
63
79
92
74
54
42
62
80
93
73
53
41
61
79
94
72
52
40
60
78
95
71
51
39
59
77
96
70
50
38
58
76
97
69
49
37
57
75
98
68
48
36
56
74
99
67
47
35
55
73
100
66
46
34
54
72
101
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
71
100
58
34
20
46
70
99
59
35
19
47
69
98
60
36
18
48
68
97
61
37
17
47
67
96
62
38
16
46
66
95
63
39
15
45
65
94
64
40
14
44
64
93
65
41
13
43
63
92
66
42
12
42
62
91
67
43
11
41
61
90
68
44
10
40
60
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
57
56
55
54
53
52
51
50
49
48
47
46
45
9
8
7
6
5
4
3
2
1
0
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
122
121
120
119
118
117
116
115
114
113
112
111
110
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
141
125
121
109
113
129
140
124
120
108
112
128
139
123
119
107
111
127
138
122
118
106
110
126
137
121
117
105
109
125
136
120
116
104
108
124
135
119
115
103
107
123
134
118
114
102
106
122
133
117
113
101
105
121
132
116
112
100
104
120
131
115
111
99
103
119
130
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
118
129
117
105
109
97
93
105
117
128
116
104
108
96
92
104
116
127
115
103
107
95
91
103
115
126
114
102
106
94
90
102
114
125
113
101
105
93
89
101
113
124
112
100
104
92
88
100
112
123
111
99
103
91
87
99
111
122
121
120
119
118
117
116
115
114
113
112
111
110
98
102
90
86
98
99
100
101
102
103
104
105
106
107
108
109
110
109
97
101
89
85
97
108
96
100
88
84
96
107
95
99
87
83
95
106
94
98
86
82
94
105
93
97
85
81
93
104
92
96
84
80
92
103
91
95
83
79
91
102
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
90
101
81
69
89
100
80
68
88
99
79
67
87
103
104
105
106
107
108
108
107
106
105
104
103
102
101
100
99
98
78
66
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
108
97
77
65
85
97
108
96
76
64
84
96
107
95
75
63
83
95
106
94
74
62
82
94
105
93
73
61
81
93
104
92
72
60
80
92
103
91
71
59
79
91
102
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
90
101
82
69
57
71
89
100
83
68
56
72
88
99
84
67
55
73
87
98
85
66
54
74
86
97
86
65
53
75
85
96
87
64
52
76
84
95
88
63
51
77
83
94
89
62
50
78
82
93
90
61
49
77
81
92
89
60
48
76
80
91
88
59
47
75
79
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
58
46
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
91
77
57
45
65
79
92
76
56
44
64
80
93
75
55
43
63
79
94
74
54
42
62
78
95
73
53
41
61
77
96
72
52
40
60
76
97
71
51
39
59
75
98
70
50
38
58
74
99
69
49
37
57
73
100
68
48
36
56
72
101
67
47
35
55
71
102
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
70
101
59
35
21
47
69
100
60
36
20
48
68
99
61
37
19
47
67
98
62
38
18
46
66
97
63
39
17
45
65
96
64
40
16
44
64
95
65
41
15
43
63
94
66
42
14
42
62
93
67
43
13
41
61
92
68
44
12
40
60
91
69
45
11
39
59
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
58
57
56
55
54
53
52
51
50
49
48
47
46
10
9
8
7
6
5
4
3
2
1
0
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
123
122
121
120
119
118
117
116
115
114
113
112
111
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
142
126
122
110
114
130
141
125
121
109
113
129
140
124
120
108
112
128
139
123
119
107
111
127
138
122
118
106
110
126
137
121
117
105
109
125
136
120
116
104
108
124
135
119
115
103
107
123
134
118
114
102
106
122
133
117
113
101
105
121
132
116
112
100
104
120
131
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
119
130
118
106
110
98
94
106
118
129
117
105
109
97
93
105
117
128
116
104
108
96
92
104
116
127
115
103
107
95
91
103
115
126
114
102
106
94
90
102
114
125
113
101
105
93
89
101
113
124
112
100
104
92
88
100
112
123
122
121
120
119
118
117
116
115
114
113
112
111
99
103
91
87
99
100
101
102
103
104
105
106
107
108
109
110
111
110
98
102
90
86
98
109
97
101
89
85
97
108
96
100
88
84
96
107
95
99
87
83
95
106
94
98
86
82
94
105
93
97
85
81
93
104
92
96
84
80
92
103
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
91
102
82
70
90
101
81
69
89
100
80
68
88
104
105
106
107
108
109
109
108
107
106
105
104
103
102
101
100
99
79
67
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
109
98
78
66
86
98
109
97
77
65
85
97
108
96
76
64
84
96
107
95
75
63
83
95
106
94
74
62
82
94
105
93
73
61
81
93
104
92
72
60
80
92
103
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
91
102
83
70
58
72
90
101
84
69
57
73
89
100
85
68
56
74
88
99
86
67
55
75
87
98
87
66
54
76
86
97
88
65
53
77
85
96
89
64
52
78
84
95
90
63
51
79
83
94
91
62
50
78
82
93
90
61
49
77
81
92
89
60
48
76
80
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
59
47
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
92
78
58
46
66
80
93
77
57
45
65
79
94
76
56
44
64
78
95
75
55
43
63
77
96
74
54
42
62
76
97
73
53
41
61
75
98
72
52
40
60
74
99
71
51
39
59
73
100
70
50
38
58
72
101
69
49
37
57
71
102
68
48
36
56
70
103
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
69
102
60
36
22
48
68
101
61
37
21
47
67
100
62
38
20
46
66
99
63
39
19
45
65
98
64
40
18
44
64
97
65
41
17
43
63
96
66
42
16
42
62
95
67
43
15
41
61
94
68
44
14
40
60
93
69
45
13
39
59
92
70
46
12
38
58
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
59
58
57
56
55
54
53
52
51
50
49
48
47
11
10
9
8
7
6
5
4
3
2
1
0
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
124
123
122
121
120
119
118
117
116
115
114
113
112
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
143
127
123
111
115
131
142
126
122
110
114
130
141
125
121
109
113
129
140
124
120
108
112
128
139
123
119
107
111
127
138
122
118
106
110
126
137
121
117
105
109
125
136
120
116
104
108
124
135
119
115
103
107
123
134
118
114
102
106
122
133
117
113
101
105
121
132
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
120
131
119
107
111
99
95
107
119
130
118
106
110
98
94
106
118
129
117
105
109
97
93
105
117
128
116
104
108
96
92
104
116
127
115
103
107
95
91
103
115
126
114
102
106
94
90
102
114
125
113
101
105
93
89
101
113
124
123
122
121
120
119
118
117
116
115
114
113
112
100
104
92
88
100
101
102
103
104
105
106
107
108
109
110
111
112
111
99
103
91
87
99
110
98
102
90
86
98
109
97
101
89
85
97
108
96
100
88
84
96
107
95
99
87
83
95
106
94
98
86
82
94
105
93
97
85
81
93
104
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
92
103
83
71
91
102
82
70
90
101
81
69
89
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
80
68
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
110
99
79
67
87
99
110
98
78
66
86
98
109
97
77
65
85
97
108
96
76
64
84
96
107
95
75
63
83
95
106
94
74
62
82
94
105
93
73
61
81
93
104
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
92
103
84
71
59
73
91
102
85
70
58
74
90
101
86
69
57
75
89
100
87
68
56
76
88
99
88
67
55
77
87
98
89
66
54
78
86
97
90
65
53
79
85
96
91
64
52
80
84
95
92
63
51
79
83
94
91
62
50
78
82
93
90
61
49
77
81
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
60
48
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
93
79
59
47
67
79
94
78
58
46
66
78
95
77
57
45
65
77
96
76
56
44
64
76
97
75
55
43
63
75
98
74
54
42
62
74
99
73
53
41
61
73
100
72
52
40
60
72
101
71
51
39
59
71
102
70
50
38
58
70
103
69
49
37
57
69
104
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
68
103
61
37
23
47
67
102
62
38
22
46
66
101
63
39
21
45
65
100
64
40
20
44
64
99
65
41
19
43
63
98
66
42
18
42
62
97
67
43
17
41
61
96
68
44
16
40
60
95
69
45
15
39
59
94
70
46
14
38
58
93
71
47
13
37
57
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
60
59
58
57
56
55
54
53
52
51
50
49
48
12
11
10
9
8
7
6
5
4
3
2
1
0
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
112
111
110
109
108
107
106
105
104
103
102
101
100
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
128
123
111
99
103
111
127
122
110
98
102
110
126
121
109
97
101
109
125
120
108
96
100
108
124
119
107
95
99
107
123
118
106
94
98
106
122
117
105
93
97
105
121
116
104
92
96
104
120
115
103
91
95
103
119
114
102
90
94
102
118
113
101
89
93
101
117
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
91
90
89
88
100
116
104
118
99
87
83
87
99
115
103
118
98
86
82
86
98
114
102
117
97
85
81
85
97
113
101
116
96
84
80
84
96
112
100
115
95
83
79
83
95
111
99
114
94
82
78
82
94
110
98
113
93
81
77
81
93
109
108
107
106
105
104
103
102
101
100
99
98
97
112
92
80
76
80
81
82
83
84
85
86
87
88
89
90
91
92
96
111
91
79
75
79
95
110
90
78
74
78
94
109
89
77
73
77
93
108
88
76
72
76
92
107
87
75
71
75
91
106
86
74
70
74
90
105
85
73
69
73
89
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
72
88
95
59
71
87
94
58
70
86
93
57
69
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
92
56
68
69
70
71
72
71
70
69
68
67
66
65
64
65
66
67
68
74
86
91
55
67
63
75
87
90
54
66
62
76
88
89
53
65
61
77
89
88
52
64
60
78
90
87
51
63
59
79
91
86
50
62
58
80
92
85
49
61
57
81
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
55
54
53
52
53
54
55
56
57
58
59
60
56
82
96
83
47
51
55
83
97
82
46
50
54
84
98
81
45
49
53
85
99
80
44
48
52
86
100
79
43
47
51
87
101
78
42
46
50
88
102
77
41
45
49
89
103
76
40
44
48
90
104
75
39
43
47
91
103
74
38
42
46
92
102
73
37
41
45
93
94
95
96
97
98
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
72
36
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
94
91
71
35
31
43
95
90
70
34
30
42
96
89
69
33
29
41
97
88
68
32
28
40
98
87
67
31
27
39
99
86
66
30
26
38
100
85
65
29
25
37
101
84
64
28
24
36
102
83
63
27
23
35
103
82
62
26
22
34
104
81
61
25
21
33
105
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
32
106
73
49
37
11
31
107
74
50
38
10
30
108
75
51
39
9
29
109
76
52
40
8
28
110
77
53
41
7
27
110
78
54
42
6
26
109
79
55
43
5
25
108
80
56
44
4
24
107
81
57
45
3
23
106
82
58
46
2
22
105
83
59
47
1
21
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
72
71
70
69
68
67
66
65
64
63
62
61
60
48
47
46
45
44
43
42
41
40
39
38
37
36
0
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
113
112
111
110
109
108
107
106
105
104
103
102
101
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
127
124
112
100
104
112
126
123
111
99
103
111
125
122
110
98
102
110
124
121
109
97
101
109
123
120
108
96
100
108
122
119
107
95
99
107
121
118
106
94
98
106
120
117
105
93
97
105
119
116
104
92
96
104
118
115
103
91
95
103
117
114
102
90
94
102
116
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
92
91
90
89
101
115
103
117
100
88
84
88
100
114
102
118
99
87
83
87
99
113
101
118
98
86
82
86
98
112
100
117
97
85
81
85
97
111
99
116
96
84
80
84
96
110
98
115
95
83
79
83
95
109
97
114
94
82
78
82
94
108
107
106
105
104
103
102
101
100
99
98
97
96
113
93
81
77
81
82
83
84
85
86
87
88
89
90
91
92
93
95
112
92
80
76
80
94
111
91
79
75
79
93
110
90
78
74
78
92
109
89
77
73
77
91
108
88
76
72
76
90
107
87
75
71
75
89
106
86
74
70
74
88
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
73
87
96
60
72
86
95
59
71
85
94
58
70
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
93
57
69
70
71
72
71
70
69
68
67
66
65
64
63
64
65
66
67
73
85
92
56
68
62
74
86
91
55
67
61
75
87
90
54
66
60
76
88
89
53
65
59
77
89
88
52
64
58
78
90
87
51
63
57
79
91
86
50
62
56
80
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
56
55
54
53
54
55
56
57
58
59
60
61
55
81
97
84
48
52
54
82
98
83
47
51
53
83
99
82
46
50
52
84
100
81
45
49
51
85
101
80
44
48
50
86
102
79
43
47
49
87
103
78
42
46
48
88
104
77
41
45
47
89
105
76
40
44
46
90
104
75
39
43
45
91
103
74
38
42
44
92
93
94
95
96
97
98
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
73
37
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
43
93
92
72
36
32
42
94
91
71
35
31
41
95
90
70
34
30
40
96
89
69
33
29
39
97
88
68
32
28
38
98
87
67
31
27
37
99
86
66
30
26
36
100
85
65
29
25
35
101
84
64
28
24
34
102
83
63
27
23
33
103
82
62
26
22
32
104
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
31
105
74
50
38
12
30
106
75
51
39
11
29
107
76
52
40
10
28
108
77
53
41
9
27
109
78
54
42
8
26
110
79
55
43
7
25
110
80
56
44
6
24
109
81
57
45
5
23
108
82
58
46
4
22
107
83
59
47
3
21
106
84
60
48
2
20
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
73
72
71
70
69
68
67
66
65
64
63
62
61
49
48
47
46
45
44
43
42
41
40
39
38
37
1
0
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
114
113
112
111
110
109
108
107
106
105
104
103
102
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
126
125
113
101
105
113
125
124
112
100
104
112
124
123
111
99
103
111
123
122
110
98
102
110
122
121
109
97
101
109
121
120
108
96
100
108
120
119
107
95
99
107
119
118
106
94
98
106
118
117
105
93
97
105
117
116
104
92
96
104
116
115
103
91
95
103
115
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
93
92
91
90
102
114
102
116
101
89
85
89
101
113
101
117
100
88
84
88
100
112
100
118
99
87
83
87
99
111
99
118
98
86
82
86
98
110
98
117
97
85
81
85
97
109
97
116
96
84
80
84
96
108
96
115
95
83
79
83
95
107
106
105
104
103
102
101
100
99
98
97
96
95
114
94
82
78
82
83
84
85
86
87
88
89
90
91
92
93
94
94
113
93
81
77
81
93
112
92
80
76
80
92
111
91
79
75
79
91
110
90
78
74
78
90
109
89
77
73
77
89
108
88
76
72
76
88
107
87
75
71
75
87
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
74
86
97
61
73
85
96
60
72
84
95
59
71
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
94
58
70
71
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
72
84
93
57
69
61
73
85
92
56
68
60
74
86
91
55
67
59
75
87
90
54
66
58
76
88
89
53
65
57
77
89
88
52
64
56
78
90
87
51
63
55
79
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
57
56
55
54
55
56
57
58
59
60
61
62
54
80
98
85
49
53
53
81
99
84
48
52
52
82
100
83
47
51
51
83
101
82
46
50
50
84
102
81
45
49
49
85
103
80
44
48
48
86
104
79
43
47
47
87
105
78
42
46
46
88
106
77
41
45
45
89
105
76
40
44
44
90
104
75
39
43
43
91
92
93
94
95
96
97
98
98
97
96
95
94
95
96
97
98
99
100
101
102
103
74
38
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
43
42
92
93
73
37
33
41
93
92
72
36
32
40
94
91
71
35
31
39
95
90
70
34
30
38
96
89
69
33
29
37
97
88
68
32
28
36
98
87
67
31
27
35
99
86
66
30
26
34
100
85
65
29
25
33
101
84
64
28
24
32
102
83
63
27
23
31
103
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
30
104
75
51
39
13
29
105
76
52
40
12
28
106
77
53
41
11
27
107
78
54
42
10
26
108
79
55
43
9
25
109
80
56
44
8
24
110
81
57
45
7
23
110
82
58
46
6
22
109
83
59
47
5
21
108
84
60
48
4
20
107
85
61
49
3
19
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
74
73
72
71
70
69
68
67
66
65
64
63
62
50
49
48
47
46
45
44
43
42
41
40
39
38
2
1
0
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
115
114
113
112
111
110
109
108
107
106
105
104
103
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
125
126
114
102
106
114
124
125
113
101
105
113
123
124
112
100
104
112
122
123
111
99
103
111
121
122
110
98
102
110
120
121
109
97
101
109
119
120
108
96
100
108
118
119
107
95
99
107
117
118
106
94
98
106
116
117
105
93
97
105
115
116
104
92
96
104
114
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
94
93
92
91
103
113
101
115
102
90
86
90
102
112
100
116
101
89
85
89
101
111
99
117
100
88
84
88
100
110
98
118
99
87
83
87
99
109
97
118
98
86
82
86
98
108
96
117
97
85
81
85
97
107
95
116
96
84
80
84
96
106
105
104
103
102
101
100
99
98
97
96
95
94
115
95
83
79
83
84
85
86
87
88
89
90
91
92
93
94
95
93
114
94
82
78
82
92
113
93
81
77
81
91
112
92
80
76
80
90
111
91
79
75
79
89
110
90
78
74
78
88
109
89
77
73
77
87
108
88
76
72
76
86
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
75
85
98
62
74
84
97
61
73
83
96
60
72
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
95
59
71
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
71
83
94
58
70
60
72
84
93
57
69
59
73
85
92
56
68
58
74
86
91
55
67
57
75
87
90
54
66
56
76
88
89
53
65
55
77
89
88
52
64
54
78
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
58
57
56
55
56
57
58
59
60
61
62
63
53
79
99
86
50
54
52
80
100
85
49
53
51
81
101
84
48
52
50
82
102
83
47
51
49
83
103
82
46
50
48
84
104
81
45
49
47
85
105
80
44
48
46
86
106
79
43
47
45
87
107
78
42
46
44
88
106
77
41
45
43
89
105
76
40
44
42
90
91
92
93
94
95
96
97
98
98
97
96
95
96
97
98
99
100
101
102
103
104
75
39
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
43
42
41
91
94
74
38
34
40
92
93
73
37
33
39
93
92
72
36
32
38
94
91
71
35
31
37
95
90
70
34
30
36
96
89
69
33
29
35
97
88
68
32
28
34
98
87
67
31
27
33
99
86
66
30
26
32
100
85
65
29
25
31
101
84
64
28
24
30
102
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
29
103
76
52
40
14
28
104
77
53
41
13
27
105
78
54
42
12
26
106
79
55
43
11
25
107
80
56
44
10
24
108
81
57
45
9
23
109
82
58
46
8
22
110
83
59
47
7
21
110
84
60
48
6
20
109
85
61
49
5
19
108
86
62
50
4
18
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
75
74
73
72
71
70
69
68
67
66
65
64
63
51
50
49
48
47
46
45
44
43
42
41
40
39
3
2
1
0
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
116
115
114
113
112
111
110
109
108
107
106
105
104
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
124
127
115
103
107
115
123
126
114
102
106
114
122
125
113
101
105
113
121
124
112
100
104
112
120
123
111
99
103
111
119
122
110
98
102
110
118
121
109
97
101
109
117
120
108
96
100
108
116
119
107
95
99
107
115
118
106
94
98
106
114
117
105
93
97
105
113
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
95
94
93
92
104
112
100
114
103
91
87
91
103
111
99
115
102
90
86
90
102
110
98
116
101
89
85
89
101
109
97
117
100
88
84
88
100
108
96
118
99
87
83
87
99
107
95
118
98
86
82
86
98
106
94
117
97
85
81
85
97
105
104
103
102
101
100
99
98
97
96
95
94
93
116
96
84
80
84
85
86
87
88
89
90
91
92
93
94
95
96
92
115
95
83
79
83
91
114
94
82
78
82
90
113
93
81
77
81
89
112
92
80
76
80
88
111
91
79
75
79
87
110
90
78
74
78
86
109
89
77
73
77
85
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
76
84
99
63
75
83
98
62
74
82
97
61
73
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
96
60
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
70
82
95
59
71
59
71
83
94
58
70
58
72
84
93
57
69
57
73
85
92
56
68
56
74
86
91
55
67
55
75
87
90
54
66
54
76
88
89
53
65
53
77
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
59
58
57
56
57
58
59
60
61
62
63
64
52
78
99
87
51
55
51
79
100
86
50
54
50
80
101
85
49
53
49
81
102
84
48
52
48
82
103
83
47
51
47
83
104
82
46
50
46
84
105
81
45
49
45
85
106
80
44
48
44
86
107
79
43
47
43
87
107
78
42
46
42
88
106
77
41
45
41
89
90
91
92
93
94
95
96
97
98
98
97
96
97
98
99
100
101
102
103
104
105
76
40
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
43
42
41
40
90
95
75
39
35
39
91
94
74
38
34
38
92
93
73
37
33
37
93
92
72
36
32
36
94
91
71
35
31
35
95
90
70
34
30
34
96
89
69
33
29
33
97
88
68
32
28
32
98
87
67
31
27
31
99
86
66
30
26
30
100
85
65
29
25
29
101
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
28
102
77
53
41
15
27
103
78
54
42
14
26
104
79
55
43
13
25
105
80
56
44
12
24
106
81
57
45
11
23
107
82
58
46
10
22
108
83
59
47
9
21
109
84
60
48
8
20
110
85
61
49
7
19
110
86
62
50
6
18
109
87
63
51
5
17
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
76
75
74
73
72
71
70
69
68
67
66
65
64
52
51
50
49
48
47
46
45
44
43
42
41
40
4
3
2
1
0
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
117
116
115
114
113
112
111
110
109
108
107
106
105
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
123
128
116
104
108
114
122
127
115
103
107
113
121
126
114
102
106
112
120
125
113
101
105
111
119
124
112
100
104
110
118
123
111
99
103
109
117
122
110
98
102
108
116
121
109
97
101
107
115
120
108
96
100
106
114
119
107
95
99
105
113
118
106
94
98
104
112
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
95
94
93
92
91
103
111
99
113
104
92
88
90
102
110
98
114
103
91
87
89
101
109
97
115
102
90
86
88
100
108
96
116
101
89
85
87
99
107
95
117
100
88
84
86
98
106
94
118
99
87
83
85
97
105
93
118
98
86
82
84
96
104
103
102
101
100
99
98
97
96
95
94
93
92
117
97
85
81
83
84
85
86
87
88
89
90
91
92
93
94
95
91
116
96
84
80
82
90
115
95
83
79
81
89
114
94
82
78
80
88
113
93
81
77
79
87
112
92
80
76
78
86
111
91
79
75
77
85
110
90
78
74
76
84
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
75
83
100
64
74
82
99
63
73
81
98
62
72
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
97
61
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
69
81
96
60
72
58
70
82
95
59
71
57
71
83
94
58
70
56
72
84
93
57
69
55
73
85
92
56
68
54
74
86
91
55
67
53
75
87
90
54
66
52
76
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
60
59
58
57
58
59
60
61
62
63
64
65
51
77
98
88
52
56
50
78
99
87
51
55
49
79
100
86
50
54
48
80
101
85
49
53
47
81
102
84
48
52
46
82
103
83
47
51
45
83
104
82
46
50
44
84
105
81
45
49
43
85
106
80
44
48
42
86
107
79
43
47
41
87
107
78
42
46
40
88
89
90
91
92
93
94
95
96
97
98
98
97
98
99
100
101
102
103
104
105
106
77
41
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
43
42
41
40
39
89
96
76
40
36
38
90
95
75
39
35
37
91
94
74
38
34
36
92
93
73
37
33
35
93
92
72
36
32
34
94
91
71
35
31
33
95
90
70
34
30
32
96
89
69
33
29
31
97
88
68
32
28
30
98
87
67
31
27
29
99
86
66
30
26
28
100
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
27
101
78
54
42
16
26
102
79
55
43
15
25
103
80
56
44
14
24
104
81
57
45
13
23
105
82
58
46
12
22
106
83
59
47
11
21
107
84
60
48
10
20
108
85
61
49
9
19
109
86
62
50
8
18
110
87
63
51
7
17
110
88
64
52
6
16
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
77
76
75
74
73
72
71
70
69
68
67
66
65
53
52
51
50
49
48
47
46
45
44
43
42
41
5
4
3
2
1
0
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
118
117
116
115
114
113
112
111
110
109
108
107
106
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
122
129
117
105
109
113
121
128
116
104
108
112
120
127
115
103
107
111
119
126
114
102
106
110
118
125
113
101
105
109
117
124
112
100
104
108
116
123
111
99
103
107
115
122
110
98
102
106
114
121
109
97
101
105
113
120
108
96
100
104
112
119
107
95
99
103
111
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
95
94
93
92
91
90
102
110
98
112
105
93
89
89
101
109
97
113
104
92
88
88
100
108
96
114
103
91
87
87
99
107
95
115
102
90
86
86
98
106
94
116
101
89
85
85
97
105
93
117
100
88
84
84
96
104
92
118
99
87
83
83
95
103
102
101
100
99
98
97
96
95
94
93
92
91
118
98
86
82
82
83
84
85
86
87
88
89
90
91
92
93
94
90
117
97
85
81
81
89
116
96
84
80
80
88
115
95
83
79
79
87
114
94
82
78
78
86
113
93
81
77
77
85
112
92
80
76
76
84
111
91
79
75
75
83
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
74
82
101
65
73
81
100
64
72
80
99
63
71
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
98
62
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
68
80
97
61
71
57
69
81
96
60
72
56
70
82
95
59
71
55
71
83
94
58
70
54
72
84
93
57
69
53
73
85
92
56
68
52
74
86
91
55
67
51
75
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
61
60
59
58
59
60
61
62
63
64
65
66
50
76
97
89
53
57
49
77
98
88
52
56
48
78
99
87
51
55
47
79
100
86
50
54
46
80
101
85
49
53
45
81
102
84
48
52
44
82
103
83
47
51
43
83
104
82
46
50
42
84
105
81
45
49
41
85
106
80
44
48
40
86
107
79
43
47
39
87
88
89
90
91
92
93
94
95
96
97
98
98
99
100
101
102
103
104
105
106
107
78
42
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
43
42
41
40
39
38
88
97
77
41
37
37
89
96
76
40
36
36
90
95
75
39
35
35
91
94
74
38
34
34
92
93
73
37
33
33
93
92
72
36
32
32
94
91
71
35
31
31
95
90
70
34
30
30
96
89
69
33
29
29
97
88
68
32
28
28
98
87
67
31
27
27
99
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
26
100
79
55
43
17
25
101
80
56
44
16
24
102
81
57
45
15
23
103
82
58
46
14
22
104
83
59
47
13
21
105
84
60
48
12
20
106
85
61
49
11
19
107
86
62
50
10
18
108
87
63
51
9
17
109
88
64
52
8
16
110
89
65
53
7
15
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
78
77
76
75
74
73
72
71
70
69
68
67
66
54
53
52
51
50
49
48
47
46
45
44
43
42
6
5
4
3
2
1
0
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
119
118
117
116
115
114
113
112
111
110
109
108
107
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
121
129
118
106
110
112
120
128
117
105
109
111
119
127
116
104
108
110
118
126
115
103
107
109
117
125
114
102
106
108
116
124
113
101
105
107
115
123
112
100
104
106
114
122
111
99
103
105
113
121
110
98
102
104
112
120
109
97
101
103
111
119
108
96
100
102
110
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
95
94
93
92
91
90
89
101
109
97
111
106
94
90
88
100
108
96
112
105
93
89
87
99
107
95
113
104
92
88
86
98
106
94
114
103
91
87
85
97
105
93
115
102
90
86
84
96
104
92
116
101
89
85
83
95
103
91
117
100
88
84
82
94
102
101
100
99
98
97
96
95
94
93
92
91
90
118
99
87
83
81
82
83
84
85
86
87
88
89
90
91
92
93
89
118
98
86
82
80
88
117
97
85
81
79
87
116
96
84
80
78
86
115
95
83
79
77
85
114
94
82
78
76
84
113
93
81
77
75
83
112
92
80
76
74
82
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
73
81
102
66
72
80
101
65
71
79
100
64
70
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
99
63
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
67
79
98
62
70
56
68
80
97
61
71
55
69
81
96
60
72
54
70
82
95
59
71
53
71
83
94
58
70
52
72
84
93
57
69
51
73
85
92
56
68
50
74
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
62
61
60
59
60
61
62
63
64
65
66
67
49
75
96
90
54
58
48
76
97
89
53
57
47
77
98
88
52
56
46
78
99
87
51
55
45
79
100
86
50
54
44
80
101
85
49
53
43
81
102
84
48
52
42
82
103
83
47
51
41
83
104
82
46
50
40
84
105
81
45
49
39
85
106
80
44
48
38
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
79
43
47
46
45
44
43
42
41
40
39
40
41
42
43
44
43
42
41
40
39
38
37
87
98
78
42
38
36
88
97
77
41
37
35
89
96
76
40
36
34
90
95
75
39
35
33
91
94
74
38
34
32
92
93
73
37
33
31
93
92
72
36
32
30
94
91
71
35
31
29
95
90
70
34
30
28
96
89
69
33
29
27
97
88
68
32
28
26
98
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
25
99
80
56
44
18
24
100
81
57
45
17
23
101
82
58
46
16
22
102
83
59
47
15
21
103
84
60
48
14
20
104
85
61
49
13
19
105
86
62
50
12
18
106
87
63
51
11
17
107
88
64
52
10
16
108
89
65
53
9
15
109
90
66
54
8
14
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
79
78
77
76
75
74
73
72
71
70
69
68
67
55
54
53
52
51
50
49
48
47
46
45
44
43
7
6
5
4
3
2
1
0
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
120
119
118
117
116
115
114
113
112
111
110
109
108
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
120
128
119
107
111
111
119
127
118
106
110
110
118
126
117
105
109
109
117
125
116
104
108
108
116
124
115
103
107
107
115
123
114
102
106
106
114
122
113
101
105
105
113
121
112
100
104
104
112
120
111
99
103
103
111
119
110
98
102
102
110
118
109
97
101
101
109
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
95
94
93
92
91
90
89
88
100
108
96
110
107
95
91
87
99
107
95
111
106
94
90
86
98
106
94
112
105
93
89
85
97
105
93
113
104
92
88
84
96
104
92
114
103
91
87
83
95
103
91
115
102
90
86
82
94
102
90
116
101
89
85
81
93
101
100
99
98
97
96
95
94
93
92
91
90
89
117
100
88
84
80
81
82
83
84
85
86
87
88
89
90
91
92
88
118
99
87
83
79
87
118
98
86
82
78
86
117
97
85
81
77
85
116
96
84
80
76
84
115
95
83
79
75
83
114
94
82
78
74
82
113
93
81
77
73
81
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
72
80
103
67
71
79
102
66
70
78
101
65
69
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
100
64
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
66
78
99
63
69
55
67
79
98
62
70
54
68
80
97
61
71
53
69
81
96
60
72
52
70
82
95
59
71
51
71
83
94
58
70
50
72
84
93
57
69
49
73
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
63
62
61
60
61
62
63
64
65
66
67
68
48
74
95
91
55
59
47
75
96
90
54
58
46
76
97
89
53
57
45
77
98
88
52
56
44
78
99
87
51
55
43
79
100
86
50
54
42
80
101
85
49
53
41
81
102
84
48
52
40
82
103
83
47
51
39
83
104
82
46
50
38
84
105
81
45
49
37
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
80
44
48
47
46
45
44
43
42
41
40
41
42
43
44
43
42
41
40
39
38
37
36
86
98
79
43
39
35
87
98
78
42
38
34
88
97
77
41
37
33
89
96
76
40
36
32
90
95
75
39
35
31
91
94
74
38
34
30
92
93
73
37
33
29
93
92
72
36
32
28
94
91
71
35
31
27
95
90
70
34
30
26
96
89
69
33
29
25
97
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
24
98
81
57
45
19
23
99
82
58
46
18
22
100
83
59
47
17
21
101
84
60
48
16
20
102
85
61
49
15
19
103
86
62
50
14
18
104
87
63
51
13
17
105
88
64
52
12
16
106
89
65
53
11
15
107
90
66
54
10
14
108
91
67
55
9
13
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
80
79
78
77
76
75
74
73
72
71
70
69
68
56
55
54
53
52
51
50
49
48
47
46
45
44
8
7
6
5
4
3
2
1
0
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
121
120
119
118
117
116
115
114
113
112
111
110
109
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
119
127
120
108
112
110
118
126
119
107
111
109
117
125
118
106
110
108
116
124
117
105
109
107
115
123
116
104
108
106
114
122
115
103
107
105
113
121
114
102
106
104
112
120
113
101
105
103
111
119
112
100
104
102
110
118
111
99
103
101
109
117
110
98
102
100
108
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
95
94
93
92
91
90
89
88
87
99
107
95
109
108
96
92
86
98
106
94
110
107
95
91
85
97
105
93
111
106
94
90
84
96
104
92
112
105
93
89
83
95
103
91
113
104
92
88
82
94
102
90
114
103
91
87
81
93
101
89
115
102
90
86
80
92
100
99
98
97
96
95
94
93
92
91
90
89
88
116
101
89
85
79
80
81
82
83
84
85
86
87
88
89
90
91
87
117
100
88
84
78
86
118
99
87
83
77
85
118
98
86
82
76
84
117
97
85
81
75
83
116
96
84
80
74
82
115
95
83
79
73
81
114
94
82
78
72
80
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
71
79
104
68
70
78
103
67
69
77
102
66
68
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
101
65
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
65
77
100
64
68
54
66
78
99
63
69
53
67
79
98
62
70
52
68
80
97
61
71
51
69
81
96
60
72
50
70
82
95
59
71
49
71
83
94
58
70
48
72
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
64
63
62
61
62
63
64
65
66
67
68
69
47
73
94
92
56
60
46
74
95
91
55
59
45
75
96
90
54
58
44
76
97
89
53
57
43
77
98
88
52
56
42
78
99
87
51
55
41
79
100
86
50
54
40
80
101
85
49
53
39
81
102
84
48
52
38
82
103
83
47
51
37
83
104
82
46
50
36
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
81
45
49
48
47
46
45
44
43
42
41
42
43
44
43
42
41
40
39
38
37
36
35
85
97
80
44
40
34
86
98
79
43
39
33
87
98
78
42
38
32
88
97
77
41
37
31
89
96
76
40
36
30
90
95
75
39
35
29
91
94
74
38
34
28
92
93
73
37
33
27
93
92
72
36
32
26
94
91
71
35
31
25
95
90
70
34
30
24
96
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
23
97
82
58
46
20
22
98
83
59
47
19
21
99
84
60
48
18
20
100
85
61
49
17
19
101
86
62
50
16
18
102
87
63
51
15
17
103
88
64
52
14
16
104
89
65
53
13
15
105
90
66
54
12
14
106
91
67
55
11
13
107
92
68
56
10
12
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
81
80
79
78
77
76
75
74
73
72
71
70
69
57
56
55
54
53
52
51
50
49
48
47
46
45
9
8
7
6
5
4
3
2
1
0
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
122
121
120
119
118
117
116
115
114
113
112
111
110
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
118
126
121
109
113
109
117
125
120
108
112
108
116
124
119
107
111
107
115
123
118
106
110
106
114
122
117
105
109
105
113
121
116
104
108
104
112
120
115
103
107
103
111
119
114
102
106
102
110
118
113
101
105
101
109
117
112
100
104
100
108
116
111
99
103
99
107
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
95
94
93
92
91
90
89
88
87
86
98
106
94
108
109
97
93
85
97
105
93
109
108
96
92
84
96
104
92
110
107
95
91
83
95
103
91
111
106
94
90
82
94
102
90
112
105
93
89
81
93
101
89
113
104
92
88
80
92
100
88
114
103
91
87
79
91
99
98
97
96
95
94
93
92
91
90
89
88
87
115
102
90
86
78
79
80
81
82
83
84
85
86
87
88
89
90
86
116
101
89
85
77
85
117
100
88
84
76
84
118
99
87
83
75
83
118
98
86
82
74
82
117
97
85
81
73
81
116
96
84
80
72
80
115
95
83
79
71
79
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
70
78
105
69
69
77
104
68
68
76
103
67
67
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
102
66
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
64
76
101
65
67
53
65
77
100
64
68
52
66
78
99
63
69
51
67
79
98
62
70
50
68
80
97
61
71
49
69
81
96
60
72
48
70
82
95
59
71
47
71
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
65
64
63
62
63
64
65
66
67
68
69
70
46
72
93
93
57
61
45
73
94
92
56
60
44
74
95
91
55
59
43
75
96
90
54
58
42
76
97
89
53
57
41
77
98
88
52
56
40
78
99
87
51
55
39
79
100
86
50
54
38
80
101
85
49
53
37
81
102
84
48
52
36
82
103
83
47
51
35
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
82
46
50
49
48
47
46
45
44
43
42
43
44
43
42
41
40
39
38
37
36
35
34
84
96
81
45
41
33
85
97
80
44
40
32
86
98
79
43
39
31
87
98
78
42
38
30
88
97
77
41
37
29
89
96
76
40
36
28
90
95
75
39
35
27
91
94
74
38
34
26
92
93
73
37
33
25
93
92
72
36
32
24
94
91
71
35
31
23
95
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
22
96
83
59
47
21
21
97
84
60
48
20
20
98
85
61
49
19
19
99
86
62
50
18
18
100
87
63
51
17
17
101
88
64
52
16
16
102
89
65
53
15
15
103
90
66
54
14
14
104
91
67
55
13
13
105
92
68
56
12
12
106
93
69
57
11
11
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
82
81
80
79
78
77
76
75
74
73
72
71
70
58
57
56
55
54
53
52
51
50
49
48
47
46
10
9
8
7
6
5
4
3
2
1
0
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
123
122
121
120
119
118
117
116
115
114
113
112
111
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
117
125
122
110
114
108
116
124
121
109
113
107
115
123
120
108
112
106
114
122
119
107
111
105
113
121
118
106
110
104
112
120
117
105
109
103
111
119
116
104
108
102
110
118
115
103
107
101
109
117
114
102
106
100
108
116
113
101
105
99
107
115
112
100
104
98
106
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
96
95
94
93
92
91
90
89
88
87
86
85
97
105
93
107
110
98
94
84
96
104
92
108
109
97
93
83
95
103
91
109
108
96
92
82
94
102
90
110
107
95
91
81
93
101
89
111
106
94
90
80
92
100
88
112
105
93
89
79
91
99
87
113
104
92
88
78
90
98
97
96
95
94
93
92
91
90
89
88
87
86
114
103
91
87
77
78
79
80
81
82
83
84
85
86
87
88
89
85
115
102
90
86
76
84
116
101
89
85
75
83
117
100
88
84
74
82
118
99
87
83
73
81
118
98
86
82
72
80
117
97
85
81
71
79
116
96
84
80
70
78
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
69
77
106
70
68
76
105
69
67
75
104
68
66
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
103
67
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
63
75
102
66
66
52
64
76
101
65
67
51
65
77
100
64
68
50
66
78
99
63
69
49
67
79
98
62
70
48
68
80
97
61
71
47
69
81
96
60
72
46
70
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
66
65
64
63
64
65
66
67
68
69
70
71
45
71
92
94
58
62
44
72
93
93
57
61
43
73
94
92
56
60
42
74
95
91
55
59
41
75
96
90
54
58
40
76
97
89
53
57
39
77
98
88
52
56
38
78
99
87
51
55
37
79
100
86
50
54
36
80
101
85
49
53
35
81
102
84
48
52
34
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
83
47
51
50
49
48
47
46
45
44
43
44
43
42
41
40
39
38
37
36
35
34
33
83
95
82
46
42
32
84
96
81
45
41
31
85
97
80
44
40
30
86
98
79
43
39
29
87
98
78
42
38
28
88
97
77
41
37
27
89
96
76
40
36
26
90
95
75
39
35
25
91
94
74
38
34
24
92
93
73
37
33
23
93
92
72
36
32
22
94
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
21
95
84
60
48
22
20
96
85
61
49
21
19
97
86
62
50
20
18
98
87
63
51
19
17
99
88
64
52
18
16
100
89
65
53
17
15
101
90
66
54
16
14
102
91
67
55
15
13
103
92
68
56
14
12
104
93
69
57
13
11
105
94
70
58
12
10
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
83
82
81
80
79
78
77
76
75
74
73
72
71
59
58
57
56
55
54
53
52
51
50
49
48
47
11
10
9
8
7
6
5
4
3
2
1
0
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
116
124
123
111
115
107
115
123
122
110
114
106
114
122
121
109
113
105
113
121
120
108
112
104
112
120
119
107
111
103
111
119
118
106
110
102
110
118
117
105
109
101
109
117
116
104
108
100
108
116
115
103
107
99
107
115
114
102
106
98
106
114
113
101
105
97
105
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
96
104
92
106
111
99
95
83
95
103
91
107
110
98
94
82
94
102
90
108
109
97
93
81
93
101
89
109
108
96
92
80
92
100
88
110
107
95
91
79
91
99
87
111
106
94
90
78
90
98
86
112
105
93
89
77
89
97
96
95
94
93
92
91
90
89
88
87
86
85
113
104
92
88
76
77
78
79
80
81
82
83
84
85
86
87
88
84
114
103
91
87
75
83
115
102
90
86
74
82
116
101
89
85
73
81
117
100
88
84
72
80
118
99
87
83
71
79
118
98
86
82
70
78
117
97
85
81
69
77
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
68
76
107
71
67
75
106
70
66
74
105
69
65
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
104
68
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
62
74
103
67
65
51
63
75
102
66
66
50
64
76
101
65
67
49
65
77
100
64
68
48
66
78
99
63
69
47
67
79
98
62
70
46
68
80
97
61
71
45
69
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
67
66
65
64
65
66
67
68
69
70
71
72
44
70
91
95
59
63
43
71
92
94
58
62
42
72
93
93
57
61
41
73
94
92
56
60
40
74
95
91
55
59
39
75
96
90
54
58
38
76
97
89
53
57
37
77
98
88
52
56
36
78
99
87
51
55
35
79
100
86
50
54
34
80
101
85
49
53
33
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
84
48
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
82
94
83
47
43
31
83
95
82
46
42
30
84
96
81
45
41
29
85
97
80
44
40
28
86
98
79
43
39
27
87
98
78
42
38
26
88
97
77
41
37
25
89
96
76
40
36
24
90
95
75
39
35
23
91
94
74
38
34
22
92
93
73
37
33
21
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
20
94
85
61
49
23
19
95
86
62
50
22
18
96
87
63
51
21
17
97
88
64
52
20
16
98
89
65
53
19
15
99
90
66
54
18
14
100
91
67
55
17
13
101
92
68
56
16
12
102
93
69
57
15
11
103
94
70
58
14
10
104
95
71
59
13
9
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
84
83
82
81
80
79
78
77
76
75
74
73
72
60
59
58
57
56
55
54
53
52
51
50
49
48
12
11
10
9
8
7
6
5
4
3
2
1
0
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
125
124
123
122
121
120
119
118
117
116
115
114
113
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
115
123
124
112
114
106
114
122
123
111
113
105
113
121
122
110
112
104
112
120
121
109
111
103
111
119
120
108
110
102
110
118
119
107
109
101
109
117
118
106
108
100
108
116
117
105
107
99
107
115
116
104
106
98
106
114
115
103
105
97
105
113
114
102
104
96
104
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
95
103
91
105
112
100
96
82
94
102
90
106
111
99
95
81
93
101
89
107
110
98
94
80
92
100
88
108
109
97
93
79
91
99
87
109
108
96
92
78
90
98
86
110
107
95
91
77
89
97
85
111
106
94
90
76
88
96
95
94
93
92
91
90
89
88
87
86
85
84
112
105
93
89
75
76
77
78
79
80
81
82
83
84
85
86
87
83
113
104
92
88
74
82
114
103
91
87
73
81
115
102
90
86
72
80
116
101
89
85
71
79
117
100
88
84
70
78
118
99
87
83
69
77
118
98
86
82
68
76
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
67
75
108
72
66
74
107
71
65
73
106
70
64
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
105
69
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
61
73
104
68
64
50
62
74
103
67
65
49
63
75
102
66
66
48
64
76
101
65
67
47
65
77
100
64
68
46
66
78
99
63
69
45
67
79
98
62
70
44
68
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
67
66
65
64
63
64
65
66
67
68
69
70
71
43
69
90
96
60
62
42
70
91
95
59
61
41
71
92
94
58
60
40
72
93
93
57
59
39
73
94
92
56
58
38
74
95
91
55
57
37
75
96
90
54
56
36
76
97
89
53
55
35
77
98
88
52
54
34
78
99
87
51
53
33
79
100
86
50
52
32
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
85
49
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
81
93
84
48
44
30
82
94
83
47
43
29
83
95
82
46
42
28
84
96
81
45
41
27
85
97
80
44
40
26
86
98
79
43
39
25
87
98
78
42
38
24
88
97
77
41
37
23
89
96
76
40
36
22
90
95
75
39
35
21
91
94
74
38
34
20
92
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
19
93
86
62
50
24
18
94
87
63
51
23
17
95
88
64
52
22
16
96
89
65
53
21
15
97
90
66
54
20
14
98
91
67
55
19
13
99
92
68
56
18
12
100
93
69
57
17
11
101
94
70
58
16
10
102
95
71
59
15
9
103
96
72
60
14
8
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
85
84
83
82
81
80
79
78
77
76
75
74
73
61
60
59
58
57
56
55
54
53
52
51
50
49
13
12
11
10
9
8
7
6
5
4
3
2
1
0
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
126
125
124
123
122
121
120
119
118
117
116
115
114
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
114
122
125
113
113
105
113
121
124
112
112
104
112
120
123
111
111
103
111
119
122
110
110
102
110
118
121
109
109
101
109
117
120
108
108
100
108
116
119
107
107
99
107
115
118
106
106
98
106
114
117
105
105
97
105
113
116
104
104
96
104
112
115
103
103
95
103
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
94
102
90
104
113
101
95
81
93
101
89
105
112
100
96
80
92
100
88
106
111
99
95
79
91
99
87
107
110
98
94
78
90
98
86
108
109
97
93
77
89
97
85
109
108
96
92
76
88
96
84
110
107
95
91
75
87
95
94
93
92
91
90
89
88
87
86
85
84
83
111
106
94
90
74
75
76
77
78
79
80
81
82
83
84
85
86
82
112
105
93
89
73
81
113
104
92
88
72
80
114
103
91
87
71
79
115
102
90
86
70
78
116
101
89
85
69
77
117
100
88
84
68
76
118
99
87
83
67
75
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
66
74
109
73
65
73
108
72
64
72
107
71
63
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
106
70
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
60
72
105
69
63
49
61
73
104
68
64
48
62
74
103
67
65
47
63
75
102
66
66
46
64
76
101
65
67
45
65
77
100
64
68
44
66
78
99
63
69
43
67
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
42
68
89
97
61
61
41
69
90
96
60
60
40
70
91
95
59
59
39
71
92
94
58
58
38
72
93
93
57
57
37
73
94
92
56
56
36
74
95
91
55
55
35
75
96
90
54
54
34
76
97
89
53
53
33
77
98
88
52
52
32
78
99
87
51
51
31
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
86
50
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
80
92
85
49
43
29
81
93
84
48
44
28
82
94
83
47
43
27
83
95
82
46
42
26
84
96
81
45
41
25
85
97
80
44
40
24
86
98
79
43
39
23
87
98
78
42
38
22
88
97
77
41
37
21
89
96
76
40
36
20
90
95
75
39
35
19
91
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
18
92
87
63
51
25
17
93
88
64
52
24
16
94
89
65
53
23
15
95
90
66
54
22
14
96
91
67
55
21
13
97
92
68
56
20
12
98
93
69
57
19
11
99
94
70
58
18
10
100
95
71
59
17
9
101
96
72
60
16
8
102
97
73
61
15
7
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
86
85
84
83
82
81
80
79
78
77
76
75
74
62
61
60
59
58
57
56
55
54
53
52
51
50
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
127
126
125
124
123
122
121
120
119
118
117
116
115
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
113
121
126
114
112
104
112
120
125
113
111
103
111
119
124
112
110
102
110
118
123
111
109
101
109
117
122
110
108
100
108
116
121
109
107
99
107
115
120
108
106
98
106
114
119
107
105
97
105
113
118
106
104
96
104
112
117
105
103
95
103
111
116
104
102
94
102
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
93
101
89
103
114
102
94
80
92
100
88
104
113
101
95
79
91
99
87
105
112
100
96
78
90
98
86
106
111
99
95
77
89
97
85
107
110
98
94
76
88
96
84
108
109
97
93
75
87
95
83
109
108
96
92
74
86
94
93
92
91
90
89
88
87
86
85
84
83
82
110
107
95
91
73
74
75
76
77
78
79
80
81
82
83
84
85
81
111
106
94
90
72
80
112
105
93
89
71
79
113
104
92
88
70
78
114
103
91
87
69
77
115
102
90
86
68
76
116
101
89
85
67
75
117
100
88
84
66
74
118
117
116
115
114
113
112
111
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
65
73
109
74
64
72
108
73
63
71
107
72
62
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
106
71
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
59
71
105
70
62
48
60
72
104
69
63
47
61
73
103
68
64
46
62
74
102
67
65
45
63
75
101
66
66
44
64
76
100
65
67
43
65
77
99
64
68
42
66
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
41
67
88
98
62
60
40
68
89
97
61
59
39
69
90
96
60
58
38
70
91
95
59
57
37
71
92
94
58
56
36
72
93
93
57
55
35
73
94
92
56
54
34
74
95
91
55
53
33
75
96
90
54
52
32
76
97
89
53
51
31
77
98
88
52
50
30
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
87
51
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
79
91
86
50
42
28
80
92
85
49
43
27
81
93
84
48
44
26
82
94
83
47
43
25
83
95
82
46
42
24
84
96
81
45
41
23
85
97
80
44
40
22
86
98
79
43
39
21
87
98
78
42
38
20
88
97
77
41
37
19
89
96
76
40
36
18
90
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
17
91
88
64
52
26
16
92
89
65
53
25
15
93
90
66
54
24
14
94
91
67
55
23
13
95
92
68
56
22
12
96
93
69
57
21
11
97
94
70
58
20
10
98
95
71
59
19
9
99
96
72
60
18
8
100
97
73
61
17
7
101
98
74
62
16
6
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
87
86
85
84
83
82
81
80
79
78
77
76
75
63
62
61
60
59
58
57
56
55
54
53
52
51
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
128
127
126
125
124
123
122
121
120
119
118
117
116
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
112
120
127
115
111
103
111
119
126
114
110
102
110
118
125
113
109
101
109
117
124
112
108
100
108
116
123
111
107
99
107
115
122
110
106
98
106
114
121
109
105
97
105
113
120
108
104
96
104
112
119
107
103
95
103
111
118
106
102
94
102
110
117
105
101
93
101
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
92
100
88
102
115
103
93
79
91
99
87
103
114
102
94
78
90
98
86
104
113
101
95
77
89
97
85
105
112
100
96
76
88
96
84
106
111
99
95
75
87
95
83
107
110
98
94
74
86
94
82
108
109
97
93
73
85
93
92
91
90
89
88
87
86
85
84
83
82
81
109
108
96
92
72
73
74
75
76
77
78
79
80
81
82
83
84
80
110
107
95
91
71
79
111
106
94
90
70
78
112
105
93
89
69
77
113
104
92
88
68
76
114
103
91
87
67
75
115
102
90
86
66
74
116
101
89
85
65
73
117
116
115
114
113
112
111
110
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
64
72
108
75
63
71
107
74
62
70
106
73
61
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
105
72
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
58
70
104
71
61
47
59
71
103
70
62
46
60
72
102
69
63
45
61
73
101
68
64
44
62
74
100
67
65
43
63
75
99
66
66
42
64
76
98
65
67
41
65
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
40
66
87
98
63
59
39
67
88
98
62
58
38
68
89
97
61
57
37
69
90
96
60
56
36
70
91
95
59
55
35
71
92
94
58
54
34
72
93
93
57
53
33
73
94
92
56
52
32
74
95
91
55
51
31
75
96
90
54
50
30
76
97
89
53
49
29
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
88
52
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
78
90
87
51
41
27
79
91
86
50
42
26
80
92
85
49
43
25
81
93
84
48
44
24
82
94
83
47
43
23
83
95
82
46
42
22
84
96
81
45
41
21
85
97
80
44
40
20
86
98
79
43
39
19
87
98
78
42
38
18
88
97
77
41
37
17
89
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
16
90
89
65
53
27
15
91
90
66
54
26
14
92
91
67
55
25
13
93
92
68
56
24
12
94
93
69
57
23
11
95
94
70
58
22
10
96
95
71
59
21
9
97
96
72
60
20
8
98
97
73
61
19
7
99
98
74
62
18
6
100
99
75
63
17
5
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
88
87
86
85
84
83
82
81
80
79
78
77
76
64
63
62
61
60
59
58
57
56
55
54
53
52
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
129
128
127
126
125
124
123
122
121
120
119
118
117
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
111
119
128
116
110
102
110
118
127
115
109
101
109
117
126
114
108
100
108
116
125
113
107
99
107
115
124
112
106
98
106
114
123
111
105
97
105
113
122
110
104
96
104
112
121
109
103
95
103
111
120
108
102
94
102
110
119
107
101
93
101
109
118
106
100
92
100
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
91
99
87
101
116
104
92
78
90
98
86
102
115
103
93
77
89
97
85
103
114
102
94
76
88
96
84
104
113
101
95
75
87
95
83
105
112
100
96
74
86
94
82
106
111
99
95
73
85
93
81
107
110
98
94
72
84
92
91
90
89
88
87
86
85
84
83
82
81
80
108
109
97
93
71
72
73
74
75
76
77
78
79
80
81
82
83
79
109
108
96
92
70
78
110
107
95
91
69
77
111
106
94
90
68
76
112
105
93
89
67
75
113
104
92
88
66
74
114
103
91
87
65
73
115
102
90
86
64
72
116
115
114
113
112
111
110
109
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
63
71
107
76
62
70
106
75
61
69
105
74
60
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
104
73
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
57
69
103
72
60
46
58
70
102
71
61
45
59
71
101
70
62
44
60
72
100
69
63
43
61
73
99
68
64
42
62
74
98
67
65
41
63
75
97
66
66
40
64
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
39
65
86
97
64
58
38
66
87
98
63
57
37
67
88
98
62
56
36
68
89
97
61
55
35
69
90
96
60
54
34
70
91
95
59
53
33
71
92
94
58
52
32
72
93
93
57
51
31
73
94
92
56
50
30
74
95
91
55
49
29
75
96
90
54
48
28
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
89
53
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
77
89
88
52
40
26
78
90
87
51
41
25
79
91
86
50
42
24
80
92
85
49
43
23
81
93
84
48
44
22
82
94
83
47
43
21
83
95
82
46
42
20
84
96
81
45
41
19
85
97
80
44
40
18
86
98
79
43
39
17
87
98
78
42
38
16
88
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
15
89
90
66
54
28
14
90
91
67
55
27
13
91
92
68
56
26
12
92
93
69
57
25
11
93
94
70
58
24
10
94
95
71
59
23
9
95
96
72
60
22
8
96
97
73
61
21
7
97
98
74
62
20
6
98
99
75
63
19
5
99
100
76
64
18
4
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
89
88
87
86
85
84
83
82
81
80
79
78
77
65
64
63
62
61
60
59
58
57
56
55
54
53
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
130
129
128
127
126
125
124
123
122
121
120
119
118
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
110
118
129
117
109
101
109
117
128
116
108
100
108
116
127
115
107
99
107
115
126
114
106
98
106
114
125
113
105
97
105
113
124
112
104
96
104
112
123
111
103
95
103
111
122
110
102
94
102
110
121
109
101
93
101
109
120
108
100
92
100
108
119
107
99
91
99
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
90
98
86
100
117
105
91
77
89
97
85
101
116
104
92
76
88
96
84
102
115
103
93
75
87
95
83
103
114
102
94
74
86
94
82
104
113
101
95
73
85
93
81
105
112
100
96
72
84
92
80
106
111
99
95
71
83
91
90
89
88
87
86
85
84
83
82
81
80
79
107
110
98
94
70
71
72
73
74
75
76
77
78
79
80
81
82
78
108
109
97
93
69
77
109
108
96
92
68
76
110
107
95
91
67
75
111
106
94
90
66
74
112
105
93
89
65
73
113
104
92
88
64
72
114
103
91
87
63
71
115
114
113
112
111
110
109
108
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
62
70
106
77
61
69
105
76
60
68
104
75
59
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
103
74
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
56
68
102
73
59
45
57
69
101
72
60
44
58
70
100
71
61
43
59
71
99
70
62
42
60
72
98
69
63
41
61
73
97
68
64
40
62
74
96
67
65
39
63
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
38
64
85
96
65
57
37
65
86
97
64
56
36
66
87
98
63
55
35
67
88
98
62
54
34
68
89
97
61
53
33
69
90
96
60
52
32
70
91
95
59
51
31
71
92
94
58
50
30
72
93
93
57
49
29
73
94
92
56
48
28
74
95
91
55
47
27
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
90
54
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
76
88
89
53
39
25
77
89
88
52
40
24
78
90
87
51
41
23
79
91
86
50
42
22
80
92
85
49
43
21
81
93
84
48
44
20
82
94
83
47
43
19
83
95
82
46
42
18
84
96
81
45
41
17
85
97
80
44
40
16
86
98
79
43
39
15
87
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
14
88
91
67
55
29
13
89
92
68
56
28
12
90
93
69
57
27
11
91
94
70
58
26
10
92
95
71
59
25
9
93
96
72
60
24
8
94
97
73
61
23
7
95
98
74
62
22
6
96
99
75
63
21
5
97
100
76
64
20
4
98
101
77
65
19
3
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
90
89
88
87
86
85
84
83
82
81
80
79
78
66
65
64
63
62
61
60
59
58
57
56
55
54
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
130
130
129
128
127
126
125
124
123
122
121
120
119
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
109
117
129
118
108
100
108
116
128
117
107
99
107
115
127
116
106
98
106
114
126
115
105
97
105
113
125
114
104
96
104
112
124
113
103
95
103
111
123
112
102
94
102
110
122
111
101
93
101
109
121
110
100
92
100
108
120
109
99
91
99
107
119
108
98
90
98
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
89
97
85
99
118
106
90
76
88
96
84
100
117
105
91
75
87
95
83
101
116
104
92
74
86
94
82
102
115
103
93
73
85
93
81
103
114
102
94
72
84
92
80
104
113
101
95
71
83
91
79
105
112
100
96
70
82
90
89
88
87
86
85
84
83
82
81
80
79
78
106
111
99
95
69
70
71
72
73
74
75
76
77
78
79
80
81
77
107
110
98
94
68
76
108
109
97
93
67
75
109
108
96
92
66
74
110
107
95
91
65
73
111
106
94
90
64
72
112
105
93
89
63
71
113
104
92
88
62
70
114
113
112
111
110
109
108
107
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
61
69
105
78
60
68
104
77
59
67
103
76
58
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
102
75
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
55
67
101
74
58
44
56
68
100
73
59
43
57
69
99
72
60
42
58
70
98
71
61
41
59
71
97
70
62
40
60
72
96
69
63
39
61
73
95
68
64
38
62
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
37
63
84
95
66
56
36
64
85
96
65
55
35
65
86
97
64
54
34
66
87
98
63
53
33
67
88
98
62
52
32
68
89
97
61
51
31
69
90
96
60
50
30
70
91
95
59
49
29
71
92
94
58
48
28
72
93
93
57
47
27
73
94
92
56
46
26
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
91
55
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
75
87
90
54
38
24
76
88
89
53
39
23
77
89
88
52
40
22
78
90
87
51
41
21
79
91
86
50
42
20
80
92
85
49
43
19
81
93
84
48
44
18
82
94
83
47
43
17
83
95
82
46
42
16
84
96
81
45
41
15
85
97
80
44
40
14
86
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
13
87
92
68
56
30
12
88
93
69
57
29
11
89
94
70
58
28
10
90
95
71
59
27
9
91
96
72
60
26
8
92
97
73
61
25
7
93
98
74
62
24
6
94
99
75
63
23
5
95
100
76
64
22
4
96
101
77
65
21
3
97
102
78
66
20
2
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
91
90
89
88
87
86
85
84
83
82
81
80
79
67
66
65
64
63
62
61
60
59
58
57
56
55
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
129
130
130
129
128
127
126
125
124
123
122
121
120
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
108
116
128
119
107
99
107
115
127
118
106
98
106
114
126
117
105
97
105
113
125
116
104
96
104
112
124
115
103
95
103
111
123
114
102
94
102
110
122
113
101
93
101
109
121
112
100
92
100
108
120
111
99
91
99
107
119
110
98
90
98
106
118
109
97
89
97
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
88
96
84
98
118
107
89
75
87
95
83
99
118
106
90
74
86
94
82
100
117
105
91
73
85
93
81
101
116
104
92
72
84
92
80
102
115
103
93
71
83
91
79
103
114
102
94
70
82
90
78
104
113
101
95
69
81
89
88
87
86
85
84
83
82
81
80
79
78
77
105
112
100
96
68
69
70
71
72
73
74
75
76
77
78
79
80
76
106
111
99
95
67
75
107
110
98
94
66
74
108
109
97
93
65
73
109
108
96
92
64
72
110
107
95
91
63
71
111
106
94
90
62
70
112
105
93
89
61
69
113
112
111
110
109
108
107
106
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
60
68
104
79
59
67
103
78
58
66
102
77
57
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
101
76
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
54
66
100
75
57
43
55
67
99
74
58
42
56
68
98
73
59
41
57
69
97
72
60
40
58
70
96
71
61
39
59
71
95
70
62
38
60
72
94
69
63
37
61
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
36
62
83
94
67
55
35
63
84
95
66
54
34
64
85
96
65
53
33
65
86
97
64
52
32
66
87
98
63
51
31
67
88
98
62
50
30
68
89
97
61
49
29
69
90
96
60
48
28
70
91
95
59
47
27
71
92
94
58
46
26
72
93
93
57
45
25
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
92
56
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
74
86
91
55
37
23
75
87
90
54
38
22
76
88
89
53
39
21
77
89
88
52
40
20
78
90
87
51
41
19
79
91
86
50
42
18
80
92
85
49
43
17
81
93
84
48
44
16
82
94
83
47
43
15
83
95
82
46
42
14
84
96
81
45
41
13
85
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
12
86
93
69
57
31
11
87
94
70
58
30
10
88
95
71
59
29
9
89
96
72
60
28
8
90
97
73
61
27
7
91
98
74
62
26
6
92
99
75
63
25
5
93
100
76
64
24
4
94
101
77
65
23
3
95
102
78
66
22
2
96
103
79
67
21
1
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
92
91
90
89
88
87
86
85
84
83
82
81
80
68
67
66
65
64
63
62
61
60
59
58
57
56
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
108
116
112
124
125
117
107
115
111
123
124
116
106
114
110
122
123
115
105
113
109
121
122
114
104
112
108
120
121
113
103
111
107
119
120
112
102
110
106
118
119
111
101
109
105
117
118
110
100
108
104
116
117
109
99
107
103
115
116
108
98
106
102
114
115
107
97
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
113
114
115
116
117
118
119
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
106
96
84
96
100
112
107
93
105
95
83
95
99
111
108
92
104
94
82
94
98
110
109
91
103
93
81
93
97
109
110
90
102
92
80
92
96
108
111
89
101
91
79
91
95
107
112
88
100
90
78
90
94
106
113
87
99
89
88
87
86
85
84
83
82
81
80
79
78
77
89
93
105
114
86
87
88
89
90
91
92
93
94
95
96
97
98
76
88
92
104
115
85
75
87
91
103
116
84
74
86
90
102
117
83
73
85
89
101
118
82
72
84
88
100
119
81
71
83
87
99
119
80
70
82
86
98
118
79
69
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
78
68
72
108
77
67
71
107
76
66
70
106
75
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
69
105
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
52
66
68
104
75
63
51
67
67
103
76
64
50
68
66
102
77
65
49
69
65
101
78
66
48
70
64
100
79
67
47
71
63
99
80
68
46
72
62
98
81
69
45
73
74
73
72
71
70
69
68
67
66
67
68
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
70
44
65
60
96
91
71
43
64
59
95
92
72
42
63
58
94
93
73
41
62
57
93
94
74
40
61
56
92
95
75
39
60
55
91
96
76
38
59
54
90
97
77
37
58
53
89
98
78
36
57
52
88
99
79
35
56
51
87
100
80
34
55
50
86
101
81
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
49
85
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
32
44
48
84
95
83
31
43
47
83
96
84
30
42
46
82
97
85
29
41
45
81
98
86
28
40
44
80
99
87
27
39
43
79
99
88
26
38
42
78
98
89
25
37
41
77
97
90
24
36
40
76
96
91
23
35
39
75
95
92
22
34
38
74
94
93
21
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
20
24
50
62
86
95
19
23
51
63
87
96
18
22
52
64
88
97
17
21
53
65
89
98
16
20
54
66
90
99
15
19
55
67
91
100
14
18
56
68
92
101
13
17
57
69
93
102
12
16
58
70
94
103
11
15
59
71
95
104
10
14
60
72
96
105
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
49
50
51
52
53
54
55
56
57
58
59
60
61
73
74
75
76
77
78
79
80
81
82
83
84
85
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
111
110
109
108
107
106
0
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
101
102
103
104
105
106
107
108
109
110
111
112
113
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
143
142
141
140
139
138
137
136
135
134
133
132
131
130
114
104
100
112
124
129
113
103
99
111
123
128
112
102
98
110
122
127
111
101
97
109
121
126
110
100
96
108
120
125
109
99
95
107
119
124
108
98
94
106
118
123
107
97
93
105
117
122
106
96
92
104
116
121
105
95
91
103
115
120
104
94
90
102
114
119
103
91
92
93
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
119
118
117
116
115
114
113
112
111
110
109
108
107
106
118
102
90
84
88
100
119
105
117
101
89
83
87
99
119
104
116
100
88
82
86
98
118
103
115
99
87
81
85
97
117
102
114
98
86
80
84
96
116
101
113
97
85
79
83
95
115
100
112
96
84
78
82
94
114
99
111
95
94
93
92
91
90
89
88
87
86
85
84
83
77
81
93
113
98
99
100
101
102
103
104
105
106
107
108
109
110
82
76
80
92
112
97
81
75
79
91
111
96
80
74
78
90
110
95
79
73
77
89
109
94
78
72
76
88
108
93
77
71
75
87
107
92
76
70
74
86
106
91
75
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
90
74
60
96
89
73
59
95
88
72
58
94
87
69
68
67
66
65
66
67
68
69
70
71
72
73
74
73
72
71
57
93
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
64
70
56
92
87
75
63
69
55
91
88
76
62
68
54
90
89
77
61
67
53
89
90
78
60
66
52
88
91
79
59
65
51
87
92
80
58
64
50
86
93
81
57
63
62
61
60
59
58
57
56
55
54
55
56
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
99
98
97
96
95
94
82
56
53
48
84
98
83
55
52
47
83
99
84
54
51
46
82
100
85
53
50
45
81
101
86
52
49
44
80
102
87
51
48
43
79
103
88
50
47
42
78
104
89
49
46
41
77
105
90
48
45
40
76
104
91
47
44
39
75
103
92
46
43
38
74
102
93
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
37
73
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
99
98
97
96
95
94
44
32
36
72
92
95
43
31
35
71
91
96
42
30
34
70
90
97
41
29
33
69
89
98
40
28
32
68
88
99
39
27
31
67
87
100
38
26
30
66
86
101
37
25
29
65
85
102
36
24
28
64
84
103
35
23
27
63
83
104
34
22
26
62
82
105
33
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
106
32
12
38
50
74
107
31
11
39
51
75
108
30
10
40
52
76
109
29
9
41
53
77
110
28
8
42
54
78
110
27
7
43
55
79
109
26
6
44
56
80
108
25
5
45
57
81
107
24
4
46
58
82
106
23
3
47
59
83
105
22
2
48
60
84
104
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
35
36
37
38
39
40
41
42
43
44
45
46
47
61
62
63
64
65
66
67
68
69
70
71
72
71
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
14
0
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
113
114
115
116
117
118
119
120
121
122
123
124
125
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
132
116
112
124
128
144
131
115
111
123
127
143
130
114
110
122
126
142
129
113
109
121
125
141
128
112
108
120
124
140
127
111
107
119
123
139
126
110
106
118
122
138
125
109
105
117
121
137
124
108
104
116
120
136
123
107
103
115
119
135
122
106
102
114
118
134
121
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
133
120
108
96
100
112
108
120
132
119
107
95
99
111
107
119
131
118
106
94
98
110
106
118
130
117
105
93
97
109
105
117
129
116
104
92
96
108
104
116
128
115
103
91
95
107
103
115
127
114
102
90
94
106
102
114
126
113
112
111
110
109
108
107
106
105
104
103
102
101
89
93
105
101
113
114
115
116
117
118
119
120
121
122
123
124
125
100
88
92
104
100
112
99
87
91
103
99
111
98
86
90
102
98
110
97
85
89
101
97
109
96
84
88
100
96
108
95
83
87
99
95
107
94
82
86
98
94
106
93
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
105
92
72
84
104
91
71
83
103
90
70
82
102
103
102
101
100
99
100
99
98
97
96
95
94
93
92
91
90
89
69
81
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
98
88
68
80
100
109
97
87
67
79
99
110
96
86
66
78
98
110
95
85
65
77
97
109
94
84
64
76
96
108
93
83
63
75
95
107
92
82
62
74
94
106
91
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
105
90
73
60
72
86
104
89
74
59
71
87
103
88
75
58
70
88
102
87
76
57
69
89
101
86
77
56
68
90
100
85
78
55
67
91
99
84
79
54
66
92
98
83
80
53
65
93
97
82
79
52
64
92
96
81
78
51
63
91
95
80
77
50
62
90
94
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
49
61
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
78
66
48
60
80
94
77
65
47
59
79
95
76
64
46
58
78
96
75
63
45
57
77
97
74
62
44
56
76
98
73
61
43
55
75
99
72
60
42
54
74
100
71
59
41
53
73
101
70
58
40
52
72
102
69
57
39
51
71
103
68
56
38
50
70
104
67
55
54
53
52
51
50
49
48
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
103
66
46
24
38
62
102
65
45
23
39
63
101
64
44
22
40
64
100
63
43
21
41
65
99
62
42
20
42
66
98
61
41
19
43
67
97
60
40
18
44
68
96
59
39
17
45
69
95
58
38
16
46
70
94
57
37
15
47
71
93
56
36
14
48
72
92
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
1
2
3
4
5
6
7
8
9
10
11
12
13
49
50
51
52
53
54
55
56
57
58
59
60
59
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
48
34
0
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
125
124
123
122
121
120
119
118
117
116
115
114
113
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
144
128
124
112
116
132
143
127
123
111
115
131
142
126
122
110
114
130
141
125
121
109
113
129
140
124
120
108
112
128
139
123
119
107
111
127
138
122
118
106
110
126
137
121
117
105
109
125
136
120
116
104
108
124
135
119
115
103
107
123
134
118
114
102
106
122
133
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
121
132
120
108
112
100
96
108
120
131
119
107
111
99
95
107
119
130
118
106
110
98
94
106
118
129
117
105
109
97
93
105
117
128
116
104
108
96
92
104
116
127
115
103
107
95
91
103
115
126
114
102
106
94
90
102
114
125
124
123
122
121
120
119
118
117
116
115
114
113
101
105
93
89
101
102
103
104
105
106
107
108
109
110
111
112
113
112
100
104
92
88
100
111
99
103
91
87
99
110
98
102
90
86
98
109
97
101
89
85
97
108
96
100
88
84
96
107
95
99
87
83
95
106
94
98
86
82
94
105
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
93
104
84
72
92
103
83
71
91
102
82
70
90
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
81
69
89
90
91
92
93
94
95
96
97
98
99
100
99
100
101
102
103
109
100
80
68
88
98
110
99
79
67
87
97
110
98
78
66
86
96
109
97
77
65
85
95
108
96
76
64
84
94
107
95
75
63
83
93
106
94
74
62
82
92
105
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
91
104
85
72
60
74
90
103
86
71
59
75
89
102
87
70
58
76
88
101
88
69
57
77
87
100
89
68
56
78
86
99
90
67
55
79
85
98
91
66
54
80
84
97
92
65
53
79
83
96
93
64
52
78
82
95
92
63
51
77
81
94
91
62
50
76
80
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
61
49
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
94
80
60
48
66
78
95
79
59
47
65
77
96
78
58
46
64
76
97
77
57
45
63
75
98
76
56
44
62
74
99
75
55
43
61
73
100
74
54
42
60
72
101
73
53
41
59
71
102
72
52
40
58
70
103
71
51
39
57
69
104
70
50
38
56
68
103
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
48
49
50
51
52
53
54
55
67
102
62
38
24
46
66
101
63
39
23
45
65
100
64
40
22
44
64
99
65
41
21
43
63
98
66
42
20
42
62
97
67
43
19
41
61
96
68
44
18
40
60
95
69
45
17
39
59
94
70
46
16
38
58
93
71
47
15
37
57
92
72
48
14
36
56
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
59
60
59
58
57
56
55
54
53
52
51
50
49
13
12
11
10
9
8
7
6
5
4
3
2
1
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
84
70
58
0
130
131
132
133
134
135
136
137
138
139
140
141
142
143
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
113
112
111
110
109
108
107
106
105
104
103
102
101
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
129
124
112
100
104
112
128
123
111
99
103
111
127
122
110
98
102
110
126
121
109
97
101
109
125
120
108
96
100
108
124
119
107
95
99
107
123
118
106
94
98
106
122
117
105
93
97
105
121
116
104
92
96
104
120
115
103
91
95
103
119
114
102
90
94
102
118
106
107
108
109
110
111
112
113
114
115
116
117
118
119
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
92
91
90
89
101
117
105
119
100
88
84
88
100
116
104
119
99
87
83
87
99
115
103
118
98
86
82
86
98
114
102
117
97
85
81
85
97
113
101
116
96
84
80
84
96
112
100
115
95
83
79
83
95
111
99
114
94
82
78
82
94
110
109
108
107
106
105
104
103
102
101
100
99
98
113
93
81
77
81
82
83
84
85
86
87
88
89
90
91
92
93
97
112
92
80
76
80
96
111
91
79
75
79
95
110
90
78
74
78
94
109
89
77
73
77
93
108
88
76
72
76
92
107
87
75
71
75
91
106
86
74
70
74
90
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
73
89
96
60
72
88
95
59
71
87
94
58
70
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
93
57
69
70
71
72
73
72
71
70
69
68
67
66
65
66
67
68
69
75
87
92
56
68
64
76
88
91
55
67
63
77
89
90
54
66
62
78
90
89
53
65
61
79
91
88
52
64
60
80
92
87
51
63
59
81
93
86
50
62
58
82
94
95
96
97
98
99
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
56
55
54
53
54
55
56
57
58
59
60
61
57
83
97
84
48
52
56
84
98
83
47
51
55
85
99
82
46
50
54
86
100
81
45
49
53
87
101
80
44
48
52
88
102
79
43
47
51
89
103
78
42
46
50
90
104
77
41
45
49
91
105
76
40
44
48
92
104
75
39
43
47
93
103
74
38
42
46
94
95
96
97
98
99
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
73
37
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
95
92
72
36
32
44
96
91
71
35
31
43
97
90
70
34
30
42
98
89
69
33
29
41
99
88
68
32
28
40
100
87
67
31
27
39
101
86
66
30
26
38
102
85
65
29
25
37
103
84
64
28
24
36
104
83
63
27
23
35
105
82
62
26
22
34
106
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
33
107
74
50
38
12
32
108
75
51
39
11
31
109
76
52
40
10
30
110
77
53
41
9
29
110
78
54
42
8
28
109
79
55
43
7
27
108
80
56
44
6
26
107
81
57
45
5
25
106
82
58
46
4
24
105
83
59
47
3
23
104
84
60
48
2
22
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
71
72
71
70
69
68
67
66
65
64
63
62
61
47
46
45
44
43
42
41
40
39
38
37
36
35
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
96
82
70
34
0
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
117
125
124
112
116
108
116
124
123
111
115
107
115
123
122
110
114
106
114
122
121
109
113
105
113
121
120
108
112
104
112
120
119
107
111
103
111
119
118
106
110
102
110
118
117
105
109
101
109
117
116
104
108
100
108
116
115
103
107
99
107
115
114
102
106
98
106
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
119
118
117
116
115
114
113
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
97
105
93
107
112
100
96
84
96
104
92
108
111
99
95
83
95
103
91
109
110
98
94
82
94
102
90
110
109
97
93
81
93
101
89
111
108
96
92
80
92
100
88
112
107
95
91
79
91
99
87
113
106
94
90
78
90
98
97
96
95
94
93
92
91
90
89
88
87
86
114
105
93
89
77
78
79
80
81
82
83
84
85
86
87
88
89
85
115
104
92
88
76
84
116
103
91
87
75
83
117
102
90
86
74
82
118
101
89
85
73
81
119
100
88
84
72
80
119
99
87
83
71
79
118
98
86
82
70
78
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
69
77
108
72
68
76
107
71
67
75
106
70
66
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
105
69
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
63
75
104
68
66
52
64
76
103
67
67
51
65
77
102
66
68
50
66
78
101
65
69
49
67
79
100
64
70
48
68
80
99
63
71
47
69
81
98
62
72
46
70
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
68
67
66
65
66
67
68
69
70
71
72
73
45
71
92
96
60
64
44
72
93
95
59
63
43
73
94
94
58
62
42
74
95
93
57
61
41
75
96
92
56
60
40
76
97
91
55
59
39
77
98
90
54
58
38
78
99
89
53
57
37
79
100
88
52
56
36
80
101
87
51
55
35
81
102
86
50
54
34
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
85
49
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
83
95
84
48
44
32
84
96
83
47
43
31
85
97
82
46
42
30
86
98
81
45
41
29
87
99
80
44
40
28
88
99
79
43
39
27
89
98
78
42
38
26
90
97
77
41
37
25
91
96
76
40
36
24
92
95
75
39
35
23
93
94
74
38
34
22
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
21
95
86
62
50
24
20
96
87
63
51
23
19
97
88
64
52
22
18
98
89
65
53
21
17
99
90
66
54
20
16
100
91
67
55
19
15
101
92
68
56
18
14
102
93
69
57
17
13
103
94
70
58
16
12
104
95
71
59
15
11
105
96
72
60
14
10
106
107
108
109
110
111
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
85
84
83
82
81
80
79
78
77
76
75
74
73
61
60
59
58
57
56
55
54
53
52
51
50
49
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
110
96
84
48
14
0
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
109
117
113
125
126
118
108
116
112
124
125
117
107
115
111
123
124
116
106
114
110
122
123
115
105
113
109
121
122
114
104
112
108
120
121
113
103
111
107
119
120
112
102
110
106
118
119
111
101
109
105
117
118
110
100
108
104
116
117
109
99
107
103
115
116
108
98
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
114
115
116
117
118
119
120
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
107
97
85
97
101
113
108
94
106
96
84
96
100
112
109
93
105
95
83
95
99
111
110
92
104
94
82
94
98
110
111
91
103
93
81
93
97
109
112
90
102
92
80
92
96
108
113
89
101
91
79
91
95
107
114
88
100
90
89
88
87
86
85
84
83
82
81
80
79
78
90
94
106
115
87
88
89
90
91
92
93
94
95
96
97
98
99
77
89
93
105
116
86
76
88
92
104
117
85
75
87
91
103
118
84
74
86
90
102
119
83
73
85
89
101
120
82
72
84
88
100
120
81
71
83
87
99
119
80
70
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
79
69
73
109
78
68
72
108
77
67
71
107
76
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
70
106
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
53
67
69
105
76
64
52
68
68
104
77
65
51
69
67
103
78
66
50
70
66
102
79
67
49
71
65
101
80
68
48
72
64
100
81
69
47
73
63
99
82
70
46
74
75
74
73
72
71
70
69
68
67
68
69
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
71
45
66
61
97
92
72
44
65
60
96
93
73
43
64
59
95
94
74
42
63
58
94
95
75
41
62
57
93
96
76
40
61
56
92
97
77
39
60
55
91
98
78
38
59
54
90
99
79
37
58
53
89
100
80
36
57
52
88
101
81
35
56
51
87
102
82
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
50
86
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
33
45
49
85
96
84
32
44
48
84
97
85
31
43
47
83
98
86
30
42
46
82
99
87
29
41
45
81
100
88
28
40
44
80
100
89
27
39
43
79
99
90
26
38
42
78
98
91
25
37
41
77
97
92
24
36
40
76
96
93
23
35
39
75
95
94
22
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
21
25
51
63
87
96
20
24
52
64
88
97
19
23
53
65
89
98
18
22
54
66
90
99
17
21
55
67
91
100
16
20
56
68
92
101
15
19
57
69
93
102
14
18
58
70
94
103
13
17
59
71
95
104
12
16
60
72
96
105
11
15
61
73
97
106
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
50
51
52
53
54
55
56
57
58
59
60
61
62
74
75
76
77
78
79
80
81
82
83
84
85
86
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
112
111
110
109
108
107
1
15
49
85
97
111
0
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
102
103
104
105
106
107
108
109
110
111
112
113
114
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
144
143
142
141
140
139
138
137
136
135
134
133
132
131
115
105
101
113
125
130
114
104
100
112
124
129
113
103
99
111
123
128
112
102
98
110
122
127
111
101
97
109
121
126
110
100
96
108
120
125
109
99
95
107
119
124
108
98
94
106
118
123
107
97
93
105
117
122
106
96
92
104
116
121
105
95
91
103
115
120
104
92
93
94
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
120
119
118
117
116
115
114
113
112
111
110
109
108
107
119
103
91
85
89
101
120
106
118
102
90
84
88
100
120
105
117
101
89
83
87
99
119
104
116
100
88
82
86
98
118
103
115
99
87
81
85
97
117
102
114
98
86
80
84
96
116
101
113
97
85
79
83
95
115
100
112
96
95
94
93
92
91
90
89
88
87
86
85
84
78
82
94
114
99
100
101
102
103
104
105
106
107
108
109
110
111
83
77
81
93
113
98
82
76
80
92
112
97
81
75
79
91
111
96
80
74
78
90
110
95
79
73
77
89
109
94
78
72
76
88
108
93
77
71
75
87
107
92
76
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
91
75
61
97
90
74
60
96
89
73
59
95
88
70
69
68
67
66
67
68
69
70
71
72
73
74
75
74
73
72
58
94
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
65
71
57
93
88
76
64
70
56
92
89
77
63
69
55
91
90
78
62
68
54
90
91
79
61
67
53
89
92
80
60
66
52
88
93
81
59
65
51
87
94
82
58
64
63
62
61
60
59
58
57
56
55
56
57
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
100
99
98
97
96
95
83
57
54
49
85
99
84
56
53
48
84
100
85
55
52
47
83
101
86
54
51
46
82
102
87
53
50
45
81
103
88
52
49
44
80
104
89
51
48
43
79
105
90
50
47
42
78
106
91
49
46
41
77
105
92
48
45
40
76
104
93
47
44
39
75
103
94
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
38
74
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
100
99
98
97
96
95
45
33
37
73
93
96
44
32
36
72
92
97
43
31
35
71
91
98
42
30
34
70
90
99
41
29
33
69
89
100
40
28
32
68
88
101
39
27
31
67
87
102
38
26
30
66
86
103
37
25
29
65
85
104
36
24
28
64
84
105
35
23
27
63
83
106
34
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
107
33
13
39
51
75
108
32
12
40
52
76
109
31
11
41
53
77
110
30
10
42
54
78
110
29
9
43
55
79
109
28
8
44
56
80
108
27
7
45
57
81
107
26
6
46
58
82
106
25
5
47
59
83
105
24
4
48
60
84
104
23
3
47
61
83
103
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
34
35
36
37
38
39
40
41
42
43
44
45
46
62
63
64
65
66
67
68
69
70
71
72
71
70
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
15
1
33
69
81
95
16
0
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
114
115
116
117
118
119
120
121
122
123
124
125
126
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
133
117
113
125
129
145
132
116
112
124
128
144
131
115
111
123
127
143
130
114
110
122
126
142
129
113
109
121
125
141
128
112
108
120
124
140
127
111
107
119
123
139
126
110
106
118
122
138
125
109
105
117
121
137
124
108
104
116
120
136
123
107
103
115
119
135
122
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
134
121
109
97
101
113
109
121
133
120
108
96
100
112
108
120
132
119
107
95
99
111
107
119
131
118
106
94
98
110
106
118
130
117
105
93
97
109
105
117
129
116
104
92
96
108
104
116
128
115
103
91
95
107
103
115
127
114
113
112
111
110
109
108
107
106
105
104
103
102
90
94
106
102
114
115
116
117
118
119
120
121
122
123
124
125
126
101
89
93
105
101
113
100
88
92
104
100
112
99
87
91
103
99
111
98
86
90
102
98
110
97
85
89
101
97
109
96
84
88
100
96
108
95
83
87
99
95
107
94
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
106
93
73
85
105
92
72
84
104
91
71
83
103
102
101
100
99
98
99
100
99
98
97
96
95
94
93
92
91
90
70
82
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
97
89
69
81
101
108
96
88
68
80
100
109
95
87
67
79
99
110
94
86
66
78
98
110
93
85
65
77
97
109
92
84
64
76
96
108
91
83
63
75
95
107
90
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
106
89
74
61
73
87
105
88
75
60
72
88
104
87
76
59
71
89
103
86
77
58
70
90
102
85
78
57
69
91
101
84
79
56
68
92
100
83
80
55
67
93
99
82
79
54
66
94
98
81
78
53
65
93
97
80
77
52
64
92
96
79
76
51
63
91
95
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
50
62
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
77
65
49
61
81
95
76
64
48
60
80
96
75
63
47
59
79
97
74
62
46
58
78
98
73
61
45
57
77
99
72
60
44
56
76
100
71
59
43
55
75
101
70
58
42
54
74
102
69
57
41
53
73
103
68
56
40
52
72
104
67
55
39
51
71
103
66
54
53
52
51
50
49
48
47
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
102
65
45
25
39
63
101
64
44
24
40
64
100
63
43
23
41
65
99
62
42
22
42
66
98
61
41
21
43
67
97
60
40
20
44
68
96
59
39
19
45
69
95
58
38
18
46
70
94
57
37
17
47
71
93
56
36
16
48
72
92
55
35
15
49
71
91
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
2
3
4
5
6
7
8
9
10
11
12
13
14
50
51
52
53
54
55
56
57
58
59
60
59
58
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
47
33
1
57
69
83
48
32
0
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
126
125
124
123
122
121
120
119
118
117
116
115
114
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
145
129
125
113
117
133
144
128
124
112
116
132
143
127
123
111
115
131
142
126
122
110
114
130
141
125
121
109
113
129
140
124
120
108
112
128
139
123
119
107
111
127
138
122
118
106
110
126
137
121
117
105
109
125
136
120
116
104
108
124
135
119
115
103
107
123
134
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
122
133
121
109
113
101
97
109
121
132
120
108
112
100
96
108
120
131
119
107
111
99
95
107
119
130
118
106
110
98
94
106
118
129
117
105
109
97
93
105
117
128
116
104
108
96
92
104
116
127
115
103
107
95
91
103
115
126
125
124
123
122
121
120
119
118
117
116
115
114
102
106
94
90
102
103
104
105
106
107
108
109
110
111
112
113
114
113
101
105
93
89
101
112
100
104
92
88
100
111
99
103
91
87
99
110
98
102
90
86
98
109
97
101
89
85
97
108
96
100
88
84
96
107
95
99
87
83
95
106
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
94
105
85
73
93
104
84
72
92
103
83
71
91
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
82
70
90
91
92
93
94
95
96
97
98
99
100
99
98
99
100
101
102
108
101
81
69
89
97
109
100
80
68
88
96
110
99
79
67
87
95
110
98
78
66
86
94
109
97
77
65
85
93
108
96
76
64
84
92
107
95
75
63
83
91
106
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
90
105
86
73
61
75
89
104
87
72
60
76
88
103
88
71
59
77
87
102
89
70
58
78
86
101
90
69
57
79
85
100
91
68
56
80
84
99
92
67
55
79
83
98
93
66
54
78
82
97
94
65
53
77
81
96
93
64
52
76
80
95
92
63
51
75
79
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
62
50
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
95
81
61
49
65
77
96
80
60
48
64
76
97
79
59
47
63
75
98
78
58
46
62
74
99
77
57
45
61
73
100
76
56
44
60
72
101
75
55
43
59
71
102
74
54
42
58
70
103
73
53
41
57
69
104
72
52
40
56
68
103
71
51
39
55
67
102
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
47
48
49
50
51
52
53
54
66
101
63
39
25
45
65
100
64
40
24
44
64
99
65
41
23
43
63
98
66
42
22
42
62
97
67
43
21
41
61
96
68
44
20
40
60
95
69
45
19
39
59
94
70
46
18
38
58
93
71
47
17
37
57
92
72
48
16
36
56
91
71
49
15
35
55
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
58
59
60
59
58
57
56
55
54
53
52
51
50
14
13
12
11
10
9
8
7
6
5
4
3
2
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
83
69
57
1
33
47
84
68
56
0
131
132
133
134
135
136
137
138
139
140
141
142
143
144
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
114
113
112
111
110
109
108
107
106
105
104
103
102
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
130
125
113
101
105
113
129
124
112
100
104
112
128
123
111
99
103
111
127
122
110
98
102
110
126
121
109
97
101
109
125
120
108
96
100
108
124
119
107
95
99
107
123
118
106
94
98
106
122
117
105
93
97
105
121
116
104
92
96
104
120
115
103
91
95
103
119
107
108
109
110
111
112
113
114
115
116
117
118
119
120
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
93
92
91
90
102
118
106
120
101
89
85
89
101
117
105
120
100
88
84
88
100
116
104
119
99
87
83
87
99
115
103
118
98
86
82
86
98
114
102
117
97
85
81
85
97
113
101
116
96
84
80
84
96
112
100
115
95
83
79
83
95
111
110
109
108
107
106
105
104
103
102
101
100
99
114
94
82
78
82
83
84
85
86
87
88
89
90
91
92
93
94
98
113
93
81
77
81
97
112
92
80
76
80
96
111
91
79
75
79
95
110
90
78
74
78
94
109
89
77
73
77
93
108
88
76
72
76
92
107
87
75
71
75
91
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
74
90
97
61
73
89
96
60
72
88
95
59
71
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
94
58
70
71
72
73
74
73
72
71
70
69
68
67
66
67
68
69
70
76
88
93
57
69
65
77
89
92
56
68
64
78
90
91
55
67
63
79
91
90
54
66
62
80
92
89
53
65
61
81
93
88
52
64
60
82
94
87
51
63
59
83
95
96
97
98
99
100
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
57
56
55
54
55
56
57
58
59
60
61
62
58
84
98
85
49
53
57
85
99
84
48
52
56
86
100
83
47
51
55
87
101
82
46
50
54
88
102
81
45
49
53
89
103
80
44
48
52
90
104
79
43
47
51
91
105
78
42
46
50
92
106
77
41
45
49
93
105
76
40
44
48
94
104
75
39
43
47
95
96
97
98
99
100
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
74
38
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
96
93
73
37
33
45
97
92
72
36
32
44
98
91
71
35
31
43
99
90
70
34
30
42
100
89
69
33
29
41
101
88
68
32
28
40
102
87
67
31
27
39
103
86
66
30
26
38
104
85
65
29
25
37
105
84
64
28
24
36
106
83
63
27
23
35
107
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
34
108
75
51
39
13
33
109
76
52
40
12
32
110
77
53
41
11
31
110
78
54
42
10
30
109
79
55
43
9
29
108
80
56
44
8
28
107
81
57
45
7
27
106
82
58
46
6
26
105
83
59
47
5
25
104
84
60
48
4
24
103
83
61
47
3
23
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
70
71
72
71
70
69
68
67
66
65
64
63
62
46
45
44
43
42
41
40
39
38
37
36
35
34
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
95
81
69
33
1
15
96
80
68
32
0
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
118
126
125
113
117
109
117
125
124
112
116
108
116
124
123
111
115
107
115
123
122
110
114
106
114
122
121
109
113
105
113
121
120
108
112
104
112
120
119
107
111
103
111
119
118
106
110
102
110
118
117
105
109
101
109
117
116
104
108
100
108
116
115
103
107
99
107
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
120
119
118
117
116
115
114
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
98
106
94
108
113
101
97
85
97
105
93
109
112
100
96
84
96
104
92
110
111
99
95
83
95
103
91
111
110
98
94
82
94
102
90
112
109
97
93
81
93
101
89
113
108
96
92
80
92
100
88
114
107
95
91
79
91
99
98
97
96
95
94
93
92
91
90
89
88
87
115
106
94
90
78
79
80
81
82
83
84
85
86
87
88
89
90
86
116
105
93
89
77
85
117
104
92
88
76
84
118
103
91
87
75
83
119
102
90
86
74
82
120
101
89
85
73
81
120
100
88
84
72
80
119
99
87
83
71
79
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
70
78
109
73
69
77
108
72
68
76
107
71
67
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
106
70
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
64
76
105
69
67
53
65
77
104
68
68
52
66
78
103
67
69
51
67
79
102
66
70
50
68
80
101
65
71
49
69
81
100
64
72
48
70
82
99
63
73
47
71
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
69
68
67
66
67
68
69
70
71
72
73
74
46
72
93
97
61
65
45
73
94
96
60
64
44
74
95
95
59
63
43
75
96
94
58
62
42
76
97
93
57
61
41
77
98
92
56
60
40
78
99
91
55
59
39
79
100
90
54
58
38
80
101
89
53
57
37
81
102
88
52
56
36
82
103
87
51
55
35
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
86
50
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
84
96
85
49
45
33
85
97
84
48
44
32
86
98
83
47
43
31
87
99
82
46
42
30
88
100
81
45
41
29
89
100
80
44
40
28
90
99
79
43
39
27
91
98
78
42
38
26
92
97
77
41
37
25
93
96
76
40
36
24
94
95
75
39
35
23
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
22
96
87
63
51
25
21
97
88
64
52
24
20
98
89
65
53
23
19
99
90
66
54
22
18
100
91
67
55
21
17
101
92
68
56
20
16
102
93
69
57
19
15
103
94
70
58
18
14
104
95
71
59
17
13
105
96
72
60
16
12
106
97
73
61
15
11
107
108
109
110
111
112
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
86
85
84
83
82
81
80
79
78
77
76
75
74
62
61
60
59
58
57
56
55
54
53
52
51
50
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
111
97
85
49
15
1
112
96
84
48
16
0
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
110
118
114
126
127
119
109
117
113
125
126
118
108
116
112
124
125
117
107
115
111
123
124
116
106
114
110
122
123
115
105
113
109
121
122
114
104
112
108
120
121
113
103
111
107
119
120
112
102
110
106
118
119
111
101
109
105
117
118
110
100
108
104
116
117
109
99
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
115
116
117
118
119
120
121
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
108
98
86
98
102
114
109
95
107
97
85
97
101
113
110
94
106
96
84
96
100
112
111
93
105
95
83
95
99
111
112
92
104
94
82
94
98
110
113
91
103
93
81
93
97
109
114
90
102
92
80
92
96
108
115
89
101
91
90
89
88
87
86
85
84
83
82
81
80
79
91
95
107
116
88
89
90
91
92
93
94
95
96
97
98
99
100
78
90
94
106
117
87
77
89
93
105
118
86
76
88
92
104
119
85
75
87
91
103
120
84
74
86
90
102
121
83
73
85
89
101
121
82
72
84
88
100
120
81
71
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
80
70
74
110
79
69
73
109
78
68
72
108
77
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
71
107
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
54
68
70
106
77
65
53
69
69
105
78
66
52
70
68
104
79
67
51
71
67
103
80
68
50
72
66
102
81
69
49
73
65
101
82
70
48
74
64
100
83
71
47
75
76
75
74
73
72
71
70
69
68
69
70
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
72
46
67
62
98
93
73
45
66
61
97
94
74
44
65
60
96
95
75
43
64
59
95
96
76
42
63
58
94
97
77
41
62
57
93
98
78
40
61
56
92
99
79
39
60
55
91
100
80
38
59
54
90
101
81
37
58
53
89
102
82
36
57
52
88
103
83
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
51
87
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
34
46
50
86
97
85
33
45
49
85
98
86
32
44
48
84
99
87
31
43
47
83
100
88
30
42
46
82
101
89
29
41
45
81
101
90
28
40
44
80
100
91
27
39
43
79
99
92
26
38
42
78
98
93
25
37
41
77
97
94
24
36
40
76
96
95
23
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
22
26
52
64
88
97
21
25
53
65
89
98
20
24
54
66
90
99
19
23
55
67
91
100
18
22
56
68
92
101
17
21
57
69
93
102
16
20
58
70
94
103
15
19
59
71
95
104
14
18
60
72
96
105
13
17
61
73
97
106
12
16
62
74
98
107
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
51
52
53
54
55
56
57
58
59
60
61
62
63
75
76
77
78
79
80
81
82
83
84
85
86
87
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
2
16
50
86
98
112
1
17
49
85
97
113
0
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
103
104
105
106
107
108
109
110
111
112
113
114
115
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
145
144
143
142
141
140
139
138
137
136
135
134
133
132
116
106
102
114
126
131
115
105
101
113
125
130
114
104
100
112
124
129
113
103
99
111
123
128
112
102
98
110
122
127
111
101
97
109
121
126
110
100
96
108
120
125
109
99
95
107
119
124
108
98
94
106
118
123
107
97
93
105
117
122
106
96
92
104
116
121
105
93
94
95
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
121
120
119
118
117
116
115
114
113
112
111
110
109
108
120
104
92
86
90
102
121
107
119
103
91
85
89
101
121
106
118
102
90
84
88
100
120
105
117
101
89
83
87
99
119
104
116
100
88
82
86
98
118
103
115
99
87
81
85
97
117
102
114
98
86
80
84
96
116
101
113
97
96
95
94
93
92
91
90
89
88
87
86
85
79
83
95
115
100
101
102
103
104
105
106
107
108
109
110
111
112
84
78
82
94
114
99
83
77
81
93
113
98
82
76
80
92
112
97
81
75
79
91
111
96
80
74
78
90
110
95
79
73
77
89
109
94
78
72
76
88
108
93
77
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
92
76
62
98
91
75
61
97
90
74
60
96
89
71
70
69
68
67
68
69
70
71
72
73
74
75
76
75
74
73
59
95
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
66
72
58
94
89
77
65
71
57
93
90
78
64
70
56
92
91
79
63
69
55
91
92
80
62
68
54
90
93
81
61
67
53
89
94
82
60
66
52
88
95
83
59
65
64
63
62
61
60
59
58
57
56
57
58
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
101
100
99
98
97
96
84
58
55
50
86
100
85
57
54
49
85
101
86
56
53
48
84
102
87
55
52
47
83
103
88
54
51
46
82
104
89
53
50
45
81
105
90
52
49
44
80
106
91
51
48
43
79
107
92
50
47
42
78
106
93
49
46
41
77
105
94
48
45
40
76
104
95
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
39
75
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
101
100
99
98
97
96
46
34
38
74
94
97
45
33
37
73
93
98
44
32
36
72
92
99
43
31
35
71
91
100
42
30
34
70
90
101
41
29
33
69
89
102
40
28
32
68
88
103
39
27
31
67
87
104
38
26
30
66
86
105
37
25
29
65
85
106
36
24
28
64
84
107
35
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
108
34
14
40
52
76
109
33
13
41
53
77
110
32
12
42
54
78
110
31
11
43
55
79
109
30
10
44
56
80
108
29
9
45
57
81
107
28
8
46
58
82
106
27
7
47
59
83
105
26
6
48
60
84
104
25
5
47
61
83
103
24
4
46
62
82
102
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
33
34
35
36
37
38
39
40
41
42
43
44
45
63
64
65
66
67
68
69
70
71
72
71
70
69
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
16
2
32
68
80
94
17
1
31
67
79
95
18
0
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
115
116
117
118
119
120
121
122
123
124
125
126
127
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
134
118
114
126
130
146
133
117
113
125
129
145
132
116
112
124
128
144
131
115
111
123
127
143
130
114
110
122
126
142
129
113
109
121
125
141
128
112
108
120
124
140
127
111
107
119
123
139
126
110
106
118
122
138
125
109
105
117
121
137
124
108
104
116
120
136
123
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
135
122
110
98
102
114
110
122
134
121
109
97
101
113
109
121
133
120
108
96
100
112
108
120
132
119
107
95
99
111
107
119
131
118
106
94
98
110
106
118
130
117
105
93
97
109
105
117
129
116
104
92
96
108
104
116
128
115
114
113
112
111
110
109
108
107
106
105
104
103
91
95
107
103
115
116
117
118
119
120
121
122
123
124
125
126
127
102
90
94
106
102
114
101
89
93
105
101
113
100
88
92
104
100
112
99
87
91
103
99
111
98
86
90
102
98
110
97
85
89
101
97
109
96
84
88
100
96
108
95
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
107
94
74
86
106
93
73
85
105
92
72
84
104
101
100
99
98
97
98
99
100
99
98
97
96
95
94
93
92
91
71
83
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
96
90
70
82
102
107
95
89
69
81
101
108
94
88
68
80
100
109
93
87
67
79
99
110
92
86
66
78
98
110
91
85
65
77
97
109
90
84
64
76
96
108
89
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
107
88
75
62
74
88
106
87
76
61
73
89
105
86
77
60
72
90
104
85
78
59
71
91
103
84
79
58
70
92
102
83
80
57
69
93
101
82
79
56
68
94
100
81
78
55
67
95
99
80
77
54
66
94
98
79
76
53
65
93
97
78
75
52
64
92
96
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
51
63
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
76
64
50
62
82
96
75
63
49
61
81
97
74
62
48
60
80
98
73
61
47
59
79
99
72
60
46
58
78
100
71
59
45
57
77
101
70
58
44
56
76
102
69
57
43
55
75
103
68
56
42
54
74
104
67
55
41
53
73
103
66
54
40
52
72
102
65
53
52
51
50
49
48
47
46
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
101
64
44
26
40
64
100
63
43
25
41
65
99
62
42
24
42
66
98
61
41
23
43
67
97
60
40
22
44
68
96
59
39
21
45
69
95
58
38
20
46
70
94
57
37
19
47
71
93
56
36
18
48
72
92
55
35
17
49
71
91
54
34
16
50
70
90
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
3
4
5
6
7
8
9
10
11
12
13
14
15
51
52
53
54
55
56
57
58
59
60
59
58
57
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
46
32
2
56
68
82
47
31
1
55
67
83
48
30
0
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
127
126
125
124
123
122
121
120
119
118
117
116
115
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
146
130
126
114
118
134
145
129
125
113
117
133
144
128
124
112
116
132
143
127
123
111
115
131
142
126
122
110
114
130
141
125
121
109
113
129
140
124
120
108
112
128
139
123
119
107
111
127
138
122
118
106
110
126
137
121
117
105
109
125
136
120
116
104
108
124
135
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
123
134
122
110
114
102
98
110
122
133
121
109
113
101
97
109
121
132
120
108
112
100
96
108
120
131
119
107
111
99
95
107
119
130
118
106
110
98
94
106
118
129
117
105
109
97
93
105
117
128
116
104
108
96
92
104
116
127
126
125
124
123
122
121
120
119
118
117
116
115
103
107
95
91
103
104
105
106
107
108
109
110
111
112
113
114
115
114
102
106
94
90
102
113
101
105
93
89
101
112
100
104
92
88
100
111
99
103
91
87
99
110
98
102
90
86
98
109
97
101
89
85
97
108
96
100
88
84
96
107
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
95
106
86
74
94
105
85
73
93
104
84
72
92
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
83
71
91
92
93
94
95
96
97
98
99
100
99
98
97
98
99
100
101
107
102
82
70
90
96
108
101
81
69
89
95
109
100
80
68
88
94
110
99
79
67
87
93
110
98
78
66
86
92
109
97
77
65
85
91
108
96
76
64
84
90
107
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
89
106
87
74
62
76
88
105
88
73
61
77
87
104
89
72
60
78
86
103
90
71
59
79
85
102
91
70
58
80
84
101
92
69
57
79
83
100
93
68
56
78
82
99
94
67
55
77
81
98
95
66
54
76
80
97
94
65
53
75
79
96
93
64
52
74
78
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
63
51
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
96
82
62
50
64
76
97
81
61
49
63
75
98
80
60
48
62
74
99
79
59
47
61
73
100
78
58
46
60
72
101
77
57
45
59
71
102
76
56
44
58
70
103
75
55
43
57
69
104
74
54
42
56
68
103
73
53
41
55
67
102
72
52
40
54
66
101
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
46
47
48
49
50
51
52
53
65
100
64
40
26
44
64
99
65
41
25
43
63
98
66
42
24
42
62
97
67
43
23
41
61
96
68
44
22
40
60
95
69
45
21
39
59
94
70
46
20
38
58
93
71
47
19
37
57
92
72
48
18
36
56
91
71
49
17
35
55
90
70
50
16
34
54
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
57
58
59
60
59
58
57
56
55
54
53
52
51
15
14
13
12
11
10
9
8
7
6
5
4
3
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
82
68
56
2
32
46
83
67
55
1
31
47
84
66
54
0
132
133
134
135
136
137
138
139
140
141
142
143
144
145
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
115
114
113
112
111
110
109
108
107
106
105
104
103
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
131
126
114
102
106
114
130
125
113
101
105
113
129
124
112
100
104
112
128
123
111
99
103
111
127
122
110
98
102
110
126
121
109
97
101
109
125
120
108
96
100
108
124
119
107
95
99
107
123
118
106
94
98
106
122
117
105
93
97
105
121
116
104
92
96
104
120
108
109
110
111
112
113
114
115
116
117
118
119
120
121
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
94
93
92
91
103
119
107
121
102
90
86
90
102
118
106
121
101
89
85
89
101
117
105
120
100
88
84
88
100
116
104
119
99
87
83
87
99
115
103
118
98
86
82
86
98
114
102
117
97
85
81
85
97
113
101
116
96
84
80
84
96
112
111
110
109
108
107
106
105
104
103
102
101
100
115
95
83
79
83
84
85
86
87
88
89
90
91
92
93
94
95
99
114
94
82
78
82
98
113
93
81
77
81
97
112
92
80
76
80
96
111
91
79
75
79
95
110
90
78
74
78
94
109
89
77
73
77
93
108
88
76
72
76
92
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
75
91
98
62
74
90
97
61
73
89
96
60
72
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
95
59
71
72
73
74
75
74
73
72
71
70
69
68
67
68
69
70
71
77
89
94
58
70
66
78
90
93
57
69
65
79
91
92
56
68
64
80
92
91
55
67
63
81
93
90
54
66
62
82
94
89
53
65
61
83
95
88
52
64
60
84
96
97
98
99
100
101
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
58
57
56
55
56
57
58
59
60
61
62
63
59
85
99
86
50
54
58
86
100
85
49
53
57
87
101
84
48
52
56
88
102
83
47
51
55
89
103
82
46
50
54
90
104
81
45
49
53
91
105
80
44
48
52
92
106
79
43
47
51
93
107
78
42
46
50
94
106
77
41
45
49
95
105
76
40
44
48
96
97
98
99
100
101
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
75
39
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
97
94
74
38
34
46
98
93
73
37
33
45
99
92
72
36
32
44
100
91
71
35
31
43
101
90
70
34
30
42
102
89
69
33
29
41
103
88
68
32
28
40
104
87
67
31
27
39
105
86
66
30
26
38
106
85
65
29
25
37
107
84
64
28
24
36
108
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
35
109
76
52
40
14
34
110
77
53
41
13
33
110
78
54
42
12
32
109
79
55
43
11
31
108
80
56
44
10
30
107
81
57
45
9
29
106
82
58
46
8
28
105
83
59
47
7
27
104
84
60
48
6
26
103
83
61
47
5
25
102
82
62
46
4
24
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
69
70
71
72
71
70
69
68
67
66
65
64
63
45
44
43
42
41
40
39
38
37
36
35
34
33
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
94
80
68
32
2
16
95
79
67
31
1
17
96
78
66
30
0
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
119
127
126
114
118
110
118
126
125
113
117
109
117
125
124
112
116
108
116
124
123
111
115
107
115
123
122
110
114
106
114
122
121
109
113
105
113
121
120
108
112
104
112
120
119
107
111
103
111
119
118
106
110
102
110
118
117
105
109
101
109
117
116
104
108
100
108
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
121
120
119
118
117
116
115
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
99
107
95
109
114
102
98
86
98
106
94
110
113
101
97
85
97
105
93
111
112
100
96
84
96
104
92
112
111
99
95
83
95
103
91
113
110
98
94
82
94
102
90
114
109
97
93
81
93
101
89
115
108
96
92
80
92
100
99
98
97
96
95
94
93
92
91
90
89
88
116
107
95
91
79
80
81
82
83
84
85
86
87
88
89
90
91
87
117
106
94
90
78
86
118
105
93
89
77
85
119
104
92
88
76
84
120
103
91
87
75
83
121
102
90
86
74
82
121
101
89
85
73
81
120
100
88
84
72
80
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
71
79
110
74
70
78
109
73
69
77
108
72
68
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
107
71
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
65
77
106
70
68
54
66
78
105
69
69
53
67
79
104
68
70
52
68
80
103
67
71
51
69
81
102
66
72
50
70
82
101
65
73
49
71
83
100
64
74
48
72
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
70
69
68
67
68
69
70
71
72
73
74
75
47
73
94
98
62
66
46
74
95
97
61
65
45
75
96
96
60
64
44
76
97
95
59
63
43
77
98
94
58
62
42
78
99
93
57
61
41
79
100
92
56
60
40
80
101
91
55
59
39
81
102
90
54
58
38
82
103
89
53
57
37
83
104
88
52
56
36
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
87
51
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
85
97
86
50
46
34
86
98
85
49
45
33
87
99
84
48
44
32
88
100
83
47
43
31
89
101
82
46
42
30
90
101
81
45
41
29
91
100
80
44
40
28
92
99
79
43
39
27
93
98
78
42
38
26
94
97
77
41
37
25
95
96
76
40
36
24
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
23
97
88
64
52
26
22
98
89
65
53
25
21
99
90
66
54
24
20
100
91
67
55
23
19
101
92
68
56
22
18
102
93
69
57
21
17
103
94
70
58
20
16
104
95
71
59
19
15
105
96
72
60
18
14
106
97
73
61
17
13
107
98
74
62
16
12
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
87
86
85
84
83
82
81
80
79
78
77
76
75
63
62
61
60
59
58
57
56
55
54
53
52
51
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
112
98
86
50
16
2
113
97
85
49
17
1
114
96
84
48
18
0
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
111
119
115
127
128
120
110
118
114
126
127
119
109
117
113
125
126
118
108
116
112
124
125
117
107
115
111
123
124
116
106
114
110
122
123
115
105
113
109
121
122
114
104
112
108
120
121
113
103
111
107
119
120
112
102
110
106
118
119
111
101
109
105
117
118
110
100
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
116
117
118
119
120
121
122
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
109
99
87
99
103
115
110
96
108
98
86
98
102
114
111
95
107
97
85
97
101
113
112
94
106
96
84
96
100
112
113
93
105
95
83
95
99
111
114
92
104
94
82
94
98
110
115
91
103
93
81
93
97
109
116
90
102
92
91
90
89
88
87
86
85
84
83
82
81
80
92
96
108
117
89
90
91
92
93
94
95
96
97
98
99
100
101
79
91
95
107
118
88
78
90
94
106
119
87
77
89
93
105
120
86
76
88
92
104
121
85
75
87
91
103
122
84
74
86
90
102
122
83
73
85
89
101
121
82
72
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
81
71
75
111
80
70
74
110
79
69
73
109
78
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
72
108
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
55
69
71
107
78
66
54
70
70
106
79
67
53
71
69
105
80
68
52
72
68
104
81
69
51
73
67
103
82
70
50
74
66
102
83
71
49
75
65
101
84
72
48
76
77
76
75
74
73
72
71
70
69
70
71
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
73
47
68
63
99
94
74
46
67
62
98
95
75
45
66
61
97
96
76
44
65
60
96
97
77
43
64
59
95
98
78
42
63
58
94
99
79
41
62
57
93
100
80
40
61
56
92
101
81
39
60
55
91
102
82
38
59
54
90
103
83
37
58
53
89
104
84
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
52
88
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
35
47
51
87
98
86
34
46
50
86
99
87
33
45
49
85
100
88
32
44
48
84
101
89
31
43
47
83
102
90
30
42
46
82
102
91
29
41
45
81
101
92
28
40
44
80
100
93
27
39
43
79
99
94
26
38
42
78
98
95
25
37
41
77
97
96
24
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
23
27
53
65
89
98
22
26
54
66
90
99
21
25
55
67
91
100
20
24
56
68
92
101
19
23
57
69
93
102
18
22
58
70
94
103
17
21
59
71
95
104
16
20
60
72
96
105
15
19
61
73
97
106
14
18
62
74
98
107
13
17
63
75
99
108
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
52
53
54
55
56
57
58
59
60
61
62
63
64
76
77
78
79
80
81
82
83
84
85
86
87
88
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
114
113
112
111
110
109
3
17
51
87
99
113
2
18
50
86
98
114
1
19
49
85
97
115
0
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
104
105
106
107
108
109
110
111
112
113
114
115
116
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
146
145
144
143
142
141
140
139
138
137
136
135
134
133
117
107
103
115
127
132
116
106
102
114
126
131
115
105
101
113
125
130
114
104
100
112
124
129
113
103
99
111
123
128
112
102
98
110
122
127
111
101
97
109
121
126
110
100
96
108
120
125
109
99
95
107
119
124
108
98
94
106
118
123
107
97
93
105
117
122
106
94
95
96
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
122
121
120
119
118
117
116
115
114
113
112
111
110
109
121
105
93
87
91
103
122
108
120
104
92
86
90
102
122
107
119
103
91
85
89
101
121
106
118
102
90
84
88
100
120
105
117
101
89
83
87
99
119
104
116
100
88
82
86
98
118
103
115
99
87
81
85
97
117
102
114
98
97
96
95
94
93
92
91
90
89
88
87
86
80
84
96
116
101
102
103
104
105
106
107
108
109
110
111
112
113
85
79
83
95
115
100
84
78
82
94
114
99
83
77
81
93
113
98
82
76
80
92
112
97
81
75
79
91
111
96
80
74
78
90
110
95
79
73
77
89
109
94
78
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
93
77
63
99
92
76
62
98
91
75
61
97
90
72
71
70
69
68
69
70
71
72
73
74
75
76
77
76
75
74
60
96
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
67
73
59
95
90
78
66
72
58
94
91
79
65
71
57
93
92
80
64
70
56
92
93
81
63
69
55
91
94
82
62
68
54
90
95
83
61
67
53
89
96
84
60
66
65
64
63
62
61
60
59
58
57
58
59
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
85
59
56
51
87
101
86
58
55
50
86
102
87
57
54
49
85
103
88
56
53
48
84
104
89
55
52
47
83
105
90
54
51
46
82
106
91
53
50
45
81
107
92
52
49
44
80
108
93
51
48
43
79
107
94
50
47
42
78
106
95
49
46
41
77
105
96
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
40
76
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
102
101
100
99
98
97
47
35
39
75
95
98
46
34
38
74
94
99
45
33
37
73
93
100
44
32
36
72
92
101
43
31
35
71
91
102
42
30
34
70
90
103
41
29
33
69
89
104
40
28
32
68
88
105
39
27
31
67
87
106
38
26
30
66
86
107
37
25
29
65
85
108
36
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
109
35
15
41
53
77
110
34
14
42
54
78
110
33
13
43
55
79
109
32
12
44
56
80
108
31
11
45
57
81
107
30
10
46
58
82
106
29
9
47
59
83
105
28
8
48
60
84
104
27
7
47
61
83
103
26
6
46
62
82
102
25
5
45
63
81
101
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
32
33
34
35
36
37
38
39
40
41
42
43
44
64
65
66
67
68
69
70
71
72
71
70
69
68
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
17
3
31
67
79
93
18
2
30
66
78
94
19
1
29
65
77
95
20
0
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
116
117
118
119
120
121
122
123
124
125
126
127
128
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
135
119
115
127
131
147
134
118
114
126
130
146
133
117
113
125
129
145
132
116
112
124
128
144
131
115
111
123
127
143
130
114
110
122
126
142
129
113
109
121
125
141
128
112
108
120
124
140
127
111
107
119
123
139
126
110
106
118
122
138
125
109
105
117
121
137
124
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
136
123
111
99
103
115
111
123
135
122
110
98
102
114
110
122
134
121
109
97
101
113
109
121
133
120
108
96
100
112
108
120
132
119
107
95
99
111
107
119
131
118
106
94
98
110
106
118
130
117
105
93
97
109
105
117
129
116
115
114
113
112
111
110
109
108
107
106
105
104
92
96
108
104
116
117
118
119
120
121
122
123
124
125
126
127
128
103
91
95
107
103
115
102
90
94
106
102
114
101
89
93
105
101
113
100
88
92
104
100
112
99
87
91
103
99
111
98
86
90
102
98
110
97
85
89
101
97
109
96
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
108
95
75
87
107
94
74
86
106
93
73
85
105
100
99
98
97
96
97
98
99
100
99
98
97
96
95
94
93
92
72
84
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
95
91
71
83
103
106
94
90
70
82
102
107
93
89
69
81
101
108
92
88
68
80
100
109
91
87
67
79
99
110
90
86
66
78
98
110
89
85
65
77
97
109
88
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
108
87
76
63
75
89
107
86
77
62
74
90
106
85
78
61
73
91
105
84
79
60
72
92
104
83
80
59
71
93
103
82
79
58
70
94
102
81
78
57
69
95
101
80
77
56
68
96
100
79
76
55
67
95
99
78
75
54
66
94
98
77
74
53
65
93
97
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
52
64
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
75
63
51
63
83
97
74
62
50
62
82
98
73
61
49
61
81
99
72
60
48
60
80
100
71
59
47
59
79
101
70
58
46
58
78
102
69
57
45
57
77
103
68
56
44
56
76
104
67
55
43
55
75
103
66
54
42
54
74
102
65
53
41
53
73
101
64
52
51
50
49
48
47
46
45
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
100
63
43
27
41
65
99
62
42
26
42
66
98
61
41
25
43
67
97
60
40
24
44
68
96
59
39
23
45
69
95
58
38
22
46
70
94
57
37
21
47
71
93
56
36
20
48
72
92
55
35
19
49
71
91
54
34
18
50
70
90
53
33
17
51
69
89
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
4
5
6
7
8
9
10
11
12
13
14
15
16
52
53
54
55
56
57
58
59
60
59
58
57
56
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
45
31
3
55
67
81
46
30
2
54
66
82
47
29
1
53
65
83
48
28
0
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
128
127
126
125
124
123
122
121
120
119
118
117
116
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
147
131
127
115
119
135
146
130
126
114
118
134
145
129
125
113
117
133
144
128
124
112
116
132
143
127
123
111
115
131
142
126
122
110
114
130
141
125
121
109
113
129
140
124
120
108
112
128
139
123
119
107
111
127
138
122
118
106
110
126
137
121
117
105
109
125
136
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
124
135
123
111
115
103
99
111
123
134
122
110
114
102
98
110
122
133
121
109
113
101
97
109
121
132
120
108
112
100
96
108
120
131
119
107
111
99
95
107
119
130
118
106
110
98
94
106
118
129
117
105
109
97
93
105
117
128
127
126
125
124
123
122
121
120
119
118
117
116
104
108
96
92
104
105
106
107
108
109
110
111
112
113
114
115
116
115
103
107
95
91
103
114
102
106
94
90
102
113
101
105
93
89
101
112
100
104
92
88
100
111
99
103
91
87
99
110
98
102
90
86
98
109
97
101
89
85
97
108
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
96
107
87
75
95
106
86
74
94
105
85
73
93
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
84
72
92
93
94
95
96
97
98
99
100
99
98
97
96
97
98
99
100
106
103
83
71
91
95
107
102
82
70
90
94
108
101
81
69
89
93
109
100
80
68
88
92
110
99
79
67
87
91
110
98
78
66
86
90
109
97
77
65
85
89
108
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
88
107
88
75
63
77
87
106
89
74
62
78
86
105
90
73
61
79
85
104
91
72
60
80
84
103
92
71
59
79
83
102
93
70
58
78
82
101
94
69
57
77
81
100
95
68
56
76
80
99
96
67
55
75
79
98
95
66
54
74
78
97
94
65
53
73
77
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
64
52
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
97
83
63
51
63
75
98
82
62
50
62
74
99
81
61
49
61
73
100
80
60
48
60
72
101
79
59
47
59
71
102
78
58
46
58
70
103
77
57
45
57
69
104
76
56
44
56
68
103
75
55
43
55
67
102
74
54
42
54
66
101
73
53
41
53
65
100
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
45
46
47
48
49
50
51
52
64
99
65
41
27
43
63
98
66
42
26
42
62
97
67
43
25
41
61
96
68
44
24
40
60
95
69
45
23
39
59
94
70
46
22
38
58
93
71
47
21
37
57
92
72
48
20
36
56
91
71
49
19
35
55
90
70
50
18
34
54
89
69
51
17
33
53
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
56
57
58
59
60
59
58
57
56
55
54
53
52
16
15
14
13
12
11
10
9
8
7
6
5
4
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
81
67
55
3
31
45
82
66
54
2
30
46
83
65
53
1
29
47
84
64
52
0
133
134
135
136
137
138
139
140
141
142
143
144
145
146
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
116
115
114
113
112
111
110
109
108
107
106
105
104
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
132
127
115
103
107
115
131
126
114
102
106
114
130
125
113
101
105
113
129
124
112
100
104
112
128
123
111
99
103
111
127
122
110
98
102
110
126
121
109
97
101
109
125
120
108
96
100
108
124
119
107
95
99
107
123
118
106
94
98
106
122
117
105
93
97
105
121
109
110
111
112
113
114
115
116
117
118
119
120
121
122
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
95
94
93
92
104
120
108
122
103
91
87
91
103
119
107
122
102
90
86
90
102
118
106
121
101
89
85
89
101
117
105
120
100
88
84
88
100
116
104
119
99
87
83
87
99
115
103
118
98
86
82
86
98
114
102
117
97
85
81
85
97
113
112
111
110
109
108
107
106
105
104
103
102
101
116
96
84
80
84
85
86
87
88
89
90
91
92
93
94
95
96
100
115
95
83
79
83
99
114
94
82
78
82
98
113
93
81
77
81
97
112
92
80
76
80
96
111
91
79
75
79
95
110
90
78
74
78
94
109
89
77
73
77
93
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
76
92
99
63
75
91
98
62
74
90
97
61
73
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
96
60
72
73
74
75
76
75
74
73
72
71
70
69
68
69
70
71
72
78
90
95
59
71
67
79
91
94
58
70
66
80
92
93
57
69
65
81
93
92
56
68
64
82
94
91
55
67
63
83
95
90
54
66
62
84
96
89
53
65
61
85
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
59
58
57
56
57
58
59
60
61
62
63
64
60
86
100
87
51
55
59
87
101
86
50
54
58
88
102
85
49
53
57
89
103
84
48
52
56
90
104
83
47
51
55
91
105
82
46
50
54
92
106
81
45
49
53
93
107
80
44
48
52
94
108
79
43
47
51
95
107
78
42
46
50
96
106
77
41
45
49
97
98
99
100
101
102
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
76
40
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
98
95
75
39
35
47
99
94
74
38
34
46
100
93
73
37
33
45
101
92
72
36
32
44
102
91
71
35
31
43
103
90
70
34
30
42
104
89
69
33
29
41
105
88
68
32
28
40
106
87
67
31
27
39
107
86
66
30
26
38
108
85
65
29
25
37
109
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
36
110
77
53
41
15
35
110
78
54
42
14
34
109
79
55
43
13
33
108
80
56
44
12
32
107
81
57
45
11
31
106
82
58
46
10
30
105
83
59
47
9
29
104
84
60
48
8
28
103
83
61
47
7
27
102
82
62
46
6
26
101
81
63
45
5
25
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
68
69
70
71
72
71
70
69
68
67
66
65
64
44
43
42
41
40
39
38
37
36
35
34
33
32
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
93
79
67
31
3
17
94
78
66
30
2
18
95
77
65
29
1
19
96
76
64
28
0
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
120
128
127
115
119
111
119
127
126
114
118
110
118
126
125
113
117
109
117
125
124
112
116
108
116
124
123
111
115
107
115
123
122
110
114
106
114
122
121
109
113
105
113
121
120
108
112
104
112
120
119
107
111
103
111
119
118
106
110
102
110
118
117
105
109
101
109
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
122
121
120
119
118
117
116
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
100
108
96
110
115
103
99
87
99
107
95
111
114
102
98
86
98
106
94
112
113
101
97
85
97
105
93
113
112
100
96
84
96
104
92
114
111
99
95
83
95
103
91
115
110
98
94
82
94
102
90
116
109
97
93
81
93
101
100
99
98
97
96
95
94
93
92
91
90
89
117
108
96
92
80
81
82
83
84
85
86
87
88
89
90
91
92
88
118
107
95
91
79
87
119
106
94
90
78
86
120
105
93
89
77
85
121
104
92
88
76
84
122
103
91
87
75
83
122
102
90
86
74
82
121
101
89
85
73
81
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
72
80
111
75
71
79
110
74
70
78
109
73
69
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
108
72
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
66
78
107
71
69
55
67
79
106
70
70
54
68
80
105
69
71
53
69
81
104
68
72
52
70
82
103
67
73
51
71
83
102
66
74
50
72
84
101
65
75
49
73
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
71
70
69
68
69
70
71
72
73
74
75
76
48
74
95
99
63
67
47
75
96
98
62
66
46
76
97
97
61
65
45
77
98
96
60
64
44
78
99
95
59
63
43
79
100
94
58
62
42
80
101
93
57
61
41
81
102
92
56
60
40
82
103
91
55
59
39
83
104
90
54
58
38
84
105
89
53
57
37
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
88
52
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
86
98
87
51
47
35
87
99
86
50
46
34
88
100
85
49
45
33
89
101
84
48
44
32
90
102
83
47
43
31
91
102
82
46
42
30
92
101
81
45
41
29
93
100
80
44
40
28
94
99
79
43
39
27
95
98
78
42
38
26
96
97
77
41
37
25
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
24
98
89
65
53
27
23
99
90
66
54
26
22
100
91
67
55
25
21
101
92
68
56
24
20
102
93
69
57
23
19
103
94
70
58
22
18
104
95
71
59
21
17
105
96
72
60
20
16
106
97
73
61
19
15
107
98
74
62
18
14
108
99
75
63
17
13
109
110
111
112
113
114
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
88
87
86
85
84
83
82
81
80
79
78
77
76
64
63
62
61
60
59
58
57
56
55
54
53
52
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
113
99
87
51
17
3
114
98
86
50
18
2
115
97
85
49
19
1
116
96
84
48
20
0
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
112
120
116
128
129
121
111
119
115
127
128
120
110
118
114
126
127
119
109
117
113
125
126
118
108
116
112
124
125
117
107
115
111
123
124
116
106
114
110
122
123
115
105
113
109
121
122
114
104
112
108
120
121
113
103
111
107
119
120
112
102
110
106
118
119
111
101
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
117
118
119
120
121
122
123
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
110
100
88
100
104
116
111
97
109
99
87
99
103
115
112
96
108
98
86
98
102
114
113
95
107
97
85
97
101
113
114
94
106
96
84
96
100
112
115
93
105
95
83
95
99
111
116
92
104
94
82
94
98
110
117
91
103
93
92
91
90
89
88
87
86
85
84
83
82
81
93
97
109
118
90
91
92
93
94
95
96
97
98
99
100
101
102
80
92
96
108
119
89
79
91
95
107
120
88
78
90
94
106
121
87
77
89
93
105
122
86
76
88
92
104
123
85
75
87
91
103
123
84
74
86
90
102
122
83
73
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
82
72
76
112
81
71
75
111
80
70
74
110
79
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
73
109
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
56
70
72
108
79
67
55
71
71
107
80
68
54
72
70
106
81
69
53
73
69
105
82
70
52
74
68
104
83
71
51
75
67
103
84
72
50
76
66
102
85
73
49
77
78
77
76
75
74
73
72
71
70
71
72
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
74
48
69
64
100
95
75
47
68
63
99
96
76
46
67
62
98
97
77
45
66
61
97
98
78
44
65
60
96
99
79
43
64
59
95
100
80
42
63
58
94
101
81
41
62
57
93
102
82
40
61
56
92
103
83
39
60
55
91
104
84
38
59
54
90
105
85
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
53
89
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
36
48
52
88
99
87
35
47
51
87
100
88
34
46
50
86
101
89
33
45
49
85
102
90
32
44
48
84
103
91
31
43
47
83
103
92
30
42
46
82
102
93
29
41
45
81
101
94
28
40
44
80
100
95
27
39
43
79
99
96
26
38
42
78
98
97
25
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
24
28
54
66
90
99
23
27
55
67
91
100
22
26
56
68
92
101
21
25
57
69
93
102
20
24
58
70
94
103
19
23
59
71
95
104
18
22
60
72
96
105
17
21
61
73
97
106
16
20
62
74
98
107
15
19
63
75
99
108
14
18
64
76
100
109
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
53
54
55
56
57
58
59
60
61
62
63
64
65
77
78
79
80
81
82
83
84
85
86
87
88
89
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
115
114
113
112
111
110
4
18
52
88
100
114
3
19
51
87
99
115
2
20
50
86
98
116
1
21
49
85
97
117
0
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
105
106
107
108
109
110
111
112
113
114
115
116
117
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
147
146
145
144
143
142
141
140
139
138
137
136
135
134
118
108
104
116
128
133
117
107
103
115
127
132
116
106
102
114
126
131
115
105
101
113
125
130
114
104
100
112
124
129
113
103
99
111
123
128
112
102
98
110
122
127
111
101
97
109
121
126
110
100
96
108
120
125
109
99
95
107
119
124
108
98
94
106
118
123
107
95
96
97
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
123
122
121
120
119
118
117
116
115
114
113
112
111
110
122
106
94
88
92
104
123
109
121
105
93
87
91
103
123
108
120
104
92
86
90
102
122
107
119
103
91
85
89
101
121
106
118
102
90
84
88
100
120
105
117
101
89
83
87
99
119
104
116
100
88
82
86
98
118
103
115
99
98
97
96
95
94
93
92
91
90
89
88
87
81
85
97
117
102
103
104
105
106
107
108
109
110
111
112
113
114
86
80
84
96
116
101
85
79
83
95
115
100
84
78
82
94
114
99
83
77
81
93
113
98
82
76
80
92
112
97
81
75
79
91
111
96
80
74
78
90
110
95
79
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
94
78
64
100
93
77
63
99
92
76
62
98
91
73
72
71
70
69
70
71
72
73
74
75
76
77
78
77
76
75
61
97
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
68
74
60
96
91
79
67
73
59
95
92
80
66
72
58
94
93
81
65
71
57
93
94
82
64
70
56
92
95
83
63
69
55
91
96
84
62
68
54
90
97
85
61
67
66
65
64
63
62
61
60
59
58
59
60
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
103
102
101
100
99
98
86
60
57
52
88
102
87
59
56
51
87
103
88
58
55
50
86
104
89
57
54
49
85
105
90
56
53
48
84
106
91
55
52
47
83
107
92
54
51
46
82
108
93
53
50
45
81
109
94
52
49
44
80
108
95
51
48
43
79
107
96
50
47
42
78
106
97
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
41
77
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
103
102
101
100
99
98
48
36
40
76
96
99
47
35
39
75
95
100
46
34
38
74
94
101
45
33
37
73
93
102
44
32
36
72
92
103
43
31
35
71
91
104
42
30
34
70
90
105
41
29
33
69
89
106
40
28
32
68
88
107
39
27
31
67
87
108
38
26
30
66
86
109
37
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
110
36
16
42
54
78
110
35
15
43
55
79
109
34
14
44
56
80
108
33
13
45
57
81
107
32
12
46
58
82
106
31
11
47
59
83
105
30
10
48
60
84
104
29
9
47
61
83
103
28
8
46
62
82
102
27
7
45
63
81
101
26
6
44
64
80
100
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
31
32
33
34
35
36
37
38
39
40
41
42
43
65
66
67
68
69
70
71
72
71
70
69
68
67
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
18
4
30
66
78
92
19
3
29
65
77
93
20
2
28
64
76
94
21
1
27
63
75
95
22
0
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
117
118
119
120
121
122
123
124
125
126
127
128
129
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
136
120
116
128
132
148
135
119
115
127
131
147
134
118
114
126
130
146
133
117
113
125
129
145
132
116
112
124
128
144
131
115
111
123
127
143
130
114
110
122
126
142
129
113
109
121
125
141
128
112
108
120
124
140
127
111
107
119
123
139
126
110
106
118
122
138
125
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
137
124
112
100
104
116
112
124
136
123
111
99
103
115
111
123
135
122
110
98
102
114
110
122
134
121
109
97
101
113
109
121
133
120
108
96
100
112
108
120
132
119
107
95
99
111
107
119
131
118
106
94
98
110
106
118
130
117
116
115
114
113
112
111
110
109
108
107
106
105
93
97
109
105
117
118
119
120
121
122
123
124
125
126
127
128
129
104
92
96
108
104
116
103
91
95
107
103
115
102
90
94
106
102
114
101
89
93
105
101
113
100
88
92
104
100
112
99
87
91
103
99
111
98
86
90
102
98
110
97
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
109
96
76
88
108
95
75
87
107
94
74
86
106
99
98
97
96
95
96
97
98
99
100
99
98
97
96
95
94
93
73
85
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
94
92
72
84
104
105
93
91
71
83
103
106
92
90
70
82
102
107
91
89
69
81
101
108
90
88
68
80
100
109
89
87
67
79
99
110
88
86
66
78
98
110
87
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
109
86
77
64
76
90
108
85
78
63
75
91
107
84
79
62
74
92
106
83
80
61
73
93
105
82
79
60
72
94
104
81
78
59
71
95
103
80
77
58
70
96
102
79
76
57
69
97
101
78
75
56
68
96
100
77
74
55
67
95
99
76
73
54
66
94
98
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
53
65
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
74
62
52
64
84
98
73
61
51
63
83
99
72
60
50
62
82
100
71
59
49
61
81
101
70
58
48
60
80
102
69
57
47
59
79
103
68
56
46
58
78
104
67
55
45
57
77
103
66
54
44
56
76
102
65
53
43
55
75
101
64
52
42
54
74
100
63
51
50
49
48
47
46
45
44
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
99
62
42
28
42
66
98
61
41
27
43
67
97
60
40
26
44
68
96
59
39
25
45
69
95
58
38
24
46
70
94
57
37
23
47
71
93
56
36
22
48
72
92
55
35
21
49
71
91
54
34
20
50
70
90
53
33
19
51
69
89
52
32
18
52
68
88
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
5
6
7
8
9
10
11
12
13
14
15
16
17
53
54
55
56
57
58
59
60
59
58
57
56
55
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
44
30
4
54
66
80
45
29
3
53
65
81
46
28
2
52
64
82
47
27
1
51
63
83
48
26
0
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
129
128
127
126
125
124
123
122
121
120
119
118
117
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
148
132
128
116
120
136
147
131
127
115
119
135
146
130
126
114
118
134
145
129
125
113
117
133
144
128
124
112
116
132
143
127
123
111
115
131
142
126
122
110
114
130
141
125
121
109
113
129
140
124
120
108
112
128
139
123
119
107
111
127
138
122
118
106
110
126
137
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
125
136
124
112
116
104
100
112
124
135
123
111
115
103
99
111
123
134
122
110
114
102
98
110
122
133
121
109
113
101
97
109
121
132
120
108
112
100
96
108
120
131
119
107
111
99
95
107
119
130
118
106
110
98
94
106
118
129
128
127
126
125
124
123
122
121
120
119
118
117
105
109
97
93
105
106
107
108
109
110
111
112
113
114
115
116
117
116
104
108
96
92
104
115
103
107
95
91
103
114
102
106
94
90
102
113
101
105
93
89
101
112
100
104
92
88
100
111
99
103
91
87
99
110
98
102
90
86
98
109
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
97
108
88
76
96
107
87
75
95
106
86
74
94
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
85
73
93
94
95
96
97
98
99
100
99
98
97
96
95
96
97
98
99
105
104
84
72
92
94
106
103
83
71
91
93
107
102
82
70
90
92
108
101
81
69
89
91
109
100
80
68
88
90
110
99
79
67
87
89
110
98
78
66
86
88
109
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
87
108
89
76
64
78
86
107
90
75
63
79
85
106
91
74
62
80
84
105
92
73
61
79
83
104
93
72
60
78
82
103
94
71
59
77
81
102
95
70
58
76
80
101
96
69
57
75
79
100
97
68
56
74
78
99
96
67
55
73
77
98
95
66
54
72
76
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
65
53
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
98
84
64
52
62
74
99
83
63
51
61
73
100
82
62
50
60
72
101
81
61
49
59
71
102
80
60
48
58
70
103
79
59
47
57
69
104
78
58
46
56
68
103
77
57
45
55
67
102
76
56
44
54
66
101
75
55
43
53
65
100
74
54
42
52
64
99
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
44
45
46
47
48
49
50
51
63
98
66
42
28
42
62
97
67
43
27
41
61
96
68
44
26
40
60
95
69
45
25
39
59
94
70
46
24
38
58
93
71
47
23
37
57
92
72
48
22
36
56
91
71
49
21
35
55
90
70
50
20
34
54
89
69
51
19
33
53
88
68
52
18
32
52
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
55
56
57
58
59
60
59
58
57
56
55
54
53
17
16
15
14
13
12
11
10
9
8
7
6
5
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
80
66
54
4
30
44
81
65
53
3
29
45
82
64
52
2
28
46
83
63
51
1
27
47
84
62
50
0
134
135
136
137
138
139
140
141
142
143
144
145
146
147
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
117
116
115
114
113
112
111
110
109
108
107
106
105
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
133
128
116
104
108
116
132
127
115
103
107
115
131
126
114
102
106
114
130
125
113
101
105
113
129
124
112
100
104
112
128
123
111
99
103
111
127
122
110
98
102
110
126
121
109
97
101
109
125
120
108
96
100
108
124
119
107
95
99
107
123
118
106
94
98
106
122
110
111
112
113
114
115
116
117
118
119
120
121
122
123
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
96
95
94
93
105
121
109
123
104
92
88
92
104
120
108
123
103
91
87
91
103
119
107
122
102
90
86
90
102
118
106
121
101
89
85
89
101
117
105
120
100
88
84
88
100
116
104
119
99
87
83
87
99
115
103
118
98
86
82
86
98
114
113
112
111
110
109
108
107
106
105
104
103
102
117
97
85
81
85
86
87
88
89
90
91
92
93
94
95
96
97
101
116
96
84
80
84
100
115
95
83
79
83
99
114
94
82
78
82
98
113
93
81
77
81
97
112
92
80
76
80
96
111
91
79
75
79
95
110
90
78
74
78
94
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
77
93
100
64
76
92
99
63
75
91
98
62
74
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
97
61
73
74
75
76
77
76
75
74
73
72
71
70
69
70
71
72
73
79
91
96
60
72
68
80
92
95
59
71
67
81
93
94
58
70
66
82
94
93
57
69
65
83
95
92
56
68
64
84
96
91
55
67
63
85
97
90
54
66
62
86
98
99
100
101
102
103
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
60
59
58
57
58
59
60
61
62
63
64
65
61
87
101
88
52
56
60
88
102
87
51
55
59
89
103
86
50
54
58
90
104
85
49
53
57
91
105
84
48
52
56
92
106
83
47
51
55
93
107
82
46
50
54
94
108
81
45
49
53
95
109
80
44
48
52
96
108
79
43
47
51
97
107
78
42
46
50
98
99
100
101
102
103
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
77
41
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
99
96
76
40
36
48
100
95
75
39
35
47
101
94
74
38
34
46
102
93
73
37
33
45
103
92
72
36
32
44
104
91
71
35
31
43
105
90
70
34
30
42
106
89
69
33
29
41
107
88
68
32
28
40
108
87
67
31
27
39
109
86
66
30
26
38
110
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
37
110
78
54
42
16
36
109
79
55
43
15
35
108
80
56
44
14
34
107
81
57
45
13
33
106
82
58
46
12
32
105
83
59
47
11
31
104
84
60
48
10
30
103
83
61
47
9
29
102
82
62
46
8
28
101
81
63
45
7
27
100
80
64
44
6
26
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
67
68
69
70
71
72
71
70
69
68
67
66
65
43
42
41
40
39
38
37
36
35
34
33
32
31
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
92
78
66
30
4
18
93
77
65
29
3
19
94
76
64
28
2
20
95
75
63
27
1
21
96
74
62
26
0
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
121
129
128
116
120
112
120
128
127
115
119
111
119
127
126
114
118
110
118
126
125
113
117
109
117
125
124
112
116
108
116
124
123
111
115
107
115
123
122
110
114
106
114
122
121
109
113
105
113
121
120
108
112
104
112
120
119
107
111
103
111
119
118
106
110
102
110
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
123
122
121
120
119
118
117
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
101
109
97
111
116
104
100
88
100
108
96
112
115
103
99
87
99
107
95
113
114
102
98
86
98
106
94
114
113
101
97
85
97
105
93
115
112
100
96
84
96
104
92
116
111
99
95
83
95
103
91
117
110
98
94
82
94
102
101
100
99
98
97
96
95
94
93
92
91
90
118
109
97
93
81
82
83
84
85
86
87
88
89
90
91
92
93
89
119
108
96
92
80
88
120
107
95
91
79
87
121
106
94
90
78
86
122
105
93
89
77
85
123
104
92
88
76
84
123
103
91
87
75
83
122
102
90
86
74
82
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
73
81
112
76
72
80
111
75
71
79
110
74
70
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
109
73
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
67
79
108
72
70
56
68
80
107
71
71
55
69
81
106
70
72
54
70
82
105
69
73
53
71
83
104
68
74
52
72
84
103
67
75
51
73
85
102
66
76
50
74
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
72
71
70
69
70
71
72
73
74
75
76
77
49
75
96
100
64
68
48
76
97
99
63
67
47
77
98
98
62
66
46
78
99
97
61
65
45
79
100
96
60
64
44
80
101
95
59
63
43
81
102
94
58
62
42
82
103
93
57
61
41
83
104
92
56
60
40
84
105
91
55
59
39
85
106
90
54
58
38
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
89
53
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
87
99
88
52
48
36
88
100
87
51
47
35
89
101
86
50
46
34
90
102
85
49
45
33
91
103
84
48
44
32
92
103
83
47
43
31
93
102
82
46
42
30
94
101
81
45
41
29
95
100
80
44
40
28
96
99
79
43
39
27
97
98
78
42
38
26
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
25
99
90
66
54
28
24
100
91
67
55
27
23
101
92
68
56
26
22
102
93
69
57
25
21
103
94
70
58
24
20
104
95
71
59
23
19
105
96
72
60
22
18
106
97
73
61
21
17
107
98
74
62
20
16
108
99
75
63
19
15
109
100
76
64
18
14
110
111
112
113
114
115
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
89
88
87
86
85
84
83
82
81
80
79
78
77
65
64
63
62
61
60
59
58
57
56
55
54
53
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
114
100
88
52
18
4
115
99
87
51
19
3
116
98
86
50
20
2
117
97
85
49
21
1
118
96
84
48
22
0
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
113
121
117
129
130
122
112
120
116
128
129
121
111
119
115
127
128
120
110
118
114
126
127
119
109
117
113
125
126
118
108
116
112
124
125
117
107
115
111
123
124
116
106
114
110
122
123
115
105
113
109
121
122
114
104
112
108
120
121
113
103
111
107
119
120
112
102
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
111
101
89
101
105
117
112
98
110
100
88
100
104
116
113
97
109
99
87
99
103
115
114
96
108
98
86
98
102
114
115
95
107
97
85
97
101
113
116
94
106
96
84
96
100
112
117
93
105
95
83
95
99
111
118
92
104
94
93
92
91
90
89
88
87
86
85
84
83
82
94
98
110
119
91
92
93
94
95
96
97
98
99
100
101
102
103
81
93
97
109
120
90
80
92
96
108
121
89
79
91
95
107
122
88
78
90
94
106
123
87
77
89
93
105
124
86
76
88
92
104
124
85
75
87
91
103
123
84
74
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
83
73
77
113
82
72
76
112
81
71
75
111
80
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
74
110
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
57
71
73
109
80
68
56
72
72
108
81
69
55
73
71
107
82
70
54
74
70
106
83
71
53
75
69
105
84
72
52
76
68
104
85
73
51
77
67
103
86
74
50
78
79
78
77
76
75
74
73
72
71
72
73
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
75
49
70
65
101
96
76
48
69
64
100
97
77
47
68
63
99
98
78
46
67
62
98
99
79
45
66
61
97
100
80
44
65
60
96
101
81
43
64
59
95
102
82
42
63
58
94
103
83
41
62
57
93
104
84
40
61
56
92
105
85
39
60
55
91
106
86
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
54
90
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
37
49
53
89
100
88
36
48
52
88
101
89
35
47
51
87
102
90
34
46
50
86
103
91
33
45
49
85
104
92
32
44
48
84
104
93
31
43
47
83
103
94
30
42
46
82
102
95
29
41
45
81
101
96
28
40
44
80
100
97
27
39
43
79
99
98
26
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
25
29
55
67
91
100
24
28
56
68
92
101
23
27
57
69
93
102
22
26
58
70
94
103
21
25
59
71
95
104
20
24
60
72
96
105
19
23
61
73
97
106
18
22
62
74
98
107
17
21
63
75
99
108
16
20
64
76
100
109
15
19
65
77
101
110
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
54
55
56
57
58
59
60
61
62
63
64
65
66
78
79
80
81
82
83
84
85
86
87
88
89
90
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
116
115
114
113
112
111
5
19
53
89
101
115
4
20
52
88
100
116
3
21
51
87
99
117
2
22
50
86
98
118
1
23
49
85
97
119
0
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
106
107
108
109
110
111
112
113
114
115
116
117
118
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
148
147
146
145
144
143
142
141
140
139
138
137
136
135
119
109
105
117
129
134
118
108
104
116
128
133
117
107
103
115
127
132
116
106
102
114
126
131
115
105
101
113
125
130
114
104
100
112
124
129
113
103
99
111
123
128
112
102
98
110
122
127
111
101
97
109
121
126
110
100
96
108
120
125
109
99
95
107
119
124
108
96
97
98
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
123
107
95
89
93
105
124
110
122
106
94
88
92
104
124
109
121
105
93
87
91
103
123
108
120
104
92
86
90
102
122
107
119
103
91
85
89
101
121
106
118
102
90
84
88
100
120
105
117
101
89
83
87
99
119
104
116
100
99
98
97
96
95
94
93
92
91
90
89
88
82
86
98
118
103
104
105
106
107
108
109
110
111
112
113
114
115
87
81
85
97
117
102
86
80
84
96
116
101
85
79
83
95
115
100
84
78
82
94
114
99
83
77
81
93
113
98
82
76
80
92
112
97
81
75
79
91
111
96
80
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
95
79
65
101
94
78
64
100
93
77
63
99
92
74
73
72
71
70
71
72
73
74
75
76
77
78
79
78
77
76
62
98
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
69
75
61
97
92
80
68
74
60
96
93
81
67
73
59
95
94
82
66
72
58
94
95
83
65
71
57
93
96
84
64
70
56
92
97
85
63
69
55
91
98
86
62
68
67
66
65
64
63
62
61
60
59
60
61
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
104
103
102
101
100
99
87
61
58
53
89
103
88
60
57
52
88
104
89
59
56
51
87
105
90
58
55
50
86
106
91
57
54
49
85
107
92
56
53
48
84
108
93
55
52
47
83
109
94
54
51
46
82
110
95
53
50
45
81
109
96
52
49
44
80
108
97
51
48
43
79
107
98
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
42
78
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
104
103
102
101
100
99
49
37
41
77
97
100
48
36
40
76
96
101
47
35
39
75
95
102
46
34
38
74
94
103
45
33
37
73
93
104
44
32
36
72
92
105
43
31
35
71
91
106
42
30
34
70
90
107
41
29
33
69
89
108
40
28
32
68
88
109
39
27
31
67
87
110
38
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
110
37
17
43
55
79
109
36
16
44
56
80
108
35
15
45
57
81
107
34
14
46
58
82
106
33
13
47
59
83
105
32
12
48
60
84
104
31
11
47
61
83
103
30
10
46
62
82
102
29
9
45
63
81
101
28
8
44
64
80
100
27
7
43
65
79
99
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
30
31
32
33
34
35
36
37
38
39
40
41
42
66
67
68
69
70
71
72
71
70
69
68
67
66
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
19
5
29
65
77
91
20
4
28
64
76
92
21
3
27
63
75
93
22
2
26
62
74
94
23
1
25
61
73
95
24
0
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
118
119
120
121
122
123
124
125
126
127
128
129
130
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
137
121
117
129
133
149
136
120
116
128
132
148
135
119
115
127
131
147
134
118
114
126
130
146
133
117
113
125
129
145
132
116
112
124
128
144
131
115
111
123
127
143
130
114
110
122
126
142
129
113
109
121
125
141
128
112
108
120
124
140
127
111
107
119
123
139
126
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
138
125
113
101
105
117
113
125
137
124
112
100
104
116
112
124
136
123
111
99
103
115
111
123
135
122
110
98
102
114
110
122
134
121
109
97
101
113
109
121
133
120
108
96
100
112
108
120
132
119
107
95
99
111
107
119
131
118
117
116
115
114
113
112
111
110
109
108
107
106
94
98
110
106
118
119
120
121
122
123
124
125
126
127
128
129
130
105
93
97
109
105
117
104
92
96
108
104
116
103
91
95
107
103
115
102
90
94
106
102
114
101
89
93
105
101
113
100
88
92
104
100
112
99
87
91
103
99
111
98
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
110
97
77
89
109
96
76
88
108
95
75
87
107
98
97
96
95
94
95
96
97
98
99
100
99
98
97
96
95
94
74
86
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
93
93
73
85
105
104
92
92
72
84
104
105
91
91
71
83
103
106
90
90
70
82
102
107
89
89
69
81
101
108
88
88
68
80
100
109
87
87
67
79
99
110
86
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
110
85
78
65
77
91
109
84
79
64
76
92
108
83
80
63
75
93
107
82
79
62
74
94
106
81
78
61
73
95
105
80
77
60
72
96
104
79
76
59
71
97
103
78
75
58
70
98
102
77
74
57
69
97
101
76
73
56
68
96
100
75
72
55
67
95
99
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
54
66
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
73
61
53
65
85
99
72
60
52
64
84
100
71
59
51
63
83
101
70
58
50
62
82
102
69
57
49
61
81
103
68
56
48
60
80
104
67
55
47
59
79
103
66
54
46
58
78
102
65
53
45
57
77
101
64
52
44
56
76
100
63
51
43
55
75
99
62
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
98
61
41
29
43
67
97
60
40
28
44
68
96
59
39
27
45
69
95
58
38
26
46
70
94
57
37
25
47
71
93
56
36
24
48
72
92
55
35
23
49
71
91
54
34
22
50
70
90
53
33
21
51
69
89
52
32
20
52
68
88
51
31
19
53
67
87
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
6
7
8
9
10
11
12
13
14
15
16
17
18
54
55
56
57
58
59
60
59
58
57
56
55
54
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
43
29
5
53
65
79
44
28
4
52
64
80
45
27
3
51
63
81
46
26
2
50
62
82
47
25
1
49
61
83
48
24
0
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
130
129
128
127
126
125
124
123
122
121
120
119
118
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
149
133
129
117
121
137
148
132
128
116
120
136
147
131
127
115
119
135
146
130
126
114
118
134
145
129
125
113
117
133
144
128
124
112
116
132
143
127
123
111
115
131
142
126
122
110
114
130
141
125
121
109
113
129
140
124
120
108
112
128
139
123
119
107
111
127
138
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
126
137
125
113
117
105
101
113
125
136
124
112
116
104
100
112
124
135
123
111
115
103
99
111
123
134
122
110
114
102
98
110
122
133
121
109
113
101
97
109
121
132
120
108
112
100
96
108
120
131
119
107
111
99
95
107
119
130
129
128
127
126
125
124
123
122
121
120
119
118
106
110
98
94
106
107
108
109
110
111
112
113
114
115
116
117
118
117
105
109
97
93
105
116
104
108
96
92
104
115
103
107
95
91
103
114
102
106
94
90
102
113
101
105
93
89
101
112
100
104
92
88
100
111
99
103
91
87
99
110
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
98
109
89
77
97
108
88
76
96
107
87
75
95
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
86
74
94
95
96
97
98
99
100
99
98
97
96
95
94
95
96
97
98
104
105
85
73
93
93
105
104
84
72
92
92
106
103
83
71
91
91
107
102
82
70
90
90
108
101
81
69
89
89
109
100
80
68
88
88
110
99
79
67
87
87
110
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
86
109
90
77
65
79
85
108
91
76
64
80
84
107
92
75
63
79
83
106
93
74
62
78
82
105
94
73
61
77
81
104
95
72
60
76
80
103
96
71
59
75
79
102
97
70
58
74
78
101
98
69
57
73
77
100
97
68
56
72
76
99
96
67
55
71
75
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
66
54
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
99
85
65
53
61
73
100
84
64
52
60
72
101
83
63
51
59
71
102
82
62
50
58
70
103
81
61
49
57
69
104
80
60
48
56
68
103
79
59
47
55
67
102
78
58
46
54
66
101
77
57
45
53
65
100
76
56
44
52
64
99
75
55
43
51
63
98
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
62
97
67
43
29
41
61
96
68
44
28
40
60
95
69
45
27
39
59
94
70
46
26
38
58
93
71
47
25
37
57
92
72
48
24
36
56
91
71
49
23
35
55
90
70
50
22
34
54
89
69
51
21
33
53
88
68
52
20
32
52
87
67
53
19
31
51
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
54
55
56
57
58
59
60
59
58
57
56
55
54
18
17
16
15
14
13
12
11
10
9
8
7
6
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
79
65
53
5
29
43
80
64
52
4
28
44
81
63
51
3
27
45
82
62
50
2
26
46
83
61
49
1
25
47
84
60
48
0
135
136
137
138
139
140
141
142
143
144
145
146
147
148
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
118
117
116
115
114
113
112
111
110
109
108
107
106
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
134
129
117
105
109
117
133
128
116
104
108
116
132
127
115
103
107
115
131
126
114
102
106
114
130
125
113
101
105
113
129
124
112
100
104
112
128
123
111
99
103
111
127
122
110
98
102
110
126
121
109
97
101
109
125
120
108
96
100
108
124
119
107
95
99
107
123
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
97
96
95
94
106
122
110
124
105
93
89
93
105
121
109
124
104
92
88
92
104
120
108
123
103
91
87
91
103
119
107
122
102
90
86
90
102
118
106
121
101
89
85
89
101
117
105
120
100
88
84
88
100
116
104
119
99
87
83
87
99
115
114
113
112
111
110
109
108
107
106
105
104
103
118
98
86
82
86
87
88
89
90
91
92
93
94
95
96
97
98
102
117
97
85
81
85
101
116
96
84
80
84
100
115
95
83
79
83
99
114
94
82
78
82
98
113
93
81
77
81
97
112
92
80
76
80
96
111
91
79
75
79
95
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
78
94
101
65
77
93
100
64
76
92
99
63
75
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
98
62
74
75
76
77
78
77
76
75
74
73
72
71
70
71
72
73
74
80
92
97
61
73
69
81
93
96
60
72
68
82
94
95
59
71
67
83
95
94
58
70
66
84
96
93
57
69
65
85
97
92
56
68
64
86
98
91
55
67
63
87
99
100
101
102
103
104
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
61
60
59
58
59
60
61
62
63
64
65
66
62
88
102
89
53
57
61
89
103
88
52
56
60
90
104
87
51
55
59
91
105
86
50
54
58
92
106
85
49
53
57
93
107
84
48
52
56
94
108
83
47
51
55
95
109
82
46
50
54
96
110
81
45
49
53
97
109
80
44
48
52
98
108
79
43
47
51
99
100
101
102
103
104
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
78
42
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
100
97
77
41
37
49
101
96
76
40
36
48
102
95
75
39
35
47
103
94
74
38
34
46
104
93
73
37
33
45
105
92
72
36
32
44
106
91
71
35
31
43
107
90
70
34
30
42
108
89
69
33
29
41
109
88
68
32
28
40
110
87
67
31
27
39
110
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
38
109
79
55
43
17
37
108
80
56
44
16
36
107
81
57
45
15
35
106
82
58
46
14
34
105
83
59
47
13
33
104
84
60
48
12
32
103
83
61
47
11
31
102
82
62
46
10
30
101
81
63
45
9
29
100
80
64
44
8
28
99
79
65
43
7
27
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
66
67
68
69
70
71
72
71
70
69
68
67
66
42
41
40
39
38
37
36
35
34
33
32
31
30
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
91
77
65
29
5
19
92
76
64
28
4
20
93
75
63
27
3
21
94
74
62
26
2
22
95
73
61
25
1
23
96
72
60
24
0
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
122
130
129
117
121
113
121
129
128
116
120
112
120
128
127
115
119
111
119
127
126
114
118
110
118
126
125
113
117
109
117
125
124
112
116
108
116
124
123
111
115
107
115
123
122
110
114
106
114
122
121
109
113
105
113
121
120
108
112
104
112
120
119
107
111
103
111
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
102
110
98
112
117
105
101
89
101
109
97
113
116
104
100
88
100
108
96
114
115
103
99
87
99
107
95
115
114
102
98
86
98
106
94
116
113
101
97
85
97
105
93
117
112
100
96
84
96
104
92
118
111
99
95
83
95
103
102
101
100
99
98
97
96
95
94
93
92
91
119
110
98
94
82
83
84
85
86
87
88
89
90
91
92
93
94
90
120
109
97
93
81
89
121
108
96
92
80
88
122
107
95
91
79
87
123
106
94
90
78
86
124
105
93
89
77
85
124
104
92
88
76
84
123
103
91
87
75
83
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
74
82
113
77
73
81
112
76
72
80
111
75
71
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
110
74
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
68
80
109
73
71
57
69
81
108
72
72
56
70
82
107
71
73
55
71
83
106
70
74
54
72
84
105
69
75
53
73
85
104
68
76
52
74
86
103
67
77
51
75
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
73
72
71
70
71
72
73
74
75
76
77
78
50
76
97
101
65
69
49
77
98
100
64
68
48
78
99
99
63
67
47
79
100
98
62
66
46
80
101
97
61
65
45
81
102
96
60
64
44
82
103
95
59
63
43
83
104
94
58
62
42
84
105
93
57
61
41
85
106
92
56
60
40
86
107
91
55
59
39
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
90
54
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
88
100
89
53
49
37
89
101
88
52
48
36
90
102
87
51
47
35
91
103
86
50
46
34
92
104
85
49
45
33
93
104
84
48
44
32
94
103
83
47
43
31
95
102
82
46
42
30
96
101
81
45
41
29
97
100
80
44
40
28
98
99
79
43
39
27
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
26
100
91
67
55
29
25
101
92
68
56
28
24
102
93
69
57
27
23
103
94
70
58
26
22
104
95
71
59
25
21
105
96
72
60
24
20
106
97
73
61
23
19
107
98
74
62
22
18
108
99
75
63
21
17
109
100
76
64
20
16
110
101
77
65
19
15
111
112
113
114
115
116
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
90
89
88
87
86
85
84
83
82
81
80
79
78
66
65
64
63
62
61
60
59
58
57
56
55
54
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
115
101
89
53
19
5
116
100
88
52
20
4
117
99
87
51
21
3
118
98
86
50
22
2
119
97
85
49
23
1
120
96
84
48
24
0
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
114
122
118
130
131
123
113
121
117
129
130
122
112
120
116
128
129
121
111
119
115
127
128
120
110
118
114
126
127
119
109
117
113
125
126
118
108
116
112
124
125
117
107
115
111
123
124
116
106
114
110
122
123
115
105
113
109
121
122
114
104
112
108
120
121
113
103
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
119
120
121
122
123
124
125
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
112
102
90
102
106
118
113
99
111
101
89
101
105
117
114
98
110
100
88
100
104
116
115
97
109
99
87
99
103
115
116
96
108
98
86
98
102
114
117
95
107
97
85
97
101
113
118
94
106
96
84
96
100
112
119
93
105
95
94
93
92
91
90
89
88
87
86
85
84
83
95
99
111
120
92
93
94
95
96
97
98
99
100
101
102
103
104
82
94
98
110
121
91
81
93
97
109
122
90
80
92
96
108
123
89
79
91
95
107
124
88
78
90
94
106
125
87
77
89
93
105
125
86
76
88
92
104
124
85
75
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
84
74
78
114
83
73
77
113
82
72
76
112
81
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
75
111
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
58
72
74
110
81
69
57
73
73
109
82
70
56
74
72
108
83
71
55
75
71
107
84
72
54
76
70
106
85
73
53
77
69
105
86
74
52
78
68
104
87
75
51
79
80
79
78
77
76
75
74
73
72
73
74
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
76
50
71
66
102
97
77
49
70
65
101
98
78
48
69
64
100
99
79
47
68
63
99
100
80
46
67
62
98
101
81
45
66
61
97
102
82
44
65
60
96
103
83
43
64
59
95
104
84
42
63
58
94
105
85
41
62
57
93
106
86
40
61
56
92
107
87
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
55
91
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
38
50
54
90
101
89
37
49
53
89
102
90
36
48
52
88
103
91
35
47
51
87
104
92
34
46
50
86
105
93
33
45
49
85
105
94
32
44
48
84
104
95
31
43
47
83
103
96
30
42
46
82
102
97
29
41
45
81
101
98
28
40
44
80
100
99
27
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
26
30
56
68
92
101
25
29
57
69
93
102
24
28
58
70
94
103
23
27
59
71
95
104
22
26
60
72
96
105
21
25
61
73
97
106
20
24
62
74
98
107
19
23
63
75
99
108
18
22
64
76
100
109
17
21
65
77
101
110
16
20
66
78
102
111
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
55
56
57
58
59
60
61
62
63
64
65
66
67
79
80
81
82
83
84
85
86
87
88
89
90
91
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
117
116
115
114
113
112
6
20
54
90
102
116
5
21
53
89
101
117
4
22
52
88
100
118
3
23
51
87
99
119
2
24
50
86
98
120
1
25
49
85
97
121
0
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
107
108
109
110
111
112
113
114
115
116
117
118
119
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
120
110
106
118
130
135
119
109
105
117
129
134
118
108
104
116
128
133
117
107
103
115
127
132
116
106
102
114
126
131
115
105
101
113
125
130
114
104
100
112
124
129
113
103
99
111
123
128
112
102
98
110
122
127
111
101
97
109
121
126
110
100
96
108
120
125
109
97
98
99
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
125
124
123
122
121
120
119
118
117
116
115
114
113
112
124
108
96
90
94
106
125
111
123
107
95
89
93
105
125
110
122
106
94
88
92
104
124
109
121
105
93
87
91
103
123
108
120
104
92
86
90
102
122
107
119
103
91
85
89
101
121
106
118
102
90
84
88
100
120
105
117
101
100
99
98
97
96
95
94
93
92
91
90
89
83
87
99
119
104
105
106
107
108
109
110
111
112
113
114
115
116
88
82
86
98
118
103
87
81
85
97
117
102
86
80
84
96
116
101
85
79
83
95
115
100
84
78
82
94
114
99
83
77
81
93
113
98
82
76
80
92
112
97
81
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
96
80
66
102
95
79
65
101
94
78
64
100
93
75
74
73
72
71
72
73
74
75
76
77
78
79
80
79
78
77
63
99
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
70
76
62
98
93
81
69
75
61
97
94
82
68
74
60
96
95
83
67
73
59
95
96
84
66
72
58
94
97
85
65
71
57
93
98
86
64
70
56
92
99
87
63
69
68
67
66
65
64
63
62
61
60
61
62
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
105
104
103
102
101
100
88
62
59
54
90
104
89
61
58
53
89
105
90
60
57
52
88
106
91
59
56
51
87
107
92
58
55
50
86
108
93
57
54
49
85
109
94
56
53
48
84
110
95
55
52
47
83
111
96
54
51
46
82
110
97
53
50
45
81
109
98
52
49
44
80
108
99
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
43
79
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
105
104
103
102
101
100
50
38
42
78
98
101
49
37
41
77
97
102
48
36
40
76
96
103
47
35
39
75
95
104
46
34
38
74
94
105
45
33
37
73
93
106
44
32
36
72
92
107
43
31
35
71
91
108
42
30
34
70
90
109
41
29
33
69
89
110
40
28
32
68
88
110
39
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
109
38
18
44
56
80
108
37
17
45
57
81
107
36
16
46
58
82
106
35
15
47
59
83
105
34
14
48
60
84
104
33
13
47
61
83
103
32
12
46
62
82
102
31
11
45
63
81
101
30
10
44
64
80
100
29
9
43
65
79
99
28
8
42
66
78
98
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
29
30
31
32
33
34
35
36
37
38
39
40
41
67
68
69
70
71
72
71
70
69
68
67
66
65
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
20
6
28
64
76
90
21
5
27
63
75
91
22
4
26
62
74
92
23
3
25
61
73
93
24
2
24
60
72
94
25
1
23
59
71
95
26
0
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
119
120
121
122
123
124
125
126
127
128
129
130
131
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
138
122
118
130
134
150
137
121
117
129
133
149
136
120
116
128
132
148
135
119
115
127
131
147
134
118
114
126
130
146
133
117
113
125
129
145
132
116
112
124
128
144
131
115
111
123
127
143
130
114
110
122
126
142
129
113
109
121
125
141
128
112
108
120
124
140
127
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
139
126
114
102
106
118
114
126
138
125
113
101
105
117
113
125
137
124
112
100
104
116
112
124
136
123
111
99
103
115
111
123
135
122
110
98
102
114
110
122
134
121
109
97
101
113
109
121
133
120
108
96
100
112
108
120
132
119
118
117
116
115
114
113
112
111
110
109
108
107
95
99
111
107
119
120
121
122
123
124
125
126
127
128
129
130
131
106
94
98
110
106
118
105
93
97
109
105
117
104
92
96
108
104
116
103
91
95
107
103
115
102
90
94
106
102
114
101
89
93
105
101
113
100
88
92
104
100
112
99
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
111
98
78
90
110
97
77
89
109
96
76
88
108
97
96
95
94
93
94
95
96
97
98
99
100
99
98
97
96
95
75
87
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
92
94
74
86
106
103
91
93
73
85
105
104
90
92
72
84
104
105
89
91
71
83
103
106
88
90
70
82
102
107
87
89
69
81
101
108
86
88
68
80
100
109
85
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
110
84
79
66
78
92
110
83
80
65
77
93
109
82
79
64
76
94
108
81
78
63
75
95
107
80
77
62
74
96
106
79
76
61
73
97
105
78
75
60
72
98
104
77
74
59
71
99
103
76
73
58
70
98
102
75
72
57
69
97
101
74
71
56
68
96
100
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
55
67
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
72
60
54
66
86
100
71
59
53
65
85
101
70
58
52
64
84
102
69
57
51
63
83
103
68
56
50
62
82
104
67
55
49
61
81
103
66
54
48
60
80
102
65
53
47
59
79
101
64
52
46
58
78
100
63
51
45
57
77
99
62
50
44
56
76
98
61
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
97
60
40
30
44
68
96
59
39
29
45
69
95
58
38
28
46
70
94
57
37
27
47
71
93
56
36
26
48
72
92
55
35
25
49
71
91
54
34
24
50
70
90
53
33
23
51
69
89
52
32
22
52
68
88
51
31
21
53
67
87
50
30
20
54
66
86
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
7
8
9
10
11
12
13
14
15
16
17
18
19
55
56
57
58
59
60
59
58
57
56
55
54
53
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
42
28
6
52
64
78
43
27
5
51
63
79
44
26
4
50
62
80
45
25
3
49
61
81
46
24
2
48
60
82
47
23
1
47
59
83
48
22
0
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
131
130
129
128
127
126
125
124
123
122
121
120
119
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
150
134
130
118
122
138
149
133
129
117
121
137
148
132
128
116
120
136
147
131
127
115
119
135
146
130
126
114
118
134
145
129
125
113
117
133
144
128
124
112
116
132
143
127
123
111
115
131
142
126
122
110
114
130
141
125
121
109
113
129
140
124
120
108
112
128
139
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
127
138
126
114
118
106
102
114
126
137
125
113
117
105
101
113
125
136
124
112
116
104
100
112
124
135
123
111
115
103
99
111
123
134
122
110
114
102
98
110
122
133
121
109
113
101
97
109
121
132
120
108
112
100
96
108
120
131
130
129
128
127
126
125
124
123
122
121
120
119
107
111
99
95
107
108
109
110
111
112
113
114
115
116
117
118
119
118
106
110
98
94
106
117
105
109
97
93
105
116
104
108
96
92
104
115
103
107
95
91
103
114
102
106
94
90
102
113
101
105
93
89
101
112
100
104
92
88
100
111
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
99
110
90
78
98
109
89
77
97
108
88
76
96
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
87
75
95
96
97
98
99
100
99
98
97
96
95
94
93
94
95
96
97
103
106
86
74
94
92
104
105
85
73
93
91
105
104
84
72
92
90
106
103
83
71
91
89
107
102
82
70
90
88
108
101
81
69
89
87
109
100
80
68
88
86
110
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
85
110
91
78
66
80
84
109
92
77
65
79
83
108
93
76
64
78
82
107
94
75
63
77
81
106
95
74
62
76
80
105
96
73
61
75
79
104
97
72
60
74
78
103
98
71
59
73
77
102
99
70
58
72
76
101
98
69
57
71
75
100
97
68
56
70
74
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
67
55
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
100
86
66
54
60
72
101
85
65
53
59
71
102
84
64
52
58
70
103
83
63
51
57
69
104
82
62
50
56
68
103
81
61
49
55
67
102
80
60
48
54
66
101
79
59
47
53
65
100
78
58
46
52
64
99
77
57
45
51
63
98
76
56
44
50
62
97
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
61
96
68
44
30
40
60
95
69
45
29
39
59
94
70
46
28
38
58
93
71
47
27
37
57
92
72
48
26
36
56
91
71
49
25
35
55
90
70
50
24
34
54
89
69
51
23
33
53
88
68
52
22
32
52
87
67
53
21
31
51
86
66
54
20
30
50
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
53
54
55
56
57
58
59
60
59
58
57
56
55
19
18
17
16
15
14
13
12
11
10
9
8
7
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
78
64
52
6
28
42
79
63
51
5
27
43
80
62
50
4
26
44
81
61
49
3
25
45
82
60
48
2
24
46
83
59
47
1
23
47
84
58
46
0
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
119
118
117
116
115
114
113
112
111
110
109
108
107
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
135
130
118
106
110
118
134
129
117
105
109
117
133
128
116
104
108
116
132
127
115
103
107
115
131
126
114
102
106
114
130
125
113
101
105
113
129
124
112
100
104
112
128
123
111
99
103
111
127
122
110
98
102
110
126
121
109
97
101
109
125
120
108
96
100
108
124
112
113
114
115
116
117
118
119
120
121
122
123
124
125
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
98
97
96
95
107
123
111
125
106
94
90
94
106
122
110
125
105
93
89
93
105
121
109
124
104
92
88
92
104
120
108
123
103
91
87
91
103
119
107
122
102
90
86
90
102
118
106
121
101
89
85
89
101
117
105
120
100
88
84
88
100
116
115
114
113
112
111
110
109
108
107
106
105
104
119
99
87
83
87
88
89
90
91
92
93
94
95
96
97
98
99
103
118
98
86
82
86
102
117
97
85
81
85
101
116
96
84
80
84
100
115
95
83
79
83
99
114
94
82
78
82
98
113
93
81
77
81
97
112
92
80
76
80
96
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
79
95
102
66
78
94
101
65
77
93
100
64
76
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
99
63
75
76
77
78
79
78
77
76
75
74
73
72
71
72
73
74
75
81
93
98
62
74
70
82
94
97
61
73
69
83
95
96
60
72
68
84
96
95
59
71
67
85
97
94
58
70
66
86
98
93
57
69
65
87
99
92
56
68
64
88
100
101
102
103
104
105
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
62
61
60
59
60
61
62
63
64
65
66
67
63
89
103
90
54
58
62
90
104
89
53
57
61
91
105
88
52
56
60
92
106
87
51
55
59
93
107
86
50
54
58
94
108
85
49
53
57
95
109
84
48
52
56
96
110
83
47
51
55
97
111
82
46
50
54
98
110
81
45
49
53
99
109
80
44
48
52
100
101
102
103
104
105
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
79
43
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
101
98
78
42
38
50
102
97
77
41
37
49
103
96
76
40
36
48
104
95
75
39
35
47
105
94
74
38
34
46
106
93
73
37
33
45
107
92
72
36
32
44
108
91
71
35
31
43
109
90
70
34
30
42
110
89
69
33
29
41
110
88
68
32
28
40
109
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
39
108
80
56
44
18
38
107
81
57
45
17
37
106
82
58
46
16
36
105
83
59
47
15
35
104
84
60
48
14
34
103
83
61
47
13
33
102
82
62
46
12
32
101
81
63
45
11
31
100
80
64
44
10
30
99
79
65
43
9
29
98
78
66
42
8
28
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
65
66
67
68
69
70
71
72
71
70
69
68
67
41
40
39
38
37
36
35
34
33
32
31
30
29
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
90
76
64
28
6
20
91
75
63
27
5
21
92
74
62
26
4
22
93
73
61
25
3
23
94
72
60
24
2
24
95
71
59
23
1
25
96
70
58
22
0
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
123
131
130
118
122
114
122
130
129
117
121
113
121
129
128
116
120
112
120
128
127
115
119
111
119
127
126
114
118
110
118
126
125
113
117
109
117
125
124
112
116
108
116
124
123
111
115
107
115
123
122
110
114
106
114
122
121
109
113
105
113
121
120
108
112
104
112
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
125
124
123
122
121
120
119
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
103
111
99
113
118
106
102
90
102
110
98
114
117
105
101
89
101
109
97
115
116
104
100
88
100
108
96
116
115
103
99
87
99
107
95
117
114
102
98
86
98
106
94
118
113
101
97
85
97
105
93
119
112
100
96
84
96
104
103
102
101
100
99
98
97
96
95
94
93
92
120
111
99
95
83
84
85
86
87
88
89
90
91
92
93
94
95
91
121
110
98
94
82
90
122
109
97
93
81
89
123
108
96
92
80
88
124
107
95
91
79
87
125
106
94
90
78
86
125
105
93
89
77
85
124
104
92
88
76
84
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
75
83
114
78
74
82
113
77
73
81
112
76
72
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
111
75
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
69
81
110
74
72
58
70
82
109
73
73
57
71
83
108
72
74
56
72
84
107
71
75
55
73
85
106
70
76
54
74
86
105
69
77
53
75
87
104
68
78
52
76
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
74
73
72
71
72
73
74
75
76
77
78
79
51
77
98
102
66
70
50
78
99
101
65
69
49
79
100
100
64
68
48
80
101
99
63
67
47
81
102
98
62
66
46
82
103
97
61
65
45
83
104
96
60
64
44
84
105
95
59
63
43
85
106
94
58
62
42
86
107
93
57
61
41
87
108
92
56
60
40
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
91
55
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
89
101
90
54
50
38
90
102
89
53
49
37
91
103
88
52
48
36
92
104
87
51
47
35
93
105
86
50
46
34
94
105
85
49
45
33
95
104
84
48
44
32
96
103
83
47
43
31
97
102
82
46
42
30
98
101
81
45
41
29
99
100
80
44
40
28
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
27
101
92
68
56
30
26
102
93
69
57
29
25
103
94
70
58
28
24
104
95
71
59
27
23
105
96
72
60
26
22
106
97
73
61
25
21
107
98
74
62
24
20
108
99
75
63
23
19
109
100
76
64
22
18
110
101
77
65
21
17
111
102
78
66
20
16
112
113
114
115
116
117
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
91
90
89
88
87
86
85
84
83
82
81
80
79
67
66
65
64
63
62
61
60
59
58
57
56
55
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
116
102
90
54
20
6
117
101
89
53
21
5
118
100
88
52
22
4
119
99
87
51
23
3
120
98
86
50
24
2
121
97
85
49
25
1
122
96
84
48
26
0
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
115
123
119
131
132
124
114
122
118
130
131
123
113
121
117
129
130
122
112
120
116
128
129
121
111
119
115
127
128
120
110
118
114
126
127
119
109
117
113
125
126
118
108
116
112
124
125
117
107
115
111
123
124
116
106
114
110
122
123
115
105
113
109
121
122
114
104
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
120
121
122
123
124
125
126
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
113
103
91
103
107
119
114
100
112
102
90
102
106
118
115
99
111
101
89
101
105
117
116
98
110
100
88
100
104
116
117
97
109
99
87
99
103
115
118
96
108
98
86
98
102
114
119
95
107
97
85
97
101
113
120
94
106
96
95
94
93
92
91
90
89
88
87
86
85
84
96
100
112
121
93
94
95
96
97
98
99
100
101
102
103
104
105
83
95
99
111
122
92
82
94
98
110
123
91
81
93
97
109
124
90
80
92
96
108
125
89
79
91
95
107
126
88
78
90
94
106
126
87
77
89
93
105
125
86
76
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
85
75
79
115
84
74
78
114
83
73
77
113
82
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
76
112
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
59
73
75
111
82
70
58
74
74
110
83
71
57
75
73
109
84
72
56
76
72
108
85
73
55
77
71
107
86
74
54
78
70
106
87
75
53
79
69
105
88
76
52
80
81
80
79
78
77
76
75
74
73
74
75
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
77
51
72
67
103
98
78
50
71
66
102
99
79
49
70
65
101
100
80
48
69
64
100
101
81
47
68
63
99
102
82
46
67
62
98
103
83
45
66
61
97
104
84
44
65
60
96
105
85
43
64
59
95
106
86
42
63
58
94
107
87
41
62
57
93
108
88
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
56
92
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
39
51
55
91
102
90
38
50
54
90
103
91
37
49
53
89
104
92
36
48
52
88
105
93
35
47
51
87
106
94
34
46
50
86
106
95
33
45
49
85
105
96
32
44
48
84
104
97
31
43
47
83
103
98
30
42
46
82
102
99
29
41
45
81
101
100
28
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
27
31
57
69
93
102
26
30
58
70
94
103
25
29
59
71
95
104
24
28
60
72
96
105
23
27
61
73
97
106
22
26
62
74
98
107
21
25
63
75
99
108
20
24
64
76
100
109
19
23
65
77
101
110
18
22
66
78
102
111
17
21
67
79
103
112
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
56
57
58
59
60
61
62
63
64
65
66
67
68
80
81
82
83
84
85
86
87
88
89
90
91
92
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
7
21
55
91
103
117
6
22
54
90
102
118
5
23
53
89
101
119
4
24
52
88
100
120
3
25
51
87
99
121
2
26
50
86
98
122
1
27
49
85
97
123
0
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
108
109
110
111
112
113
114
115
116
117
118
119
120
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
121
111
107
119
131
136
120
110
106
118
130
135
119
109
105
117
129
134
118
108
104
116
128
133
117
107
103
115
127
132
116
106
102
114
126
131
115
105
101
113
125
130
114
104
100
112
124
129
113
103
99
111
123
128
112
102
98
110
122
127
111
101
97
109
121
126
110
98
99
100
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
126
125
124
123
122
121
120
119
118
117
116
115
114
113
125
109
97
91
95
107
126
112
124
108
96
90
94
106
126
111
123
107
95
89
93
105
125
110
122
106
94
88
92
104
124
109
121
105
93
87
91
103
123
108
120
104
92
86
90
102
122
107
119
103
91
85
89
101
121
106
118
102
101
100
99
98
97
96
95
94
93
92
91
90
84
88
100
120
105
106
107
108
109
110
111
112
113
114
115
116
117
89
83
87
99
119
104
88
82
86
98
118
103
87
81
85
97
117
102
86
80
84
96
116
101
85
79
83
95
115
100
84
78
82
94
114
99
83
77
81
93
113
98
82
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
97
81
67
103
96
80
66
102
95
79
65
101
94
76
75
74
73
72
73
74
75
76
77
78
79
80
81
80
79
78
64
100
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
71
77
63
99
94
82
70
76
62
98
95
83
69
75
61
97
96
84
68
74
60
96
97
85
67
73
59
95
98
86
66
72
58
94
99
87
65
71
57
93
100
88
64
70
69
68
67
66
65
64
63
62
61
62
63
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
89
63
60
55
91
105
90
62
59
54
90
106
91
61
58
53
89
107
92
60
57
52
88
108
93
59
56
51
87
109
94
58
55
50
86
110
95
57
54
49
85
111
96
56
53
48
84
112
97
55
52
47
83
111
98
54
51
46
82
110
99
53
50
45
81
109
100
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
44
80
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
106
105
104
103
102
101
51
39
43
79
99
102
50
38
42
78
98
103
49
37
41
77
97
104
48
36
40
76
96
105
47
35
39
75
95
106
46
34
38
74
94
107
45
33
37
73
93
108
44
32
36
72
92
109
43
31
35
71
91
110
42
30
34
70
90
110
41
29
33
69
89
109
40
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
108
39
19
45
57
81
107
38
18
46
58
82
106
37
17
47
59
83
105
36
16
48
60
84
104
35
15
47
61
83
103
34
14
46
62
82
102
33
13
45
63
81
101
32
12
44
64
80
100
31
11
43
65
79
99
30
10
42
66
78
98
29
9
41
67
77
97
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
28
29
30
31
32
33
34
35
36
37
38
39
40
68
69
70
71
72
71
70
69
68
67
66
65
64
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
21
7
27
63
75
89
22
6
26
62
74
90
23
5
25
61
73
91
24
4
24
60
72
92
25
3
23
59
71
93
26
2
22
58
70
94
27
1
21
57
69
95
28
0
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
120
121
122
123
124
125
126
127
128
129
130
131
132
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
139
123
119
131
135
151
138
122
118
130
134
150
137
121
117
129
133
149
136
120
116
128
132
148
135
119
115
127
131
147
134
118
114
126
130
146
133
117
113
125
129
145
132
116
112
124
128
144
131
115
111
123
127
143
130
114
110
122
126
142
129
113
109
121
125
141
128
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
140
127
115
103
107
119
115
127
139
126
114
102
106
118
114
126
138
125
113
101
105
117
113
125
137
124
112
100
104
116
112
124
136
123
111
99
103
115
111
123
135
122
110
98
102
114
110
122
134
121
109
97
101
113
109
121
133
120
119
118
117
116
115
114
113
112
111
110
109
108
96
100
112
108
120
121
122
123
124
125
126
127
128
129
130
131
132
107
95
99
111
107
119
106
94
98
110
106
118
105
93
97
109
105
117
104
92
96
108
104
116
103
91
95
107
103
115
102
90
94
106
102
114
101
89
93
105
101
113
100
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
112
99
79
91
111
98
78
90
110
97
77
89
109
96
95
94
93
92
93
94
95
96
97
98
99
100
99
98
97
96
76
88
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
91
95
75
87
107
102
90
94
74
86
106
103
89
93
73
85
105
104
88
92
72
84
104
105
87
91
71
83
103
106
86
90
70
82
102
107
85
89
69
81
101
108
84
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
109
83
80
67
79
93
110
82
79
66
78
94
110
81
78
65
77
95
109
80
77
64
76
96
108
79
76
63
75
97
107
78
75
62
74
98
106
77
74
61
73
99
105
76
73
60
72
100
104
75
72
59
71
99
103
74
71
58
70
98
102
73
70
57
69
97
101
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
56
68
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
71
59
55
67
87
101
70
58
54
66
86
102
69
57
53
65
85
103
68
56
52
64
84
104
67
55
51
63
83
103
66
54
50
62
82
102
65
53
49
61
81
101
64
52
48
60
80
100
63
51
47
59
79
99
62
50
46
58
78
98
61
49
45
57
77
97
60
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
96
59
39
31
45
69
95
58
38
30
46
70
94
57
37
29
47
71
93
56
36
28
48
72
92
55
35
27
49
71
91
54
34
26
50
70
90
53
33
25
51
69
89
52
32
24
52
68
88
51
31
23
53
67
87
50
30
22
54
66
86
49
29
21
55
65
85
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
8
9
10
11
12
13
14
15
16
17
18
19
20
56
57
58
59
60
59
58
57
56
55
54
53
52
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
41
27
7
51
63
77
42
26
6
50
62
78
43
25
5
49
61
79
44
24
4
48
60
80
45
23
3
47
59
81
46
22
2
46
58
82
47
21
1
45
57
83
48
20
0
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
132
131
130
129
128
127
126
125
124
123
122
121
120
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
151
135
131
119
123
139
150
134
130
118
122
138
149
133
129
117
121
137
148
132
128
116
120
136
147
131
127
115
119
135
146
130
126
114
118
134
145
129
125
113
117
133
144
128
124
112
116
132
143
127
123
111
115
131
142
126
122
110
114
130
141
125
121
109
113
129
140
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
128
139
127
115
119
107
103
115
127
138
126
114
118
106
102
114
126
137
125
113
117
105
101
113
125
136
124
112
116
104
100
112
124
135
123
111
115
103
99
111
123
134
122
110
114
102
98
110
122
133
121
109
113
101
97
109
121
132
131
130
129
128
127
126
125
124
123
122
121
120
108
112
100
96
108
109
110
111
112
113
114
115
116
117
118
119
120
119
107
111
99
95
107
118
106
110
98
94
106
117
105
109
97
93
105
116
104
108
96
92
104
115
103
107
95
91
103
114
102
106
94
90
102
113
101
105
93
89
101
112
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
100
111
91
79
99
110
90
78
98
109
89
77
97
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
88
76
96
97
98
99
100
99
98
97
96
95
94
93
92
93
94
95
96
102
107
87
75
95
91
103
106
86
74
94
90
104
105
85
73
93
89
105
104
84
72
92
88
106
103
83
71
91
87
107
102
82
70
90
86
108
101
81
69
89
85
109
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
84
110
92
79
67
79
83
110
93
78
66
78
82
109
94
77
65
77
81
108
95
76
64
76
80
107
96
75
63
75
79
106
97
74
62
74
78
105
98
73
61
73
77
104
99
72
60
72
76
103
100
71
59
71
75
102
99
70
58
70
74
101
98
69
57
69
73
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
68
56
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
101
87
67
55
59
71
102
86
66
54
58
70
103
85
65
53
57
69
104
84
64
52
56
68
103
83
63
51
55
67
102
82
62
50
54
66
101
81
61
49
53
65
100
80
60
48
52
64
99
79
59
47
51
63
98
78
58
46
50
62
97
77
57
45
49
61
96
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
60
95
69
45
31
39
59
94
70
46
30
38
58
93
71
47
29
37
57
92
72
48
28
36
56
91
71
49
27
35
55
90
70
50
26
34
54
89
69
51
25
33
53
88
68
52
24
32
52
87
67
53
23
31
51
86
66
54
22
30
50
85
65
55
21
29
49
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
52
53
54
55
56
57
58
59
60
59
58
57
56
20
19
18
17
16
15
14
13
12
11
10
9
8
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
77
63
51
7
27
41
78
62
50
6
26
42
79
61
49
5
25
43
80
60
48
4
24
44
81
59
47
3
23
45
82
58
46
2
22
46
83
57
45
1
21
47
84
56
44
0
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
120
119
118
117
116
115
114
113
112
111
110
109
108
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
136
131
119
107
111
119
135
130
118
106
110
118
134
129
117
105
109
117
133
128
116
104
108
116
132
127
115
103
107
115
131
126
114
102
106
114
130
125
113
101
105
113
129
124
112
100
104
112
128
123
111
99
103
111
127
122
110
98
102
110
126
121
109
97
101
109
125
113
114
115
116
117
118
119
120
121
122
123
124
125
126
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
99
98
97
96
108
124
112
126
107
95
91
95
107
123
111
126
106
94
90
94
106
122
110
125
105
93
89
93
105
121
109
124
104
92
88
92
104
120
108
123
103
91
87
91
103
119
107
122
102
90
86
90
102
118
106
121
101
89
85
89
101
117
116
115
114
113
112
111
110
109
108
107
106
105
120
100
88
84
88
89
90
91
92
93
94
95
96
97
98
99
100
104
119
99
87
83
87
103
118
98
86
82
86
102
117
97
85
81
85
101
116
96
84
80
84
100
115
95
83
79
83
99
114
94
82
78
82
98
113
93
81
77
81
97
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
80
96
103
67
79
95
102
66
78
94
101
65
77
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
100
64
76
77
78
79
80
79
78
77
76
75
74
73
72
73
74
75
76
82
94
99
63
75
71
83
95
98
62
74
70
84
96
97
61
73
69
85
97
96
60
72
68
86
98
95
59
71
67
87
99
94
58
70
66
88
100
93
57
69
65
89
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
63
62
61
60
61
62
63
64
65
66
67
68
64
90
104
91
55
59
63
91
105
90
54
58
62
92
106
89
53
57
61
93
107
88
52
56
60
94
108
87
51
55
59
95
109
86
50
54
58
96
110
85
49
53
57
97
111
84
48
52
56
98
112
83
47
51
55
99
111
82
46
50
54
100
110
81
45
49
53
101
102
103
104
105
106
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
80
44
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
102
99
79
43
39
51
103
98
78
42
38
50
104
97
77
41
37
49
105
96
76
40
36
48
106
95
75
39
35
47
107
94
74
38
34
46
108
93
73
37
33
45
109
92
72
36
32
44
110
91
71
35
31
43
110
90
70
34
30
42
109
89
69
33
29
41
108
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
40
107
81
57
45
19
39
106
82
58
46
18
38
105
83
59
47
17
37
104
84
60
48
16
36
103
83
61
47
15
35
102
82
62
46
14
34
101
81
63
45
13
33
100
80
64
44
12
32
99
79
65
43
11
31
98
78
66
42
10
30
97
77
67
41
9
29
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
64
65
66
67
68
69
70
71
72
71
70
69
68
40
39
38
37
36
35
34
33
32
31
30
29
28
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
89
75
63
27
7
21
90
74
62
26
6
22
91
73
61
25
5
23
92
72
60
24
4
24
93
71
59
23
3
25
94
70
58
22
2
26
95
69
57
21
1
27
96
68
56
20
0
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
124
132
131
119
123
115
123
131
130
118
122
114
122
130
129
117
121
113
121
129
128
116
120
112
120
128
127
115
119
111
119
127
126
114
118
110
118
126
125
113
117
109
117
125
124
112
116
108
116
124
123
111
115
107
115
123
122
110
114
106
114
122
121
109
113
105
113
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
126
125
124
123
122
121
120
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
104
112
100
114
119
107
103
91
103
111
99
115
118
106
102
90
102
110
98
116
117
105
101
89
101
109
97
117
116
104
100
88
100
108
96
118
115
103
99
87
99
107
95
119
114
102
98
86
98
106
94
120
113
101
97
85
97
105
104
103
102
101
100
99
98
97
96
95
94
93
121
112
100
96
84
85
86
87
88
89
90
91
92
93
94
95
96
92
122
111
99
95
83
91
123
110
98
94
82
90
124
109
97
93
81
89
125
108
96
92
80
88
126
107
95
91
79
87
126
106
94
90
78
86
125
105
93
89
77
85
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
76
84
115
79
75
83
114
78
74
82
113
77
73
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
112
76
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
70
82
111
75
73
59
71
83
110
74
74
58
72
84
109
73
75
57
73
85
108
72
76
56
74
86
107
71
77
55
75
87
106
70
78
54
76
88
105
69
79
53
77
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
75
74
73
72
73
74
75
76
77
78
79
80
52
78
99
103
67
71
51
79
100
102
66
70
50
80
101
101
65
69
49
81
102
100
64
68
48
82
103
99
63
67
47
83
104
98
62
66
46
84
105
97
61
65
45
85
106
96
60
64
44
86
107
95
59
63
43
87
108
94
58
62
42
88
109
93
57
61
41
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
92
56
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
90
102
91
55
51
39
91
103
90
54
50
38
92
104
89
53
49
37
93
105
88
52
48
36
94
106
87
51
47
35
95
106
86
50
46
34
96
105
85
49
45
33
97
104
84
48
44
32
98
103
83
47
43
31
99
102
82
46
42
30
100
101
81
45
41
29
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
28
102
93
69
57
31
27
103
94
70
58
30
26
104
95
71
59
29
25
105
96
72
60
28
24
106
97
73
61
27
23
107
98
74
62
26
22
108
99
75
63
25
21
109
100
76
64
24
20
110
101
77
65
23
19
111
102
78
66
22
18
112
103
79
67
21
17
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
92
91
90
89
88
87
86
85
84
83
82
81
80
68
67
66
65
64
63
62
61
60
59
58
57
56
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
117
103
91
55
21
7
118
102
90
54
22
6
119
101
89
53
23
5
120
100
88
52
24
4
121
99
87
51
25
3
122
98
86
50
26
2
123
97
85
49
27
1
124
96
84
48
28
0
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
116
124
120
132
133
125
115
123
119
131
132
124
114
122
118
130
131
123
113
121
117
129
130
122
112
120
116
128
129
121
111
119
115
127
128
120
110
118
114
126
127
119
109
117
113
125
126
118
108
116
112
124
125
117
107
115
111
123
124
116
106
114
110
122
123
115
105
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
121
122
123
124
125
126
127
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
114
104
92
104
108
120
115
101
113
103
91
103
107
119
116
100
112
102
90
102
106
118
117
99
111
101
89
101
105
117
118
98
110
100
88
100
104
116
119
97
109
99
87
99
103
115
120
96
108
98
86
98
102
114
121
95
107
97
96
95
94
93
92
91
90
89
88
87
86
85
97
101
113
122
94
95
96
97
98
99
100
101
102
103
104
105
106
84
96
100
112
123
93
83
95
99
111
124
92
82
94
98
110
125
91
81
93
97
109
126
90
80
92
96
108
127
89
79
91
95
107
127
88
78
90
94
106
126
87
77
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
86
76
80
116
85
75
79
115
84
74
78
114
83
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
77
113
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
60
74
76
112
83
71
59
75
75
111
84
72
58
76
74
110
85
73
57
77
73
109
86
74
56
78
72
108
87
75
55
79
71
107
88
76
54
80
70
106
89
77
53
81
82
81
80
79
78
77
76
75
74
75
76
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
78
52
73
68
104
99
79
51
72
67
103
100
80
50
71
66
102
101
81
49
70
65
101
102
82
48
69
64
100
103
83
47
68
63
99
104
84
46
67
62
98
105
85
45
66
61
97
106
86
44
65
60
96
107
87
43
64
59
95
108
88
42
63
58
94
109
89
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
57
93
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
40
52
56
92
103
91
39
51
55
91
104
92
38
50
54
90
105
93
37
49
53
89
106
94
36
48
52
88
107
95
35
47
51
87
107
96
34
46
50
86
106
97
33
45
49
85
105
98
32
44
48
84
104
99
31
43
47
83
103
100
30
42
46
82
102
101
29
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
28
32
58
70
94
103
27
31
59
71
95
104
26
30
60
72
96
105
25
29
61
73
97
106
24
28
62
74
98
107
23
27
63
75
99
108
22
26
64
76
100
109
21
25
65
77
101
110
20
24
66
78
102
111
19
23
67
79
103
112
18
22
68
80
104
113
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
57
58
59
60
61
62
63
64
65
66
67
68
69
81
82
83
84
85
86
87
88
89
90
91
92
93
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
119
118
117
116
115
114
8
22
56
92
104
118
7
23
55
91
103
119
6
24
54
90
102
120
5
25
53
89
101
121
4
26
52
88
100
122
3
27
51
87
99
123
2
28
50
86
98
124
1
29
49
85
97
125
0
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
109
110
111
112
113
114
115
116
117
118
119
120
121
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
151
150
149
148
147
146
145
144
143
142
141
140
139
138
122
112
108
120
132
137
121
111
107
119
131
136
120
110
106
118
130
135
119
109
105
117
129
134
118
108
104
116
128
133
117
107
103
115
127
132
116
106
102
114
126
131
115
105
101
113
125
130
114
104
100
112
124
129
113
103
99
111
123
128
112
102
98
110
122
127
111
99
100
101
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
127
126
125
124
123
122
121
120
119
118
117
116
115
114
126
110
98
92
96
108
127
113
125
109
97
91
95
107
127
112
124
108
96
90
94
106
126
111
123
107
95
89
93
105
125
110
122
106
94
88
92
104
124
109
121
105
93
87
91
103
123
108
120
104
92
86
90
102
122
107
119
103
102
101
100
99
98
97
96
95
94
93
92
91
85
89
101
121
106
107
108
109
110
111
112
113
114
115
116
117
118
90
84
88
100
120
105
89
83
87
99
119
104
88
82
86
98
118
103
87
81
85
97
117
102
86
80
84
96
116
101
85
79
83
95
115
100
84
78
82
94
114
99
83
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
98
82
68
104
97
81
67
103
96
80
66
102
95
77
76
75
74
73
74
75
76
77
78
79
80
81
82
81
80
79
65
101
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
72
78
64
100
95
83
71
77
63
99
96
84
70
76
62
98
97
85
69
75
61
97
98
86
68
74
60
96
99
87
67
73
59
95
100
88
66
72
58
94
101
89
65
71
70
69
68
67
66
65
64
63
62
63
64
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
107
106
105
104
103
102
90
64
61
56
92
106
91
63
60
55
91
107
92
62
59
54
90
108
93
61
58
53
89
109
94
60
57
52
88
110
95
59
56
51
87
111
96
58
55
50
86
112
97
57
54
49
85
113
98
56
53
48
84
112
99
55
52
47
83
111
100
54
51
46
82
110
101
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
45
81
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
107
106
105
104
103
102
52
40
44
80
100
103
51
39
43
79
99
104
50
38
42
78
98
105
49
37
41
77
97
106
48
36
40
76
96
107
47
35
39
75
95
108
46
34
38
74
94
109
45
33
37
73
93
110
44
32
36
72
92
110
43
31
35
71
91
109
42
30
34
70
90
108
41
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
107
40
20
46
58
82
106
39
19
47
59
83
105
38
18
48
60
84
104
37
17
47
61
83
103
36
16
46
62
82
102
35
15
45
63
81
101
34
14
44
64
80
100
33
13
43
65
79
99
32
12
42
66
78
98
31
11
41
67
77
97
30
10
40
68
76
96
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
27
28
29
30
31
32
33
34
35
36
37
38
39
69
70
71
72
71
70
69
68
67
66
65
64
63
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
22
8
26
62
74
88
23
7
25
61
73
89
24
6
24
60
72
90
25
5
23
59
71
91
26
4
22
58
70
92
27
3
21
57
69
93
28
2
20
56
68
94
29
1
19
55
67
95
30
0
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
121
122
123
124
125
126
127
128
129
130
131
132
133
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
140
124
120
132
136
152
139
123
119
131
135
151
138
122
118
130
134
150
137
121
117
129
133
149
136
120
116
128
132
148
135
119
115
127
131
147
134
118
114
126
130
146
133
117
113
125
129
145
132
116
112
124
128
144
131
115
111
123
127
143
130
114
110
122
126
142
129
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
141
128
116
104
108
120
116
128
140
127
115
103
107
119
115
127
139
126
114
102
106
118
114
126
138
125
113
101
105
117
113
125
137
124
112
100
104
116
112
124
136
123
111
99
103
115
111
123
135
122
110
98
102
114
110
122
134
121
120
119
118
117
116
115
114
113
112
111
110
109
97
101
113
109
121
122
123
124
125
126
127
128
129
130
131
132
133
108
96
100
112
108
120
107
95
99
111
107
119
106
94
98
110
106
118
105
93
97
109
105
117
104
92
96
108
104
116
103
91
95
107
103
115
102
90
94
106
102
114
101
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
113
100
80
92
112
99
79
91
111
98
78
90
110
95
94
93
92
91
92
93
94
95
96
97
98
99
100
99
98
97
77
89
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
90
96
76
88
108
101
89
95
75
87
107
102
88
94
74
86
106
103
87
93
73
85
105
104
86
92
72
84
104
105
85
91
71
83
103
106
84
90
70
82
102
107
83
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
108
82
79
68
80
94
109
81
78
67
79
95
110
80
77
66
78
96
110
79
76
65
77
97
109
78
75
64
76
98
108
77
74
63
75
99
107
76
73
62
74
100
106
75
72
61
73
101
105
74
71
60
72
100
104
73
70
59
71
99
103
72
69
58
70
98
102
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
57
69
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
70
58
56
68
88
102
69
57
55
67
87
103
68
56
54
66
86
104
67
55
53
65
85
103
66
54
52
64
84
102
65
53
51
63
83
101
64
52
50
62
82
100
63
51
49
61
81
99
62
50
48
60
80
98
61
49
47
59
79
97
60
48
46
58
78
96
59
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
95
58
38
32
46
70
94
57
37
31
47
71
93
56
36
30
48
72
92
55
35
29
49
71
91
54
34
28
50
70
90
53
33
27
51
69
89
52
32
26
52
68
88
51
31
25
53
67
87
50
30
24
54
66
86
49
29
23
55
65
85
48
28
22
56
64
84
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
9
10
11
12
13
14
15
16
17
18
19
20
21
57
58
59
60
59
58
57
56
55
54
53
52
51
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
40
26
8
50
62
76
41
25
7
49
61
77
42
24
6
48
60
78
43
23
5
47
59
79
44
22
4
46
58
80
45
21
3
45
57
81
46
20
2
44
56
82
47
19
1
43
55
83
48
18
0
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
133
132
131
130
129
128
127
126
125
124
123
122
121
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
152
136
132
120
124
138
151
135
131
119
123
137
150
134
130
118
122
136
149
133
129
117
121
135
148
132
128
116
120
134
147
131
127
115
119
133
146
130
126
114
118
132
145
129
125
113
117
131
144
128
124
112
116
130
143
127
123
111
115
129
142
126
122
110
114
128
141
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
115
127
140
128
116
120
108
104
114
126
139
127
115
119
107
103
113
125
138
126
114
118
106
102
112
124
137
125
113
117
105
101
111
123
136
124
112
116
104
100
110
122
135
123
111
115
103
99
109
121
134
122
110
114
102
98
108
120
133
132
131
130
129
128
127
126
125
124
123
122
121
109
113
101
97
107
108
109
110
111
112
113
114
115
116
117
118
119
120
108
112
100
96
106
119
107
111
99
95
105
118
106
110
98
94
104
117
105
109
97
93
103
116
104
108
96
92
102
115
103
107
95
91
101
114
102
106
94
90
100
113
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
99
112
92
80
98
111
91
79
97
110
90
78
96
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
89
77
95
96
97
98
99
98
97
96
95
94
93
92
91
92
93
94
95
101
108
88
76
94
90
102
107
87
75
93
89
103
106
86
74
92
88
104
105
85
73
91
87
105
104
84
72
90
86
106
103
83
71
89
85
107
102
82
70
88
84
108
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
79
80
81
82
83
84
85
86
87
83
109
93
80
68
78
82
110
94
79
67
77
81
110
95
78
66
76
80
109
96
77
65
75
79
108
97
76
64
74
78
107
98
75
63
73
77
106
99
74
62
72
76
105
100
73
61
71
75
104
101
72
60
70
74
103
100
71
59
69
73
102
99
70
58
68
72
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
69
57
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
102
88
68
56
58
70
103
87
67
55
57
69
104
86
66
54
56
68
103
85
65
53
55
67
102
84
64
52
54
66
101
83
63
51
53
65
100
82
62
50
52
64
99
81
61
49
51
63
98
80
60
48
50
62
97
79
59
47
49
61
96
78
58
46
48
60
95
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
59
94
70
46
32
38
58
93
71
47
31
37
57
92
72
48
30
36
56
91
71
49
29
35
55
90
70
50
28
34
54
89
69
51
27
33
53
88
68
52
26
32
52
87
67
53
25
31
51
86
66
54
24
30
50
85
65
55
23
29
49
84
64
56
22
28
48
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
51
52
53
54
55
56
57
58
59
60
59
58
57
21
20
19
18
17
16
15
14
13
12
11
10
9
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
76
62
50
8
26
40
77
61
49
7
25
41
78
60
48
6
24
42
79
59
47
5
23
43
80
58
46
4
22
44
81
57
45
3
21
45
82
56
44
2
20
46
83
55
43
1
19
47
84
54
42
0
138
139
140
141
142
143
144
145
146
147
148
149
150
151
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
121
120
119
118
117
116
115
114
113
112
111
110
109
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
137
132
120
108
112
120
136
131
119
107
111
119
135
130
118
106
110
118
134
129
117
105
109
117
133
128
116
104
108
116
132
127
115
103
107
115
131
126
114
102
106
114
130
125
113
101
105
113
129
124
112
100
104
112
128
123
111
99
103
111
127
122
110
98
102
110
126
114
115
116
117
118
119
120
121
122
123
124
125
126
127
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
100
99
98
97
109
125
113
127
108
96
92
96
108
124
112
127
107
95
91
95
107
123
111
126
106
94
90
94
106
122
110
125
105
93
89
93
105
121
109
124
104
92
88
92
104
120
108
123
103
91
87
91
103
119
107
122
102
90
86
90
102
118
117
116
115
114
113
112
111
110
109
108
107
106
121
101
89
85
89
90
91
92
93
94
95
96
97
98
99
100
101
105
120
100
88
84
88
104
119
99
87
83
87
103
118
98
86
82
86
102
117
97
85
81
85
101
116
96
84
80
84
100
115
95
83
79
83
99
114
94
82
78
82
98
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
81
97
104
68
80
96
103
67
79
95
102
66
78
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
101
65
77
78
79
80
81
80
79
78
77
76
75
74
73
74
75
76
77
83
95
100
64
76
72
84
96
99
63
75
71
85
97
98
62
74
70
86
98
97
61
73
69
87
99
96
60
72
68
88
100
95
59
71
67
89
101
94
58
70
66
90
102
103
104
105
106
107
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
64
63
62
61
62
63
64
65
66
67
68
69
65
91
105
92
56
60
64
92
106
91
55
59
63
93
107
90
54
58
62
94
108
89
53
57
61
95
109
88
52
56
60
96
110
87
51
55
59
97
111
86
50
54
58
98
112
85
49
53
57
99
113
84
48
52
56
100
112
83
47
51
55
101
111
82
46
50
54
102
103
104
105
106
107
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
81
45
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
103
100
80
44
40
52
104
99
79
43
39
51
105
98
78
42
38
50
106
97
77
41
37
49
107
96
76
40
36
48
108
95
75
39
35
47
109
94
74
38
34
46
110
93
73
37
33
45
110
92
72
36
32
44
109
91
71
35
31
43
108
90
70
34
30
42
107
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
41
106
82
58
46
20
40
105
83
59
47
19
39
104
84
60
48
18
38
103
83
61
47
17
37
102
82
62
46
16
36
101
81
63
45
15
35
100
80
64
44
14
34
99
79
65
43
13
33
98
78
66
42
12
32
97
77
67
41
11
31
96
76
68
40
10
30
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
63
64
65
66
67
68
69
70
71
72
71
70
69
39
38
37
36
35
34
33
32
31
30
29
28
27
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
88
74
62
26
8
22
89
73
61
25
7
23
90
72
60
24
6
24
91
71
59
23
5
25
92
70
58
22
4
26
93
69
57
21
3
27
94
68
56
20
2
28
95
67
55
19
1
29
96
66
54
18
0
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
125
133
132
120
124
116
124
132
131
119
123
115
123
131
130
118
122
114
122
130
129
117
121
113
121
129
128
116
120
112
120
128
127
115
119
111
119
127
126
114
118
110
118
126
125
113
117
109
117
125
124
112
116
108
116
124
123
111
115
107
115
123
122
110
114
106
114
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
127
126
125
124
123
122
121
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
105
113
101
115
120
108
104
92
104
112
100
116
119
107
103
91
103
111
99
117
118
106
102
90
102
110
98
118
117
105
101
89
101
109
97
119
116
104
100
88
100
108
96
120
115
103
99
87
99
107
95
121
114
102
98
86
98
106
105
104
103
102
101
100
99
98
97
96
95
94
122
113
101
97
85
86
87
88
89
90
91
92
93
94
95
96
97
93
123
112
100
96
84
92
124
111
99
95
83
91
125
110
98
94
82
90
126
109
97
93
81
89
127
108
96
92
80
88
127
107
95
91
79
87
126
106
94
90
78
86
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
77
85
116
80
76
84
115
79
75
83
114
78
74
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
113
77
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
71
83
112
76
74
60
72
84
111
75
75
59
73
85
110
74
76
58
74
86
109
73
77
57
75
87
108
72
78
56
76
88
107
71
79
55
77
89
106
70
80
54
78
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
76
75
74
73
74
75
76
77
78
79
80
81
53
79
100
104
68
72
52
80
101
103
67
71
51
81
102
102
66
70
50
82
103
101
65
69
49
83
104
100
64
68
48
84
105
99
63
67
47
85
106
98
62
66
46
86
107
97
61
65
45
87
108
96
60
64
44
88
109
95
59
63
43
89
110
94
58
62
42
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
93
57
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
91
103
92
56
52
40
92
104
91
55
51
39
93
105
90
54
50
38
94
106
89
53
49
37
95
107
88
52
48
36
96
107
87
51
47
35
97
106
86
50
46
34
98
105
85
49
45
33
99
104
84
48
44
32
100
103
83
47
43
31
101
102
82
46
42
30
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
29
103
94
70
58
32
28
104
95
71
59
31
27
105
96
72
60
30
26
106
97
73
61
29
25
107
98
74
62
28
24
108
99
75
63
27
23
109
100
76
64
26
22
110
101
77
65
25
21
111
102
78
66
24
20
112
103
79
67
23
19
113
104
80
68
22
18
114
115
116
117
118
119
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
93
92
91
90
89
88
87
86
85
84
83
82
81
69
68
67
66
65
64
63
62
61
60
59
58
57
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
118
104
92
56
22
8
119
103
91
55
23
7
120
102
90
54
24
6
121
101
89
53
25
5
122
100
88
52
26
4
123
99
87
51
27
3
124
98
86
50
28
2
125
97
85
49
29
1
126
96
84
48
30
0
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
117
125
121
133
134
126
116
124
120
132
133
125
115
123
119
131
132
124
114
122
118
130
131
123
113
121
117
129
130
122
112
120
116
128
129
121
111
119
115
127
128
120
110
118
114
126
127
119
109
117
113
125
126
118
108
116
112
124
125
117
107
115
111
123
124
116
106
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
122
123
124
125
126
127
128
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
115
105
93
105
109
121
116
102
114
104
92
104
108
120
117
101
113
103
91
103
107
119
118
100
112
102
90
102
106
118
119
99
111
101
89
101
105
117
120
98
110
100
88
100
104
116
121
97
109
99
87
99
103
115
122
96
108
98
97
96
95
94
93
92
91
90
89
88
87
86
98
102
114
123
95
96
97
98
99
100
101
102
103
104
105
106
107
85
97
101
113
124
94
84
96
100
112
125
93
83
95
99
111
126
92
82
94
98
110
127
91
81
93
97
109
128
90
80
92
96
108
128
89
79
91
95
107
127
88
78
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
87
77
81
117
86
76
80
116
85
75
79
115
84
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
78
114
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
61
75
77
113
84
72
60
76
76
112
85
73
59
77
75
111
86
74
58
78
74
110
87
75
57
79
73
109
88
76
56
80
72
108
89
77
55
81
71
107
90
78
54
82
83
82
81
80
79
78
77
76
75
76
77
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
79
53
74
69
105
100
80
52
73
68
104
101
81
51
72
67
103
102
82
50
71
66
102
103
83
49
70
65
101
104
84
48
69
64
100
105
85
47
68
63
99
106
86
46
67
62
98
107
87
45
66
61
97
108
88
44
65
60
96
109
89
43
64
59
95
110
90
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
58
94
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
41
53
57
93
104
92
40
52
56
92
105
93
39
51
55
91
106
94
38
50
54
90
107
95
37
49
53
89
108
96
36
48
52
88
108
97
35
47
51
87
107
98
34
46
50
86
106
99
33
45
49
85
105
100
32
44
48
84
104
101
31
43
47
83
103
102
30
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
29
33
59
71
95
104
28
32
60
72
96
105
27
31
61
73
97
106
26
30
62
74
98
107
25
29
63
75
99
108
24
28
64
76
100
109
23
27
65
77
101
110
22
26
66
78
102
111
21
25
67
79
103
112
20
24
68
80
104
113
19
23
69
81
105
114
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
58
59
60
61
62
63
64
65
66
67
68
69
70
82
83
84
85
86
87
88
89
90
91
92
93
94
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
120
119
118
117
116
115
9
23
57
93
105
119
8
24
56
92
104
120
7
25
55
91
103
121
6
26
54
90
102
122
5
27
53
89
101
123
4
28
52
88
100
124
3
29
51
87
99
125
2
30
50
86
98
126
1
31
49
85
97
127
0
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
110
111
112
113
114
115
116
117
118
119
120
121
122
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
152
151
150
149
148
147
146
145
144
143
142
141
140
139
123
113
109
121
133
138
122
112
108
120
132
137
121
111
107
119
131
136
120
110
106
118
130
135
119
109
105
117
129
134
118
108
104
116
128
133
117
107
103
115
127
132
116
106
102
114
126
131
115
105
101
113
125
130
114
104
100
112
124
129
113
103
99
111
123
128
112
100
101
102
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
128
127
126
125
124
123
122
121
120
119
118
117
116
115
127
111
99
93
97
109
128
114
126
110
98
92
96
108
128
113
125
109
97
91
95
107
127
112
124
108
96
90
94
106
126
111
123
107
95
89
93
105
125
110
122
106
94
88
92
104
124
109
121
105
93
87
91
103
123
108
120
104
103
102
101
100
99
98
97
96
95
94
93
92
86
90
102
122
107
108
109
110
111
112
113
114
115
116
117
118
119
91
85
89
101
121
106
90
84
88
100
120
105
89
83
87
99
119
104
88
82
86
98
118
103
87
81
85
97
117
102
86
80
84
96
116
101
85
79
83
95
115
100
84
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
99
83
69
105
98
82
68
104
97
81
67
103
96
78
77
76
75
74
75
76
77
78
79
80
81
82
83
82
81
80
66
102
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
73
79
65
101
96
84
72
78
64
100
97
85
71
77
63
99
98
86
70
76
62
98
99
87
69
75
61
97
100
88
68
74
60
96
101
89
67
73
59
95
102
90
66
72
71
70
69
68
67
66
65
64
63
64
65
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
108
107
106
105
104
103
91
65
62
57
93
107
92
64
61
56
92
108
93
63
60
55
91
109
94
62
59
54
90
110
95
61
58
53
89
111
96
60
57
52
88
112
97
59
56
51
87
113
98
58
55
50
86
114
99
57
54
49
85
113
100
56
53
48
84
112
101
55
52
47
83
111
102
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
46
82
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
108
107
106
105
104
103
53
41
45
81
101
104
52
40
44
80
100
105
51
39
43
79
99
106
50
38
42
78
98
107
49
37
41
77
97
108
48
36
40
76
96
109
47
35
39
75
95
110
46
34
38
74
94
110
45
33
37
73
93
109
44
32
36
72
92
108
43
31
35
71
91
107
42
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
106
41
21
47
59
83
105
40
20
48
60
84
104
39
19
47
61
83
103
38
18
46
62
82
102
37
17
45
63
81
101
36
16
44
64
80
100
35
15
43
65
79
99
34
14
42
66
78
98
33
13
41
67
77
97
32
12
40
68
76
96
31
11
39
69
75
95
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
26
27
28
29
30
31
32
33
34
35
36
37
38
70
71
72
71
70
69
68
67
66
65
64
63
62
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
23
9
25
61
73
87
24
8
24
60
72
88
25
7
23
59
71
89
26
6
22
58
70
90
27
5
21
57
69
91
28
4
20
56
68
92
29
3
19
55
67
93
30
2
18
54
66
94
31
1
17
53
65
95
32
0
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
122
123
124
125
126
127
128
129
130
131
132
133
134
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
139
125
121
133
137
153
138
124
120
132
136
152
137
123
119
131
135
151
136
122
118
130
134
150
135
121
117
129
133
149
134
120
116
128
132
148
133
119
115
127
131
147
132
118
114
126
130
146
131
117
113
125
129
145
130
116
112
124
128
144
129
115
111
123
127
143
128
116
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
142
127
115
105
109
121
117
129
141
126
114
104
108
120
116
128
140
125
113
103
107
119
115
127
139
124
112
102
106
118
114
126
138
123
111
101
105
117
113
125
137
122
110
100
104
116
112
124
136
121
109
99
103
115
111
123
135
120
119
118
117
116
115
114
113
112
111
110
109
108
98
102
114
110
122
123
124
125
126
127
128
129
130
131
132
133
134
107
97
101
113
109
121
106
96
100
112
108
120
105
95
99
111
107
119
104
94
98
110
106
118
103
93
97
109
105
117
102
92
96
108
104
116
101
91
95
107
103
115
100
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
114
99
81
93
113
98
80
92
112
97
79
91
111
94
93
92
91
90
91
92
93
94
95
96
97
98
99
98
97
96
78
90
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
89
95
77
89
109
100
88
94
76
88
108
101
87
93
75
87
107
102
86
92
74
86
106
103
85
91
73
85
105
104
84
90
72
84
104
105
83
89
71
83
103
106
82
88
87
86
85
84
83
82
81
80
79
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
107
81
78
69
81
95
108
80
77
68
80
96
109
79
76
67
79
97
110
78
75
66
78
98
110
77
74
65
77
99
109
76
73
64
76
100
108
75
72
63
75
101
107
74
71
62
74
102
106
73
70
61
73
101
105
72
69
60
72
100
104
71
68
59
71
99
103
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
58
70
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
69
57
57
69
89
103
68
56
56
68
88
104
67
55
55
67
87
103
66
54
54
66
86
102
65
53
53
65
85
101
64
52
52
64
84
100
63
51
51
63
83
99
62
50
50
62
82
98
61
49
49
61
81
97
60
48
48
60
80
96
59
47
47
59
79
95
58
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
94
57
37
33
47
71
93
56
36
32
48
72
92
55
35
31
49
71
91
54
34
30
50
70
90
53
33
29
51
69
89
52
32
28
52
68
88
51
31
27
53
67
87
50
30
26
54
66
86
49
29
25
55
65
85
48
28
24
56
64
84
47
27
23
57
63
83
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
10
11
12
13
14
15
16
17
18
19
20
21
22
58
59
60
59
58
57
56
55
54
53
52
51
50
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
39
25
9
49
61
75
40
24
8
48
60
76
41
23
7
47
59
77
42
22
6
46
58
78
43
21
5
45
57
79
44
20
4
44
56
80
45
19
3
43
55
81
46
18
2
42
54
82
47
17
1
41
53
83
48
16
0
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
134
133
132
131
130
129
128
127
126
125
124
123
122
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
153
137
133
121
125
137
152
136
132
120
124
136
151
135
131
119
123
135
150
134
130
118
122
134
149
133
129
117
121
133
148
132
128
116
120
132
147
131
127
115
119
131
146
130
126
114
118
130
145
129
125
113
117
129
144
128
124
112
116
128
143
127
123
111
115
127
142
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
115
114
126
141
129
117
121
109
105
113
125
140
128
116
120
108
104
112
124
139
127
115
119
107
103
111
123
138
126
114
118
106
102
110
122
137
125
113
117
105
101
109
121
136
124
112
116
104
100
108
120
135
123
111
115
103
99
107
119
134
133
132
131
130
129
128
127
126
125
124
123
122
110
114
102
98
106
107
108
109
110
111
112
113
114
115
116
117
118
121
109
113
101
97
105
120
108
112
100
96
104
119
107
111
99
95
103
118
106
110
98
94
102
117
105
109
97
93
101
116
104
108
96
92
100
115
103
107
95
91
99
114
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
98
113
93
81
97
112
92
80
96
111
91
79
95
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
90
78
94
95
96
97
98
97
96
95
94
93
92
91
90
91
92
93
94
100
109
89
77
93
89
101
108
88
76
92
88
102
107
87
75
91
87
103
106
86
74
90
86
104
105
85
73
89
85
105
104
84
72
88
84
106
103
83
71
87
83
107
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
79
78
79
80
81
82
83
84
85
86
82
108
94
81
69
77
81
109
95
80
68
76
80
110
96
79
67
75
79
110
97
78
66
74
78
109
98
77
65
73
77
108
99
76
64
72
76
107
100
75
63
71
75
106
101
74
62
70
74
105
102
73
61
69
73
104
101
72
60
68
72
103
100
71
59
67
71
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
70
58
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
103
89
69
57
57
69
104
88
68
56
56
68
103
87
67
55
55
67
102
86
66
54
54
66
101
85
65
53
53
65
100
84
64
52
52
64
99
83
63
51
51
63
98
82
62
50
50
62
97
81
61
49
49
61
96
80
60
48
48
60
95
79
59
47
47
59
94
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
58
93
71
47
33
37
57
92
72
48
32
36
56
91
71
49
31
35
55
90
70
50
30
34
54
89
69
51
29
33
53
88
68
52
28
32
52
87
67
53
27
31
51
86
66
54
26
30
50
85
65
55
25
29
49
84
64
56
24
28
48
83
63
57
23
27
47
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
50
51
52
53
54
55
56
57
58
59
60
59
58
22
21
20
19
18
17
16
15
14
13
12
11
10
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
75
61
49
9
25
39
76
60
48
8
24
40
77
59
47
7
23
41
78
58
46
6
22
42
79
57
45
5
21
43
80
56
44
4
20
44
81
55
43
3
19
45
82
54
42
2
18
46
83
53
41
1
17
47
84
52
40
0
139
140
141
142
143
144
145
146
147
148
149
150
151
152
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
122
121
120
119
118
117
116
115
114
113
112
111
110
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
138
133
121
109
113
121
137
132
120
108
112
120
136
131
119
107
111
119
135
130
118
106
110
118
134
129
117
105
109
117
133
128
116
104
108
116
132
127
115
103
107
115
131
126
114
102
106
114
130
125
113
101
105
113
129
124
112
100
104
112
128
123
111
99
103
111
127
115
116
117
118
119
120
121
122
123
124
125
126
127
128
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
101
100
99
98
110
126
114
128
109
97
93
97
109
125
113
128
108
96
92
96
108
124
112
127
107
95
91
95
107
123
111
126
106
94
90
94
106
122
110
125
105
93
89
93
105
121
109
124
104
92
88
92
104
120
108
123
103
91
87
91
103
119
118
117
116
115
114
113
112
111
110
109
108
107
122
102
90
86
90
91
92
93
94
95
96
97
98
99
100
101
102
106
121
101
89
85
89
105
120
100
88
84
88
104
119
99
87
83
87
103
118
98
86
82
86
102
117
97
85
81
85
101
116
96
84
80
84
100
115
95
83
79
83
99
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
82
98
105
69
81
97
104
68
80
96
103
67
79
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
102
66
78
79
80
81
82
81
80
79
78
77
76
75
74
75
76
77
78
84
96
101
65
77
73
85
97
100
64
76
72
86
98
99
63
75
71
87
99
98
62
74
70
88
100
97
61
73
69
89
101
96
60
72
68
90
102
95
59
71
67
91
103
104
105
106
107
108
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
65
64
63
62
63
64
65
66
67
68
69
70
66
92
106
93
57
61
65
93
107
92
56
60
64
94
108
91
55
59
63
95
109
90
54
58
62
96
110
89
53
57
61
97
111
88
52
56
60
98
112
87
51
55
59
99
113
86
50
54
58
100
114
85
49
53
57
101
113
84
48
52
56
102
112
83
47
51
55
103
104
105
106
107
108
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
82
46
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
104
101
81
45
41
53
105
100
80
44
40
52
106
99
79
43
39
51
107
98
78
42
38
50
108
97
77
41
37
49
109
96
76
40
36
48
110
95
75
39
35
47
110
94
74
38
34
46
109
93
73
37
33
45
108
92
72
36
32
44
107
91
71
35
31
43
106
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
42
105
83
59
47
21
41
104
84
60
48
20
40
103
83
61
47
19
39
102
82
62
46
18
38
101
81
63
45
17
37
100
80
64
44
16
36
99
79
65
43
15
35
98
78
66
42
14
34
97
77
67
41
13
33
96
76
68
40
12
32
95
75
69
39
11
31
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
62
63
64
65
66
67
68
69
70
71
72
71
70
38
37
36
35
34
33
32
31
30
29
28
27
26
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
87
73
61
25
9
23
88
72
60
24
8
24
89
71
59
23
7
25
90
70
58
22
6
26
91
69
57
21
5
27
92
68
56
20
4
28
93
67
55
19
3
29
94
66
54
18
2
30
95
65
53
17
1
31
96
64
52
16
0
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
126
134
133
121
125
117
125
133
132
120
124
116
124
132
131
119
123
115
123
131
130
118
122
114
122
130
129
117
121
113
121
129
128
116
120
112
120
128
127
115
119
111
119
127
126
114
118
110
118
126
125
113
117
109
117
125
124
112
116
108
116
124
123
111
115
107
115
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
128
127
126
125
124
123
122
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
106
114
102
116
121
109
105
93
105
113
101
117
120
108
104
92
104
112
100
118
119
107
103
91
103
111
99
119
118
106
102
90
102
110
98
120
117
105
101
89
101
109
97
121
116
104
100
88
100
108
96
122
115
103
99
87
99
107
106
105
104
103
102
101
100
99
98
97
96
95
123
114
102
98
86
87
88
89
90
91
92
93
94
95
96
97
98
94
124
113
101
97
85
93
125
112
100
96
84
92
126
111
99
95
83
91
127
110
98
94
82
90
128
109
97
93
81
89
128
108
96
92
80
88
127
107
95
91
79
87
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
78
86
117
81
77
85
116
80
76
84
115
79
75
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
114
78
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
72
84
113
77
75
61
73
85
112
76
76
60
74
86
111
75
77
59
75
87
110
74
78
58
76
88
109
73
79
57
77
89
108
72
80
56
78
90
107
71
81
55
79
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
77
76
75
74
75
76
77
78
79
80
81
82
54
80
101
105
69
73
53
81
102
104
68
72
52
82
103
103
67
71
51
83
104
102
66
70
50
84
105
101
65
69
49
85
106
100
64
68
48
86
107
99
63
67
47
87
108
98
62
66
46
88
109
97
61
65
45
89
110
96
60
64
44
90
111
95
59
63
43
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
94
58
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
92
104
93
57
53
41
93
105
92
56
52
40
94
106
91
55
51
39
95
107
90
54
50
38
96
108
89
53
49
37
97
108
88
52
48
36
98
107
87
51
47
35
99
106
86
50
46
34
100
105
85
49
45
33
101
104
84
48
44
32
102
103
83
47
43
31
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
30
104
95
71
59
33
29
105
96
72
60
32
28
106
97
73
61
31
27
107
98
74
62
30
26
108
99
75
63
29
25
109
100
76
64
28
24
110
101
77
65
27
23
111
102
78
66
26
22
112
103
79
67
25
21
113
104
80
68
24
20
114
105
81
69
23
19
115
116
117
118
119
120
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
94
93
92
91
90
89
88
87
86
85
84
83
82
70
69
68
67
66
65
64
63
62
61
60
59
58
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
119
105
93
57
23
9
120
104
92
56
24
8
121
103
91
55
25
7
122
102
90
54
26
6
123
101
89
53
27
5
124
100
88
52
28
4
125
99
87
51
29
3
126
98
86
50
30
2
127
97
85
49
31
1
128
96
84
48
32
0
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
118
126
122
134
135
127
117
125
121
133
134
126
116
124
120
132
133
125
115
123
119
131
132
124
114
122
118
130
131
123
113
121
117
129
130
122
112
120
116
128
129
121
111
119
115
127
128
120
110
118
114
126
127
119
109
117
113
125
126
118
108
116
112
124
125
117
107
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
123
124
125
126
127
128
129
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
116
106
94
106
110
122
117
103
115
105
93
105
109
121
118
102
114
104
92
104
108
120
119
101
113
103
91
103
107
119
120
100
112
102
90
102
106
118
121
99
111
101
89
101
105
117
122
98
110
100
88
100
104
116
123
97
109
99
98
97
96
95
94
93
92
91
90
89
88
87
99
103
115
124
96
97
98
99
100
101
102
103
104
105
106
107
108
86
98
102
114
125
95
85
97
101
113
126
94
84
96
100
112
127
93
83
95
99
111
128
92
82
94
98
110
129
91
81
93
97
109
129
90
80
92
96
108
128
89
79
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
88
78
82
118
87
77
81
117
86
76
80
116
85
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
79
115
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
62
76
78
114
85
73
61
77
77
113
86
74
60
78
76
112
87
75
59
79
75
111
88
76
58
80
74
110
89
77
57
81
73
109
90
78
56
82
72
108
91
79
55
83
84
83
82
81
80
79
78
77
76
77
78
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
80
54
75
70
106
101
81
53
74
69
105
102
82
52
73
68
104
103
83
51
72
67
103
104
84
50
71
66
102
105
85
49
70
65
101
106
86
48
69
64
100
107
87
47
68
63
99
108
88
46
67
62
98
109
89
45
66
61
97
110
90
44
65
60
96
111
91
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
59
95
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
42
54
58
94
105
93
41
53
57
93
106
94
40
52
56
92
107
95
39
51
55
91
108
96
38
50
54
90
109
97
37
49
53
89
109
98
36
48
52
88
108
99
35
47
51
87
107
100
34
46
50
86
106
101
33
45
49
85
105
102
32
44
48
84
104
103
31
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
30
34
60
72
96
105
29
33
61
73
97
106
28
32
62
74
98
107
27
31
63
75
99
108
26
30
64
76
100
109
25
29
65
77
101
110
24
28
66
78
102
111
23
27
67
79
103
112
22
26
68
80
104
113
21
25
69
81
105
114
20
24
70
82
106
115
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
59
60
61
62
63
64
65
66
67
68
69
70
71
83
84
85
86
87
88
89
90
91
92
93
94
95
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
121
120
119
118
117
116
10
24
58
94
106
120
9
25
57
93
105
121
8
26
56
92
104
122
7
27
55
91
103
123
6
28
54
90
102
124
5
29
53
89
101
125
4
30
52
88
100
126
3
31
51
87
99
127
2
32
50
86
98
128
1
33
49
85
97
129
0
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
111
112
113
114
115
116
117
118
119
120
121
122
123
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
153
152
151
150
149
148
147
146
145
144
143
142
141
140
124
114
110
122
134
139
123
113
109
121
133
138
122
112
108
120
132
137
121
111
107
119
131
136
120
110
106
118
130
135
119
109
105
117
129
134
118
108
104
116
128
133
117
107
103
115
127
132
116
106
102
114
126
131
115
105
101
113
125
130
114
104
100
112
124
129
113
101
102
103
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
129
128
127
126
125
124
123
122
121
120
119
118
117
116
128
112
100
94
98
110
129
115
127
111
99
93
97
109
129
114
126
110
98
92
96
108
128
113
125
109
97
91
95
107
127
112
124
108
96
90
94
106
126
111
123
107
95
89
93
105
125
110
122
106
94
88
92
104
124
109
121
105
104
103
102
101
100
99
98
97
96
95
94
93
87
91
103
123
108
109
110
111
112
113
114
115
116
117
118
119
120
92
86
90
102
122
107
91
85
89
101
121
106
90
84
88
100
120
105
89
83
87
99
119
104
88
82
86
98
118
103
87
81
85
97
117
102
86
80
84
96
116
101
85
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
100
84
70
106
99
83
69
105
98
82
68
104
97
79
78
77
76
75
76
77
78
79
80
81
82
83
84
83
82
81
67
103
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
74
80
66
102
97
85
73
79
65
101
98
86
72
78
64
100
99
87
71
77
63
99
100
88
70
76
62
98
101
89
69
75
61
97
102
90
68
74
60
96
103
91
67
73
72
71
70
69
68
67
66
65
64
65
66
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
109
108
107
106
105
104
92
66
63
58
94
108
93
65
62
57
93
109
94
64
61
56
92
110
95
63
60
55
91
111
96
62
59
54
90
112
97
61
58
53
89
113
98
60
57
52
88
114
99
59
56
51
87
115
100
58
55
50
86
114
101
57
54
49
85
113
102
56
53
48
84
112
103
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
47
83
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
109
108
107
106
105
104
54
42
46
82
102
105
53
41
45
81
101
106
52
40
44
80
100
107
51
39
43
79
99
108
50
38
42
78
98
109
49
37
41
77
97
110
48
36
40
76
96
110
47
35
39
75
95
109
46
34
38
74
94
108
45
33
37
73
93
107
44
32
36
72
92
106
43
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
105
42
22
48
60
84
104
41
21
47
61
83
103
40
20
46
62
82
102
39
19
45
63
81
101
38
18
44
64
80
100
37
17
43
65
79
99
36
16
42
66
78
98
35
15
41
67
77
97
34
14
40
68
76
96
33
13
39
69
75
95
32
12
38
70
74
94
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
25
26
27
28
29
30
31
32
33
34
35
36
37
71
72
71
70
69
68
67
66
65
64
63
62
61
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
24
10
24
60
72
86
25
9
23
59
71
87
26
8
22
58
70
88
27
7
21
57
69
89
28
6
20
56
68
90
29
5
19
55
67
91
30
4
18
54
66
92
31
3
17
53
65
93
32
2
16
52
64
94
33
1
15
51
63
95
34
0
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
123
124
125
126
127
128
129
130
131
132
133
134
135
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
138
126
122
134
138
153
137
125
121
133
137
152
136
124
120
132
136
151
135
123
119
131
135
150
134
122
118
130
134
149
133
121
117
129
133
148
132
120
116
128
132
147
131
119
115
127
131
146
130
118
114
126
130
145
129
117
113
125
129
144
128
116
112
124
128
143
127
115
116
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
130
142
126
114
106
110
122
118
129
141
125
113
105
109
121
117
128
140
124
112
104
108
120
116
127
139
123
111
103
107
119
115
126
138
122
110
102
106
118
114
125
137
121
109
101
105
117
113
124
136
120
108
100
104
116
112
123
135
119
118
117
116
115
114
113
112
111
110
109
108
107
99
103
115
111
122
123
124
125
126
127
128
129
130
131
132
133
134
106
98
102
114
110
121
105
97
101
113
109
120
104
96
100
112
108
119
103
95
99
111
107
118
102
94
98
110
106
117
101
93
97
109
105
116
100
92
96
108
104
115
99
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
114
98
82
94
113
97
81
93
112
96
80
92
111
93
92
91
90
89
90
91
92
93
94
95
96
97
98
97
96
95
79
91
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
88
94
78
90
110
99
87
93
77
89
109
100
86
92
76
88
108
101
85
91
75
87
107
102
84
90
74
86
106
103
83
89
73
85
105
104
82
88
72
84
104
105
81
87
86
85
84
83
82
81
80
79
78
79
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
106
80
77
70
82
96
107
79
76
69
81
97
108
78
75
68
80
98
109
77
74
67
79
99
110
76
73
66
78
100
110
75
72
65
77
101
109
74
71
64
76
102
108
73
70
63
75
103
107
72
69
62
74
102
106
71
68
61
73
101
105
70
67
60
72
100
104
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
59
71
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
68
56
58
70
90
104
67
55
57
69
89
103
66
54
56
68
88
102
65
53
55
67
87
101
64
52
54
66
86
100
63
51
53
65
85
99
62
50
52
64
84
98
61
49
51
63
83
97
60
48
50
62
82
96
59
47
49
61
81
95
58
46
48
60
80
94
57
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
93
56
36
34
48
72
92
55
35
33
49
71
91
54
34
32
50
70
90
53
33
31
51
69
89
52
32
30
52
68
88
51
31
29
53
67
87
50
30
28
54
66
86
49
29
27
55
65
85
48
28
26
56
64
84
47
27
25
57
63
83
46
26
24
58
62
82
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
11
12
13
14
15
16
17
18
19
20
21
22
23
59
60
59
58
57
56
55
54
53
52
51
50
49
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
38
24
10
48
60
74
39
23
9
47
59
75
40
22
8
46
58
76
41
21
7
45
57
77
42
20
6
44
56
78
43
19
5
43
55
79
44
18
4
42
54
80
45
17
3
41
53
81
46
16
2
40
52
82
47
15
1
39
51
83
48
14
0
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
135
134
133
132
131
130
129
128
127
126
125
124
123
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
153
138
134
122
126
136
152
137
133
121
125
135
151
136
132
120
124
134
150
135
131
119
123
133
149
134
130
118
122
132
148
133
129
117
121
131
147
132
128
116
120
130
146
131
127
115
119
129
145
130
126
114
118
128
144
129
125
113
117
127
143
128
124
112
116
126
142
130
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
115
114
113
125
141
129
118
122
110
106
112
124
140
128
117
121
109
105
111
123
139
127
116
120
108
104
110
122
138
126
115
119
107
103
109
121
137
125
114
118
106
102
108
120
136
124
113
117
105
101
107
119
135
123
112
116
104
100
106
118
134
133
132
131
130
129
128
127
126
125
124
123
122
111
115
103
99
105
106
107
108
109
110
111
112
113
114
115
116
117
121
110
114
102
98
104
120
109
113
101
97
103
119
108
112
100
96
102
118
107
111
99
95
101
117
106
110
98
94
100
116
105
109
97
93
99
115
104
108
96
92
98
114
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
97
113
94
82
96
112
93
81
95
111
92
80
94
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
91
79
93
94
95
96
97
96
95
94
93
92
91
90
89
90
91
92
93
99
110
90
78
92
88
100
109
89
77
91
87
101
108
88
76
90
86
102
107
87
75
89
85
103
106
86
74
88
84
104
105
85
73
87
83
105
104
84
72
86
82
106
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
79
78
77
78
79
80
81
82
83
84
85
81
107
95
82
70
76
80
108
96
81
69
75
79
109
97
80
68
74
78
110
98
79
67
73
77
110
99
78
66
72
76
109
100
77
65
71
75
108
101
76
64
70
74
107
102
75
63
69
73
106
103
74
62
68
72
105
102
73
61
67
71
104
101
72
60
66
70
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
71
59
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
104
90
70
58
56
68
103
89
69
57
55
67
102
88
68
56
54
66
101
87
67
55
53
65
100
86
66
54
52
64
99
85
65
53
51
63
98
84
64
52
50
62
97
83
63
51
49
61
96
82
62
50
48
60
95
81
61
49
47
59
94
80
60
48
46
58
93
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
57
92
72
48
34
36
56
91
71
49
33
35
55
90
70
50
32
34
54
89
69
51
31
33
53
88
68
52
30
32
52
87
67
53
29
31
51
86
66
54
28
30
50
85
65
55
27
29
49
84
64
56
26
28
48
83
63
57
25
27
47
82
62
58
24
26
46
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
49
50
51
52
53
54
55
56
57
58
59
60
59
23
22
21
20
19
18
17
16
15
14
13
12
11
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
74
60
48
10
24
38
75
59
47
9
23
39
76
58
46
8
22
40
77
57
45
7
21
41
78
56
44
6
20
42
79
55
43
5
19
43
80
54
42
4
18
44
81
53
41
3
17
45
82
52
40
2
16
46
83
51
39
1
15
47
84
50
38
0
140
141
142
143
144
145
146
147
148
149
150
151
152
153
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
123
122
121
120
119
118
117
116
115
114
113
112
111
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
139
134
122
110
114
122
138
133
121
109
113
121
137
132
120
108
112
120
136
131
119
107
111
119
135
130
118
106
110
118
134
129
117
105
109
117
133
128
116
104
108
116
132
127
115
103
107
115
131
126
114
102
106
114
130
125
113
101
105
113
129
124
112
100
104
112
128
116
117
118
119
120
121
122
123
124
125
126
127
128
129
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
102
101
100
99
111
127
115
129
110
98
94
98
110
126
114
129
109
97
93
97
109
125
113
128
108
96
92
96
108
124
112
127
107
95
91
95
107
123
111
126
106
94
90
94
106
122
110
125
105
93
89
93
105
121
109
124
104
92
88
92
104
120
119
118
117
116
115
114
113
112
111
110
109
108
123
103
91
87
91
92
93
94
95
96
97
98
99
100
101
102
103
107
122
102
90
86
90
106
121
101
89
85
89
105
120
100
88
84
88
104
119
99
87
83
87
103
118
98
86
82
86
102
117
97
85
81
85
101
116
96
84
80
84
100
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
83
99
106
70
82
98
105
69
81
97
104
68
80
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
103
67
79
80
81
82
83
82
81
80
79
78
77
76
75
76
77
78
79
85
97
102
66
78
74
86
98
101
65
77
73
87
99
100
64
76
72
88
100
99
63
75
71
89
101
98
62
74
70
90
102
97
61
73
69
91
103
96
60
72
68
92
104
105
106
107
108
109
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
66
65
64
63
64
65
66
67
68
69
70
71
67
93
107
94
58
62
66
94
108
93
57
61
65
95
109
92
56
60
64
96
110
91
55
59
63
97
111
90
54
58
62
98
112
89
53
57
61
99
113
88
52
56
60
100
114
87
51
55
59
101
115
86
50
54
58
102
114
85
49
53
57
103
113
84
48
52
56
104
105
106
107
108
109
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
83
47
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
105
102
82
46
42
54
106
101
81
45
41
53
107
100
80
44
40
52
108
99
79
43
39
51
109
98
78
42
38
50
110
97
77
41
37
49
110
96
76
40
36
48
109
95
75
39
35
47
108
94
74
38
34
46
107
93
73
37
33
45
106
92
72
36
32
44
105
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
43
104
84
60
48
22
42
103
83
61
47
21
41
102
82
62
46
20
40
101
81
63
45
19
39
100
80
64
44
18
38
99
79
65
43
17
37
98
78
66
42
16
36
97
77
67
41
15
35
96
76
68
40
14
34
95
75
69
39
13
33
94
74
70
38
12
32
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
61
62
63
64
65
66
67
68
69
70
71
72
71
37
36
35
34
33
32
31
30
29
28
27
26
25
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
86
72
60
24
10
24
87
71
59
23
9
25
88
70
58
22
8
26
89
69
57
21
7
27
90
68
56
20
6
28
91
67
55
19
5
29
92
66
54
18
4
30
93
65
53
17
3
31
94
64
52
16
2
32
95
63
51
15
1
33
96
62
50
14
0
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
127
135
134
122
126
118
126
134
133
121
125
117
125
133
132
120
124
116
124
132
131
119
123
115
123
131
130
118
122
114
122
130
129
117
121
113
121
129
128
116
120
112
120
128
127
115
119
111
119
127
126
114
118
110
118
126
125
113
117
109
117
125
124
112
116
108
116
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
129
128
127
126
125
124
123
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
107
115
103
117
122
110
106
94
106
114
102
118
121
109
105
93
105
113
101
119
120
108
104
92
104
112
100
120
119
107
103
91
103
111
99
121
118
106
102
90
102
110
98
122
117
105
101
89
101
109
97
123
116
104
100
88
100
108
107
106
105
104
103
102
101
100
99
98
97
96
124
115
103
99
87
88
89
90
91
92
93
94
95
96
97
98
99
95
125
114
102
98
86
94
126
113
101
97
85
93
127
112
100
96
84
92
128
111
99
95
83
91
129
110
98
94
82
90
129
109
97
93
81
89
128
108
96
92
80
88
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
79
87
118
82
78
86
117
81
77
85
116
80
76
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
115
79
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
73
85
114
78
76
62
74
86
113
77
77
61
75
87
112
76
78
60
76
88
111
75
79
59
77
89
110
74
80
58
78
90
109
73
81
57
79
91
108
72
82
56
80
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
78
77
76
75
76
77
78
79
80
81
82
83
55
81
102
106
70
74
54
82
103
105
69
73
53
83
104
104
68
72
52
84
105
103
67
71
51
85
106
102
66
70
50
86
107
101
65
69
49
87
108
100
64
68
48
88
109
99
63
67
47
89
110
98
62
66
46
90
111
97
61
65
45
91
112
96
60
64
44
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
95
59
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
93
105
94
58
54
42
94
106
93
57
53
41
95
107
92
56
52
40
96
108
91
55
51
39
97
109
90
54
50
38
98
109
89
53
49
37
99
108
88
52
48
36
100
107
87
51
47
35
101
106
86
50
46
34
102
105
85
49
45
33
103
104
84
48
44
32
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
31
105
96
72
60
34
30
106
97
73
61
33
29
107
98
74
62
32
28
108
99
75
63
31
27
109
100
76
64
30
26
110
101
77
65
29
25
111
102
78
66
28
24
112
103
79
67
27
23
113
104
80
68
26
22
114
105
81
69
25
21
115
106
82
70
24
20
116
117
118
119
120
121
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
95
94
93
92
91
90
89
88
87
86
85
84
83
71
70
69
68
67
66
65
64
63
62
61
60
59
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
120
106
94
58
24
10
121
105
93
57
25
9
122
104
92
56
26
8
123
103
91
55
27
7
124
102
90
54
28
6
125
101
89
53
29
5
126
100
88
52
30
4
127
99
87
51
31
3
128
98
86
50
32
2
129
97
85
49
33
1
130
96
84
48
34
0
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
127
135
131
143
144
136
126
134
130
142
143
135
125
133
129
141
142
134
124
132
128
140
141
133
123
131
127
139
140
132
122
130
126
138
139
131
121
129
125
137
138
130
120
128
124
136
137
129
119
127
123
135
136
128
118
126
122
134
135
127
117
125
121
133
134
126
116
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
132
133
134
135
136
137
138
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
125
115
103
115
119
131
126
112
124
114
102
114
118
130
127
111
123
113
101
113
117
129
128
110
122
112
100
112
116
128
129
109
121
111
99
111
115
127
130
108
120
110
98
110
114
126
131
107
119
109
97
109
113
125
132
106
118
108
107
106
105
104
103
102
101
100
99
98
97
96
108
112
124
133
105
106
107
108
109
110
111
112
113
114
115
116
117
95
107
111
123
134
104
94
106
110
122
135
103
93
105
109
121
136
102
92
104
108
120
137
101
91
103
107
119
138
100
90
102
106
118
138
99
89
101
105
117
137
98
88
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
97
87
91
127
96
86
90
126
95
85
89
125
94
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
88
124
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
71
85
87
123
94
82
70
86
86
122
95
83
69
87
85
121
96
84
68
88
84
120
97
85
67
89
83
119
98
86
66
90
82
118
99
87
65
91
81
117
100
88
64
92
93
92
91
90
89
88
87
86
85
86
87
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
89
63
84
79
115
110
90
62
83
78
114
111
91
61
82
77
113
112
92
60
81
76
112
113
93
59
80
75
111
114
94
58
79
74
110
115
95
57
78
73
109
116
96
56
77
72
108
117
97
55
76
71
107
118
98
54
75
70
106
119
99
53
74
69
105
120
100
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
68
104
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
51
63
67
103
114
102
50
62
66
102
115
103
49
61
65
101
116
104
48
60
64
100
117
105
47
59
63
99
118
106
46
58
62
98
118
107
45
57
61
97
117
108
44
56
60
96
116
109
43
55
59
95
115
110
42
54
58
94
114
111
41
53
57
93
113
112
40
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
39
43
69
81
105
114
38
42
70
82
106
115
37
41
71
83
107
116
36
40
72
84
108
117
35
39
73
85
109
118
34
38
74
86
110
119
33
37
75
87
111
120
32
36
76
88
112
121
31
35
77
89
113
122
30
34
78
90
114
123
29
33
79
91
115
124
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
68
69
70
71
72
73
74
75
76
77
78
79
80
92
93
94
95
96
97
98
99
100
101
102
103
104
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
19
33
67
103
115
129
18
34
66
102
114
130
17
35
65
101
113
131
16
36
64
100
112
132
15
37
63
99
111
133
14
38
62
98
110
134
13
39
61
97
109
135
12
40
60
96
108
136
11
41
59
95
107
137
10
42
58
94
106
138
9
43
57
93
105
139
0
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
126
134
130
142
143
135
125
133
129
141
142
134
124
132
128
140
141
133
123
131
127
139
140
132
122
130
126
138
139
131
121
129
125
137
138
130
120
128
124
136
137
129
119
127
123
135
136
128
118
126
122
134
135
127
117
125
121
133
134
126
116
124
120
132
133
125
115
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
131
132
133
134
135
136
137
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
124
114
102
114
118
130
125
111
123
113
101
113
117
129
126
110
122
112
100
112
116
128
127
109
121
111
99
111
115
127
128
108
120
110
98
110
114
126
129
107
119
109
97
109
113
125
130
106
118
108
96
108
112
124
131
105
117
107
106
105
104
103
102
101
100
99
98
97
96
95
107
111
123
132
104
105
106
107
108
109
110
111
112
113
114
115
116
94
106
110
122
133
103
93
105
109
121
134
102
92
104
108
120
135
101
91
103
107
119
136
100
90
102
106
118
137
99
89
101
105
117
137
98
88
100
104
116
136
97
87
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
96
86
90
126
95
85
89
125
94
84
88
124
93
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
87
123
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
70
84
86
122
93
81
69
85
85
121
94
82
68
86
84
120
95
83
67
87
83
119
96
84
66
88
82
118
97
85
65
89
81
117
98
86
64
90
80
116
99
87
63
91
92
91
90
89
88
87
86
85
84
85
86
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
88
62
83
78
114
109
89
61
82
77
113
110
90
60
81
76
112
111
91
59
80
75
111
112
92
58
79
74
110
113
93
57
78
73
109
114
94
56
77
72
108
115
95
55
76
71
107
116
96
54
75
70
106
117
97
53
74
69
105
118
98
52
73
68
104
119
99
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
67
103
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
50
62
66
102
113
101
49
61
65
101
114
102
48
60
64
100
115
103
47
59
63
99
116
104
46
58
62
98
117
105
45
57
61
97
117
106
44
56
60
96
116
107
43
55
59
95
115
108
42
54
58
94
114
109
41
53
57
93
113
110
40
52
56
92
112
111
39
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
38
42
68
80
104
113
37
41
69
81
105
114
36
40
70
82
106
115
35
39
71
83
107
116
34
38
72
84
108
117
33
37
73
85
109
118
32
36
74
86
110
119
31
35
75
87
111
120
30
34
76
88
112
121
29
33
77
89
113
122
28
32
78
90
114
123
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
67
68
69
70
71
72
73
74
75
76
77
78
79
91
92
93
94
95
96
97
98
99
100
101
102
103
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
129
128
127
126
125
124
18
32
66
102
114
128
17
33
65
101
113
129
16
34
64
100
112
130
15
35
63
99
111
131
14
36
62
98
110
132
13
37
61
97
109
133
12
38
60
96
108
134
11
39
59
95
107
135
10
40
58
94
106
136
9
41
57
93
105
137
8
42
56
92
104
138
1
0
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
125
133
129
141
142
134
124
132
128
140
141
133
123
131
127
139
140
132
122
130
126
138
139
131
121
129
125
137
138
130
120
128
124
136
137
129
119
127
123
135
136
128
118
126
122
134
135
127
117
125
121
133
134
126
116
124
120
132
133
125
115
123
119
131
132
124
114
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
130
131
132
133
134
135
136
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
123
113
101
113
117
129
124
110
122
112
100
112
116
128
125
109
121
111
99
111
115
127
126
108
120
110
98
110
114
126
127
107
119
109
97
109
113
125
128
106
118
108
96
108
112
124
129
105
117
107
95
107
111
123
130
104
116
106
105
104
103
102
101
100
99
98
97
96
95
94
106
110
122
131
103
104
105
106
107
108
109
110
111
112
113
114
115
93
105
109
121
132
102
92
104
108
120
133
101
91
103
107
119
134
100
90
102
106
118
135
99
89
101
105
117
136
98
88
100
104
116
136
97
87
99
103
115
135
96
86
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
95
85
89
125
94
84
88
124
93
83
87
123
92
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
86
122
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
69
83
85
121
92
80
68
84
84
120
93
81
67
85
83
119
94
82
66
86
82
118
95
83
65
87
81
117
96
84
64
88
80
116
97
85
63
89
79
115
98
86
62
90
91
90
89
88
87
86
85
84
83
84
85
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
87
61
82
77
113
108
88
60
81
76
112
109
89
59
80
75
111
110
90
58
79
74
110
111
91
57
78
73
109
112
92
56
77
72
108
113
93
55
76
71
107
114
94
54
75
70
106
115
95
53
74
69
105
116
96
52
73
68
104
117
97
51
72
67
103
118
98
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
66
102
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
49
61
65
101
112
100
48
60
64
100
113
101
47
59
63
99
114
102
46
58
62
98
115
103
45
57
61
97
116
104
44
56
60
96
116
105
43
55
59
95
115
106
42
54
58
94
114
107
41
53
57
93
113
108
40
52
56
92
112
109
39
51
55
91
111
110
38
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
37
41
67
79
103
112
36
40
68
80
104
113
35
39
69
81
105
114
34
38
70
82
106
115
33
37
71
83
107
116
32
36
72
84
108
117
31
35
73
85
109
118
30
34
74
86
110
119
29
33
75
87
111
120
28
32
76
88
112
121
27
31
77
89
113
122
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
66
67
68
69
70
71
72
73
74
75
76
77
78
90
91
92
93
94
95
96
97
98
99
100
101
102
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
128
127
126
125
124
123
17
31
65
101
113
127
16
32
64
100
112
128
15
33
63
99
111
129
14
34
62
98
110
130
13
35
61
97
109
131
12
36
60
96
108
132
11
37
59
95
107
133
10
38
58
94
106
134
9
39
57
93
105
135
8
40
56
92
104
136
7
41
55
91
103
137
2
1
0
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
124
132
128
140
141
133
123
131
127
139
140
132
122
130
126
138
139
131
121
129
125
137
138
130
120
128
124
136
137
129
119
127
123
135
136
128
118
126
122
134
135
127
117
125
121
133
134
126
116
124
120
132
133
125
115
123
119
131
132
124
114
122
118
130
131
123
113
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
129
130
131
132
133
134
135
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
122
112
100
112
116
128
123
109
121
111
99
111
115
127
124
108
120
110
98
110
114
126
125
107
119
109
97
109
113
125
126
106
118
108
96
108
112
124
127
105
117
107
95
107
111
123
128
104
116
106
94
106
110
122
129
103
115
105
104
103
102
101
100
99
98
97
96
95
94
93
105
109
121
130
102
103
104
105
106
107
108
109
110
111
112
113
114
92
104
108
120
131
101
91
103
107
119
132
100
90
102
106
118
133
99
89
101
105
117
134
98
88
100
104
116
135
97
87
99
103
115
135
96
86
98
102
114
134
95
85
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
94
84
88
124
93
83
87
123
92
82
86
122
91
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
85
121
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
68
82
84
120
91
79
67
83
83
119
92
80
66
84
82
118
93
81
65
85
81
117
94
82
64
86
80
116
95
83
63
87
79
115
96
84
62
88
78
114
97
85
61
89
90
89
88
87
86
85
84
83
82
83
84
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
86
60
81
76
112
107
87
59
80
75
111
108
88
58
79
74
110
109
89
57
78
73
109
110
90
56
77
72
108
111
91
55
76
71
107
112
92
54
75
70
106
113
93
53
74
69
105
114
94
52
73
68
104
115
95
51
72
67
103
116
96
50
71
66
102
117
97
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
65
101
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
48
60
64
100
111
99
47
59
63
99
112
100
46
58
62
98
113
101
45
57
61
97
114
102
44
56
60
96
115
103
43
55
59
95
115
104
42
54
58
94
114
105
41
53
57
93
113
106
40
52
56
92
112
107
39
51
55
91
111
108
38
50
54
90
110
109
37
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
36
40
66
78
102
111
35
39
67
79
103
112
34
38
68
80
104
113
33
37
69
81
105
114
32
36
70
82
106
115
31
35
71
83
107
116
30
34
72
84
108
117
29
33
73
85
109
118
28
32
74
86
110
119
27
31
75
87
111
120
26
30
76
88
112
121
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
65
66
67
68
69
70
71
72
73
74
75
76
77
89
90
91
92
93
94
95
96
97
98
99
100
101
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
127
126
125
124
123
122
16
30
64
100
112
126
15
31
63
99
111
127
14
32
62
98
110
128
13
33
61
97
109
129
12
34
60
96
108
130
11
35
59
95
107
131
10
36
58
94
106
132
9
37
57
93
105
133
8
38
56
92
104
134
7
39
55
91
103
135
6
40
54
90
102
136
3
2
1
0
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
123
131
127
139
140
132
122
130
126
138
139
131
121
129
125
137
138
130
120
128
124
136
137
129
119
127
123
135
136
128
118
126
122
134
135
127
117
125
121
133
134
126
116
124
120
132
133
125
115
123
119
131
132
124
114
122
118
130
131
123
113
121
117
129
130
122
112
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
121
111
99
111
115
127
122
108
120
110
98
110
114
126
123
107
119
109
97
109
113
125
124
106
118
108
96
108
112
124
125
105
117
107
95
107
111
123
126
104
116
106
94
106
110
122
127
103
115
105
93
105
109
121
128
102
114
104
103
102
101
100
99
98
97
96
95
94
93
92
104
108
120
129
101
102
103
104
105
106
107
108
109
110
111
112
113
91
103
107
119
130
100
90
102
106
118
131
99
89
101
105
117
132
98
88
100
104
116
133
97
87
99
103
115
134
96
86
98
102
114
134
95
85
97
101
113
133
94
84
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
93
83
87
123
92
82
86
122
91
81
85
121
90
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
84
120
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
67
81
83
119
90
78
66
82
82
118
91
79
65
83
81
117
92
80
64
84
80
116
93
81
63
85
79
115
94
82
62
86
78
114
95
83
61
87
77
113
96
84
60
88
89
88
87
86
85
84
83
82
81
82
83
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
85
59
80
75
111
106
86
58
79
74
110
107
87
57
78
73
109
108
88
56
77
72
108
109
89
55
76
71
107
110
90
54
75
70
106
111
91
53
74
69
105
112
92
52
73
68
104
113
93
51
72
67
103
114
94
50
71
66
102
115
95
49
70
65
101
116
96
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
64
100
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
47
59
63
99
110
98
46
58
62
98
111
99
45
57
61
97
112
100
44
56
60
96
113
101
43
55
59
95
114
102
42
54
58
94
114
103
41
53
57
93
113
104
40
52
56
92
112
105
39
51
55
91
111
106
38
50
54
90
110
107
37
49
53
89
109
108
36
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
35
39
65
77
101
110
34
38
66
78
102
111
33
37
67
79
103
112
32
36
68
80
104
113
31
35
69
81
105
114
30
34
70
82
106
115
29
33
71
83
107
116
28
32
72
84
108
117
27
31
73
85
109
118
26
30
74
86
110
119
25
29
75
87
111
120
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
64
65
66
67
68
69
70
71
72
73
74
75
76
88
89
90
91
92
93
94
95
96
97
98
99
100
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
126
125
124
123
122
121
15
29
63
99
111
125
14
30
62
98
110
126
13
31
61
97
109
127
12
32
60
96
108
128
11
33
59
95
107
129
10
34
58
94
106
130
9
35
57
93
105
131
8
36
56
92
104
132
7
37
55
91
103
133
6
38
54
90
102
134
5
39
53
89
101
135
4
3
2
1
0
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
122
130
126
138
139
131
121
129
125
137
138
130
120
128
124
136
137
129
119
127
123
135
136
128
118
126
122
134
135
127
117
125
121
133
134
126
116
124
120
132
133
125
115
123
119
131
132
124
114
122
118
130
131
123
113
121
117
129
130
122
112
120
116
128
129
121
111
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
127
128
129
130
131
132
133
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
120
110
98
110
114
126
121
107
119
109
97
109
113
125
122
106
118
108
96
108
112
124
123
105
117
107
95
107
111
123
124
104
116
106
94
106
110
122
125
103
115
105
93
105
109
121
126
102
114
104
92
104
108
120
127
101
113
103
102
101
100
99
98
97
96
95
94
93
92
91
103
107
119
128
100
101
102
103
104
105
106
107
108
109
110
111
112
90
102
106
118
129
99
89
101
105
117
130
98
88
100
104
116
131
97
87
99
103
115
132
96
86
98
102
114
133
95
85
97
101
113
133
94
84
96
100
112
132
93
83
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
92
82
86
122
91
81
85
121
90
80
84
120
89
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
83
119
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
66
80
82
118
89
77
65
81
81
117
90
78
64
82
80
116
91
79
63
83
79
115
92
80
62
84
78
114
93
81
61
85
77
113
94
82
60
86
76
112
95
83
59
87
88
87
86
85
84
83
82
81
80
81
82
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
84
58
79
74
110
105
85
57
78
73
109
106
86
56
77
72
108
107
87
55
76
71
107
108
88
54
75
70
106
109
89
53
74
69
105
110
90
52
73
68
104
111
91
51
72
67
103
112
92
50
71
66
102
113
93
49
70
65
101
114
94
48
69
64
100
115
95
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
63
99
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
46
58
62
98
109
97
45
57
61
97
110
98
44
56
60
96
111
99
43
55
59
95
112
100
42
54
58
94
113
101
41
53
57
93
113
102
40
52
56
92
112
103
39
51
55
91
111
104
38
50
54
90
110
105
37
49
53
89
109
106
36
48
52
88
108
107
35
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
34
38
64
76
100
109
33
37
65
77
101
110
32
36
66
78
102
111
31
35
67
79
103
112
30
34
68
80
104
113
29
33
69
81
105
114
28
32
70
82
106
115
27
31
71
83
107
116
26
30
72
84
108
117
25
29
73
85
109
118
24
28
74
86
110
119
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
63
64
65
66
67
68
69
70
71
72
73
74
75
87
88
89
90
91
92
93
94
95
96
97
98
99
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
125
124
123
122
121
120
14
28
62
98
110
124
13
29
61
97
109
125
12
30
60
96
108
126
11
31
59
95
107
127
10
32
58
94
106
128
9
33
57
93
105
129
8
34
56
92
104
130
7
35
55
91
103
131
6
36
54
90
102
132
5
37
53
89
101
133
4
38
52
88
100
134
5
4
3
2
1
0
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
121
129
125
137
138
130
120
128
124
136
137
129
119
127
123
135
136
128
118
126
122
134
135
127
117
125
121
133
134
126
116
124
120
132
133
125
115
123
119
131
132
124
114
122
118
130
131
123
113
121
117
129
130
122
112
120
116
128
129
121
111
119
115
127
128
120
110
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
126
127
128
129
130
131
132
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
119
109
97
109
113
125
120
106
118
108
96
108
112
124
121
105
117
107
95
107
111
123
122
104
116
106
94
106
110
122
123
103
115
105
93
105
109
121
124
102
114
104
92
104
108
120
125
101
113
103
91
103
107
119
126
100
112
102
101
100
99
98
97
96
95
94
93
92
91
90
102
106
118
127
99
100
101
102
103
104
105
106
107
108
109
110
111
89
101
105
117
128
98
88
100
104
116
129
97
87
99
103
115
130
96
86
98
102
114
131
95
85
97
101
113
132
94
84
96
100
112
132
93
83
95
99
111
131
92
82
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
91
81
85
121
90
80
84
120
89
79
83
119
88
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
82
118
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
65
79
81
117
88
76
64
80
80
116
89
77
63
81
79
115
90
78
62
82
78
114
91
79
61
83
77
113
92
80
60
84
76
112
93
81
59
85
75
111
94
82
58
86
87
86
85
84
83
82
81
80
79
80
81
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
83
57
78
73
109
104
84
56
77
72
108
105
85
55
76
71
107
106
86
54
75
70
106
107
87
53
74
69
105
108
88
52
73
68
104
109
89
51
72
67
103
110
90
50
71
66
102
111
91
49
70
65
101
112
92
48
69
64
100
113
93
47
68
63
99
114
94
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
62
98
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
45
57
61
97
108
96
44
56
60
96
109
97
43
55
59
95
110
98
42
54
58
94
111
99
41
53
57
93
112
100
40
52
56
92
112
101
39
51
55
91
111
102
38
50
54
90
110
103
37
49
53
89
109
104
36
48
52
88
108
105
35
47
51
87
107
106
34
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
33
37
63
75
99
108
32
36
64
76
100
109
31
35
65
77
101
110
30
34
66
78
102
111
29
33
67
79
103
112
28
32
68
80
104
113
27
31
69
81
105
114
26
30
70
82
106
115
25
29
71
83
107
116
24
28
72
84
108
117
23
27
73
85
109
118
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
62
63
64
65
66
67
68
69
70
71
72
73
74
86
87
88
89
90
91
92
93
94
95
96
97
98
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
13
27
61
97
109
123
12
28
60
96
108
124
11
29
59
95
107
125
10
30
58
94
106
126
9
31
57
93
105
127
8
32
56
92
104
128
7
33
55
91
103
129
6
34
54
90
102
130
5
35
53
89
101
131
4
36
52
88
100
132
3
37
51
87
99
133
6
5
4
3
2
1
0
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
120
128
124
136
137
129
119
127
123
135
136
128
118
126
122
134
135
127
117
125
121
133
134
126
116
124
120
132
133
125
115
123
119
131
132
124
114
122
118
130
131
123
113
121
117
129
130
122
112
120
116
128
129
121
111
119
115
127
128
120
110
118
114
126
127
119
109
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
125
126
127
128
129
130
131
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
118
108
96
108
112
124
119
105
117
107
95
107
111
123
120
104
116
106
94
106
110
122
121
103
115
105
93
105
109
121
122
102
114
104
92
104
108
120
123
101
113
103
91
103
107
119
124
100
112
102
90
102
106
118
125
99
111
101
100
99
98
97
96
95
94
93
92
91
90
89
101
105
117
126
98
99
100
101
102
103
104
105
106
107
108
109
110
88
100
104
116
127
97
87
99
103
115
128
96
86
98
102
114
129
95
85
97
101
113
130
94
84
96
100
112
131
93
83
95
99
111
131
92
82
94
98
110
130
91
81
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
90
80
84
120
89
79
83
119
88
78
82
118
87
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
81
117
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
64
78
80
116
87
75
63
79
79
115
88
76
62
80
78
114
89
77
61
81
77
113
90
78
60
82
76
112
91
79
59
83
75
111
92
80
58
84
74
110
93
81
57
85
86
85
84
83
82
81
80
79
78
79
80
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
82
56
77
72
108
103
83
55
76
71
107
104
84
54
75
70
106
105
85
53
74
69
105
106
86
52
73
68
104
107
87
51
72
67
103
108
88
50
71
66
102
109
89
49
70
65
101
110
90
48
69
64
100
111
91
47
68
63
99
112
92
46
67
62
98
113
93
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
61
97
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
44
56
60
96
107
95
43
55
59
95
108
96
42
54
58
94
109
97
41
53
57
93
110
98
40
52
56
92
111
99
39
51
55
91
111
100
38
50
54
90
110
101
37
49
53
89
109
102
36
48
52
88
108
103
35
47
51
87
107
104
34
46
50
86
106
105
33
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
32
36
62
74
98
107
31
35
63
75
99
108
30
34
64
76
100
109
29
33
65
77
101
110
28
32
66
78
102
111
27
31
67
79
103
112
26
30
68
80
104
113
25
29
69
81
105
114
24
28
70
82
106
115
23
27
71
83
107
116
22
26
72
84
108
117
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
61
62
63
64
65
66
67
68
69
70
71
72
73
85
86
87
88
89
90
91
92
93
94
95
96
97
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
123
122
121
120
119
118
12
26
60
96
108
122
11
27
59
95
107
123
10
28
58
94
106
124
9
29
57
93
105
125
8
30
56
92
104
126
7
31
55
91
103
127
6
32
54
90
102
128
5
33
53
89
101
129
4
34
52
88
100
130
3
35
51
87
99
131
2
36
50
86
98
132
7
6
5
4
3
2
1
0
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
119
127
123
135
136
128
118
126
122
134
135
127
117
125
121
133
134
126
116
124
120
132
133
125
115
123
119
131
132
124
114
122
118
130
131
123
113
121
117
129
130
122
112
120
116
128
129
121
111
119
115
127
128
120
110
118
114
126
127
119
109
117
113
125
126
118
108
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
117
107
95
107
111
123
118
104
116
106
94
106
110
122
119
103
115
105
93
105
109
121
120
102
114
104
92
104
108
120
121
101
113
103
91
103
107
119
122
100
112
102
90
102
106
118
123
99
111
101
89
101
105
117
124
98
110
100
99
98
97
96
95
94
93
92
91
90
89
88
100
104
116
125
97
98
99
100
101
102
103
104
105
106
107
108
109
87
99
103
115
126
96
86
98
102
114
127
95
85
97
101
113
128
94
84
96
100
112
129
93
83
95
99
111
130
92
82
94
98
110
130
91
81
93
97
109
129
90
80
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
89
79
83
119
88
78
82
118
87
77
81
117
86
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
80
116
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
63
77
79
115
86
74
62
78
78
114
87
75
61
79
77
113
88
76
60
80
76
112
89
77
59
81
75
111
90
78
58
82
74
110
91
79
57
83
73
109
92
80
56
84
85
84
83
82
81
80
79
78
77
78
79
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
81
55
76
71
107
102
82
54
75
70
106
103
83
53
74
69
105
104
84
52
73
68
104
105
85
51
72
67
103
106
86
50
71
66
102
107
87
49
70
65
101
108
88
48
69
64
100
109
89
47
68
63
99
110
90
46
67
62
98
111
91
45
66
61
97
112
92
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
60
96
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
43
55
59
95
106
94
42
54
58
94
107
95
41
53
57
93
108
96
40
52
56
92
109
97
39
51
55
91
110
98
38
50
54
90
110
99
37
49
53
89
109
100
36
48
52
88
108
101
35
47
51
87
107
102
34
46
50
86
106
103
33
45
49
85
105
104
32
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
31
35
61
73
97
106
30
34
62
74
98
107
29
33
63
75
99
108
28
32
64
76
100
109
27
31
65
77
101
110
26
30
66
78
102
111
25
29
67
79
103
112
24
28
68
80
104
113
23
27
69
81
105
114
22
26
70
82
106
115
21
25
71
83
107
116
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
60
61
62
63
64
65
66
67
68
69
70
71
72
84
85
86
87
88
89
90
91
92
93
94
95
96
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
122
121
120
119
118
117
11
25
59
95
107
121
10
26
58
94
106
122
9
27
57
93
105
123
8
28
56
92
104
124
7
29
55
91
103
125
6
30
54
90
102
126
5
31
53
89
101
127
4
32
52
88
100
128
3
33
51
87
99
129
2
34
50
86
98
130
1
35
49
85
97
131
8
7
6
5
4
3
2
1
0
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
112
113
114
115
116
117
118
119
120
121
122
123
124
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
154
153
152
151
150
149
148
147
146
145
144
143
142
141
125
115
111
123
135
140
124
114
110
122
134
139
123
113
109
121
133
138
122
112
108
120
132
137
121
111
107
119
131
136
120
110
106
118
130
135
119
109
105
117
129
134
118
108
104
116
128
133
117
107
103
115
127
132
116
106
102
114
126
131
115
105
101
113
125
130
114
102
103
104
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
129
113
101
95
99
111
130
116
128
112
100
94
98
110
130
115
127
111
99
93
97
109
129
114
126
110
98
92
96
108
128
113
125
109
97
91
95
107
127
112
124
108
96
90
94
106
126
111
123
107
95
89
93
105
125
110
122
106
105
104
103
102
101
100
99
98
97
96
95
94
88
92
104
124
109
110
111
112
113
114
115
116
117
118
119
120
121
93
87
91
103
123
108
92
86
90
102
122
107
91
85
89
101
121
106
90
84
88
100
120
105
89
83
87
99
119
104
88
82
86
98
118
103
87
81
85
97
117
102
86
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
101
85
71
107
100
84
70
106
99
83
69
105
98
80
79
78
77
76
77
78
79
80
81
82
83
84
85
84
83
82
68
104
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
75
81
67
103
98
86
74
80
66
102
99
87
73
79
65
101
100
88
72
78
64
100
101
89
71
77
63
99
102
90
70
76
62
98
103
91
69
75
61
97
104
92
68
74
73
72
71
70
69
68
67
66
65
66
67
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
93
67
64
59
95
109
94
66
63
58
94
110
95
65
62
57
93
111
96
64
61
56
92
112
97
63
60
55
91
113
98
62
59
54
90
114
99
61
58
53
89
115
100
60
57
52
88
116
101
59
56
51
87
115
102
58
55
50
86
114
103
57
54
49
85
113
104
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
48
84
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
110
109
108
107
106
105
55
43
47
83
103
106
54
42
46
82
102
107
53
41
45
81
101
108
52
40
44
80
100
109
51
39
43
79
99
110
50
38
42
78
98
110
49
37
41
77
97
109
48
36
40
76
96
108
47
35
39
75
95
107
46
34
38
74
94
106
45
33
37
73
93
105
44
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
104
43
23
47
61
83
103
42
22
46
62
82
102
41
21
45
63
81
101
40
20
44
64
80
100
39
19
43
65
79
99
38
18
42
66
78
98
37
17
41
67
77
97
36
16
40
68
76
96
35
15
39
69
75
95
34
14
38
70
74
94
33
13
37
71
73
93
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
24
25
26
27
28
29
30
31
32
33
34
35
36
72
71
70
69
68
67
66
65
64
63
62
61
60
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
25
11
23
59
71
85
26
10
22
58
70
86
27
9
21
57
69
87
28
8
20
56
68
88
29
7
19
55
67
89
30
6
18
54
66
90
31
5
17
53
65
91
32
4
16
52
64
92
33
3
15
51
63
93
34
2
14
50
62
94
35
1
13
49
61
95
44
43
42
41
40
39
38
37
36
0
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
113
114
115
116
117
118
119
120
121
122
123
124
125
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
155
154
153
152
151
150
149
148
147
146
145
144
143
142
126
116
112
124
136
141
125
115
111
123
135
140
124
114
110
122
134
139
123
113
109
121
133
138
122
112
108
120
132
137
121
111
107
119
131
136
120
110
106
118
130
135
119
109
105
117
129
134
118
108
104
116
128
133
117
107
103
115
127
132
116
106
102
114
126
131
115
103
104
105
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
131
130
129
128
127
126
125
124
123
122
121
120
119
118
130
114
102
96
100
112
130
117
129
113
101
95
99
111
129
116
128
112
100
94
98
110
128
115
127
111
99
93
97
109
127
114
126
110
98
92
96
108
126
113
125
109
97
91
95
107
125
112
124
108
96
90
94
106
124
111
123
107
106
105
104
103
102
101
100
99
98
97
96
95
89
93
105
123
110
111
112
113
114
115
116
117
118
119
120
121
122
94
88
92
104
122
109
93
87
91
103
121
108
92
86
90
102
120
107
91
85
89
101
119
106
90
84
88
100
118
105
89
83
87
99
117
104
88
82
86
98
116
103
87
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
108
109
110
111
112
113
114
115
102
86
72
106
101
85
71
105
100
84
70
104
99
81
80
79
78
77
78
79
80
81
82
83
84
85
86
85
84
83
69
103
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
76
82
68
102
99
87
75
81
67
101
100
88
74
80
66
100
101
89
73
79
65
99
102
90
72
78
64
98
103
91
71
77
63
97
104
92
70
76
62
96
105
93
69
75
74
73
72
71
70
69
68
67
66
67
68
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
94
68
65
60
94
108
95
67
64
59
93
109
96
66
63
58
92
110
97
65
62
57
91
111
98
64
61
56
90
112
99
63
60
55
89
113
100
62
59
54
88
114
101
61
58
53
87
115
102
60
57
52
86
114
103
59
56
51
85
113
104
58
55
50
84
112
105
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
49
83
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
110
109
108
107
106
56
44
48
82
102
107
55
43
47
81
101
108
54
42
46
80
100
109
53
41
45
79
99
110
52
40
44
78
98
110
51
39
43
77
97
109
50
38
42
76
96
108
49
37
41
75
95
107
48
36
40
74
94
106
47
35
39
73
93
105
46
34
38
72
92
104
45
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
103
44
24
46
60
82
102
43
23
45
61
81
101
42
22
44
62
80
100
41
21
43
63
79
99
40
20
42
64
78
98
39
19
41
65
77
97
38
18
40
66
76
96
37
17
39
67
75
95
36
16
38
68
74
94
35
15
37
69
73
93
34
14
36
70
72
92
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
23
24
25
26
27
28
29
30
31
32
33
34
35
71
70
69
68
67
66
65
64
63
62
61
60
59
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
26
12
22
58
70
84
27
11
21
57
69
85
28
10
20
56
68
86
29
9
19
55
67
87
30
8
18
54
66
88
31
7
17
53
65
89
32
6
16
52
64
90
33
5
15
51
63
91
34
4
14
50
62
92
35
3
13
49
61
93
36
2
12
48
60
94
45
44
43
42
41
40
39
38
37
1
0
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
114
115
116
117
118
119
120
121
122
123
124
125
126
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
156
155
154
153
152
151
150
149
148
147
146
145
144
143
127
117
113
125
137
142
126
116
112
124
136
141
125
115
111
123
135
140
124
114
110
122
134
139
123
113
109
121
133
138
122
112
108
120
132
137
121
111
107
119
131
136
120
110
106
118
130
135
119
109
105
117
129
134
118
108
104
116
128
133
117
107
103
115
127
132
116
104
105
106
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
130
129
128
127
126
125
124
123
122
121
120
119
131
115
103
97
101
113
129
118
130
114
102
96
100
112
128
117
129
113
101
95
99
111
127
116
128
112
100
94
98
110
126
115
127
111
99
93
97
109
125
114
126
110
98
92
96
108
124
113
125
109
97
91
95
107
123
112
124
108
107
106
105
104
103
102
101
100
99
98
97
96
90
94
106
122
111
112
113
114
115
116
117
118
119
120
121
122
123
95
89
93
105
121
110
94
88
92
104
120
109
93
87
91
103
119
108
92
86
90
102
118
107
91
85
89
101
117
106
90
84
88
100
116
105
89
83
87
99
115
104
88
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
107
108
109
110
111
112
113
114
103
87
73
105
102
86
72
104
101
85
71
103
100
82
81
80
79
78
79
80
81
82
83
84
85
86
87
86
85
84
70
102
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
77
83
69
101
100
88
76
82
68
100
101
89
75
81
67
99
102
90
74
80
66
98
103
91
73
79
65
97
104
92
72
78
64
96
105
93
71
77
63
95
106
94
70
76
75
74
73
72
71
70
69
68
67
68
69
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
95
69
66
61
93
107
96
68
65
60
92
108
97
67
64
59
91
109
98
66
63
58
90
110
99
65
62
57
89
111
100
64
61
56
88
112
101
63
60
55
87
113
102
62
59
54
86
114
103
61
58
53
85
113
104
60
57
52
84
112
105
59
56
51
83
111
106
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
50
82
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
110
109
108
107
57
45
49
81
101
108
56
44
48
80
100
109
55
43
47
79
99
110
54
42
46
78
98
110
53
41
45
77
97
109
52
40
44
76
96
108
51
39
43
75
95
107
50
38
42
74
94
106
49
37
41
73
93
105
48
36
40
72
92
104
47
35
39
71
91
103
46
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
102
45
25
45
59
81
101
44
24
44
60
80
100
43
23
43
61
79
99
42
22
42
62
78
98
41
21
41
63
77
97
40
20
40
64
76
96
39
19
39
65
75
95
38
18
38
66
74
94
37
17
37
67
73
93
36
16
36
68
72
92
35
15
35
69
71
91
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
22
23
24
25
26
27
28
29
30
31
32
33
34
70
69
68
67
66
65
64
63
62
61
60
59
58
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
27
13
21
57
69
83
28
12
20
56
68
84
29
11
19
55
67
85
30
10
18
54
66
86
31
9
17
53
65
87
32
8
16
52
64
88
33
7
15
51
63
89
34
6
14
50
62
90
35
5
13
49
61
91
36
4
12
48
60
92
37
3
11
47
59
93
46
45
44
43
42
41
40
39
38
2
1
0
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
115
116
117
118
119
120
121
122
123
124
125
126
127
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
157
156
155
154
153
152
151
150
149
148
147
146
145
144
128
118
114
126
138
143
127
117
113
125
137
142
126
116
112
124
136
141
125
115
111
123
135
140
124
114
110
122
134
139
123
113
109
121
133
138
122
112
108
120
132
137
121
111
107
119
131
136
120
110
106
118
130
135
119
109
105
117
129
134
118
108
104
116
128
133
117
105
106
107
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
130
130
129
128
127
126
125
124
123
122
121
120
132
116
104
98
102
114
128
119
131
115
103
97
101
113
127
118
130
114
102
96
100
112
126
117
129
113
101
95
99
111
125
116
128
112
100
94
98
110
124
115
127
111
99
93
97
109
123
114
126
110
98
92
96
108
122
113
125
109
108
107
106
105
104
103
102
101
100
99
98
97
91
95
107
121
112
113
114
115
116
117
118
119
120
121
122
123
124
96
90
94
106
120
111
95
89
93
105
119
110
94
88
92
104
118
109
93
87
91
103
117
108
92
86
90
102
116
107
91
85
89
101
115
106
90
84
88
100
114
105
89
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
106
107
108
109
110
111
112
113
104
88
74
104
103
87
73
103
102
86
72
102
101
83
82
81
80
79
80
81
82
83
84
85
86
87
88
87
86
85
71
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
78
84
70
100
101
89
77
83
69
99
102
90
76
82
68
98
103
91
75
81
67
97
104
92
74
80
66
96
105
93
73
79
65
95
106
94
72
78
64
94
107
95
71
77
76
75
74
73
72
71
70
69
68
69
70
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
96
70
67
62
92
106
97
69
66
61
91
107
98
68
65
60
90
108
99
67
64
59
89
109
100
66
63
58
88
110
101
65
62
57
87
111
102
64
61
56
86
112
103
63
60
55
85
113
104
62
59
54
84
112
105
61
58
53
83
111
106
60
57
52
82
110
107
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
51
81
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
110
109
108
58
46
50
80
100
109
57
45
49
79
99
110
56
44
48
78
98
110
55
43
47
77
97
109
54
42
46
76
96
108
53
41
45
75
95
107
52
40
44
74
94
106
51
39
43
73
93
105
50
38
42
72
92
104
49
37
41
71
91
103
48
36
40
70
90
102
47
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
101
46
26
44
58
80
100
45
25
43
59
79
99
44
24
42
60
78
98
43
23
41
61
77
97
42
22
40
62
76
96
41
21
39
63
75
95
40
20
38
64
74
94
39
19
37
65
73
93
38
18
36
66
72
92
37
17
35
67
71
91
36
16
34
68
70
90
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
21
22
23
24
25
26
27
28
29
30
31
32
33
69
68
67
66
65
64
63
62
61
60
59
58
57
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
28
14
20
56
68
82
29
13
19
55
67
83
30
12
18
54
66
84
31
11
17
53
65
85
32
10
16
52
64
86
33
9
15
51
63
87
34
8
14
50
62
88
35
7
13
49
61
89
36
6
12
48
60
90
37
5
11
47
59
91
38
4
10
46
58
92
47
46
45
44
43
42
41
40
39
3
2
1
0
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
116
117
118
119
120
121
122
123
124
125
126
127
128
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
158
157
156
155
154
153
152
151
150
149
148
147
146
145
129
119
115
127
139
144
128
118
114
126
138
143
127
117
113
125
137
142
126
116
112
124
136
141
125
115
111
123
135
140
124
114
110
122
134
139
123
113
109
121
133
138
122
112
108
120
132
137
121
111
107
119
131
136
120
110
106
118
130
135
119
109
105
117
129
134
118
106
107
108
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
129
130
130
129
128
127
126
125
124
123
122
121
133
117
105
99
103
115
127
120
132
116
104
98
102
114
126
119
131
115
103
97
101
113
125
118
130
114
102
96
100
112
124
117
129
113
101
95
99
111
123
116
128
112
100
94
98
110
122
115
127
111
99
93
97
109
121
114
126
110
109
108
107
106
105
104
103
102
101
100
99
98
92
96
108
120
113
114
115
116
117
118
119
120
121
122
123
124
125
97
91
95
107
119
112
96
90
94
106
118
111
95
89
93
105
117
110
94
88
92
104
116
109
93
87
91
103
115
108
92
86
90
102
114
107
91
85
89
101
113
106
90
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
105
106
107
108
109
110
111
112
105
89
75
103
104
88
74
102
103
87
73
101
102
84
83
82
81
80
81
82
83
84
85
86
87
88
89
88
87
86
72
100
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
79
85
71
99
102
90
78
84
70
98
103
91
77
83
69
97
104
92
76
82
68
96
105
93
75
81
67
95
106
94
74
80
66
94
107
95
73
79
65
93
108
96
72
78
77
76
75
74
73
72
71
70
69
70
71
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
97
71
68
63
91
105
98
70
67
62
90
106
99
69
66
61
89
107
100
68
65
60
88
108
101
67
64
59
87
109
102
66
63
58
86
110
103
65
62
57
85
111
104
64
61
56
84
112
105
63
60
55
83
111
106
62
59
54
82
110
107
61
58
53
81
109
108
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
52
80
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
110
109
59
47
51
79
99
110
58
46
50
78
98
110
57
45
49
77
97
109
56
44
48
76
96
108
55
43
47
75
95
107
54
42
46
74
94
106
53
41
45
73
93
105
52
40
44
72
92
104
51
39
43
71
91
103
50
38
42
70
90
102
49
37
41
69
89
101
48
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
100
47
27
43
57
79
99
46
26
42
58
78
98
45
25
41
59
77
97
44
24
40
60
76
96
43
23
39
61
75
95
42
22
38
62
74
94
41
21
37
63
73
93
40
20
36
64
72
92
39
19
35
65
71
91
38
18
34
66
70
90
37
17
33
67
69
89
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
20
21
22
23
24
25
26
27
28
29
30
31
32
68
67
66
65
64
63
62
61
60
59
58
57
56
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
29
15
19
55
67
81
30
14
18
54
66
82
31
13
17
53
65
83
32
12
16
52
64
84
33
11
15
51
63
85
34
10
14
50
62
86
35
9
13
49
61
87
36
8
12
48
60
88
37
7
11
47
59
89
38
6
10
46
58
90
39
5
9
45
57
91
48
47
46
45
44
43
42
41
40
4
3
2
1
0
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
117
118
119
120
121
122
123
124
125
126
127
128
129
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
159
158
157
156
155
154
153
152
151
150
149
148
147
146
130
120
116
128
140
145
129
119
115
127
139
144
128
118
114
126
138
143
127
117
113
125
137
142
126
116
112
124
136
141
125
115
111
123
135
140
124
114
110
122
134
139
123
113
109
121
133
138
122
112
108
120
132
137
121
111
107
119
131
136
120
110
106
118
130
135
119
107
108
109
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
128
129
130
130
129
128
127
126
125
124
123
122
134
118
106
100
104
116
126
121
133
117
105
99
103
115
125
120
132
116
104
98
102
114
124
119
131
115
103
97
101
113
123
118
130
114
102
96
100
112
122
117
129
113
101
95
99
111
121
116
128
112
100
94
98
110
120
115
127
111
110
109
108
107
106
105
104
103
102
101
100
99
93
97
109
119
114
115
116
117
118
119
120
121
122
123
124
125
126
98
92
96
108
118
113
97
91
95
107
117
112
96
90
94
106
116
111
95
89
93
105
115
110
94
88
92
104
114
109
93
87
91
103
113
108
92
86
90
102
112
107
91
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
104
105
106
107
108
109
110
111
106
90
76
102
105
89
75
101
104
88
74
100
103
85
84
83
82
81
82
83
84
85
86
87
88
89
90
89
88
87
73
99
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
80
86
72
98
103
91
79
85
71
97
104
92
78
84
70
96
105
93
77
83
69
95
106
94
76
82
68
94
107
95
75
81
67
93
108
96
74
80
66
92
109
97
73
79
78
77
76
75
74
73
72
71
70
71
72
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
98
72
69
64
90
104
99
71
68
63
89
105
100
70
67
62
88
106
101
69
66
61
87
107
102
68
65
60
86
108
103
67
64
59
85
109
104
66
63
58
84
110
105
65
62
57
83
111
106
64
61
56
82
110
107
63
60
55
81
109
108
62
59
54
80
108
109
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
53
79
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
110
60
48
52
78
98
110
59
47
51
77
97
109
58
46
50
76
96
108
57
45
49
75
95
107
56
44
48
74
94
106
55
43
47
73
93
105
54
42
46
72
92
104
53
41
45
71
91
103
52
40
44
70
90
102
51
39
43
69
89
101
50
38
42
68
88
100
49
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
99
48
28
42
56
78
98
47
27
41
57
77
97
46
26
40
58
76
96
45
25
39
59
75
95
44
24
38
60
74
94
43
23
37
61
73
93
42
22
36
62
72
92
41
21
35
63
71
91
40
20
34
64
70
90
39
19
33
65
69
89
38
18
32
66
68
88
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
19
20
21
22
23
24
25
26
27
28
29
30
31
67
66
65
64
63
62
61
60
59
58
57
56
55
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
30
16
18
54
66
80
31
15
17
53
65
81
32
14
16
52
64
82
33
13
15
51
63
83
34
12
14
50
62
84
35
11
13
49
61
85
36
10
12
48
60
86
37
9
11
47
59
87
38
8
10
46
58
88
39
7
9
45
57
89
40
6
8
44
56
90
49
48
47
46
45
44
43
42
41
5
4
3
2
1
0
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
118
119
120
121
122
123
124
125
126
127
128
129
130
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
160
159
158
157
156
155
154
153
152
151
150
149
148
147
131
121
117
129
141
146
130
120
116
128
140
145
129
119
115
127
139
144
128
118
114
126
138
143
127
117
113
125
137
142
126
116
112
124
136
141
125
115
111
123
135
140
124
114
110
122
134
139
123
113
109
121
133
138
122
112
108
120
132
137
121
111
107
119
131
136
120
108
109
110
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
127
128
129
130
130
129
128
127
126
125
124
123
135
119
107
101
105
117
125
122
134
118
106
100
104
116
124
121
133
117
105
99
103
115
123
120
132
116
104
98
102
114
122
119
131
115
103
97
101
113
121
118
130
114
102
96
100
112
120
117
129
113
101
95
99
111
119
116
128
112
111
110
109
108
107
106
105
104
103
102
101
100
94
98
110
118
115
116
117
118
119
120
121
122
123
124
125
126
127
99
93
97
109
117
114
98
92
96
108
116
113
97
91
95
107
115
112
96
90
94
106
114
111
95
89
93
105
113
110
94
88
92
104
112
109
93
87
91
103
111
108
92
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
107
91
77
101
106
90
76
100
105
89
75
99
104
86
85
84
83
82
83
84
85
86
87
88
89
90
91
90
89
88
74
98
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
81
87
73
97
104
92
80
86
72
96
105
93
79
85
71
95
106
94
78
84
70
94
107
95
77
83
69
93
108
96
76
82
68
92
109
97
75
81
67
91
110
98
74
80
79
78
77
76
75
74
73
72
71
72
73
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
99
73
70
65
89
103
100
72
69
64
88
104
101
71
68
63
87
105
102
70
67
62
86
106
103
69
66
61
85
107
104
68
65
60
84
108
105
67
64
59
83
109
106
66
63
58
82
110
107
65
62
57
81
109
108
64
61
56
80
108
109
63
60
55
79
107
110
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
54
78
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
61
49
53
77
97
109
60
48
52
76
96
108
59
47
51
75
95
107
58
46
50
74
94
106
57
45
49
73
93
105
56
44
48
72
92
104
55
43
47
71
91
103
54
42
46
70
90
102
53
41
45
69
89
101
52
40
44
68
88
100
51
39
43
67
87
99
50
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
98
49
29
41
55
77
97
48
28
40
56
76
96
47
27
39
57
75
95
46
26
38
58
74
94
45
25
37
59
73
93
44
24
36
60
72
92
43
23
35
61
71
91
42
22
34
62
70
90
41
21
33
63
69
89
40
20
32
64
68
88
39
19
31
65
67
87
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
18
19
20
21
22
23
24
25
26
27
28
29
30
66
65
64
63
62
61
60
59
58
57
56
55
54
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
31
17
17
53
65
79
32
16
16
52
64
80
33
15
15
51
63
81
34
14
14
50
62
82
35
13
13
49
61
83
36
12
12
48
60
84
37
11
11
47
59
85
38
10
10
46
58
86
39
9
9
45
57
87
40
8
8
44
56
88
41
7
7
43
55
89
50
49
48
47
46
45
44
43
42
6
5
4
3
2
1
0
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
119
120
121
122
123
124
125
126
127
128
129
130
131
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
161
160
159
158
157
156
155
154
153
152
151
150
149
148
132
122
118
130
142
147
131
121
117
129
141
146
130
120
116
128
140
145
129
119
115
127
139
144
128
118
114
126
138
143
127
117
113
125
137
142
126
116
112
124
136
141
125
115
111
123
135
140
124
114
110
122
134
139
123
113
109
121
133
138
122
112
108
120
132
137
121
109
110
111
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
126
127
128
129
130
130
129
128
127
126
125
124
136
120
108
102
106
118
124
123
135
119
107
101
105
117
123
122
134
118
106
100
104
116
122
121
133
117
105
99
103
115
121
120
132
116
104
98
102
114
120
119
131
115
103
97
101
113
119
118
130
114
102
96
100
112
118
117
129
113
112
111
110
109
108
107
106
105
104
103
102
101
95
99
111
117
116
117
118
119
120
121
122
123
124
125
126
127
128
100
94
98
110
116
115
99
93
97
109
115
114
98
92
96
108
114
113
97
91
95
107
113
112
96
90
94
106
112
111
95
89
93
105
111
110
94
88
92
104
110
109
93
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
108
92
78
100
107
91
77
99
106
90
76
98
105
87
86
85
84
83
84
85
86
87
88
89
90
91
92
91
90
89
75
97
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
82
88
74
96
105
93
81
87
73
95
106
94
80
86
72
94
107
95
79
85
71
93
108
96
78
84
70
92
109
97
77
83
69
91
110
98
76
82
68
90
110
99
75
81
80
79
78
77
76
75
74
73
72
73
74
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
100
74
71
66
88
102
101
73
70
65
87
103
102
72
69
64
86
104
103
71
68
63
85
105
104
70
67
62
84
106
105
69
66
61
83
107
106
68
65
60
82
108
107
67
64
59
81
109
108
66
63
58
80
108
109
65
62
57
79
107
110
64
61
56
78
106
110
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
55
77
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
62
50
54
76
96
108
61
49
53
75
95
107
60
48
52
74
94
106
59
47
51
73
93
105
58
46
50
72
92
104
57
45
49
71
91
103
56
44
48
70
90
102
55
43
47
69
89
101
54
42
46
68
88
100
53
41
45
67
87
99
52
40
44
66
86
98
51
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
97
50
30
40
54
76
96
49
29
39
55
75
95
48
28
38
56
74
94
47
27
37
57
73
93
46
26
36
58
72
92
45
25
35
59
71
91
44
24
34
60
70
90
43
23
33
61
69
89
42
22
32
62
68
88
41
21
31
63
67
87
40
20
30
64
66
86
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
17
18
19
20
21
22
23
24
25
26
27
28
29
65
64
63
62
61
60
59
58
57
56
55
54
53
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
32
18
16
52
64
78
33
17
15
51
63
79
34
16
14
50
62
80
35
15
13
49
61
81
36
14
12
48
60
82
37
13
11
47
59
83
38
12
10
46
58
84
39
11
9
45
57
85
40
10
8
44
56
86
41
9
7
43
55
87
42
8
6
42
54
88
51
50
49
48
47
46
45
44
43
7
6
5
4
3
2
1
0
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
120
121
122
123
124
125
126
127
128
129
130
131
132
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
133
123
119
131
143
148
132
122
118
130
142
147
131
121
117
129
141
146
130
120
116
128
140
145
129
119
115
127
139
144
128
118
114
126
138
143
127
117
113
125
137
142
126
116
112
124
136
141
125
115
111
123
135
140
124
114
110
122
134
139
123
113
109
121
133
138
122
110
111
112
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
130
129
128
127
126
125
137
121
109
103
107
119
123
124
136
120
108
102
106
118
122
123
135
119
107
101
105
117
121
122
134
118
106
100
104
116
120
121
133
117
105
99
103
115
119
120
132
116
104
98
102
114
118
119
131
115
103
97
101
113
117
118
130
114
113
112
111
110
109
108
107
106
105
104
103
102
96
100
112
116
117
118
119
120
121
122
123
124
125
126
127
128
129
101
95
99
111
115
116
100
94
98
110
114
115
99
93
97
109
113
114
98
92
96
108
112
113
97
91
95
107
111
112
96
90
94
106
110
111
95
89
93
105
109
110
94
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
93
79
99
108
92
78
98
107
91
77
97
106
88
87
86
85
84
85
86
87
88
89
90
91
92
93
92
91
90
76
96
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
83
89
75
95
106
94
82
88
74
94
107
95
81
87
73
93
108
96
80
86
72
92
109
97
79
85
71
91
110
98
78
84
70
90
110
99
77
83
69
89
109
100
76
82
81
80
79
78
77
76
75
74
73
74
75
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
101
75
72
67
87
101
102
74
71
66
86
102
103
73
70
65
85
103
104
72
69
64
84
104
105
71
68
63
83
105
106
70
67
62
82
106
107
69
66
61
81
107
108
68
65
60
80
108
109
67
64
59
79
107
110
66
63
58
78
106
110
65
62
57
77
105
109
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
56
76
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
63
51
55
75
95
107
62
50
54
74
94
106
61
49
53
73
93
105
60
48
52
72
92
104
59
47
51
71
91
103
58
46
50
70
90
102
57
45
49
69
89
101
56
44
48
68
88
100
55
43
47
67
87
99
54
42
46
66
86
98
53
41
45
65
85
97
52
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
96
51
31
39
53
75
95
50
30
38
54
74
94
49
29
37
55
73
93
48
28
36
56
72
92
47
27
35
57
71
91
46
26
34
58
70
90
45
25
33
59
69
89
44
24
32
60
68
88
43
23
31
61
67
87
42
22
30
62
66
86
41
21
29
63
65
85
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
16
17
18
19
20
21
22
23
24
25
26
27
28
64
63
62
61
60
59
58
57
56
55
54
53
52
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
33
19
15
51
63
77
34
18
14
50
62
78
35
17
13
49
61
79
36
16
12
48
60
80
37
15
11
47
59
81
38
14
10
46
58
82
39
13
9
45
57
83
40
12
8
44
56
84
41
11
7
43
55
85
42
10
6
42
54
86
43
9
5
41
53
87
52
51
50
49
48
47
46
45
44
8
7
6
5
4
3
2
1
0
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
121
122
123
124
125
126
127
128
129
130
131
132
133
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
134
124
120
132
142
149
133
123
119
131
141
148
132
122
118
130
140
147
131
121
117
129
139
146
130
120
116
128
138
145
129
119
115
127
137
144
128
118
114
126
136
143
127
117
113
125
135
142
126
116
112
124
134
141
125
115
111
123
133
140
124
114
110
122
132
139
123
111
112
113
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
130
129
128
127
126
138
122
110
104
108
120
122
125
137
121
109
103
107
119
121
124
136
120
108
102
106
118
120
123
135
119
107
101
105
117
119
122
134
118
106
100
104
116
118
121
133
117
105
99
103
115
117
120
132
116
104
98
102
114
116
119
131
115
114
113
112
111
110
109
108
107
106
105
104
103
97
101
113
115
118
119
120
121
122
123
124
125
126
127
128
129
130
102
96
100
112
114
117
101
95
99
111
113
116
100
94
98
110
112
115
99
93
97
109
111
114
98
92
96
108
110
113
97
91
95
107
109
112
96
90
94
106
108
111
95
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
110
94
80
98
109
93
79
97
108
92
78
96
107
89
88
87
86
85
86
87
88
89
90
91
92
93
94
93
92
91
77
95
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
84
90
76
94
107
95
83
89
75
93
108
96
82
88
74
92
109
97
81
87
73
91
110
98
80
86
72
90
110
99
79
85
71
89
109
100
78
84
70
88
108
101
77
83
82
81
80
79
78
77
76
75
74
75
76
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
102
76
73
68
86
100
103
75
72
67
85
101
104
74
71
66
84
102
105
73
70
65
83
103
106
72
69
64
82
104
107
71
68
63
81
105
108
70
67
62
80
106
109
69
66
61
79
107
110
68
65
60
78
106
110
67
64
59
77
105
109
66
63
58
76
104
108
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
57
75
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
64
52
56
74
94
106
63
51
55
73
93
105
62
50
54
72
92
104
61
49
53
71
91
103
60
48
52
70
90
102
59
47
51
69
89
101
58
46
50
68
88
100
57
45
49
67
87
99
56
44
48
66
86
98
55
43
47
65
85
97
54
42
46
64
84
96
53
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
95
52
32
38
52
74
94
51
31
37
53
73
93
50
30
36
54
72
92
49
29
35
55
71
91
48
28
34
56
70
90
47
27
33
57
69
89
46
26
32
58
68
88
45
25
31
59
67
87
44
24
30
60
66
86
43
23
29
61
65
85
42
22
28
62
64
84
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
15
16
17
18
19
20
21
22
23
24
25
26
27
63
62
61
60
59
58
57
56
55
54
53
52
51
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
34
20
14
50
62
76
35
19
13
49
61
77
36
18
12
48
60
78
37
17
11
47
59
79
38
16
10
46
58
80
39
15
9
45
57
81
40
14
8
44
56
82
41
13
7
43
55
83
42
12
6
42
54
84
43
11
5
41
53
85
44
10
4
40
52
86
53
52
51
50
49
48
47
46
45
9
8
7
6
5
4
3
2
1
0
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
122
123
124
125
126
127
128
129
130
131
132
133
134
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
135
125
121
133
141
150
134
124
120
132
140
149
133
123
119
131
139
148
132
122
118
130
138
147
131
121
117
129
137
146
130
120
116
128
136
145
129
119
115
127
135
144
128
118
114
126
134
143
127
117
113
125
133
142
126
116
112
124
132
141
125
115
111
123
131
140
124
112
113
114
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
130
129
128
127
139
123
111
105
109
121
121
126
138
122
110
104
108
120
120
125
137
121
109
103
107
119
119
124
136
120
108
102
106
118
118
123
135
119
107
101
105
117
117
122
134
118
106
100
104
116
116
121
133
117
105
99
103
115
115
120
132
116
115
114
113
112
111
110
109
108
107
106
105
104
98
102
114
114
119
120
121
122
123
124
125
126
127
128
129
130
131
103
97
101
113
113
118
102
96
100
112
112
117
101
95
99
111
111
116
100
94
98
110
110
115
99
93
97
109
109
114
98
92
96
108
108
113
97
91
95
107
107
112
96
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
111
95
81
97
110
94
80
96
109
93
79
95
108
90
89
88
87
86
87
88
89
90
91
92
93
94
95
94
93
92
78
94
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
85
91
77
93
108
96
84
90
76
92
109
97
83
89
75
91
110
98
82
88
74
90
110
99
81
87
73
89
109
100
80
86
72
88
108
101
79
85
71
87
107
102
78
84
83
82
81
80
79
78
77
76
75
76
77
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
103
77
74
69
85
99
104
76
73
68
84
100
105
75
72
67
83
101
106
74
71
66
82
102
107
73
70
65
81
103
108
72
69
64
80
104
109
71
68
63
79
105
110
70
67
62
78
106
110
69
66
61
77
105
109
68
65
60
76
104
108
67
64
59
75
103
107
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
58
74
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
65
53
57
73
93
105
64
52
56
72
92
104
63
51
55
71
91
103
62
50
54
70
90
102
61
49
53
69
89
101
60
48
52
68
88
100
59
47
51
67
87
99
58
46
50
66
86
98
57
45
49
65
85
97
56
44
48
64
84
96
55
43
47
63
83
95
54
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
94
53
33
37
51
73
93
52
32
36
52
72
92
51
31
35
53
71
91
50
30
34
54
70
90
49
29
33
55
69
89
48
28
32
56
68
88
47
27
31
57
67
87
46
26
30
58
66
86
45
25
29
59
65
85
44
24
28
60
64
84
43
23
27
61
63
83
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
14
15
16
17
18
19
20
21
22
23
24
25
26
62
61
60
59
58
57
56
55
54
53
52
51
50
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
35
21
13
49
61
75
36
20
12
48
60
76
37
19
11
47
59
77
38
18
10
46
58
78
39
17
9
45
57
79
40
16
8
44
56
80
41
15
7
43
55
81
42
14
6
42
54
82
43
13
5
41
53
83
44
12
4
40
52
84
45
11
3
39
51
85
54
53
52
51
50
49
48
47
46
10
9
8
7
6
5
4
3
2
1
0
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
123
124
125
126
127
128
129
130
131
132
133
134
135
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
136
126
122
134
140
151
135
125
121
133
139
150
134
124
120
132
138
149
133
123
119
131
137
148
132
122
118
130
136
147
131
121
117
129
135
146
130
120
116
128
134
145
129
119
115
127
133
144
128
118
114
126
132
143
127
117
113
125
131
142
126
116
112
124
130
141
125
113
114
115
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
130
129
128
140
124
112
106
110
122
120
127
139
123
111
105
109
121
119
126
138
122
110
104
108
120
118
125
137
121
109
103
107
119
117
124
136
120
108
102
106
118
116
123
135
119
107
101
105
117
115
122
134
118
106
100
104
116
114
121
133
117
116
115
114
113
112
111
110
109
108
107
106
105
99
103
115
113
120
121
122
123
124
125
126
127
128
129
130
131
132
104
98
102
114
112
119
103
97
101
113
111
118
102
96
100
112
110
117
101
95
99
111
109
116
100
94
98
110
108
115
99
93
97
109
107
114
98
92
96
108
106
113
97
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
112
96
82
96
111
95
81
95
110
94
80
94
109
91
90
89
88
87
88
89
90
91
92
93
94
95
96
95
94
93
79
93
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
86
92
78
92
109
97
85
91
77
91
110
98
84
90
76
90
110
99
83
89
75
89
109
100
82
88
74
88
108
101
81
87
73
87
107
102
80
86
72
86
106
103
79
85
84
83
82
81
80
79
78
77
76
77
78
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
104
78
75
70
84
98
105
77
74
69
83
99
106
76
73
68
82
100
107
75
72
67
81
101
108
74
71
66
80
102
109
73
70
65
79
103
110
72
69
64
78
104
110
71
68
63
77
105
109
70
67
62
76
104
108
69
66
61
75
103
107
68
65
60
74
102
106
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
59
73
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
66
54
58
72
92
104
65
53
57
71
91
103
64
52
56
70
90
102
63
51
55
69
89
101
62
50
54
68
88
100
61
49
53
67
87
99
60
48
52
66
86
98
59
47
51
65
85
97
58
46
50
64
84
96
57
45
49
63
83
95
56
44
48
62
82
94
55
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
93
54
34
36
50
72
92
53
33
35
51
71
91
52
32
34
52
70
90
51
31
33
53
69
89
50
30
32
54
68
88
49
29
31
55
67
87
48
28
30
56
66
86
47
27
29
57
65
85
46
26
28
58
64
84
45
25
27
59
63
83
44
24
26
60
62
82
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
13
14
15
16
17
18
19
20
21
22
23
24
25
61
60
59
58
57
56
55
54
53
52
51
50
49
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
36
22
12
48
60
74
37
21
11
47
59
75
38
20
10
46
58
76
39
19
9
45
57
77
40
18
8
44
56
78
41
17
7
43
55
79
42
16
6
42
54
80
43
15
5
41
53
81
44
14
4
40
52
82
45
13
3
39
51
83
46
12
2
38
50
84
55
54
53
52
51
50
49
48
47
11
10
9
8
7
6
5
4
3
2
1
0
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
124
125
126
127
128
129
130
131
132
133
134
135
136
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
137
127
123
135
139
152
136
126
122
134
138
151
135
125
121
133
137
150
134
124
120
132
136
149
133
123
119
131
135
148
132
122
118
130
134
147
131
121
117
129
133
146
130
120
116
128
132
145
129
119
115
127
131
144
128
118
114
126
130
143
127
117
113
125
129
142
126
114
115
116
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
130
129
141
125
113
107
111
123
119
128
140
124
112
106
110
122
118
127
139
123
111
105
109
121
117
126
138
122
110
104
108
120
116
125
137
121
109
103
107
119
115
124
136
120
108
102
106
118
114
123
135
119
107
101
105
117
113
122
134
118
117
116
115
114
113
112
111
110
109
108
107
106
100
104
116
112
121
122
123
124
125
126
127
128
129
130
131
132
133
105
99
103
115
111
120
104
98
102
114
110
119
103
97
101
113
109
118
102
96
100
112
108
117
101
95
99
111
107
116
100
94
98
110
106
115
99
93
97
109
105
114
98
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
113
97
83
95
112
96
82
94
111
95
81
93
110
92
91
90
89
88
89
90
91
92
93
94
95
96
97
96
95
94
80
92
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
87
93
79
91
110
98
86
92
78
90
110
99
85
91
77
89
109
100
84
90
76
88
108
101
83
89
75
87
107
102
82
88
74
86
106
103
81
87
73
85
105
104
80
86
85
84
83
82
81
80
79
78
77
78
79
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
79
76
71
83
97
106
78
75
70
82
98
107
77
74
69
81
99
108
76
73
68
80
100
109
75
72
67
79
101
110
74
71
66
78
102
110
73
70
65
77
103
109
72
69
64
76
104
108
71
68
63
75
103
107
70
67
62
74
102
106
69
66
61
73
101
105
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
60
72
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
67
55
59
71
91
103
66
54
58
70
90
102
65
53
57
69
89
101
64
52
56
68
88
100
63
51
55
67
87
99
62
50
54
66
86
98
61
49
53
65
85
97
60
48
52
64
84
96
59
47
51
63
83
95
58
46
50
62
82
94
57
45
49
61
81
93
56
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
92
55
35
35
49
71
91
54
34
34
50
70
90
53
33
33
51
69
89
52
32
32
52
68
88
51
31
31
53
67
87
50
30
30
54
66
86
49
29
29
55
65
85
48
28
28
56
64
84
47
27
27
57
63
83
46
26
26
58
62
82
45
25
25
59
61
81
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
12
13
14
15
16
17
18
19
20
21
22
23
24
60
59
58
57
56
55
54
53
52
51
50
49
48
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
37
23
11
47
59
73
38
22
10
46
58
74
39
21
9
45
57
75
40
20
8
44
56
76
41
19
7
43
55
77
42
18
6
42
54
78
43
17
5
41
53
79
44
16
4
40
52
80
45
15
3
39
51
81
46
14
2
38
50
82
47
13
1
37
49
83
56
55
54
53
52
51
50
49
48
12
11
10
9
8
7
6
5
4
3
2
1
0
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
125
126
127
128
129
130
131
132
133
134
135
136
137
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
163
162
161
160
159
158
157
156
155
154
138
128
124
136
140
153
137
127
123
135
139
152
136
126
122
134
138
151
135
125
121
133
137
150
134
124
120
132
136
149
133
123
119
131
135
148
132
122
118
130
134
147
131
121
117
129
133
146
130
120
116
128
132
145
129
119
115
127
131
144
128
118
114
126
130
143
127
115
116
117
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
131
130
142
126
114
108
112
124
120
129
141
125
113
107
111
123
119
128
140
124
112
106
110
122
118
127
139
123
111
105
109
121
117
126
138
122
110
104
108
120
116
125
137
121
109
103
107
119
115
124
136
120
108
102
106
118
114
123
135
119
118
117
116
115
114
113
112
111
110
109
108
107
101
105
117
113
122
123
124
125
126
127
128
129
130
131
132
133
134
106
100
104
116
112
121
105
99
103
115
111
120
104
98
102
114
110
119
103
97
101
113
109
118
102
96
100
112
108
117
101
95
99
111
107
116
100
94
98
110
106
115
99
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
114
98
84
96
113
97
83
95
112
96
82
94
111
93
92
91
90
89
90
91
92
93
94
95
96
97
98
97
96
95
81
93
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
88
94
80
92
111
99
87
93
79
91
111
100
86
92
78
90
110
101
85
91
77
89
109
102
84
90
76
88
108
103
83
89
75
87
107
104
82
88
74
86
106
105
81
87
86
85
84
83
82
81
80
79
78
79
80
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
80
77
72
84
98
107
79
76
71
83
99
108
78
75
70
82
100
109
77
74
69
81
101
110
76
73
68
80
102
110
75
72
67
79
103
109
74
71
66
78
104
108
73
70
65
77
103
107
72
69
64
76
102
106
71
68
63
75
101
105
70
67
62
74
100
104
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
61
73
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
68
56
60
72
90
102
67
55
59
71
89
101
66
54
58
70
88
100
65
53
57
69
87
99
64
52
56
68
86
98
63
51
55
67
85
97
62
50
54
66
84
96
61
49
53
65
83
95
60
48
52
64
82
94
59
47
51
63
81
93
58
46
50
62
80
92
57
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
72
73
74
75
76
77
78
79
91
56
36
36
50
70
90
55
35
35
51
69
89
54
34
34
52
68
88
53
33
33
53
67
87
52
32
32
54
66
86
51
31
31
55
65
85
50
30
30
56
64
84
49
29
29
57
63
83
48
28
28
58
62
82
47
27
27
59
61
81
46
26
26
60
60
80
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
13
14
15
16
17
18
19
20
21
22
23
24
25
59
58
57
56
55
54
53
52
51
50
49
48
47
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
38
24
12
46
58
72
39
23
11
45
57
73
40
22
10
44
56
74
41
21
9
43
55
75
42
20
8
42
54
76
43
19
7
41
53
77
44
18
6
40
52
78
45
17
5
39
51
79
46
16
4
38
50
80
47
15
3
37
49
81
48
14
2
36
48
82
57
56
55
54
53
52
51
50
49
13
12
11
10
9
8
7
6
5
4
3
2
1
0
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
126
127
128
129
130
131
132
133
134
135
136
137
138
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
164
163
162
161
160
159
158
157
156
155
139
129
125
137
141
154
138
128
124
136
140
153
137
127
123
135
139
152
136
126
122
134
138
151
135
125
121
133
137
150
134
124
120
132
136
149
133
123
119
131
135
148
132
122
118
130
134
147
131
121
117
129
133
146
130
120
116
128
132
145
129
119
115
127
131
144
128
116
117
118
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
132
131
143
127
115
109
113
125
121
130
142
126
114
108
112
124
120
129
141
125
113
107
111
123
119
128
140
124
112
106
110
122
118
127
139
123
111
105
109
121
117
126
138
122
110
104
108
120
116
125
137
121
109
103
107
119
115
124
136
120
119
118
117
116
115
114
113
112
111
110
109
108
102
106
118
114
123
124
125
126
127
128
129
130
131
132
133
134
135
107
101
105
117
113
122
106
100
104
116
112
121
105
99
103
115
111
120
104
98
102
114
110
119
103
97
101
113
109
118
102
96
100
112
108
117
101
95
99
111
107
116
100
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
115
99
85
97
114
98
84
96
113
97
83
95
112
94
93
92
91
90
91
92
93
94
95
96
97
98
99
98
97
96
82
94
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
89
95
81
93
112
100
88
94
80
92
112
101
87
93
79
91
111
102
86
92
78
90
110
103
85
91
77
89
109
104
84
90
76
88
108
105
83
89
75
87
107
106
82
88
87
86
85
84
83
82
81
80
79
80
81
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
81
78
73
85
99
108
80
77
72
84
100
109
79
76
71
83
101
110
78
75
70
82
102
110
77
74
69
81
103
109
76
73
68
80
104
108
75
72
67
79
103
107
74
71
66
78
102
106
73
70
65
77
101
105
72
69
64
76
100
104
71
68
63
75
99
103
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
62
74
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
69
57
61
73
89
101
68
56
60
72
88
100
67
55
59
71
87
99
66
54
58
70
86
98
65
53
57
69
85
97
64
52
56
68
84
96
63
51
55
67
83
95
62
50
54
66
82
94
61
49
53
65
81
93
60
48
52
64
80
92
59
47
51
63
79
91
58
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
71
72
73
74
75
76
77
78
90
57
37
37
51
69
89
56
36
36
52
68
88
55
35
35
53
67
87
54
34
34
54
66
86
53
33
33
55
65
85
52
32
32
56
64
84
51
31
31
57
63
83
50
30
30
58
62
82
49
29
29
59
61
81
48
28
28
60
60
80
47
27
27
59
59
79
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
14
15
16
17
18
19
20
21
22
23
24
25
26
58
57
56
55
54
53
52
51
50
49
48
47
46
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
39
25
13
45
57
71
40
24
12
44
56
72
41
23
11
43
55
73
42
22
10
42
54
74
43
21
9
41
53
75
44
20
8
40
52
76
45
19
7
39
51
77
46
18
6
38
50
78
47
17
5
37
49
79
48
16
4
36
48
80
49
15
3
35
47
81
58
57
56
55
54
53
52
51
50
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
127
128
129
130
131
132
133
134
135
136
137
138
139
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
165
164
163
162
161
160
159
158
157
156
140
130
126
138
142
155
139
129
125
137
141
154
138
128
124
136
140
153
137
127
123
135
139
152
136
126
122
134
138
151
135
125
121
133
137
150
134
124
120
132
136
149
133
123
119
131
135
148
132
122
118
130
134
147
131
121
117
129
133
146
130
120
116
128
132
145
129
117
118
119
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
133
132
144
128
116
110
114
126
122
131
143
127
115
109
113
125
121
130
142
126
114
108
112
124
120
129
141
125
113
107
111
123
119
128
140
124
112
106
110
122
118
127
139
123
111
105
109
121
117
126
138
122
110
104
108
120
116
125
137
121
120
119
118
117
116
115
114
113
112
111
110
109
103
107
119
115
124
125
126
127
128
129
130
131
132
133
134
135
136
108
102
106
118
114
123
107
101
105
117
113
122
106
100
104
116
112
121
105
99
103
115
111
120
104
98
102
114
110
119
103
97
101
113
109
118
102
96
100
112
108
117
101
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
116
100
86
98
115
99
85
97
114
98
84
96
113
95
94
93
92
91
92
93
94
95
96
97
98
99
100
99
98
97
83
95
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
90
96
82
94
113
101
89
95
81
93
113
102
88
94
80
92
112
103
87
93
79
91
111
104
86
92
78
90
110
105
85
91
77
89
109
106
84
90
76
88
108
107
83
89
88
87
86
85
84
83
82
81
80
81
82
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
82
79
74
86
100
109
81
78
73
85
101
110
80
77
72
84
102
110
79
76
71
83
103
109
78
75
70
82
104
108
77
74
69
81
103
107
76
73
68
80
102
106
75
72
67
79
101
105
74
71
66
78
100
104
73
70
65
77
99
103
72
69
64
76
98
102
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
63
75
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
70
58
62
74
88
100
69
57
61
73
87
99
68
56
60
72
86
98
67
55
59
71
85
97
66
54
58
70
84
96
65
53
57
69
83
95
64
52
56
68
82
94
63
51
55
67
81
93
62
50
54
66
80
92
61
49
53
65
79
91
60
48
52
64
78
90
59
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
70
71
72
73
74
75
76
77
89
58
38
38
52
68
88
57
37
37
53
67
87
56
36
36
54
66
86
55
35
35
55
65
85
54
34
34
56
64
84
53
33
33
57
63
83
52
32
32
58
62
82
51
31
31
59
61
81
50
30
30
60
60
80
49
29
29
59
59
79
48
28
28
58
58
78
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
15
16
17
18
19
20
21
22
23
24
25
26
27
57
56
55
54
53
52
51
50
49
48
47
46
45
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
40
26
14
44
56
70
41
25
13
43
55
71
42
24
12
42
54
72
43
23
11
41
53
73
44
22
10
40
52
74
45
21
9
39
51
75
46
20
8
38
50
76
47
19
7
37
49
77
48
18
6
36
48
78
49
17
5
35
47
79
50
16
4
34
46
80
59
58
57
56
55
54
53
52
51
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
128
129
130
131
132
133
134
135
136
137
138
139
140
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
166
165
164
163
162
161
160
159
158
157
141
131
127
139
143
156
140
130
126
138
142
155
139
129
125
137
141
154
138
128
124
136
140
153
137
127
123
135
139
152
136
126
122
134
138
151
135
125
121
133
137
150
134
124
120
132
136
149
133
123
119
131
135
148
132
122
118
130
134
147
131
121
117
129
133
146
130
118
119
120
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
134
133
145
129
117
111
115
127
123
132
144
128
116
110
114
126
122
131
143
127
115
109
113
125
121
130
142
126
114
108
112
124
120
129
141
125
113
107
111
123
119
128
140
124
112
106
110
122
118
127
139
123
111
105
109
121
117
126
138
122
121
120
119
118
117
116
115
114
113
112
111
110
104
108
120
116
125
126
127
128
129
130
131
132
133
134
135
136
137
109
103
107
119
115
124
108
102
106
118
114
123
107
101
105
117
113
122
106
100
104
116
112
121
105
99
103
115
111
120
104
98
102
114
110
119
103
97
101
113
109
118
102
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
117
101
87
99
116
100
86
98
115
99
85
97
114
96
95
94
93
92
93
94
95
96
97
98
99
100
101
100
99
98
84
96
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
91
97
83
95
114
102
90
96
82
94
114
103
89
95
81
93
113
104
88
94
80
92
112
105
87
93
79
91
111
106
86
92
78
90
110
107
85
91
77
89
109
108
84
90
89
88
87
86
85
84
83
82
81
82
83
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
83
80
75
87
101
110
82
79
74
86
102
110
81
78
73
85
103
109
80
77
72
84
104
108
79
76
71
83
103
107
78
75
70
82
102
106
77
74
69
81
101
105
76
73
68
80
100
104
75
72
67
79
99
103
74
71
66
78
98
102
73
70
65
77
97
101
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
64
76
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
71
59
63
75
87
99
70
58
62
74
86
98
69
57
61
73
85
97
68
56
60
72
84
96
67
55
59
71
83
95
66
54
58
70
82
94
65
53
57
69
81
93
64
52
56
68
80
92
63
51
55
67
79
91
62
50
54
66
78
90
61
49
53
65
77
89
60
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
69
70
71
72
73
74
75
76
88
59
39
39
53
67
87
58
38
38
54
66
86
57
37
37
55
65
85
56
36
36
56
64
84
55
35
35
57
63
83
54
34
34
58
62
82
53
33
33
59
61
81
52
32
32
60
60
80
51
31
31
59
59
79
50
30
30
58
58
78
49
29
29
57
57
77
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
16
17
18
19
20
21
22
23
24
25
26
27
28
56
55
54
53
52
51
50
49
48
47
46
45
44
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
41
27
15
43
55
69
42
26
14
42
54
70
43
25
13
41
53
71
44
24
12
40
52
72
45
23
11
39
51
73
46
22
10
38
50
74
47
21
9
37
49
75
48
20
8
36
48
76
49
19
7
35
47
77
50
18
6
34
46
78
51
17
5
33
45
79
60
59
58
57
56
55
54
53
52
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
129
130
131
132
133
134
135
136
137
138
139
140
141
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
167
166
165
164
163
162
161
160
159
158
142
132
128
140
144
157
141
131
127
139
143
156
140
130
126
138
142
155
139
129
125
137
141
154
138
128
124
136
140
153
137
127
123
135
139
152
136
126
122
134
138
151
135
125
121
133
137
150
134
124
120
132
136
149
133
123
119
131
135
148
132
122
118
130
134
147
131
119
120
121
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
135
134
146
130
118
112
116
128
124
133
145
129
117
111
115
127
123
132
144
128
116
110
114
126
122
131
143
127
115
109
113
125
121
130
142
126
114
108
112
124
120
129
141
125
113
107
111
123
119
128
140
124
112
106
110
122
118
127
139
123
122
121
120
119
118
117
116
115
114
113
112
111
105
109
121
117
126
127
128
129
130
131
132
133
134
135
136
137
138
110
104
108
120
116
125
109
103
107
119
115
124
108
102
106
118
114
123
107
101
105
117
113
122
106
100
104
116
112
121
105
99
103
115
111
120
104
98
102
114
110
119
103
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
118
102
88
100
117
101
87
99
116
100
86
98
115
97
96
95
94
93
94
95
96
97
98
99
100
101
102
101
100
99
85
97
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
92
98
84
96
115
103
91
97
83
95
115
104
90
96
82
94
114
105
89
95
81
93
113
106
88
94
80
92
112
107
87
93
79
91
111
108
86
92
78
90
110
109
85
91
90
89
88
87
86
85
84
83
82
83
84
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
84
81
76
88
102
110
83
80
75
87
103
109
82
79
74
86
104
108
81
78
73
85
103
107
80
77
72
84
102
106
79
76
71
83
101
105
78
75
70
82
100
104
77
74
69
81
99
103
76
73
68
80
98
102
75
72
67
79
97
101
74
71
66
78
96
100
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
65
77
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
72
60
64
76
86
98
71
59
63
75
85
97
70
58
62
74
84
96
69
57
61
73
83
95
68
56
60
72
82
94
67
55
59
71
81
93
66
54
58
70
80
92
65
53
57
69
79
91
64
52
56
68
78
90
63
51
55
67
77
89
62
50
54
66
76
88
61
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
68
69
70
71
72
73
74
75
87
60
40
40
54
66
86
59
39
39
55
65
85
58
38
38
56
64
84
57
37
37
57
63
83
56
36
36
58
62
82
55
35
35
59
61
81
54
34
34
60
60
80
53
33
33
59
59
79
52
32
32
58
58
78
51
31
31
57
57
77
50
30
30
56
56
76
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
17
18
19
20
21
22
23
24
25
26
27
28
29
55
54
53
52
51
50
49
48
47
46
45
44
43
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
42
28
16
42
54
68
43
27
15
41
53
69
44
26
14
40
52
70
45
25
13
39
51
71
46
24
12
38
50
72
47
23
11
37
49
73
48
22
10
36
48
74
49
21
9
35
47
75
50
20
8
34
46
76
51
19
7
33
45
77
52
18
6
32
44
78
61
60
59
58
57
56
55
54
53
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
130
131
132
133
134
135
136
137
138
139
140
141
142
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
168
167
166
165
164
163
162
161
160
159
143
133
129
141
145
158
142
132
128
140
144
157
141
131
127
139
143
156
140
130
126
138
142
155
139
129
125
137
141
154
138
128
124
136
140
153
137
127
123
135
139
152
136
126
122
134
138
151
135
125
121
133
137
150
134
124
120
132
136
149
133
123
119
131
135
148
132
120
121
122
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
136
135
147
131
119
113
117
129
125
134
146
130
118
112
116
128
124
133
145
129
117
111
115
127
123
132
144
128
116
110
114
126
122
131
143
127
115
109
113
125
121
130
142
126
114
108
112
124
120
129
141
125
113
107
111
123
119
128
140
124
123
122
121
120
119
118
117
116
115
114
113
112
106
110
122
118
127
128
129
130
131
132
133
134
135
136
137
138
139
111
105
109
121
117
126
110
104
108
120
116
125
109
103
107
119
115
124
108
102
106
118
114
123
107
101
105
117
113
122
106
100
104
116
112
121
105
99
103
115
111
120
104
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
119
103
89
101
118
102
88
100
117
101
87
99
116
98
97
96
95
94
95
96
97
98
99
100
101
102
103
102
101
100
86
98
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
93
99
85
97
116
104
92
98
84
96
116
105
91
97
83
95
115
106
90
96
82
94
114
107
89
95
81
93
113
108
88
94
80
92
112
109
87
93
79
91
111
110
86
92
91
90
89
88
87
86
85
84
83
84
85
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
85
82
77
89
103
109
84
81
76
88
104
108
83
80
75
87
103
107
82
79
74
86
102
106
81
78
73
85
101
105
80
77
72
84
100
104
79
76
71
83
99
103
78
75
70
82
98
102
77
74
69
81
97
101
76
73
68
80
96
100
75
72
67
79
95
99
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
66
78
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
73
61
65
77
85
97
72
60
64
76
84
96
71
59
63
75
83
95
70
58
62
74
82
94
69
57
61
73
81
93
68
56
60
72
80
92
67
55
59
71
79
91
66
54
58
70
78
90
65
53
57
69
77
89
64
52
56
68
76
88
63
51
55
67
75
87
62
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
86
61
41
41
55
65
85
60
40
40
56
64
84
59
39
39
57
63
83
58
38
38
58
62
82
57
37
37
59
61
81
56
36
36
60
60
80
55
35
35
59
59
79
54
34
34
58
58
78
53
33
33
57
57
77
52
32
32
56
56
76
51
31
31
55
55
75
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
18
19
20
21
22
23
24
25
26
27
28
29
30
54
53
52
51
50
49
48
47
46
45
44
43
42
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
43
29
17
41
53
67
44
28
16
40
52
68
45
27
15
39
51
69
46
26
14
38
50
70
47
25
13
37
49
71
48
24
12
36
48
72
49
23
11
35
47
73
50
22
10
34
46
74
51
21
9
33
45
75
52
20
8
32
44
76
53
19
7
31
43
77
62
61
60
59
58
57
56
55
54
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
131
132
133
134
135
136
137
138
139
140
141
142
143
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
169
168
167
166
165
164
163
162
161
160
144
134
130
142
146
159
143
133
129
141
145
158
142
132
128
140
144
157
141
131
127
139
143
156
140
130
126
138
142
155
139
129
125
137
141
154
138
128
124
136
140
153
137
127
123
135
139
152
136
126
122
134
138
151
135
125
121
133
137
150
134
124
120
132
136
149
133
121
122
123
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
137
136
148
132
120
114
118
130
126
135
147
131
119
113
117
129
125
134
146
130
118
112
116
128
124
133
145
129
117
111
115
127
123
132
144
128
116
110
114
126
122
131
143
127
115
109
113
125
121
130
142
126
114
108
112
124
120
129
141
125
124
123
122
121
120
119
118
117
116
115
114
113
107
111
123
119
128
129
130
131
132
133
134
135
136
137
138
139
140
112
106
110
122
118
127
111
105
109
121
117
126
110
104
108
120
116
125
109
103
107
119
115
124
108
102
106
118
114
123
107
101
105
117
113
122
106
100
104
116
112
121
105
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
120
104
90
102
119
103
89
101
118
102
88
100
117
99
98
97
96
95
96
97
98
99
100
101
102
103
104
103
102
101
87
99
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
94
100
86
98
117
105
93
99
85
97
117
106
92
98
84
96
116
107
91
97
83
95
115
108
90
96
82
94
114
109
89
95
81
93
113
110
88
94
80
92
112
110
87
93
92
91
90
89
88
87
86
85
84
85
86
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
109
86
83
78
90
104
108
85
82
77
89
103
107
84
81
76
88
102
106
83
80
75
87
101
105
82
79
74
86
100
104
81
78
73
85
99
103
80
77
72
84
98
102
79
76
71
83
97
101
78
75
70
82
96
100
77
74
69
81
95
99
76
73
68
80
94
98
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
67
79
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
74
62
66
78
84
96
73
61
65
77
83
95
72
60
64
76
82
94
71
59
63
75
81
93
70
58
62
74
80
92
69
57
61
73
79
91
68
56
60
72
78
90
67
55
59
71
77
89
66
54
58
70
76
88
65
53
57
69
75
87
64
52
56
68
74
86
63
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
85
62
42
42
56
64
84
61
41
41
57
63
83
60
40
40
58
62
82
59
39
39
59
61
81
58
38
38
60
60
80
57
37
37
59
59
79
56
36
36
58
58
78
55
35
35
57
57
77
54
34
34
56
56
76
53
33
33
55
55
75
52
32
32
54
54
74
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
19
20
21
22
23
24
25
26
27
28
29
30
31
53
52
51
50
49
48
47
46
45
44
43
42
41
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
44
30
18
40
52
66
45
29
17
39
51
67
46
28
16
38
50
68
47
27
15
37
49
69
48
26
14
36
48
70
49
25
13
35
47
71
50
24
12
34
46
72
51
23
11
33
45
73
52
22
10
32
44
74
53
21
9
31
43
75
54
20
8
30
42
76
63
62
61
60
59
58
57
56
55
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
146
147
148
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
132
133
134
135
136
137
138
139
140
141
142
143
144
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
170
169
168
167
166
165
164
163
162
161
145
135
131
143
147
160
144
134
130
142
146
159
143
133
129
141
145
158
142
132
128
140
144
157
141
131
127
139
143
156
140
130
126
138
142
155
139
129
125
137
141
154
138
128
124
136
140
153
137
127
123
135
139
152
136
126
122
134
138
151
135
125
121
133
137
150
134
122
123
124
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
138
137
149
133
121
115
119
131
127
136
148
132
120
114
118
130
126
135
147
131
119
113
117
129
125
134
146
130
118
112
116
128
124
133
145
129
117
111
115
127
123
132
144
128
116
110
114
126
122
131
143
127
115
109
113
125
121
130
142
126
125
124
123
122
121
120
119
118
117
116
115
114
108
112
124
120
129
130
131
132
133
134
135
136
137
138
139
140
141
113
107
111
123
119
128
112
106
110
122
118
127
111
105
109
121
117
126
110
104
108
120
116
125
109
103
107
119
115
124
108
102
106
118
114
123
107
101
105
117
113
122
106
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
121
105
91
103
120
104
90
102
119
103
89
101
118
100
99
98
97
96
97
98
99
100
101
102
103
104
105
104
103
102
88
100
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
95
101
87
99
118
106
94
100
86
98
118
107
93
99
85
97
117
108
92
98
84
96
116
109
91
97
83
95
115
110
90
96
82
94
114
110
89
95
81
93
113
109
88
94
93
92
91
90
89
88
87
86
85
86
87
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
108
87
84
79
91
103
107
86
83
78
90
102
106
85
82
77
89
101
105
84
81
76
88
100
104
83
80
75
87
99
103
82
79
74
86
98
102
81
78
73
85
97
101
80
77
72
84
96
100
79
76
71
83
95
99
78
75
70
82
94
98
77
74
69
81
93
97
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
68
80
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
75
63
67
79
83
95
74
62
66
78
82
94
73
61
65
77
81
93
72
60
64
76
80
92
71
59
63
75
79
91
70
58
62
74
78
90
69
57
61
73
77
89
68
56
60
72
76
88
67
55
59
71
75
87
66
54
58
70
74
86
65
53
57
69
73
85
64
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
84
63
43
43
57
63
83
62
42
42
58
62
82
61
41
41
59
61
81
60
40
40
60
60
80
59
39
39
59
59
79
58
38
38
58
58
78
57
37
37
57
57
77
56
36
36
56
56
76
55
35
35
55
55
75
54
34
34
54
54
74
53
33
33
53
53
73
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
20
21
22
23
24
25
26
27
28
29
30
31
32
52
51
50
49
48
47
46
45
44
43
42
41
40
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
45
31
19
39
51
65
46
30
18
38
50
66
47
29
17
37
49
67
48
28
16
36
48
68
49
27
15
35
47
69
50
26
14
34
46
70
51
25
13
33
45
71
52
24
12
32
44
72
53
23
11
31
43
73
54
22
10
30
42
74
55
21
9
29
41
75
64
63
62
61
60
59
58
57
56
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
147
148
149
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
133
134
135
136
137
138
139
140
141
142
143
144
145
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
171
170
169
168
167
166
165
164
163
162
146
136
132
144
148
161
145
135
131
143
147
160
144
134
130
142
146
159
143
133
129
141
145
158
142
132
128
140
144
157
141
131
127
139
143
156
140
130
126
138
142
155
139
129
125
137
141
154
138
128
124
136
140
153
137
127
123
135
139
152
136
126
122
134
138
151
135
123
124
125
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
139
138
150
134
122
116
120
132
128
137
149
133
121
115
119
131
127
136
148
132
120
114
118
130
126
135
147
131
119
113
117
129
125
134
146
130
118
112
116
128
124
133
145
129
117
111
115
127
123
132
144
128
116
110
114
126
122
131
143
127
126
125
124
123
122
121
120
119
118
117
116
115
109
113
125
121
130
131
132
133
134
135
136
137
138
139
140
141
142
114
108
112
124
120
129
113
107
111
123
119
128
112
106
110
122
118
127
111
105
109
121
117
126
110
104
108
120
116
125
109
103
107
119
115
124
108
102
106
118
114
123
107
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
122
106
92
104
121
105
91
103
120
104
90
102
119
101
100
99
98
97
98
99
100
101
102
103
104
105
106
105
104
103
89
101
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
96
102
88
100
118
107
95
101
87
99
117
108
94
100
86
98
116
109
93
99
85
97
115
110
92
98
84
96
114
110
91
97
83
95
113
109
90
96
82
94
112
108
89
95
94
93
92
91
90
89
88
87
86
87
88
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
103
104
105
106
107
108
109
110
111
107
88
85
80
92
102
106
87
84
79
91
101
105
86
83
78
90
100
104
85
82
77
89
99
103
84
81
76
88
98
102
83
80
75
87
97
101
82
79
74
86
96
100
81
78
73
85
95
99
80
77
72
84
94
98
79
76
71
83
93
97
78
75
70
82
92
96
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
69
81
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
76
64
68
80
82
94
75
63
67
79
81
93
74
62
66
78
80
92
73
61
65
77
79
91
72
60
64
76
78
90
71
59
63
75
77
89
70
58
62
74
76
88
69
57
61
73
75
87
68
56
60
72
74
86
67
55
59
71
73
85
66
54
58
70
72
84
65
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
83
64
44
44
58
62
82
63
43
43
59
61
81
62
42
42
60
60
80
61
41
41
59
59
79
60
40
40
58
58
78
59
39
39
57
57
77
58
38
38
56
56
76
57
37
37
55
55
75
56
36
36
54
54
74
55
35
35
53
53
73
54
34
34
52
52
72
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
21
22
23
24
25
26
27
28
29
30
31
32
33
51
50
49
48
47
46
45
44
43
42
41
40
39
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
46
32
20
38
50
64
47
31
19
37
49
65
48
30
18
36
48
66
49
29
17
35
47
67
50
28
16
34
46
68
51
27
15
33
45
69
52
26
14
32
44
70
53
25
13
31
43
71
54
24
12
30
42
72
55
23
11
29
41
73
56
22
10
28
40
74
65
64
63
62
61
60
59
58
57
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
148
149
150
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
134
135
136
137
138
139
140
141
142
143
144
145
146
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
147
137
133
145
149
161
146
136
132
144
148
160
145
135
131
143
147
159
144
134
130
142
146
158
143
133
129
141
145
157
142
132
128
140
144
156
141
131
127
139
143
155
140
130
126
138
142
154
139
129
125
137
141
153
138
128
124
136
140
152
137
127
123
135
139
151
136
124
125
126
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
139
138
150
135
123
117
121
133
129
137
149
134
122
116
120
132
128
136
148
133
121
115
119
131
127
135
147
132
120
114
118
130
126
134
146
131
119
113
117
129
125
133
145
130
118
112
116
128
124
132
144
129
117
111
115
127
123
131
143
128
127
126
125
124
123
122
121
120
119
118
117
116
110
114
126
122
130
131
132
133
134
135
136
137
138
139
140
141
142
115
109
113
125
121
129
114
108
112
124
120
128
113
107
111
123
119
127
112
106
110
122
118
126
111
105
109
121
117
125
110
104
108
120
116
124
109
103
107
119
115
123
108
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
122
107
93
105
121
106
92
104
120
105
91
103
119
102
101
100
99
98
99
100
101
102
103
104
105
106
107
106
105
104
90
102
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
97
103
89
101
117
108
96
102
88
100
116
109
95
101
87
99
115
110
94
100
86
98
114
110
93
99
85
97
113
109
92
98
84
96
112
108
91
97
83
95
111
107
90
96
95
94
93
92
91
90
89
88
87
88
89
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
103
102
103
104
105
106
107
108
109
110
106
89
86
81
93
101
105
88
85
80
92
100
104
87
84
79
91
99
103
86
83
78
90
98
102
85
82
77
89
97
101
84
81
76
88
96
100
83
80
75
87
95
99
82
79
74
86
94
98
81
78
73
85
93
97
80
77
72
84
92
96
79
76
71
83
91
95
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
70
82
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
77
65
69
81
81
93
76
64
68
80
80
92
75
63
67
79
79
91
74
62
66
78
78
90
73
61
65
77
77
89
72
60
64
76
76
88
71
59
63
75
75
87
70
58
62
74
74
86
69
57
61
73
73
85
68
56
60
72
72
84
67
55
59
71
71
83
66
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
82
65
45
45
59
61
81
64
44
44
60
60
80
63
43
43
59
59
79
62
42
42
58
58
78
61
41
41
57
57
77
60
40
40
56
56
76
59
39
39
55
55
75
58
38
38
54
54
74
57
37
37
53
53
73
56
36
36
52
52
72
55
35
35
51
51
71
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
22
23
24
25
26
27
28
29
30
31
32
33
34
50
49
48
47
46
45
44
43
42
41
40
39
38
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
47
33
21
37
49
63
48
32
20
36
48
64
49
31
19
35
47
65
50
30
18
34
46
66
51
29
17
33
45
67
52
28
16
32
44
68
53
27
15
31
43
69
54
26
14
30
42
70
55
25
13
29
41
71
56
24
12
28
40
72
57
23
11
27
39
73
66
65
64
63
62
61
60
59
58
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
135
136
137
138
139
140
141
142
143
144
145
146
147
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
148
138
134
146
150
160
147
137
133
145
149
159
146
136
132
144
148
158
145
135
131
143
147
157
144
134
130
142
146
156
143
133
129
141
145
155
142
132
128
140
144
154
141
131
127
139
143
153
140
130
126
138
142
152
139
129
125
137
141
151
138
128
124
136
140
150
137
125
126
127
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
139
138
137
149
136
124
118
122
134
130
136
148
135
123
117
121
133
129
135
147
134
122
116
120
132
128
134
146
133
121
115
119
131
127
133
145
132
120
114
118
130
126
132
144
131
119
113
117
129
125
131
143
130
118
112
116
128
124
130
142
129
128
127
126
125
124
123
122
121
120
119
118
117
111
115
127
123
129
130
131
132
133
134
135
136
137
138
139
140
141
116
110
114
126
122
128
115
109
113
125
121
127
114
108
112
124
120
126
113
107
111
123
119
125
112
106
110
122
118
124
111
105
109
121
117
123
110
104
108
120
116
122
109
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
121
108
94
106
120
107
93
105
119
106
92
104
118
103
102
101
100
99
100
101
102
103
104
105
106
107
108
107
106
105
91
103
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
98
104
90
102
116
109
97
103
89
101
115
110
96
102
88
100
114
110
95
101
87
99
113
109
94
100
86
98
112
108
93
99
85
97
111
107
92
98
84
96
110
106
91
97
96
95
94
93
92
91
90
89
88
89
90
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
103
102
101
102
103
104
105
106
107
108
109
105
90
87
82
94
100
104
89
86
81
93
99
103
88
85
80
92
98
102
87
84
79
91
97
101
86
83
78
90
96
100
85
82
77
89
95
99
84
81
76
88
94
98
83
80
75
87
93
97
82
79
74
86
92
96
81
78
73
85
91
95
80
77
72
84
90
94
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
71
83
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
78
66
70
82
80
92
77
65
69
81
79
91
76
64
68
80
78
90
75
63
67
79
77
89
74
62
66
78
76
88
73
61
65
77
75
87
72
60
64
76
74
86
71
59
63
75
73
85
70
58
62
74
72
84
69
57
61
73
71
83
68
56
60
72
70
82
67
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
81
66
46
46
60
60
80
65
45
45
59
59
79
64
44
44
58
58
78
63
43
43
57
57
77
62
42
42
56
56
76
61
41
41
55
55
75
60
40
40
54
54
74
59
39
39
53
53
73
58
38
38
52
52
72
57
37
37
51
51
71
56
36
36
50
50
70
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
23
24
25
26
27
28
29
30
31
32
33
34
35
49
48
47
46
45
44
43
42
41
40
39
38
37
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
48
34
22
36
48
62
49
33
21
35
47
63
50
32
20
34
46
64
51
31
19
33
45
65
52
30
18
32
44
66
53
29
17
31
43
67
54
28
16
30
42
68
55
27
15
29
41
69
56
26
14
28
40
70
57
25
13
27
39
71
58
24
12
26
38
72
67
66
65
64
63
62
61
60
59
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
136
137
138
139
140
141
142
143
144
145
146
147
148
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
149
139
135
147
151
159
148
138
134
146
150
158
147
137
133
145
149
157
146
136
132
144
148
156
145
135
131
143
147
155
144
134
130
142
146
154
143
133
129
141
145
153
142
132
128
140
144
152
141
131
127
139
143
151
140
130
126
138
142
150
139
129
125
137
141
149
138
126
127
128
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
139
138
137
136
148
137
125
119
123
135
131
135
147
136
124
118
122
134
130
134
146
135
123
117
121
133
129
133
145
134
122
116
120
132
128
132
144
133
121
115
119
131
127
131
143
132
120
114
118
130
126
130
142
131
119
113
117
129
125
129
141
130
129
128
127
126
125
124
123
122
121
120
119
118
112
116
128
124
128
129
130
131
132
133
134
135
136
137
138
139
140
117
111
115
127
123
127
116
110
114
126
122
126
115
109
113
125
121
125
114
108
112
124
120
124
113
107
111
123
119
123
112
106
110
122
118
122
111
105
109
121
117
121
110
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
120
109
95
107
119
108
94
106
118
107
93
105
117
104
103
102
101
100
101
102
103
104
105
106
107
108
109
108
107
106
92
104
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
99
105
91
103
115
110
98
104
90
102
114
110
97
103
89
101
113
109
96
102
88
100
112
108
95
101
87
99
111
107
94
100
86
98
110
106
93
99
85
97
109
105
92
98
97
96
95
94
93
92
91
90
89
90
91
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
103
102
101
100
101
102
103
104
105
106
107
108
104
91
88
83
95
99
103
90
87
82
94
98
102
89
86
81
93
97
101
88
85
80
92
96
100
87
84
79
91
95
99
86
83
78
90
94
98
85
82
77
89
93
97
84
81
76
88
92
96
83
80
75
87
91
95
82
79
74
86
90
94
81
78
73
85
89
93
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
72
84
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
79
67
71
83
79
91
78
66
70
82
78
90
77
65
69
81
77
89
76
64
68
80
76
88
75
63
67
79
75
87
74
62
66
78
74
86
73
61
65
77
73
85
72
60
64
76
72
84
71
59
63
75
71
83
70
58
62
74
70
82
69
57
61
73
69
81
68
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
80
67
47
47
59
59
79
66
46
46
58
58
78
65
45
45
57
57
77
64
44
44
56
56
76
63
43
43
55
55
75
62
42
42
54
54
74
61
41
41
53
53
73
60
40
40
52
52
72
59
39
39
51
51
71
58
38
38
50
50
70
57
37
37
49
49
69
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
24
25
26
27
28
29
30
31
32
33
34
35
36
48
47
46
45
44
43
42
41
40
39
38
37
36
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
49
35
23
35
47
61
50
34
22
34
46
62
51
33
21
33
45
63
52
32
20
32
44
64
53
31
19
31
43
65
54
30
18
30
42
66
55
29
17
29
41
67
56
28
16
28
40
68
57
27
15
27
39
69
58
26
14
26
38
70
59
25
13
25
37
71
68
67
66
65
64
63
62
61
60
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
137
138
139
140
141
142
143
144
145
146
147
148
147
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
150
140
136
146
150
158
149
139
135
145
149
157
148
138
134
144
148
156
147
137
133
143
147
155
146
136
132
142
146
154
145
135
131
141
145
153
144
134
130
140
144
152
143
133
129
139
143
151
142
132
128
138
142
150
141
131
127
137
141
149
140
130
126
136
140
148
139
127
128
129
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
138
137
136
135
147
138
126
120
124
134
130
134
146
137
125
119
123
133
129
133
145
136
124
118
122
132
128
132
144
135
123
117
121
131
127
131
143
134
122
116
120
130
126
130
142
133
121
115
119
129
125
129
141
132
120
114
118
128
124
128
140
131
130
129
128
127
126
125
124
123
122
121
120
119
113
117
127
123
127
128
129
130
131
132
133
134
135
136
137
138
139
118
112
116
126
122
126
117
111
115
125
121
125
116
110
114
124
120
124
115
109
113
123
119
123
114
108
112
122
118
122
113
107
111
121
117
121
112
106
110
120
116
120
111
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
119
110
96
106
118
109
95
105
117
108
94
104
116
105
104
103
102
101
102
103
104
105
106
107
108
109
110
109
108
107
93
103
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
100
106
92
102
114
110
99
105
91
101
113
109
98
104
90
100
112
108
97
103
89
99
111
107
96
102
88
98
110
106
95
101
87
97
109
105
94
100
86
96
108
104
93
99
98
97
96
95
94
93
92
91
90
91
92
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
102
101
100
99
100
101
102
103
104
105
106
107
103
92
89
84
94
98
102
91
88
83
93
97
101
90
87
82
92
96
100
89
86
81
91
95
99
88
85
80
90
94
98
87
84
79
89
93
97
86
83
78
88
92
96
85
82
77
87
91
95
84
81
76
86
90
94
83
80
75
85
89
93
82
79
74
84
88
92
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
73
83
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
80
68
72
82
78
90
79
67
71
81
77
89
78
66
70
80
76
88
77
65
69
79
75
87
76
64
68
78
74
86
75
63
67
77
73
85
74
62
66
76
72
84
73
61
65
75
71
83
72
60
64
74
70
82
71
59
63
73
69
81
70
58
62
72
68
80
69
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
59
60
61
62
63
64
65
66
67
68
69
70
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
79
68
48
48
58
58
78
67
47
47
57
57
77
66
46
46
56
56
76
65
45
45
55
55
75
64
44
44
54
54
74
63
43
43
53
53
73
62
42
42
52
52
72
61
41
41
51
51
71
60
40
40
50
50
70
59
39
39
49
49
69
58
38
38
48
48
68
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
25
26
27
28
29
30
31
32
33
34
35
36
37
47
46
45
44
43
42
41
40
39
38
37
36
35
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
50
36
24
34
46
60
51
35
23
33
45
61
52
34
22
32
44
62
53
33
21
31
43
63
54
32
20
30
42
64
55
31
19
29
41
65
56
30
18
28
40
66
57
29
17
27
39
67
58
28
16
26
38
68
59
27
15
25
37
69
60
26
14
24
36
70
69
68
67
66
65
64
63
62
61
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
138
139
140
141
142
143
144
145
146
147
148
147
146
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
151
141
137
145
149
157
150
140
136
144
148
156
149
139
135
143
147
155
148
138
134
142
146
154
147
137
133
141
145
153
146
136
132
140
144
152
145
135
131
139
143
151
144
134
130
138
142
150
143
133
129
137
141
149
142
132
128
136
140
148
141
131
127
135
139
147
140
128
129
130
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
137
136
135
134
146
139
127
121
125
133
129
133
145
138
126
120
124
132
128
132
144
137
125
119
123
131
127
131
143
136
124
118
122
130
126
130
142
135
123
117
121
129
125
129
141
134
122
116
120
128
124
128
140
133
121
115
119
127
123
127
139
132
131
130
129
128
127
126
125
124
123
122
121
120
114
118
126
122
126
127
128
129
130
131
132
133
134
135
136
137
138
119
113
117
125
121
125
118
112
116
124
120
124
117
111
115
123
119
123
116
110
114
122
118
122
115
109
113
121
117
121
114
108
112
120
116
120
113
107
111
119
115
119
112
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
118
111
97
105
117
110
96
104
116
109
95
103
115
106
105
104
103
102
103
104
105
106
107
108
109
110
111
110
109
108
94
102
114
115
116
117
118
117
116
115
114
113
112
111
110
110
109
108
107
101
107
93
101
113
109
100
106
92
100
112
108
99
105
91
99
111
107
98
104
90
98
110
106
97
103
89
97
109
105
96
102
88
96
108
104
95
101
87
95
107
103
94
100
99
98
97
96
95
94
93
92
91
92
93
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
101
100
99
98
99
100
101
102
103
104
105
106
102
93
90
85
93
97
101
92
89
84
92
96
100
91
88
83
91
95
99
90
87
82
90
94
98
89
86
81
89
93
97
88
85
80
88
92
96
87
84
79
87
91
95
86
83
78
86
90
94
85
82
77
85
89
93
84
81
76
84
88
92
83
80
75
83
87
91
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
74
82
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
81
69
73
81
77
89
80
68
72
80
76
88
79
67
71
79
75
87
78
66
70
78
74
86
77
65
69
77
73
85
76
64
68
76
72
84
75
63
67
75
71
83
74
62
66
74
70
82
73
61
65
73
69
81
72
60
64
72
68
80
71
59
63
71
67
79
70
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
78
69
49
49
57
57
77
68
48
48
56
56
76
67
47
47
55
55
75
66
46
46
54
54
74
65
45
45
53
53
73
64
44
44
52
52
72
63
43
43
51
51
71
62
42
42
50
50
70
61
41
41
49
49
69
60
40
40
48
48
68
59
39
39
47
47
67
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
26
27
28
29
30
31
32
33
34
35
36
37
38
46
45
44
43
42
41
40
39
38
37
36
35
34
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
51
37
25
33
45
59
52
36
24
32
44
60
53
35
23
31
43
61
54
34
22
30
42
62
55
33
21
29
41
63
56
32
20
28
40
64
57
31
19
27
39
65
58
30
18
26
38
66
59
29
17
25
37
67
60
28
16
24
36
68
61
27
15
23
35
69
70
69
68
67
66
65
64
63
62
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
139
140
141
142
143
144
145
146
147
148
147
146
145
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
152
142
138
144
148
156
151
141
137
143
147
155
150
140
136
142
146
154
149
139
135
141
145
153
148
138
134
140
144
152
147
137
133
139
143
151
146
136
132
138
142
150
145
135
131
137
141
149
144
134
130
136
140
148
143
133
129
135
139
147
142
132
128
134
138
146
141
129
130
131
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
136
135
134
133
145
140
128
122
126
132
128
132
144
139
127
121
125
131
127
131
143
138
126
120
124
130
126
130
142
137
125
119
123
129
125
129
141
136
124
118
122
128
124
128
140
135
123
117
121
127
123
127
139
134
122
116
120
126
122
126
138
133
132
131
130
129
128
127
126
125
124
123
122
121
115
119
125
121
125
126
127
128
129
130
131
132
133
134
135
136
137
120
114
118
124
120
124
119
113
117
123
119
123
118
112
116
122
118
122
117
111
115
121
117
121
116
110
114
120
116
120
115
109
113
119
115
119
114
108
112
118
114
118
113
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
117
112
98
104
116
111
97
103
115
110
96
102
114
107
106
105
104
103
104
105
106
107
108
109
110
111
112
111
110
109
95
101
113
114
115
116
117
116
115
114
113
112
111
110
109
110
110
109
108
102
108
94
100
112
108
101
107
93
99
111
107
100
106
92
98
110
106
99
105
91
97
109
105
98
104
90
96
108
104
97
103
89
95
107
103
96
102
88
94
106
102
95
101
100
99
98
97
96
95
94
93
92
93
94
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
100
99
98
97
98
99
100
101
102
103
104
105
101
94
91
86
92
96
100
93
90
85
91
95
99
92
89
84
90
94
98
91
88
83
89
93
97
90
87
82
88
92
96
89
86
81
87
91
95
88
85
80
86
90
94
87
84
79
85
89
93
86
83
78
84
88
92
85
82
77
83
87
91
84
81
76
82
86
90
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
75
81
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
82
70
74
80
76
88
81
69
73
79
75
87
80
68
72
78
74
86
79
67
71
77
73
85
78
66
70
76
72
84
77
65
69
75
71
83
76
64
68
74
70
82
75
63
67
73
69
81
74
62
66
72
68
80
73
61
65
71
67
79
72
60
64
70
66
78
71
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
77
70
50
50
56
56
76
69
49
49
55
55
75
68
48
48
54
54
74
67
47
47
53
53
73
66
46
46
52
52
72
65
45
45
51
51
71
64
44
44
50
50
70
63
43
43
49
49
69
62
42
42
48
48
68
61
41
41
47
47
67
60
40
40
46
46
66
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
27
28
29
30
31
32
33
34
35
36
37
38
39
45
44
43
42
41
40
39
38
37
36
35
34
33
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
52
38
26
32
44
58
53
37
25
31
43
59
54
36
24
30
42
60
55
35
23
29
41
61
56
34
22
28
40
62
57
33
21
27
39
63
58
32
20
26
38
64
59
31
19
25
37
65
60
30
18
24
36
66
61
29
17
23
35
67
62
28
16
22
34
68
71
70
69
68
67
66
65
64
63
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
140
141
142
143
144
145
146
147
148
147
146
145
144
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
153
143
139
143
147
155
152
142
138
142
146
154
151
141
137
141
145
153
150
140
136
140
144
152
149
139
135
139
143
151
148
138
134
138
142
150
147
137
133
137
141
149
146
136
132
136
140
148
145
135
131
135
139
147
144
134
130
134
138
146
143
133
129
133
137
145
142
130
131
132
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
135
134
133
132
144
141
129
123
127
131
127
131
143
140
128
122
126
130
126
130
142
139
127
121
125
129
125
129
141
138
126
120
124
128
124
128
140
137
125
119
123
127
123
127
139
136
124
118
122
126
122
126
138
135
123
117
121
125
121
125
137
134
133
132
131
130
129
128
127
126
125
124
123
122
116
120
124
120
124
125
126
127
128
129
130
131
132
133
134
135
136
121
115
119
123
119
123
120
114
118
122
118
122
119
113
117
121
117
121
118
112
116
120
116
120
117
111
115
119
115
119
116
110
114
118
114
118
115
109
113
117
113
117
114
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
116
113
99
103
115
112
98
102
114
111
97
101
113
108
107
106
105
104
105
106
107
108
109
110
111
112
113
112
111
110
96
100
112
113
114
115
116
115
114
113
112
111
110
109
108
109
110
110
109
103
109
95
99
111
107
102
108
94
98
110
106
101
107
93
97
109
105
100
106
92
96
108
104
99
105
91
95
107
103
98
104
90
94
106
102
97
103
89
93
105
101
96
102
101
100
99
98
97
96
95
94
93
94
95
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
99
98
97
96
97
98
99
100
101
102
103
104
100
95
92
87
91
95
99
94
91
86
90
94
98
93
90
85
89
93
97
92
89
84
88
92
96
91
88
83
87
91
95
90
87
82
86
90
94
89
86
81
85
89
93
88
85
80
84
88
92
87
84
79
83
87
91
86
83
78
82
86
90
85
82
77
81
85
89
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
76
80
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
83
71
75
79
75
87
82
70
74
78
74
86
81
69
73
77
73
85
80
68
72
76
72
84
79
67
71
75
71
83
78
66
70
74
70
82
77
65
69
73
69
81
76
64
68
72
68
80
75
63
67
71
67
79
74
62
66
70
66
78
73
61
65
69
65
77
72
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
76
71
51
51
55
55
75
70
50
50
54
54
74
69
49
49
53
53
73
68
48
48
52
52
72
67
47
47
51
51
71
66
46
46
50
50
70
65
45
45
49
49
69
64
44
44
48
48
68
63
43
43
47
47
67
62
42
42
46
46
66
61
41
41
45
45
65
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
28
29
30
31
32
33
34
35
36
37
38
39
40
44
43
42
41
40
39
38
37
36
35
34
33
32
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
53
39
27
31
43
57
54
38
26
30
42
58
55
37
25
29
41
59
56
36
24
28
40
60
57
35
23
27
39
61
58
34
22
26
38
62
59
33
21
25
37
63
60
32
20
24
36
64
61
31
19
23
35
65
62
30
18
22
34
66
63
29
17
21
33
67
72
71
70
69
68
67
66
65
64
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
141
142
143
144
145
146
147
148
147
146
145
144
143
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
154
144
140
142
146
154
153
143
139
141
145
153
152
142
138
140
144
152
151
141
137
139
143
151
150
140
136
138
142
150
149
139
135
137
141
149
148
138
134
136
140
148
147
137
133
135
139
147
146
136
132
134
138
146
145
135
131
133
137
145
144
134
130
132
136
144
143
131
132
133
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
134
133
132
131
143
142
130
124
128
130
126
130
142
141
129
123
127
129
125
129
141
140
128
122
126
128
124
128
140
139
127
121
125
127
123
127
139
138
126
120
124
126
122
126
138
137
125
119
123
125
121
125
137
136
124
118
122
124
120
124
136
135
134
133
132
131
130
129
128
127
126
125
124
123
117
121
123
119
123
124
125
126
127
128
129
130
131
132
133
134
135
122
116
120
122
118
122
121
115
119
121
117
121
120
114
118
120
116
120
119
113
117
119
115
119
118
112
116
118
114
118
117
111
115
117
113
117
116
110
114
116
112
116
115
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
115
114
100
102
114
113
99
101
113
112
98
100
112
109
108
107
106
105
106
107
108
109
110
111
112
113
114
113
112
111
97
99
111
112
113
114
115
114
113
112
111
110
109
108
107
108
109
110
110
104
110
96
98
110
106
103
109
95
97
109
105
102
108
94
96
108
104
101
107
93
95
107
103
100
106
92
94
106
102
99
105
91
93
105
101
98
104
90
92
104
100
97
103
102
101
100
99
98
97
96
95
94
95
96
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
98
97
96
95
96
97
98
99
100
101
102
103
99
96
93
88
90
94
98
95
92
87
89
93
97
94
91
86
88
92
96
93
90
85
87
91
95
92
89
84
86
90
94
91
88
83
85
89
93
90
87
82
84
88
92
89
86
81
83
87
91
88
85
80
82
86
90
87
84
79
81
85
89
86
83
78
80
84
88
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
77
79
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
84
72
76
78
74
86
83
71
75
77
73
85
82
70
74
76
72
84
81
69
73
75
71
83
80
68
72
74
70
82
79
67
71
73
69
81
78
66
70
72
68
80
77
65
69
71
67
79
76
64
68
70
66
78
75
63
67
69
65
77
74
62
66
68
64
76
73
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
75
72
52
52
54
54
74
71
51
51
53
53
73
70
50
50
52
52
72
69
49
49
51
51
71
68
48
48
50
50
70
67
47
47
49
49
69
66
46
46
48
48
68
65
45
45
47
47
67
64
44
44
46
46
66
63
43
43
45
45
65
62
42
42
44
44
64
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
29
30
31
32
33
34
35
36
37
38
39
40
41
43
42
41
40
39
38
37
36
35
34
33
32
31
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
54
40
28
30
42
56
55
39
27
29
41
57
56
38
26
28
40
58
57
37
25
27
39
59
58
36
24
26
38
60
59
35
23
25
37
61
60
34
22
24
36
62
61
33
21
23
35
63
62
32
20
22
34
64
63
31
19
21
33
65
64
30
18
20
32
66
73
72
71
70
69
68
67
66
65
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
142
143
144
145
146
147
148
147
146
145
144
143
142
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
155
145
141
141
145
153
154
144
140
140
144
152
153
143
139
139
143
151
152
142
138
138
142
150
151
141
137
137
141
149
150
140
136
136
140
148
149
139
135
135
139
147
148
138
134
134
138
146
147
137
133
133
137
145
146
136
132
132
136
144
145
135
131
131
135
143
144
132
133
134
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
133
132
131
130
142
143
131
125
129
129
125
129
141
142
130
124
128
128
124
128
140
141
129
123
127
127
123
127
139
140
128
122
126
126
122
126
138
139
127
121
125
125
121
125
137
138
126
120
124
124
120
124
136
137
125
119
123
123
119
123
135
136
135
134
133
132
131
130
129
128
127
126
125
124
118
122
122
118
122
123
124
125
126
127
128
129
130
131
132
133
134
123
117
121
121
117
121
122
116
120
120
116
120
121
115
119
119
115
119
120
114
118
118
114
118
119
113
117
117
113
117
118
112
116
116
112
116
117
111
115
115
111
115
116
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
114
115
101
101
113
114
100
100
112
113
99
99
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
114
113
112
98
98
110
111
112
113
114
113
112
111
110
109
108
107
106
107
108
109
110
105
111
97
97
109
105
104
110
96
96
108
104
103
109
95
95
107
103
102
108
94
94
106
102
101
107
93
93
105
101
100
106
92
92
104
100
99
105
91
91
103
99
98
104
103
102
101
100
99
98
97
96
95
96
97
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
97
96
95
94
95
96
97
98
99
100
101
102
98
97
94
89
89
93
97
96
93
88
88
92
96
95
92
87
87
91
95
94
91
86
86
90
94
93
90
85
85
89
93
92
89
84
84
88
92
91
88
83
83
87
91
90
87
82
82
86
90
89
86
81
81
85
89
88
85
80
80
84
88
87
84
79
79
83
87
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
78
78
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
85
73
77
77
73
85
84
72
76
76
72
84
83
71
75
75
71
83
82
70
74
74
70
82
81
69
73
73
69
81
80
68
72
72
68
80
79
67
71
71
67
79
78
66
70
70
66
78
77
65
69
69
65
77
76
64
68
68
64
76
75
63
67
67
63
75
74
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
74
73
53
53
53
53
73
72
52
52
52
52
72
71
51
51
51
51
71
70
50
50
50
50
70
69
49
49
49
49
69
68
48
48
48
48
68
67
47
47
47
47
67
66
46
46
46
46
66
65
45
45
45
45
65
64
44
44
44
44
64
63
43
43
43
43
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
30
31
32
33
34
35
36
37
38
39
40
41
42
42
41
40
39
38
37
36
35
34
33
32
31
30
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
55
41
29
29
41
55
56
40
28
28
40
56
57
39
27
27
39
57
58
38
26
26
38
58
59
37
25
25
37
59
60
36
24
24
36
60
61
35
23
23
35
61
62
34
22
22
34
62
63
33
21
21
33
63
64
32
20
20
32
64
65
31
19
19
31
65
74
73
72
71
70
69
68
67
66
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
143
144
145
146
147
148
147
146
145
144
143
142
141
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
156
146
142
140
144
152
155
145
141
139
143
151
154
144
140
138
142
150
153
143
139
137
141
149
152
142
138
136
140
148
151
141
137
135
139
147
150
140
136
134
138
146
149
139
135
133
137
145
148
138
134
132
136
144
147
137
133
131
135
143
146
136
132
130
134
142
145
133
134
135
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
132
131
130
129
141
144
132
126
130
128
124
128
140
143
131
125
129
127
123
127
139
142
130
124
128
126
122
126
138
141
129
123
127
125
121
125
137
140
128
122
126
124
120
124
136
139
127
121
125
123
119
123
135
138
126
120
124
122
118
122
134
137
136
135
134
133
132
131
130
129
128
127
126
125
119
123
121
117
121
122
123
124
125
126
127
128
129
130
131
132
133
124
118
122
120
116
120
123
117
121
119
115
119
122
116
120
118
114
118
121
115
119
117
113
117
120
114
118
116
112
116
119
113
117
115
111
115
118
112
116
114
110
114
117
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
113
116
102
100
112
115
101
99
111
114
100
98
110
110
110
109
108
107
108
109
110
111
112
113
114
115
116
115
114
113
99
97
109
110
111
112
113
112
111
110
109
108
107
106
105
106
107
108
109
106
112
98
96
108
104
105
111
97
95
107
103
104
110
96
94
106
102
103
109
95
93
105
101
102
108
94
92
104
100
101
107
93
91
103
99
100
106
92
90
102
98
99
105
104
103
102
101
100
99
98
97
96
97
98
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
96
95
94
93
94
95
96
97
98
99
100
101
97
98
95
90
88
92
96
97
94
89
87
91
95
96
93
88
86
90
94
95
92
87
85
89
93
94
91
86
84
88
92
93
90
85
83
87
91
92
89
84
82
86
90
91
88
83
81
85
89
90
87
82
80
84
88
89
86
81
79
83
87
88
85
80
78
82
86
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
79
77
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
86
74
78
76
72
84
85
73
77
75
71
83
84
72
76
74
70
82
83
71
75
73
69
81
82
70
74
72
68
80
81
69
73
71
67
79
80
68
72
70
66
78
79
67
71
69
65
77
78
66
70
68
64
76
77
65
69
67
63
75
76
64
68
66
62
74
75
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
73
74
54
54
52
52
72
73
53
53
51
51
71
72
52
52
50
50
70
71
51
51
49
49
69
70
50
50
48
48
68
69
49
49
47
47
67
68
48
48
46
46
66
67
47
47
45
45
65
66
46
46
44
44
64
65
45
45
43
43
63
64
44
44
42
42
62
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
31
32
33
34
35
36
37
38
39
40
41
42
43
41
40
39
38
37
36
35
34
33
32
31
30
29
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
56
42
30
28
40
54
57
41
29
27
39
55
58
40
28
26
38
56
59
39
27
25
37
57
60
38
26
24
36
58
61
37
25
23
35
59
62
36
24
22
34
60
63
35
23
21
33
61
64
34
22
20
32
62
65
33
21
19
31
63
66
32
20
18
30
64
75
74
73
72
71
70
69
68
67
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
144
145
146
147
148
147
146
145
144
143
142
141
140
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
157
147
143
139
143
151
156
146
142
138
142
150
155
145
141
137
141
149
154
144
140
136
140
148
153
143
139
135
139
147
152
142
138
134
138
146
151
141
137
133
137
145
150
140
136
132
136
144
149
139
135
131
135
143
148
138
134
130
134
142
147
137
133
129
133
141
146
134
135
136
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
131
130
129
128
140
145
133
127
131
127
123
127
139
144
132
126
130
126
122
126
138
143
131
125
129
125
121
125
137
142
130
124
128
124
120
124
136
141
129
123
127
123
119
123
135
140
128
122
126
122
118
122
134
139
127
121
125
121
117
121
133
138
137
136
135
134
133
132
131
130
129
128
127
126
120
124
120
116
120
121
122
123
124
125
126
127
128
129
130
131
132
125
119
123
119
115
119
124
118
122
118
114
118
123
117
121
117
113
117
122
116
120
116
112
116
121
115
119
115
111
115
120
114
118
114
110
114
119
113
117
113
109
113
118
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
112
117
103
99
111
116
102
98
110
115
101
97
109
109
110
110
109
108
109
110
111
112
113
114
115
116
117
116
115
114
100
96
108
109
110
111
112
111
110
109
108
107
106
105
104
105
106
107
108
107
113
99
95
107
103
106
112
98
94
106
102
105
111
97
93
105
101
104
110
96
92
104
100
103
109
95
91
103
99
102
108
94
90
102
98
101
107
93
89
101
97
100
106
105
104
103
102
101
100
99
98
97
98
99
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
95
94
93
92
93
94
95
96
97
98
99
100
96
99
96
91
87
91
95
98
95
90
86
90
94
97
94
89
85
89
93
96
93
88
84
88
92
95
92
87
83
87
91
94
91
86
82
86
90
93
90
85
81
85
89
92
89
84
80
84
88
91
88
83
79
83
87
90
87
82
78
82
86
89
86
81
77
81
85
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
80
76
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
87
75
79
75
71
83
86
74
78
74
70
82
85
73
77
73
69
81
84
72
76
72
68
80
83
71
75
71
67
79
82
70
74
70
66
78
81
69
73
69
65
77
80
68
72
68
64
76
79
67
71
67
63
75
78
66
70
66
62
74
77
65
69
65
61
73
76
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
72
75
55
55
51
51
71
74
54
54
50
50
70
73
53
53
49
49
69
72
52
52
48
48
68
71
51
51
47
47
67
70
50
50
46
46
66
69
49
49
45
45
65
68
48
48
44
44
64
67
47
47
43
43
63
66
46
46
42
42
62
65
45
45
41
41
61
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
32
33
34
35
36
37
38
39
40
41
42
43
44
40
39
38
37
36
35
34
33
32
31
30
29
28
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
57
43
31
27
39
53
58
42
30
26
38
54
59
41
29
25
37
55
60
40
28
24
36
56
61
39
27
23
35
57
62
38
26
22
34
58
63
37
25
21
33
59
64
36
24
20
32
60
65
35
23
19
31
61
66
34
22
18
30
62
67
33
21
17
29
63
76
75
74
73
72
71
70
69
68
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
145
146
147
148
147
146
145
144
143
142
141
140
139
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
158
148
144
138
142
150
157
147
143
137
141
149
156
146
142
136
140
148
155
145
141
135
139
147
154
144
140
134
138
146
153
143
139
133
137
145
152
142
138
132
136
144
151
141
137
131
135
143
150
140
136
130
134
142
149
139
135
129
133
141
148
138
134
128
132
140
147
135
136
137
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
130
129
128
127
139
146
134
128
132
126
122
126
138
145
133
127
131
125
121
125
137
144
132
126
130
124
120
124
136
143
131
125
129
123
119
123
135
142
130
124
128
122
118
122
134
141
129
123
127
121
117
121
133
140
128
122
126
120
116
120
132
139
138
137
136
135
134
133
132
131
130
129
128
127
121
125
119
115
119
120
121
122
123
124
125
126
127
128
129
130
131
126
120
124
118
114
118
125
119
123
117
113
117
124
118
122
116
112
116
123
117
121
115
111
115
122
116
120
114
110
114
121
115
119
113
109
113
120
114
118
112
108
112
119
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
111
118
104
98
110
117
103
97
109
116
102
96
108
108
109
110
110
109
110
111
112
113
114
115
116
117
118
117
116
115
101
95
107
108
109
110
111
110
109
108
107
106
105
104
103
104
105
106
107
108
114
100
94
106
102
107
113
99
93
105
101
106
112
98
92
104
100
105
111
97
91
103
99
104
110
96
90
102
98
103
109
95
89
101
97
102
108
94
88
100
96
101
107
106
105
104
103
102
101
100
99
98
99
100
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
94
93
92
91
92
93
94
95
96
97
98
99
95
100
97
92
86
90
94
99
96
91
85
89
93
98
95
90
84
88
92
97
94
89
83
87
91
96
93
88
82
86
90
95
92
87
81
85
89
94
91
86
80
84
88
93
90
85
79
83
87
92
89
84
78
82
86
91
88
83
77
81
85
90
87
82
76
80
84
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
81
75
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
88
76
80
74
70
82
87
75
79
73
69
81
86
74
78
72
68
80
85
73
77
71
67
79
84
72
76
70
66
78
83
71
75
69
65
77
82
70
74
68
64
76
81
69
73
67
63
75
80
68
72
66
62
74
79
67
71
65
61
73
78
66
70
64
60
72
77
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
71
76
56
56
50
50
70
75
55
55
49
49
69
74
54
54
48
48
68
73
53
53
47
47
67
72
52
52
46
46
66
71
51
51
45
45
65
70
50
50
44
44
64
69
49
49
43
43
63
68
48
48
42
42
62
67
47
47
41
41
61
66
46
46
40
40
60
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
33
34
35
36
37
38
39
40
41
42
43
44
45
39
38
37
36
35
34
33
32
31
30
29
28
27
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
58
44
32
26
38
52
59
43
31
25
37
53
60
42
30
24
36
54
61
41
29
23
35
55
62
40
28
22
34
56
63
39
27
21
33
57
64
38
26
20
32
58
65
37
25
19
31
59
66
36
24
18
30
60
67
35
23
17
29
61
68
34
22
16
28
62
77
76
75
74
73
72
71
70
69
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
146
147
148
147
146
145
144
143
142
141
140
139
138
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
159
149
145
137
141
149
158
148
144
136
140
148
157
147
143
135
139
147
156
146
142
134
138
146
155
145
141
133
137
145
154
144
140
132
136
144
153
143
139
131
135
143
152
142
138
130
134
142
151
141
137
129
133
141
150
140
136
128
132
140
149
139
135
127
131
139
148
136
137
138
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
129
128
127
126
138
147
135
129
133
125
121
125
137
146
134
128
132
124
120
124
136
145
133
127
131
123
119
123
135
144
132
126
130
122
118
122
134
143
131
125
129
121
117
121
133
142
130
124
128
120
116
120
132
141
129
123
127
119
115
119
131
140
139
138
137
136
135
134
133
132
131
130
129
128
122
126
118
114
118
119
120
121
122
123
124
125
126
127
128
129
130
127
121
125
117
113
117
126
120
124
116
112
116
125
119
123
115
111
115
124
118
122
114
110
114
123
117
121
113
109
113
122
116
120
112
108
112
121
115
119
111
107
111
120
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
110
119
105
97
109
118
104
96
108
117
103
95
107
107
108
109
110
110
111
112
113
114
115
116
117
118
119
118
117
116
102
94
106
107
108
109
110
109
108
107
106
105
104
103
102
103
104
105
106
109
115
101
93
105
101
108
114
100
92
104
100
107
113
99
91
103
99
106
112
98
90
102
98
105
111
97
89
101
97
104
110
96
88
100
96
103
109
95
87
99
95
102
108
107
106
105
104
103
102
101
100
99
100
101
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
93
92
91
90
91
92
93
94
95
96
97
98
94
101
98
93
85
89
93
100
97
92
84
88
92
99
96
91
83
87
91
98
95
90
82
86
90
97
94
89
81
85
89
96
93
88
80
84
88
95
92
87
79
83
87
94
91
86
78
82
86
93
90
85
77
81
85
92
89
84
76
80
84
91
88
83
75
79
83
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
82
74
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
89
77
81
73
69
81
88
76
80
72
68
80
87
75
79
71
67
79
86
74
78
70
66
78
85
73
77
69
65
77
84
72
76
68
64
76
83
71
75
67
63
75
82
70
74
66
62
74
81
69
73
65
61
73
80
68
72
64
60
72
79
67
71
63
59
71
78
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
70
77
57
57
49
49
69
76
56
56
48
48
68
75
55
55
47
47
67
74
54
54
46
46
66
73
53
53
45
45
65
72
52
52
44
44
64
71
51
51
43
43
63
70
50
50
42
42
62
69
49
49
41
41
61
68
48
48
40
40
60
67
47
47
39
39
59
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
34
35
36
37
38
39
40
41
42
43
44
45
46
38
37
36
35
34
33
32
31
30
29
28
27
26
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
45
33
25
37
51
60
44
32
24
36
52
61
43
31
23
35
53
62
42
30
22
34
54
63
41
29
21
33
55
64
40
28
20
32
56
65
39
27
19
31
57
66
38
26
18
30
58
67
37
25
17
29
59
68
36
24
16
28
60
69
35
23
15
27
61
78
77
76
75
74
73
72
71
70
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
147
148
147
146
145
144
143
142
141
140
139
138
137
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
160
150
146
136
140
148
159
149
145
135
139
147
158
148
144
134
138
146
157
147
143
133
137
145
156
146
142
132
136
144
155
145
141
131
135
143
154
144
140
130
134
142
153
143
139
129
133
141
152
142
138
128
132
140
151
141
137
127
131
139
150
140
136
126
130
138
149
137
138
139
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
128
127
126
125
137
148
136
130
134
124
120
124
136
147
135
129
133
123
119
123
135
146
134
128
132
122
118
122
134
145
133
127
131
121
117
121
133
144
132
126
130
120
116
120
132
143
131
125
129
119
115
119
131
142
130
124
128
118
114
118
130
141
140
139
138
137
136
135
134
133
132
131
130
129
123
127
117
113
117
118
119
120
121
122
123
124
125
126
127
128
129
128
122
126
116
112
116
127
121
125
115
111
115
126
120
124
114
110
114
125
119
123
113
109
113
124
118
122
112
108
112
123
117
121
111
107
111
122
116
120
110
106
110
121
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
109
120
106
96
108
119
105
95
107
118
104
94
106
106
107
108
109
110
111
112
113
114
115
116
117
118
119
119
118
117
103
93
105
106
107
108
109
108
107
106
105
104
103
102
101
102
103
104
105
110
116
102
92
104
100
109
115
101
91
103
99
108
114
100
90
102
98
107
113
99
89
101
97
106
112
98
88
100
96
105
111
97
87
99
95
104
110
96
86
98
94
103
109
108
107
106
105
104
103
102
101
100
101
102
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
92
91
90
89
90
91
92
93
94
95
96
97
93
102
99
94
84
88
92
101
98
93
83
87
91
100
97
92
82
86
90
99
96
91
81
85
89
98
95
90
80
84
88
97
94
89
79
83
87
96
93
88
78
82
86
95
92
87
77
81
85
94
91
86
76
80
84
93
90
85
75
79
83
92
89
84
74
78
82
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
83
73
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
90
78
82
72
68
80
89
77
81
71
67
79
88
76
80
70
66
78
87
75
79
69
65
77
86
74
78
68
64
76
85
73
77
67
63
75
84
72
76
66
62
74
83
71
75
65
61
73
82
70
74
64
60
72
81
69
73
63
59
71
80
68
72
62
58
70
79
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
70
69
68
67
66
65
64
63
62
61
60
59
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
69
78
58
58
48
48
68
77
57
57
47
47
67
76
56
56
46
46
66
75
55
55
45
45
65
74
54
54
44
44
64
73
53
53
43
43
63
72
52
52
42
42
62
71
51
51
41
41
61
70
50
50
40
40
60
69
49
49
39
39
59
68
48
48
38
38
58
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
35
36
37
38
39
40
41
42
43
44
45
46
47
37
36
35
34
33
32
31
30
29
28
27
26
25
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
60
46
34
24
36
50
61
45
33
23
35
51
62
44
32
22
34
52
63
43
31
21
33
53
64
42
30
20
32
54
65
41
29
19
31
55
66
40
28
18
30
56
67
39
27
17
29
57
68
38
26
16
28
58
69
37
25
15
27
59
70
36
24
14
26
60
79
78
77
76
75
74
73
72
71
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
162
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
148
147
146
145
144
143
142
141
140
139
138
137
136
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
161
151
147
135
139
147
160
150
146
134
138
146
159
149
145
133
137
145
158
148
144
132
136
144
157
147
143
131
135
143
156
146
142
130
134
142
155
145
141
129
133
141
154
144
140
128
132
140
153
143
139
127
131
139
152
142
138
126
130
138
151
141
137
125
129
137
150
138
139
140
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
127
126
125
124
136
149
137
131
135
123
119
123
135
148
136
130
134
122
118
122
134
147
135
129
133
121
117
121
133
146
134
128
132
120
116
120
132
145
133
127
131
119
115
119
131
144
132
126
130
118
114
118
130
143
131
125
129
117
113
117
129
142
141
140
139
138
137
136
135
134
133
132
131
130
124
128
116
112
116
117
118
119
120
121
122
123
124
125
126
127
128
129
123
127
115
111
115
128
122
126
114
110
114
127
121
125
113
109
113
126
120
124
112
108
112
125
119
123
111
107
111
124
118
122
110
106
110
123
117
121
109
105
109
122
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
108
121
107
95
107
120
106
94
106
119
105
93
105
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
119
118
104
92
104
105
106
107
108
107
106
105
104
103
102
101
100
101
102
103
104
110
117
103
91
103
99
110
116
102
90
102
98
109
115
101
89
101
97
108
114
100
88
100
96
107
113
99
87
99
95
106
112
98
86
98
94
105
111
97
85
97
93
104
110
109
108
107
106
105
104
103
102
101
102
103
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
91
90
89
88
89
90
91
92
93
94
95
96
92
103
100
95
83
87
91
102
99
94
82
86
90
101
98
93
81
85
89
100
97
92
80
84
88
99
96
91
79
83
87
98
95
90
78
82
86
97
94
89
77
81
85
96
93
88
76
80
84
95
92
87
75
79
83
94
91
86
74
78
82
93
90
85
73
77
81
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
84
72
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
91
79
83
71
67
79
90
78
82
70
66
78
89
77
81
69
65
77
88
76
80
68
64
76
87
75
79
67
63
75
86
74
78
66
62
74
85
73
77
65
61
73
84
72
76
64
60
72
83
71
75
63
59
71
82
70
74
62
58
70
81
69
73
61
57
69
80
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
68
79
59
59
47
47
67
78
58
58
46
46
66
77
57
57
45
45
65
76
56
56
44
44
64
75
55
55
43
43
63
74
54
54
42
42
62
73
53
53
41
41
61
72
52
52
40
40
60
71
51
51
39
39
59
70
50
50
38
38
58
69
49
49
37
37
57
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
36
37
38
39
40
41
42
43
44
45
46
47
48
36
35
34
33
32
31
30
29
28
27
26
25
24
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
61
47
35
23
35
49
62
46
34
22
34
50
63
45
33
21
33
51
64
44
32
20
32
52
65
43
31
19
31
53
66
42
30
18
30
54
67
41
29
17
29
55
68
40
28
16
28
56
69
39
27
15
27
57
70
38
26
14
26
58
71
37
25
13
25
59
80
79
78
77
76
75
74
73
72
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
147
146
145
144
143
142
141
140
139
138
137
136
135
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
150
149
148
147
162
150
146
134
138
146
161
149
145
133
137
145
160
148
144
132
136
144
159
147
143
131
135
143
158
146
142
130
134
142
157
145
141
129
133
141
156
144
140
128
132
140
155
143
139
127
131
139
154
142
138
126
130
138
153
141
137
125
129
137
152
140
136
124
128
136
151
139
140
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
126
125
124
123
135
150
138
130
134
122
118
122
134
149
137
129
133
121
117
121
133
148
136
128
132
120
116
120
132
147
135
127
131
119
115
119
131
146
134
126
130
118
114
118
130
145
133
125
129
117
113
117
129
144
132
124
128
116
112
116
128
143
142
141
140
139
138
137
136
135
134
133
132
131
123
127
115
111
115
116
117
118
119
120
121
122
123
124
125
126
127
130
122
126
114
110
114
129
121
125
113
109
113
128
120
124
112
108
112
127
119
123
111
107
111
126
118
122
110
106
110
125
117
121
109
105
109
124
116
120
108
104
108
123
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
107
122
106
94
106
121
105
93
105
120
104
92
104
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
119
103
91
103
104
105
106
107
106
105
104
103
102
101
100
99
100
101
102
103
109
118
102
90
102
98
110
117
101
89
101
97
110
116
100
88
100
96
109
115
99
87
99
95
108
114
98
86
98
94
107
113
97
85
97
93
106
112
96
84
96
92
105
111
110
109
108
107
106
105
104
103
102
103
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
90
89
88
87
88
89
90
91
92
93
94
95
91
104
101
94
82
86
90
103
100
93
81
85
89
102
99
92
80
84
88
101
98
91
79
83
87
100
97
90
78
82
86
99
96
89
77
81
85
98
95
88
76
80
84
97
94
87
75
79
83
96
93
86
74
78
82
95
92
85
73
77
81
94
91
84
72
76
80
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
83
71
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
92
80
82
70
66
78
91
79
81
69
65
77
90
78
80
68
64
76
89
77
79
67
63
75
88
76
78
66
62
74
87
75
77
65
61
73
86
74
76
64
60
72
85
73
75
63
59
71
84
72
74
62
58
70
83
71
73
61
57
69
82
70
72
60
56
68
81
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
67
80
60
60
46
46
66
79
59
59
45
45
65
78
58
58
44
44
64
77
57
57
43
43
63
76
56
56
42
42
62
75
55
55
41
41
61
74
54
54
40
40
60
73
53
53
39
39
59
72
52
52
38
38
58
71
51
51
37
37
57
70
50
50
36
36
56
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
37
38
39
40
41
42
43
44
45
46
47
48
49
35
34
33
32
31
30
29
28
27
26
25
24
23
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
62
48
36
22
34
48
63
47
35
21
33
49
64
46
34
20
32
50
65
45
33
19
31
51
66
44
32
18
30
52
67
43
31
17
29
53
68
42
30
16
28
54
69
41
29
15
27
55
70
40
28
14
26
56
71
39
27
13
25
57
72
38
26
12
24
58
81
80
79
78
77
76
75
74
73
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
163
164
165
166
167
168
169
170
171
172
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
146
145
144
143
142
141
140
139
138
137
136
135
134
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
149
148
147
146
162
149
145
133
137
145
161
148
144
132
136
144
160
147
143
131
135
143
159
146
142
130
134
142
158
145
141
129
133
141
157
144
140
128
132
140
156
143
139
127
131
139
155
142
138
126
130
138
154
141
137
125
129
137
153
140
136
124
128
136
152
139
135
123
127
135
151
139
140
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
125
124
123
122
134
150
138
129
133
121
117
121
133
149
137
128
132
120
116
120
132
148
136
127
131
119
115
119
131
147
135
126
130
118
114
118
130
146
134
125
129
117
113
117
129
145
133
124
128
116
112
116
128
144
132
123
127
115
111
115
127
143
142
141
140
139
138
137
136
135
134
133
132
131
122
126
114
110
114
115
116
117
118
119
120
121
122
123
124
125
126
130
121
125
113
109
113
129
120
124
112
108
112
128
119
123
111
107
111
127
118
122
110
106
110
126
117
121
109
105
109
125
116
120
108
104
108
124
115
119
107
103
107
123
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
106
122
105
93
105
121
104
92
104
120
103
91
103
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
102
90
102
103
104
105
106
105
104
103
102
101
100
99
98
99
100
101
102
108
119
101
89
101
97
109
118
100
88
100
96
110
117
99
87
99
95
110
116
98
86
98
94
109
115
97
85
97
93
108
114
96
84
96
92
107
113
95
83
95
91
106
112
111
110
109
108
107
106
105
104
103
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
89
88
87
86
87
88
89
90
91
92
93
94
90
105
102
93
81
85
89
104
101
92
80
84
88
103
100
91
79
83
87
102
99
90
78
82
86
101
98
89
77
81
85
100
97
88
76
80
84
99
96
87
75
79
83
98
95
86
74
78
82
97
94
85
73
77
81
96
93
84
72
76
80
95
92
83
71
75
79
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
82
70
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
93
81
81
69
65
77
92
80
80
68
64
76
91
79
79
67
63
75
90
78
78
66
62
74
89
77
77
65
61
73
88
76
76
64
60
72
87
75
75
63
59
71
86
74
74
62
58
70
85
73
73
61
57
69
84
72
72
60
56
68
83
71
71
59
55
67
82
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
66
81
61
59
45
45
65
80
60
60
44
44
64
79
59
59
43
43
63
78
58
58
42
42
62
77
57
57
41
41
61
76
56
56
40
40
60
75
55
55
39
39
59
74
54
54
38
38
58
73
53
53
37
37
57
72
52
52
36
36
56
71
51
51
35
35
55
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
38
39
40
41
42
43
44
45
46
47
48
49
50
34
33
32
31
30
29
28
27
26
25
24
23
22
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
63
49
37
21
33
47
64
48
36
20
32
48
65
47
35
19
31
49
66
46
34
18
30
50
67
45
33
17
29
51
68
44
32
16
28
52
69
43
31
15
27
53
70
42
30
14
26
54
71
41
29
13
25
55
72
40
28
12
24
56
73
39
27
11
23
57
82
81
80
79
78
77
76
75
74
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
162
163
164
165
166
167
168
169
170
171
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
145
144
143
142
141
140
139
138
137
136
135
134
133
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
148
147
146
145
161
148
144
132
136
144
160
147
143
131
135
143
159
146
142
130
134
142
158
145
141
129
133
141
157
144
140
128
132
140
156
143
139
127
131
139
155
142
138
126
130
138
154
141
137
125
129
137
153
140
136
124
128
136
152
139
135
123
127
135
151
138
134
122
126
134
150
138
139
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
124
123
122
121
133
149
137
128
132
120
116
120
132
148
136
127
131
119
115
119
131
147
135
126
130
118
114
118
130
146
134
125
129
117
113
117
129
145
133
124
128
116
112
116
128
144
132
123
127
115
111
115
127
143
131
122
126
114
110
114
126
142
141
140
139
138
137
136
135
134
133
132
131
130
121
125
113
109
113
114
115
116
117
118
119
120
121
122
123
124
125
129
120
124
112
108
112
128
119
123
111
107
111
127
118
122
110
106
110
126
117
121
109
105
109
125
116
120
108
104
108
124
115
119
107
103
107
123
114
118
106
102
106
122
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
105
121
104
92
104
120
103
91
103
119
102
90
102
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
101
89
101
102
103
104
105
104
103
102
101
100
99
98
97
98
99
100
101
107
119
100
88
100
96
108
119
99
87
99
95
109
118
98
86
98
94
110
117
97
85
97
93
110
116
96
84
96
92
109
115
95
83
95
91
108
114
94
82
94
90
107
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
88
87
86
85
86
87
88
89
90
91
92
93
89
106
103
92
80
84
88
105
102
91
79
83
87
104
101
90
78
82
86
103
100
89
77
81
85
102
99
88
76
80
84
101
98
87
75
79
83
100
97
86
74
78
82
99
96
85
73
77
81
98
95
84
72
76
80
97
94
83
71
75
79
96
93
82
70
74
78
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
81
69
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
94
82
80
68
64
76
93
81
79
67
63
75
92
80
78
66
62
74
91
79
77
65
61
73
90
78
76
64
60
72
89
77
75
63
59
71
88
76
74
62
58
70
87
75
73
61
57
69
86
74
72
60
56
68
85
73
71
59
55
67
84
72
70
58
54
66
83
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
65
82
62
58
44
44
64
81
61
59
43
43
63
80
60
60
42
42
62
79
59
59
41
41
61
78
58
58
40
40
60
77
57
57
39
39
59
76
56
56
38
38
58
75
55
55
37
37
57
74
54
54
36
36
56
73
53
53
35
35
55
72
52
52
34
34
54
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
39
40
41
42
43
44
45
46
47
48
49
50
51
33
32
31
30
29
28
27
26
25
24
23
22
21
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
64
50
38
20
32
46
65
49
37
19
31
47
66
48
36
18
30
48
67
47
35
17
29
49
68
46
34
16
28
50
69
45
33
15
27
51
70
44
32
14
26
52
71
43
31
13
25
53
72
42
30
12
24
54
73
41
29
11
23
55
74
40
28
10
22
56
83
82
81
80
79
78
77
76
75
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
161
162
163
164
165
166
167
168
169
170
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
144
143
142
141
140
139
138
137
136
135
134
133
132
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
160
147
143
131
135
143
159
146
142
130
134
142
158
145
141
129
133
141
157
144
140
128
132
140
156
143
139
127
131
139
155
142
138
126
130
138
154
141
137
125
129
137
153
140
136
124
128
136
152
139
135
123
127
135
151
138
134
122
126
134
150
137
133
121
125
133
149
137
138
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
123
122
121
120
132
148
136
127
131
119
115
119
131
147
135
126
130
118
114
118
130
146
134
125
129
117
113
117
129
145
133
124
128
116
112
116
128
144
132
123
127
115
111
115
127
143
131
122
126
114
110
114
126
142
130
121
125
113
109
113
125
141
140
139
138
137
136
135
134
133
132
131
130
129
120
124
112
108
112
113
114
115
116
117
118
119
120
121
122
123
124
128
119
123
111
107
111
127
118
122
110
106
110
126
117
121
109
105
109
125
116
120
108
104
108
124
115
119
107
103
107
123
114
118
106
102
106
122
113
117
105
101
105
121
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
104
120
103
91
103
119
102
90
102
118
101
89
101
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
100
88
100
101
102
103
104
103
102
101
100
99
98
97
96
97
98
99
100
106
118
99
87
99
95
107
118
98
86
98
94
108
117
97
85
97
93
109
116
96
84
96
92
110
115
95
83
95
91
110
114
94
82
94
90
109
113
93
81
93
89
108
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
87
86
85
84
85
86
87
88
89
90
91
92
88
107
104
91
79
83
87
106
103
90
78
82
86
105
102
89
77
81
85
104
101
88
76
80
84
103
100
87
75
79
83
102
99
86
74
78
82
101
98
85
73
77
81
100
97
84
72
76
80
99
96
83
71
75
79
98
95
82
70
74
78
97
94
81
69
73
77
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
80
68
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
95
83
79
67
63
75
94
82
78
66
62
74
93
81
77
65
61
73
92
80
76
64
60
72
91
79
75
63
59
71
90
78
74
62
58
70
89
77
73
61
57
69
88
76
72
60
56
68
87
75
71
59
55
67
86
74
70
58
54
66
85
73
69
57
53
65
84
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
64
83
63
57
43
43
63
82
62
58
42
42
62
81
61
59
41
41
61
80
60
60
40
40
60
79
59
59
39
39
59
78
58
58
38
38
58
77
57
57
37
37
57
76
56
56
36
36
56
75
55
55
35
35
55
74
54
54
34
34
54
73
53
53
33
33
53
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
40
41
42
43
44
45
46
47
48
49
50
51
52
32
31
30
29
28
27
26
25
24
23
22
21
20
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
65
51
39
19
31
45
66
50
38
18
30
46
67
49
37
17
29
47
68
48
36
16
28
48
69
47
35
15
27
49
70
46
34
14
26
50
71
45
33
13
25
51
72
44
32
12
24
52
73
43
31
11
23
53
74
42
30
10
22
54
75
41
29
9
21
55
84
83
82
81
80
79
78
77
76
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
160
161
162
163
164
165
166
167
168
169
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
143
142
141
140
139
138
137
136
135
134
133
132
131
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
159
146
142
130
134
142
158
145
141
129
133
141
157
144
140
128
132
140
156
143
139
127
131
139
155
142
138
126
130
138
154
141
137
125
129
137
153
140
136
124
128
136
152
139
135
123
127
135
151
138
134
122
126
134
150
137
133
121
125
133
149
136
132
120
124
132
148
136
137
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
122
121
120
119
131
147
135
126
130
118
114
118
130
146
134
125
129
117
113
117
129
145
133
124
128
116
112
116
128
144
132
123
127
115
111
115
127
143
131
122
126
114
110
114
126
142
130
121
125
113
109
113
125
141
129
120
124
112
108
112
124
140
139
138
137
136
135
134
133
132
131
130
129
128
119
123
111
107
111
112
113
114
115
116
117
118
119
120
121
122
123
127
118
122
110
106
110
126
117
121
109
105
109
125
116
120
108
104
108
124
115
119
107
103
107
123
114
118
106
102
106
122
113
117
105
101
105
121
112
116
104
100
104
120
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
103
119
102
90
102
118
101
89
101
117
100
88
100
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
99
87
99
100
101
102
103
102
101
100
99
98
97
96
95
96
97
98
99
105
117
98
86
98
94
106
117
97
85
97
93
107
116
96
84
96
92
108
115
95
83
95
91
109
114
94
82
94
90
110
113
93
81
93
89
110
112
92
80
92
88
109
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
86
85
84
83
84
85
86
87
88
89
90
91
87
108
103
90
78
82
86
107
104
89
77
81
85
106
103
88
76
80
84
105
102
87
75
79
83
104
101
86
74
78
82
103
100
85
73
77
81
102
99
84
72
76
80
101
98
83
71
75
79
100
97
82
70
74
78
99
96
81
69
73
77
98
95
80
68
72
76
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
79
67
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
96
84
78
66
62
74
95
83
77
65
61
73
94
82
76
64
60
72
93
81
75
63
59
71
92
80
74
62
58
70
91
79
73
61
57
69
90
78
72
60
56
68
89
77
71
59
55
67
88
76
70
58
54
66
87
75
69
57
53
65
86
74
68
56
52
64
85
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
63
84
64
56
42
42
62
83
63
57
41
41
61
82
62
58
40
40
60
81
61
59
39
39
59
80
60
60
38
38
58
79
59
59
37
37
57
78
58
58
36
36
56
77
57
57
35
35
55
76
56
56
34
34
54
75
55
55
33
33
53
74
54
54
32
32
52
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
41
42
43
44
45
46
47
48
49
50
51
52
53
31
30
29
28
27
26
25
24
23
22
21
20
19
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
66
52
40
18
30
44
67
51
39
17
29
45
68
50
38
16
28
46
69
49
37
15
27
47
70
48
36
14
26
48
71
47
35
13
25
49
72
46
34
12
24
50
73
45
33
11
23
51
74
44
32
10
22
52
75
43
31
9
21
53
76
42
30
8
20
54
85
84
83
82
81
80
79
78
77
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
159
160
161
162
163
164
165
166
167
168
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
142
141
140
139
138
137
136
135
134
133
132
131
130
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
158
145
141
129
133
141
157
144
140
128
132
140
156
143
139
127
131
139
155
142
138
126
130
138
154
141
137
125
129
137
153
140
136
124
128
136
152
139
135
123
127
135
151
138
134
122
126
134
150
137
133
121
125
133
149
136
132
120
124
132
148
135
131
119
123
131
147
135
136
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
121
120
119
118
130
146
134
125
129
117
113
117
129
145
133
124
128
116
112
116
128
144
132
123
127
115
111
115
127
143
131
122
126
114
110
114
126
142
130
121
125
113
109
113
125
141
129
120
124
112
108
112
124
140
128
119
123
111
107
111
123
139
138
137
136
135
134
133
132
131
130
129
128
127
118
122
110
106
110
111
112
113
114
115
116
117
118
119
120
121
122
126
117
121
109
105
109
125
116
120
108
104
108
124
115
119
107
103
107
123
114
118
106
102
106
122
113
117
105
101
105
121
112
116
104
100
104
120
111
115
103
99
103
119
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
102
118
101
89
101
117
100
88
100
116
99
87
99
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
98
86
98
99
100
101
102
101
100
99
98
97
96
95
94
95
96
97
98
104
116
97
85
97
93
105
116
96
84
96
92
106
115
95
83
95
91
107
114
94
82
94
90
108
113
93
81
93
89
109
112
92
80
92
88
110
111
91
79
91
87
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
85
84
83
82
83
84
85
86
87
88
89
90
86
109
102
89
77
81
85
108
103
88
76
80
84
107
104
87
75
79
83
106
103
86
74
78
82
105
102
85
73
77
81
104
101
84
72
76
80
103
100
83
71
75
79
102
99
82
70
74
78
101
98
81
69
73
77
100
97
80
68
72
76
99
96
79
67
71
75
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
78
66
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
97
85
77
65
61
73
96
84
76
64
60
72
95
83
75
63
59
71
94
82
74
62
58
70
93
81
73
61
57
69
92
80
72
60
56
68
91
79
71
59
55
67
90
78
70
58
54
66
89
77
69
57
53
65
88
76
68
56
52
64
87
75
67
55
51
63
86
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
62
85
65
55
41
41
61
84
64
56
40
40
60
83
63
57
39
39
59
82
62
58
38
38
58
81
61
59
37
37
57
80
60
60
36
36
56
79
59
59
35
35
55
78
58
58
34
34
54
77
57
57
33
33
53
76
56
56
32
32
52
75
55
55
31
31
51
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
42
43
44
45
46
47
48
49
50
51
52
53
54
30
29
28
27
26
25
24
23
22
21
20
19
18
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
67
53
41
17
29
43
68
52
40
16
28
44
69
51
39
15
27
45
70
50
38
14
26
46
71
49
37
13
25
47
72
48
36
12
24
48
73
47
35
11
23
49
74
46
34
10
22
50
75
45
33
9
21
51
76
44
32
8
20
52
77
43
31
7
19
53
86
85
84
83
82
81
80
79
78
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
158
159
160
161
162
163
164
165
166
167
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
141
140
139
138
137
136
135
134
133
132
131
130
129
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
157
144
140
128
132
140
156
143
139
127
131
139
155
142
138
126
130
138
154
141
137
125
129
137
153
140
136
124
128
136
152
139
135
123
127
135
151
138
134
122
126
134
150
137
133
121
125
133
149
136
132
120
124
132
148
135
131
119
123
131
147
134
130
118
122
130
146
134
135
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
120
119
118
117
129
145
133
124
128
116
112
116
128
144
132
123
127
115
111
115
127
143
131
122
126
114
110
114
126
142
130
121
125
113
109
113
125
141
129
120
124
112
108
112
124
140
128
119
123
111
107
111
123
139
127
118
122
110
106
110
122
138
137
136
135
134
133
132
131
130
129
128
127
126
117
121
109
105
109
110
111
112
113
114
115
116
117
118
119
120
121
125
116
120
108
104
108
124
115
119
107
103
107
123
114
118
106
102
106
122
113
117
105
101
105
121
112
116
104
100
104
120
111
115
103
99
103
119
110
114
102
98
102
118
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
101
117
100
88
100
116
99
87
99
115
98
86
98
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
97
85
97
98
99
100
101
100
99
98
97
96
95
94
93
94
95
96
97
103
115
96
84
96
92
104
115
95
83
95
91
105
114
94
82
94
90
106
113
93
81
93
89
107
112
92
80
92
88
108
111
91
79
91
87
109
110
90
78
90
86
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
84
83
82
81
82
83
84
85
86
87
88
89
85
110
101
88
76
80
84
109
102
87
75
79
83
108
103
86
74
78
82
107
104
85
73
77
81
106
103
84
72
76
80
105
102
83
71
75
79
104
101
82
70
74
78
103
100
81
69
73
77
102
99
80
68
72
76
101
98
79
67
71
75
100
97
78
66
70
74
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
77
65
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
98
86
76
64
60
72
97
85
75
63
59
71
96
84
74
62
58
70
95
83
73
61
57
69
94
82
72
60
56
68
93
81
71
59
55
67
92
80
70
58
54
66
91
79
69
57
53
65
90
78
68
56
52
64
89
77
67
55
51
63
88
76
66
54
50
62
87
75
74
73
72
71
70
69
68
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
61
86
66
54
40
40
60
85
65
55
39
39
59
84
64
56
38
38
58
83
63
57
37
37
57
82
62
58
36
36
56
81
61
59
35
35
55
80
60
60
34
34
54
79
59
59
33
33
53
78
58
58
32
32
52
77
57
57
31
31
51
76
56
56
30
30
50
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
43
44
45
46
47
48
49
50
51
52
53
54
55
29
28
27
26
25
24
23
22
21
20
19
18
17
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
68
54
42
16
28
42
69
53
41
15
27
43
70
52
40
14
26
44
71
51
39
13
25
45
72
50
38
12
24
46
73
49
37
11
23
47
74
48
36
10
22
48
75
47
35
9
21
49
76
46
34
8
20
50
77
45
33
7
19
51
78
44
32
6
18
52
87
86
85
84
83
82
81
80
79
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
157
158
159
160
161
162
163
164
165
166
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
140
139
138
137
136
135
134
133
132
131
130
129
128
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
156
143
139
127
131
139
155
142
138
126
130
138
154
141
137
125
129
137
153
140
136
124
128
136
152
139
135
123
127
135
151
138
134
122
126
134
150
137
133
121
125
133
149
136
132
120
124
132
148
135
131
119
123
131
147
134
130
118
122
130
146
133
129
117
121
129
145
133
134
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
119
118
117
116
128
144
132
123
127
115
111
115
127
143
131
122
126
114
110
114
126
142
130
121
125
113
109
113
125
141
129
120
124
112
108
112
124
140
128
119
123
111
107
111
123
139
127
118
122
110
106
110
122
138
126
117
121
109
105
109
121
137
136
135
134
133
132
131
130
129
128
127
126
125
116
120
108
104
108
109
110
111
112
113
114
115
116
117
118
119
120
124
115
119
107
103
107
123
114
118
106
102
106
122
113
117
105
101
105
121
112
116
104
100
104
120
111
115
103
99
103
119
110
114
102
98
102
118
109
113
101
97
101
117
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
100
116
99
87
99
115
98
86
98
114
97
85
97
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
96
84
96
97
98
99
100
99
98
97
96
95
94
93
92
93
94
95
96
102
114
95
83
95
91
103
114
94
82
94
90
104
113
93
81
93
89
105
112
92
80
92
88
106
111
91
79
91
87
107
110
90
78
90
86
108
109
89
77
89
85
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
83
82
81
80
81
82
83
84
85
86
87
88
84
110
100
87
75
79
83
110
101
86
74
78
82
109
102
85
73
77
81
108
103
84
72
76
80
107
104
83
71
75
79
106
103
82
70
74
78
105
102
81
69
73
77
104
101
80
68
72
76
103
100
79
67
71
75
102
99
78
66
70
74
101
98
77
65
69
73
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
76
64
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
99
87
75
63
59
71
98
86
74
62
58
70
97
85
73
61
57
69
96
84
72
60
56
68
95
83
71
59
55
67
94
82
70
58
54
66
93
81
69
57
53
65
92
80
68
56
52
64
91
79
67
55
51
63
90
78
66
54
50
62
89
77
65
53
49
61
88
76
75
74
73
72
71
70
69
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
60
87
67
53
39
39
59
86
66
54
38
38
58
85
65
55
37
37
57
84
64
56
36
36
56
83
63
57
35
35
55
82
62
58
34
34
54
81
61
59
33
33
53
80
60
60
32
32
52
79
59
59
31
31
51
78
58
58
30
30
50
77
57
57
29
29
49
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
44
45
46
47
48
49
50
51
52
53
54
55
56
28
27
26
25
24
23
22
21
20
19
18
17
16
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
69
55
43
15
27
41
70
54
42
14
26
42
71
53
41
13
25
43
72
52
40
12
24
44
73
51
39
11
23
45
74
50
38
10
22
46
75
49
37
9
21
47
76
48
36
8
20
48
77
47
35
7
19
49
78
46
34
6
18
50
79
45
33
5
17
51
88
87
86
85
84
83
82
81
80
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
156
157
158
159
160
161
162
163
164
165
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
139
138
137
136
135
134
133
132
131
130
129
128
127
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
155
142
138
126
130
138
154
141
137
125
129
137
153
140
136
124
128
136
152
139
135
123
127
135
151
138
134
122
126
134
150
137
133
121
125
133
149
136
132
120
124
132
148
135
131
119
123
131
147
134
130
118
122
130
146
133
129
117
121
129
145
132
128
116
120
128
144
132
133
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
118
117
116
115
127
143
131
122
126
114
110
114
126
142
130
121
125
113
109
113
125
141
129
120
124
112
108
112
124
140
128
119
123
111
107
111
123
139
127
118
122
110
106
110
122
138
126
117
121
109
105
109
121
137
125
116
120
108
104
108
120
136
135
134
133
132
131
130
129
128
127
126
125
124
115
119
107
103
107
108
109
110
111
112
113
114
115
116
117
118
119
123
114
118
106
102
106
122
113
117
105
101
105
121
112
116
104
100
104
120
111
115
103
99
103
119
110
114
102
98
102
118
109
113
101
97
101
117
108
112
100
96
100
116
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
99
115
98
86
98
114
97
85
97
113
96
84
96
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
95
83
95
96
97
98
99
98
97
96
95
94
93
92
91
92
93
94
95
101
113
94
82
94
90
102
113
93
81
93
89
103
112
92
80
92
88
104
111
91
79
91
87
105
110
90
78
90
86
106
109
89
77
89
85
107
108
88
76
88
84
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
82
81
80
79
80
81
82
83
84
85
86
87
83
109
99
86
74
78
82
110
100
85
73
77
81
110
101
84
72
76
80
109
102
83
71
75
79
108
103
82
70
74
78
107
104
81
69
73
77
106
103
80
68
72
76
105
102
79
67
71
75
104
101
78
66
70
74
103
100
77
65
69
73
102
99
76
64
68
72
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
75
63
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
100
88
74
62
58
70
99
87
73
61
57
69
98
86
72
60
56
68
97
85
71
59
55
67
96
84
70
58
54
66
95
83
69
57
53
65
94
82
68
56
52
64
93
81
67
55
51
63
92
80
66
54
50
62
91
79
65
53
49
61
90
78
64
52
48
60
89
77
76
75
74
73
72
71
70
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
59
88
68
52
38
38
58
87
67
53
37
37
57
86
66
54
36
36
56
85
65
55
35
35
55
84
64
56
34
34
54
83
63
57
33
33
53
82
62
58
32
32
52
81
61
59
31
31
51
80
60
60
30
30
50
79
59
59
29
29
49
78
58
58
28
28
48
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
45
46
47
48
49
50
51
52
53
54
55
56
57
27
26
25
24
23
22
21
20
19
18
17
16
15
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
70
56
44
14
26
40
71
55
43
13
25
41
72
54
42
12
24
42
73
53
41
11
23
43
74
52
40
10
22
44
75
51
39
9
21
45
76
50
38
8
20
46
77
49
37
7
19
47
78
48
36
6
18
48
79
47
35
5
17
49
80
46
34
4
16
50
89
88
87
86
85
84
83
82
81
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
155
156
157
158
159
160
161
162
163
164
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
138
137
136
135
134
133
132
131
130
129
128
127
126
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
154
141
137
125
129
137
153
140
136
124
128
136
152
139
135
123
127
135
151
138
134
122
126
134
150
137
133
121
125
133
149
136
132
120
124
132
148
135
131
119
123
131
147
134
130
118
122
130
146
133
129
117
121
129
145
132
128
116
120
128
144
131
127
115
119
127
143
131
132
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
117
116
115
114
126
142
130
121
125
113
109
113
125
141
129
120
124
112
108
112
124
140
128
119
123
111
107
111
123
139
127
118
122
110
106
110
122
138
126
117
121
109
105
109
121
137
125
116
120
108
104
108
120
136
124
115
119
107
103
107
119
135
134
133
132
131
130
129
128
127
126
125
124
123
114
118
106
102
106
107
108
109
110
111
112
113
114
115
116
117
118
122
113
117
105
101
105
121
112
116
104
100
104
120
111
115
103
99
103
119
110
114
102
98
102
118
109
113
101
97
101
117
108
112
100
96
100
116
107
111
99
95
99
115
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
98
114
97
85
97
113
96
84
96
112
95
83
95
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
94
82
94
95
96
97
98
97
96
95
94
93
92
91
90
91
92
93
94
100
112
93
81
93
89
101
112
92
80
92
88
102
111
91
79
91
87
103
110
90
78
90
86
104
109
89
77
89
85
105
108
88
76
88
84
106
107
87
75
87
83
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
81
80
79
78
79
80
81
82
83
84
85
86
82
108
98
85
73
77
81
109
99
84
72
76
80
110
100
83
71
75
79
110
101
82
70
74
78
109
102
81
69
73
77
108
103
80
68
72
76
107
104
79
67
71
75
106
103
78
66
70
74
105
102
77
65
69
73
104
101
76
64
68
72
103
100
75
63
67
71
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
74
62
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
101
89
73
61
57
69
100
88
72
60
56
68
99
87
71
59
55
67
98
86
70
58
54
66
97
85
69
57
53
65
96
84
68
56
52
64
95
83
67
55
51
63
94
82
66
54
50
62
93
81
65
53
49
61
92
80
64
52
48
60
91
79
63
51
47
59
90
78
77
76
75
74
73
72
71
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
58
89
69
51
37
37
57
88
68
52
36
36
56
87
67
53
35
35
55
86
66
54
34
34
54
85
65
55
33
33
53
84
64
56
32
32
52
83
63
57
31
31
51
82
62
58
30
30
50
81
61
59
29
29
49
80
60
60
28
28
48
79
59
59
27
27
47
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
46
47
48
49
50
51
52
53
54
55
56
57
58
26
25
24
23
22
21
20
19
18
17
16
15
14
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
71
57
45
13
25
39
72
56
44
12
24
40
73
55
43
11
23
41
74
54
42
10
22
42
75
53
41
9
21
43
76
52
40
8
20
44
77
51
39
7
19
45
78
50
38
6
18
46
79
49
37
5
17
47
80
48
36
4
16
48
81
47
35
3
15
49
90
89
88
87
86
85
84
83
82
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
154
155
156
157
158
159
160
161
162
163
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
137
136
135
134
133
132
131
130
129
128
127
126
125
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
153
140
136
124
128
136
152
139
135
123
127
135
151
138
134
122
126
134
150
137
133
121
125
133
149
136
132
120
124
132
148
135
131
119
123
131
147
134
130
118
122
130
146
133
129
117
121
129
145
132
128
116
120
128
144
131
127
115
119
127
143
130
126
114
118
126
142
130
131
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
116
115
114
113
125
141
129
120
124
112
108
112
124
140
128
119
123
111
107
111
123
139
127
118
122
110
106
110
122
138
126
117
121
109
105
109
121
137
125
116
120
108
104
108
120
136
124
115
119
107
103
107
119
135
123
114
118
106
102
106
118
134
133
132
131
130
129
128
127
126
125
124
123
122
113
117
105
101
105
106
107
108
109
110
111
112
113
114
115
116
117
121
112
116
104
100
104
120
111
115
103
99
103
119
110
114
102
98
102
118
109
113
101
97
101
117
108
112
100
96
100
116
107
111
99
95
99
115
106
110
98
94
98
114
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
97
113
96
84
96
112
95
83
95
111
94
82
94
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
93
81
93
94
95
96
97
96
95
94
93
92
91
90
89
90
91
92
93
99
111
92
80
92
88
100
111
91
79
91
87
101
110
90
78
90
86
102
109
89
77
89
85
103
108
88
76
88
84
104
107
87
75
87
83
105
106
86
74
86
82
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
80
79
78
77
78
79
80
81
82
83
84
85
81
107
97
84
72
76
80
108
98
83
71
75
79
109
99
82
70
74
78
110
100
81
69
73
77
110
101
80
68
72
76
109
102
79
67
71
75
108
103
78
66
70
74
107
104
77
65
69
73
106
103
76
64
68
72
105
102
75
63
67
71
104
101
74
62
66
70
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
73
61
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
102
90
72
60
56
68
101
89
71
59
55
67
100
88
70
58
54
66
99
87
69
57
53
65
98
86
68
56
52
64
97
85
67
55
51
63
96
84
66
54
50
62
95
83
65
53
49
61
94
82
64
52
48
60
93
81
63
51
47
59
92
80
62
50
46
58
91
79
78
77
76
75
74
73
72
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
57
90
70
50
36
36
56
89
69
51
35
35
55
88
68
52
34
34
54
87
67
53
33
33
53
86
66
54
32
32
52
85
65
55
31
31
51
84
64
56
30
30
50
83
63
57
29
29
49
82
62
58
28
28
48
81
61
59
27
27
47
80
60
60
26
26
46
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
47
48
49
50
51
52
53
54
55
56
57
58
59
25
24
23
22
21
20
19
18
17
16
15
14
13
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
72
58
46
12
24
38
73
57
45
11
23
39
74
56
44
10
22
40
75
55
43
9
21
41
76
54
42
8
20
42
77
53
41
7
19
43
78
52
40
6
18
44
79
51
39
5
17
45
80
50
38
4
16
46
81
49
37
3
15
47
82
48
36
2
14
48
91
90
89
88
87
86
85
84
83
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
136
135
134
133
132
131
130
129
128
127
126
125
124
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
152
139
135
123
127
135
151
138
134
122
126
134
150
137
133
121
125
133
149
136
132
120
124
132
148
135
131
119
123
131
147
134
130
118
122
130
146
133
129
117
121
129
145
132
128
116
120
128
144
131
127
115
119
127
143
130
126
114
118
126
142
129
125
113
117
125
141
129
130
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
115
114
113
112
124
140
128
119
123
111
107
111
123
139
127
118
122
110
106
110
122
138
126
117
121
109
105
109
121
137
125
116
120
108
104
108
120
136
124
115
119
107
103
107
119
135
123
114
118
106
102
106
118
134
122
113
117
105
101
105
117
133
132
131
130
129
128
127
126
125
124
123
122
121
112
116
104
100
104
105
106
107
108
109
110
111
112
113
114
115
116
120
111
115
103
99
103
119
110
114
102
98
102
118
109
113
101
97
101
117
108
112
100
96
100
116
107
111
99
95
99
115
106
110
98
94
98
114
105
109
97
93
97
113
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
96
112
95
83
95
111
94
82
94
110
93
81
93
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
92
80
92
93
94
95
96
95
94
93
92
91
90
89
88
89
90
91
92
98
110
91
79
91
87
99
110
90
78
90
86
100
109
89
77
89
85
101
108
88
76
88
84
102
107
87
75
87
83
103
106
86
74
86
82
104
105
85
73
85
81
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
79
78
77
76
77
78
79
80
81
82
83
84
80
106
96
83
71
75
79
107
97
82
70
74
78
108
98
81
69
73
77
109
99
80
68
72
76
110
100
79
67
71
75
110
101
78
66
70
74
109
102
77
65
69
73
108
103
76
64
68
72
107
104
75
63
67
71
106
103
74
62
66
70
105
102
73
61
65
69
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
72
60
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
103
91
71
59
55
67
102
90
70
58
54
66
101
89
69
57
53
65
100
88
68
56
52
64
99
87
67
55
51
63
98
86
66
54
50
62
97
85
65
53
49
61
96
84
64
52
48
60
95
83
63
51
47
59
94
82
62
50
46
58
93
81
61
49
45
57
92
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
56
91
71
49
35
35
55
90
70
50
34
34
54
89
69
51
33
33
53
88
68
52
32
32
52
87
67
53
31
31
51
86
66
54
30
30
50
85
65
55
29
29
49
84
64
56
28
28
48
83
63
57
27
27
47
82
62
58
26
26
46
81
61
59
25
25
45
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
48
49
50
51
52
53
54
55
56
57
58
59
60
24
23
22
21
20
19
18
17
16
15
14
13
12
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
73
59
47
11
23
37
74
58
46
10
22
38
75
57
45
9
21
39
76
56
44
8
20
40
77
55
43
7
19
41
78
54
42
6
18
42
79
53
41
5
17
43
80
52
40
4
16
44
81
51
39
3
15
45
82
50
38
2
14
46
83
49
37
1
13
47
92
91
90
89
88
87
86
85
84
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
135
134
133
132
131
130
129
128
127
126
125
124
123
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
151
140
134
122
126
134
150
139
133
121
125
133
149
138
132
120
124
132
148
137
131
119
123
131
147
136
130
118
122
130
146
135
129
117
121
129
145
134
128
116
120
128
144
133
127
115
119
127
143
132
126
114
118
126
142
131
125
113
117
125
141
130
124
112
116
124
140
128
129
130
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
114
113
112
111
123
139
127
120
122
110
106
110
122
138
126
119
121
109
105
109
121
137
125
118
120
108
104
108
120
136
124
117
119
107
103
107
119
135
123
116
118
106
102
106
118
134
122
115
117
105
101
105
117
133
121
114
116
104
100
104
116
132
131
130
129
128
127
126
125
124
123
122
121
120
113
115
103
99
103
104
105
106
107
108
109
110
111
112
113
114
115
119
112
114
102
98
102
118
111
113
101
97
101
117
110
112
100
96
100
116
109
111
99
95
99
115
108
110
98
94
98
114
107
109
97
93
97
113
106
108
96
92
96
112
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
95
111
96
82
94
110
95
81
93
109
94
80
92
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
93
79
91
92
93
94
95
94
93
92
91
90
89
88
87
88
89
90
91
97
109
92
78
90
86
98
110
91
77
89
85
99
110
90
76
88
84
100
109
89
75
87
83
101
108
88
74
86
82
102
107
87
73
85
81
103
106
86
72
84
80
104
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
78
77
76
75
76
77
78
79
80
81
82
83
79
105
97
84
70
74
78
106
98
83
69
73
77
107
99
82
68
72
76
108
100
81
67
71
75
109
101
80
66
70
74
110
102
79
65
69
73
110
103
78
64
68
72
109
104
77
63
67
71
108
105
76
62
66
70
107
104
75
61
65
69
106
103
74
60
64
68
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
73
59
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
104
92
72
58
54
66
103
91
71
57
53
65
102
90
70
56
52
64
101
89
69
55
51
63
100
88
68
54
50
62
99
87
67
53
49
61
98
86
66
52
48
60
97
85
65
51
47
59
96
84
64
50
46
58
95
83
63
49
45
57
94
82
62
48
44
56
93
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
55
92
72
50
36
34
54
91
71
51
35
33
53
90
70
52
34
32
52
89
69
53
33
31
51
88
68
54
32
30
50
87
67
55
31
29
49
86
66
56
30
28
48
85
65
57
29
27
47
84
64
58
28
26
46
83
63
59
27
25
45
82
62
60
26
24
44
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
49
50
51
52
53
54
55
56
57
58
59
60
61
25
24
23
22
21
20
19
18
17
16
15
14
13
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
74
60
48
12
22
36
75
59
47
11
21
37
76
58
46
10
20
38
77
57
45
9
19
39
78
56
44
8
18
40
79
55
43
7
17
41
80
54
42
6
16
42
81
53
41
5
15
43
82
52
40
4
14
44
83
51
39
3
13
45
84
50
38
2
12
46
93
92
91
90
89
88
87
86
85
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
134
133
132
131
130
129
128
127
126
125
124
123
122
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
150
141
133
121
125
133
149
140
132
120
124
132
148
139
131
119
123
131
147
138
130
118
122
130
146
137
129
117
121
129
145
136
128
116
120
128
144
135
127
115
119
127
143
134
126
114
118
126
142
133
125
113
117
125
141
132
124
112
116
124
140
131
123
111
115
123
139
127
128
129
130
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
113
112
111
110
122
138
126
121
121
109
105
109
121
137
125
120
120
108
104
108
120
136
124
119
119
107
103
107
119
135
123
118
118
106
102
106
118
134
122
117
117
105
101
105
117
133
121
116
116
104
100
104
116
132
120
115
115
103
99
103
115
131
130
129
128
127
126
125
124
123
122
121
120
119
114
114
102
98
102
103
104
105
106
107
108
109
110
111
112
113
114
118
113
113
101
97
101
117
112
112
100
96
100
116
111
111
99
95
99
115
110
110
98
94
98
114
109
109
97
93
97
113
108
108
96
92
96
112
107
107
95
91
95
111
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
94
110
97
81
93
109
96
80
92
108
95
79
91
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
94
78
90
91
92
93
94
93
92
91
90
89
88
87
86
87
88
89
90
96
108
93
77
89
85
97
109
92
76
88
84
98
110
91
75
87
83
99
110
90
74
86
82
100
109
89
73
85
81
101
108
88
72
84
80
102
107
87
71
83
79
103
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
77
76
75
74
75
76
77
78
79
80
81
82
78
104
98
85
69
73
77
105
99
84
68
72
76
106
100
83
67
71
75
107
101
82
66
70
74
108
102
81
65
69
73
109
103
80
64
68
72
110
104
79
63
67
71
110
105
78
62
66
70
109
106
77
61
65
69
108
105
76
60
64
68
107
104
75
59
63
67
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
74
58
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
105
93
73
57
53
65
104
92
72
56
52
64
103
91
71
55
51
63
102
90
70
54
50
62
101
89
69
53
49
61
100
88
68
52
48
60
99
87
67
51
47
59
98
86
66
50
46
58
97
85
65
49
45
57
96
84
64
48
44
56
95
83
63
47
43
55
94
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
54
93
73
51
37
33
53
92
72
52
36
32
52
91
71
53
35
31
51
90
70
54
34
30
50
89
69
55
33
29
49
88
68
56
32
28
48
87
67
57
31
27
47
86
66
58
30
26
46
85
65
59
29
25
45
84
64
60
28
24
44
83
63
61
27
23
43
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
50
51
52
53
54
55
56
57
58
59
60
61
62
26
25
24
23
22
21
20
19
18
17
16
15
14
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
75
61
49
13
21
35
76
60
48
12
20
36
77
59
47
11
19
37
78
58
46
10
18
38
79
57
45
9
17
39
80
56
44
8
16
40
81
55
43
7
15
41
82
54
42
6
14
42
83
53
41
5
13
43
84
52
40
4
12
44
85
51
39
3
11
45
94
93
92
91
90
89
88
87
86
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
133
132
131
130
129
128
127
126
125
124
123
122
121
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
149
142
132
120
124
132
148
141
131
119
123
131
147
140
130
118
122
130
146
139
129
117
121
129
145
138
128
116
120
128
144
137
127
115
119
127
143
136
126
114
118
126
142
135
125
113
117
125
141
134
124
112
116
124
140
133
123
111
115
123
139
132
122
110
114
122
138
126
127
128
129
130
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
112
111
110
109
121
137
125
122
120
108
104
108
120
136
124
121
119
107
103
107
119
135
123
120
118
106
102
106
118
134
122
119
117
105
101
105
117
133
121
118
116
104
100
104
116
132
120
117
115
103
99
103
115
131
119
116
114
102
98
102
114
130
129
128
127
126
125
124
123
122
121
120
119
118
115
113
101
97
101
102
103
104
105
106
107
108
109
110
111
112
113
117
114
112
100
96
100
116
113
111
99
95
99
115
112
110
98
94
98
114
111
109
97
93
97
113
110
108
96
92
96
112
109
107
95
91
95
111
108
106
94
90
94
110
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
93
109
98
80
92
108
97
79
91
107
96
78
90
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
95
77
89
90
91
92
93
92
91
90
89
88
87
86
85
86
87
88
89
95
107
94
76
88
84
96
108
93
75
87
83
97
109
92
74
86
82
98
110
91
73
85
81
99
110
90
72
84
80
100
109
89
71
83
79
101
108
88
70
82
78
102
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
76
75
74
73
74
75
76
77
78
79
80
81
77
103
99
86
68
72
76
104
100
85
67
71
75
105
101
84
66
70
74
106
102
83
65
69
73
107
103
82
64
68
72
108
104
81
63
67
71
109
105
80
62
66
70
110
106
79
61
65
69
110
107
78
60
64
68
109
106
77
59
63
67
108
105
76
58
62
66
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
75
57
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
106
94
74
56
52
64
105
93
73
55
51
63
104
92
72
54
50
62
103
91
71
53
49
61
102
90
70
52
48
60
101
89
69
51
47
59
100
88
68
50
46
58
99
87
67
49
45
57
98
86
66
48
44
56
97
85
65
47
43
55
96
84
64
46
42
54
95
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
53
94
74
52
38
32
52
93
73
53
37
31
51
92
72
54
36
30
50
91
71
55
35
29
49
90
70
56
34
28
48
89
69
57
33
27
47
88
68
58
32
26
46
87
67
59
31
25
45
86
66
60
30
24
44
85
65
61
29
23
43
84
64
62
28
22
42
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
51
52
53
54
55
56
57
58
59
60
61
62
63
27
26
25
24
23
22
21
20
19
18
17
16
15
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
76
62
50
14
20
34
77
61
49
13
19
35
78
60
48
12
18
36
79
59
47
11
17
37
80
58
46
10
16
38
81
57
45
9
15
39
82
56
44
8
14
40
83
55
43
7
13
41
84
54
42
6
12
42
85
53
41
5
11
43
86
52
40
4
10
44
95
94
93
92
91
90
89
88
87
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
132
131
130
129
128
127
126
125
124
123
122
121
120
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
148
143
131
119
123
131
147
142
130
118
122
130
146
141
129
117
121
129
145
140
128
116
120
128
144
139
127
115
119
127
143
138
126
114
118
126
142
137
125
113
117
125
141
136
124
112
116
124
140
135
123
111
115
123
139
134
122
110
114
122
138
133
121
109
113
121
137
125
126
127
128
129
130
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
111
110
109
108
120
136
124
123
119
107
103
107
119
135
123
122
118
106
102
106
118
134
122
121
117
105
101
105
117
133
121
120
116
104
100
104
116
132
120
119
115
103
99
103
115
131
119
118
114
102
98
102
114
130
118
117
113
101
97
101
113
129
128
127
126
125
124
123
122
121
120
119
118
117
116
112
100
96
100
101
102
103
104
105
106
107
108
109
110
111
112
116
115
111
99
95
99
115
114
110
98
94
98
114
113
109
97
93
97
113
112
108
96
92
96
112
111
107
95
91
95
111
110
106
94
90
94
110
109
105
93
89
93
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
92
108
99
79
91
107
98
78
90
106
97
77
89
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
96
76
88
89
90
91
92
91
90
89
88
87
86
85
84
85
86
87
88
94
106
95
75
87
83
95
107
94
74
86
82
96
108
93
73
85
81
97
109
92
72
84
80
98
110
91
71
83
79
99
110
90
70
82
78
100
109
89
69
81
77
101
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
75
74
73
72
73
74
75
76
77
78
79
80
76
102
100
87
67
71
75
103
101
86
66
70
74
104
102
85
65
69
73
105
103
84
64
68
72
106
104
83
63
67
71
107
105
82
62
66
70
108
106
81
61
65
69
109
107
80
60
64
68
110
108
79
59
63
67
110
107
78
58
62
66
109
106
77
57
61
65
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
76
56
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
107
95
75
55
51
63
106
94
74
54
50
62
105
93
73
53
49
61
104
92
72
52
48
60
103
91
71
51
47
59
102
90
70
50
46
58
101
89
69
49
45
57
100
88
68
48
44
56
99
87
67
47
43
55
98
86
66
46
42
54
97
85
65
45
41
53
96
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
52
95
75
53
39
31
51
94
74
54
38
30
50
93
73
55
37
29
49
92
72
56
36
28
48
91
71
57
35
27
47
90
70
58
34
26
46
89
69
59
33
25
45
88
68
60
32
24
44
87
67
61
31
23
43
86
66
62
30
22
42
85
65
63
29
21
41
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
52
53
54
55
56
57
58
59
60
61
62
63
64
28
27
26
25
24
23
22
21
20
19
18
17
16
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
77
63
51
15
19
33
78
62
50
14
18
34
79
61
49
13
17
35
80
60
48
12
16
36
81
59
47
11
15
37
82
58
46
10
14
38
83
57
45
9
13
39
84
56
44
8
12
40
85
55
43
7
11
41
86
54
42
6
10
42
87
53
41
5
9
43
96
95
94
93
92
91
90
89
88
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
148
149
150
151
152
153
154
155
156
157
158
159
160
161
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
131
130
129
128
127
126
125
124
123
122
121
120
119
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
147
142
130
118
122
130
146
141
129
117
121
129
145
140
128
116
120
128
144
139
127
115
119
127
143
138
126
114
118
126
142
137
125
113
117
125
141
136
124
112
116
124
140
135
123
111
115
123
139
134
122
110
114
122
138
133
121
109
113
121
137
132
120
108
112
120
136
124
125
126
127
128
129
130
130
129
128
127
126
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
110
109
108
107
119
135
123
124
118
106
102
106
118
134
122
123
117
105
101
105
117
133
121
122
116
104
100
104
116
132
120
121
115
103
99
103
115
131
119
120
114
102
98
102
114
130
118
119
113
101
97
101
113
129
117
118
112
100
96
100
112
128
127
126
125
124
123
122
121
120
119
118
117
116
117
111
99
95
99
100
101
102
103
104
105
106
107
108
109
110
111
115
116
110
98
94
98
114
115
109
97
93
97
113
114
108
96
92
96
112
113
107
95
91
95
111
112
106
94
90
94
110
111
105
93
89
93
109
110
104
92
88
92
108
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
91
107
100
78
90
106
99
77
89
105
98
76
88
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
97
75
87
88
89
90
91
90
89
88
87
86
85
84
83
84
85
86
87
93
105
96
74
86
82
94
106
95
73
85
81
95
107
94
72
84
80
96
108
93
71
83
79
97
109
92
70
82
78
98
110
91
69
81
77
99
110
90
68
80
76
100
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
74
73
72
71
72
73
74
75
76
77
78
79
75
101
101
88
66
70
74
102
102
87
65
69
73
103
103
86
64
68
72
104
104
85
63
67
71
105
105
84
62
66
70
106
106
83
61
65
69
107
107
82
60
64
68
108
108
81
59
63
67
109
109
80
58
62
66
110
108
79
57
61
65
110
107
78
56
60
64
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
77
55
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
108
96
76
54
50
62
107
95
75
53
49
61
106
94
74
52
48
60
105
93
73
51
47
59
104
92
72
50
46
58
103
91
71
49
45
57
102
90
70
48
44
56
101
89
69
47
43
55
100
88
68
46
42
54
99
87
67
45
41
53
98
86
66
44
40
52
97
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
51
96
76
54
40
30
50
95
75
55
39
29
49
94
74
56
38
28
48
93
73
57
37
27
47
92
72
58
36
26
46
91
71
59
35
25
45
90
70
60
34
24
44
89
69
61
33
23
43
88
68
62
32
22
42
87
67
63
31
21
41
86
66
64
30
20
40
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
53
54
55
56
57
58
59
60
61
62
63
64
65
29
28
27
26
25
24
23
22
21
20
19
18
17
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
78
64
52
16
18
32
79
63
51
15
17
33
80
62
50
14
16
34
81
61
49
13
15
35
82
60
48
12
14
36
83
59
47
11
13
37
84
58
46
10
12
38
85
57
45
9
11
39
86
56
44
8
10
40
87
55
43
7
9
41
88
54
42
6
8
42
97
96
95
94
93
92
91
90
89
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
147
148
149
150
151
152
153
154
155
156
157
158
159
160
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
130
129
128
127
126
125
124
123
122
121
120
119
118
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
146
141
129
117
121
129
145
140
128
116
120
128
144
139
127
115
119
127
143
138
126
114
118
126
142
137
125
113
117
125
141
136
124
112
116
124
140
135
123
111
115
123
139
134
122
110
114
122
138
133
121
109
113
121
137
132
120
108
112
120
136
131
119
107
111
119
135
123
124
125
126
127
128
129
130
130
129
128
127
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
109
108
107
106
118
134
122
125
117
105
101
105
117
133
121
124
116
104
100
104
116
132
120
123
115
103
99
103
115
131
119
122
114
102
98
102
114
130
118
121
113
101
97
101
113
129
117
120
112
100
96
100
112
128
116
119
111
99
95
99
111
127
126
125
124
123
122
121
120
119
118
117
116
115
118
110
98
94
98
99
100
101
102
103
104
105
106
107
108
109
110
114
117
109
97
93
97
113
116
108
96
92
96
112
115
107
95
91
95
111
114
106
94
90
94
110
113
105
93
89
93
109
112
104
92
88
92
108
111
103
91
87
91
107
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
90
106
101
77
89
105
100
76
88
104
99
75
87
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
98
74
86
87
88
89
90
89
88
87
86
85
84
83
82
83
84
85
86
92
104
97
73
85
81
93
105
96
72
84
80
94
106
95
71
83
79
95
107
94
70
82
78
96
108
93
69
81
77
97
109
92
68
80
76
98
110
91
67
79
75
99
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
73
72
71
70
71
72
73
74
75
76
77
78
74
100
102
89
65
69
73
101
103
88
64
68
72
102
104
87
63
67
71
103
105
86
62
66
70
104
106
85
61
65
69
105
107
84
60
64
68
106
108
83
59
63
67
107
109
82
58
62
66
108
110
81
57
61
65
109
109
80
56
60
64
110
108
79
55
59
63
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
78
54
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
109
97
77
53
49
61
108
96
76
52
48
60
107
95
75
51
47
59
106
94
74
50
46
58
105
93
73
49
45
57
104
92
72
48
44
56
103
91
71
47
43
55
102
90
70
46
42
54
101
89
69
45
41
53
100
88
68
44
40
52
99
87
67
43
39
51
98
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
50
97
77
55
41
29
49
96
76
56
40
28
48
95
75
57
39
27
47
94
74
58
38
26
46
93
73
59
37
25
45
92
72
60
36
24
44
91
71
61
35
23
43
90
70
62
34
22
42
89
69
63
33
21
41
88
68
64
32
20
40
87
67
65
31
19
39
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
54
55
56
57
58
59
60
61
62
63
64
65
66
30
29
28
27
26
25
24
23
22
21
20
19
18
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
79
65
53
17
17
31
80
64
52
16
16
32
81
63
51
15
15
33
82
62
50
14
14
34
83
61
49
13
13
35
84
60
48
12
12
36
85
59
47
11
11
37
86
58
46
10
10
38
87
57
45
9
9
39
88
56
44
8
8
40
89
55
43
7
7
41
98
97
96
95
94
93
92
91
90
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
146
147
148
149
150
151
152
153
154
155
156
157
158
159
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
129
128
127
126
125
124
123
122
121
120
119
118
117
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
145
140
128
116
120
128
144
139
127
115
119
127
143
138
126
114
118
126
142
137
125
113
117
125
141
136
124
112
116
124
140
135
123
111
115
123
139
134
122
110
114
122
138
133
121
109
113
121
137
132
120
108
112
120
136
131
119
107
111
119
135
130
118
106
110
118
134
122
123
124
125
126
127
128
129
130
130
129
128
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
108
107
106
105
117
133
121
126
116
104
100
104
116
132
120
125
115
103
99
103
115
131
119
124
114
102
98
102
114
130
118
123
113
101
97
101
113
129
117
122
112
100
96
100
112
128
116
121
111
99
95
99
111
127
115
120
110
98
94
98
110
126
125
124
123
122
121
120
119
118
117
116
115
114
119
109
97
93
97
98
99
100
101
102
103
104
105
106
107
108
109
113
118
108
96
92
96
112
117
107
95
91
95
111
116
106
94
90
94
110
115
105
93
89
93
109
114
104
92
88
92
108
113
103
91
87
91
107
112
102
90
86
90
106
111
110
109
108
107
106
105
104
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
89
105
102
76
88
104
101
75
87
103
100
74
86
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
99
73
85
86
87
88
89
88
87
86
85
84
83
82
81
82
83
84
85
91
103
98
72
84
80
92
104
97
71
83
79
93
105
96
70
82
78
94
106
95
69
81
77
95
107
94
68
80
76
96
108
93
67
79
75
97
109
92
66
78
74
98
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
72
71
70
69
70
71
72
73
74
75
76
77
73
99
103
90
64
68
72
100
104
89
63
67
71
101
105
88
62
66
70
102
106
87
61
65
69
103
107
86
60
64
68
104
108
85
59
63
67
105
109
84
58
62
66
106
110
83
57
61
65
107
111
82
56
60
64
108
110
81
55
59
63
109
109
80
54
58
62
110
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
79
53
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
110
98
78
52
48
60
109
97
77
51
47
59
108
96
76
50
46
58
107
95
75
49
45
57
106
94
74
48
44
56
105
93
73
47
43
55
104
92
72
46
42
54
103
91
71
45
41
53
102
90
70
44
40
52
101
89
69
43
39
51
100
88
68
42
38
50
99
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
49
98
78
56
42
28
48
97
77
57
41
27
47
96
76
58
40
26
46
95
75
59
39
25
45
94
74
60
38
24
44
93
73
61
37
23
43
92
72
62
36
22
42
91
71
63
35
21
41
90
70
64
34
20
40
89
69
65
33
19
39
88
68
66
32
18
38
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
55
56
57
58
59
60
61
62
63
64
65
66
67
31
30
29
28
27
26
25
24
23
22
21
20
19
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
80
66
54
18
16
30
81
65
53
17
15
31
82
64
52
16
14
32
83
63
51
15
13
33
84
62
50
14
12
34
85
61
49
13
11
35
86
60
48
12
10
36
87
59
47
11
9
37
88
58
46
10
8
38
89
57
45
9
7
39
90
56
44
8
6
40
99
98
97
96
95
94
93
92
91
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
145
146
147
148
149
150
151
152
153
154
155
156
157
158
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
128
127
126
125
124
123
122
121
120
119
118
117
116
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
144
139
127
115
119
127
143
138
126
114
118
126
142
137
125
113
117
125
141
136
124
112
116
124
140
135
123
111
115
123
139
134
122
110
114
122
138
133
121
109
113
121
137
132
120
108
112
120
136
131
119
107
111
119
135
130
118
106
110
118
134
129
117
105
109
117
133
121
122
123
124
125
126
127
128
129
130
130
129
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
107
106
105
104
116
132
120
127
115
103
99
103
115
131
119
126
114
102
98
102
114
130
118
125
113
101
97
101
113
129
117
124
112
100
96
100
112
128
116
123
111
99
95
99
111
127
115
122
110
98
94
98
110
126
114
121
109
97
93
97
109
125
124
123
122
121
120
119
118
117
116
115
114
113
120
108
96
92
96
97
98
99
100
101
102
103
104
105
106
107
108
112
119
107
95
91
95
111
118
106
94
90
94
110
117
105
93
89
93
109
116
104
92
88
92
108
115
103
91
87
91
107
114
102
90
86
90
106
113
101
89
85
89
105
112
111
110
109
108
107
106
105
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
88
104
103
75
87
103
102
74
86
102
101
73
85
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
100
72
84
85
86
87
88
87
86
85
84
83
82
81
80
81
82
83
84
90
102
99
71
83
79
91
103
98
70
82
78
92
104
97
69
81
77
93
105
96
68
80
76
94
106
95
67
79
75
95
107
94
66
78
74
96
108
93
65
77
73
97
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
71
70
69
68
69
70
71
72
73
74
75
76
72
98
104
91
63
67
71
99
105
90
62
66
70
100
106
89
61
65
69
101
107
88
60
64
68
102
108
87
59
63
67
103
109
86
58
62
66
104
110
85
57
61
65
105
111
84
56
60
64
106
112
83
55
59
63
107
111
82
54
58
62
108
110
81
53
57
61
109
110
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
80
52
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
110
99
79
51
47
59
110
98
78
50
46
58
109
97
77
49
45
57
108
96
76
48
44
56
107
95
75
47
43
55
106
94
74
46
42
54
105
93
73
45
41
53
104
92
72
44
40
52
103
91
71
43
39
51
102
90
70
42
38
50
101
89
69
41
37
49
100
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
48
99
79
57
43
27
47
98
78
58
42
26
46
97
77
59
41
25
45
96
76
60
40
24
44
95
75
61
39
23
43
94
74
62
38
22
42
93
73
63
37
21
41
92
72
64
36
20
40
91
71
65
35
19
39
90
70
66
34
18
38
89
69
67
33
17
37
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
56
57
58
59
60
61
62
63
64
65
66
67
68
32
31
30
29
28
27
26
25
24
23
22
21
20
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
81
67
55
19
15
29
82
66
54
18
14
30
83
65
53
17
13
31
84
64
52
16
12
32
85
63
51
15
11
33
86
62
50
14
10
34
87
61
49
13
9
35
88
60
48
12
8
36
89
59
47
11
7
37
90
58
46
10
6
38
91
57
45
9
5
39
100
99
98
97
96
95
94
93
92
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
144
145
146
147
148
149
150
151
152
153
154
155
156
157
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
127
126
125
124
123
122
121
120
119
118
117
116
115
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
143
138
126
114
118
126
142
137
125
113
117
125
141
136
124
112
116
124
140
135
123
111
115
123
139
134
122
110
114
122
138
133
121
109
113
121
137
132
120
108
112
120
136
131
119
107
111
119
135
130
118
106
110
118
134
129
117
105
109
117
133
128
116
104
108
116
132
120
121
122
123
124
125
126
127
128
129
130
130
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
106
105
104
103
115
131
119
128
114
102
98
102
114
130
118
127
113
101
97
101
113
129
117
126
112
100
96
100
112
128
116
125
111
99
95
99
111
127
115
124
110
98
94
98
110
126
114
123
109
97
93
97
109
125
113
122
108
96
92
96
108
124
123
122
121
120
119
118
117
116
115
114
113
112
121
107
95
91
95
96
97
98
99
100
101
102
103
104
105
106
107
111
120
106
94
90
94
110
119
105
93
89
93
109
118
104
92
88
92
108
117
103
91
87
91
107
116
102
90
86
90
106
115
101
89
85
89
105
114
100
88
84
88
104
113
112
111
110
109
108
107
106
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
87
103
104
74
86
102
103
73
85
101
102
72
84
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
71
83
84
85
86
87
86
85
84
83
82
81
80
79
80
81
82
83
89
101
100
70
82
78
90
102
99
69
81
77
91
103
98
68
80
76
92
104
97
67
79
75
93
105
96
66
78
74
94
106
95
65
77
73
95
107
94
64
76
72
96
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
70
69
68
67
68
69
70
71
72
73
74
75
71
97
105
92
62
66
70
98
106
91
61
65
69
99
107
90
60
64
68
100
108
89
59
63
67
101
109
88
58
62
66
102
110
87
57
61
65
103
111
86
56
60
64
104
112
85
55
59
63
105
113
84
54
58
62
106
112
83
53
57
61
107
111
82
52
56
60
108
109
110
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
81
51
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
109
100
80
50
46
58
110
99
79
49
45
57
110
98
78
48
44
56
109
97
77
47
43
55
108
96
76
46
42
54
107
95
75
45
41
53
106
94
74
44
40
52
105
93
73
43
39
51
104
92
72
42
38
50
103
91
71
41
37
49
102
90
70
40
36
48
101
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
47
100
80
58
44
26
46
99
79
59
43
25
45
98
78
60
42
24
44
97
77
61
41
23
43
96
76
62
40
22
42
95
75
63
39
21
41
94
74
64
38
20
40
93
73
65
37
19
39
92
72
66
36
18
38
91
71
67
35
17
37
90
70
68
34
16
36
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
57
58
59
60
61
62
63
64
65
66
67
68
69
33
32
31
30
29
28
27
26
25
24
23
22
21
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
82
68
56
20
14
28
83
67
55
19
13
29
84
66
54
18
12
30
85
65
53
17
11
31
86
64
52
16
10
32
87
63
51
15
9
33
88
62
50
14
8
34
89
61
49
13
7
35
90
60
48
12
6
36
91
59
47
11
5
37
92
58
46
10
4
38
101
100
99
98
97
96
95
94
93
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
143
144
145
146
147
148
149
150
151
152
153
154
155
156
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
126
125
124
123
122
121
120
119
118
117
116
115
114
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
142
137
125
113
117
125
141
136
124
112
116
124
140
135
123
111
115
123
139
134
122
110
114
122
138
133
121
109
113
121
137
132
120
108
112
120
136
131
119
107
111
119
135
130
118
106
110
118
134
129
117
105
109
117
133
128
116
104
108
116
132
127
115
103
107
115
131
119
120
121
122
123
124
125
126
127
128
129
130
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
105
104
103
102
114
130
118
129
113
101
97
101
113
129
117
128
112
100
96
100
112
128
116
127
111
99
95
99
111
127
115
126
110
98
94
98
110
126
114
125
109
97
93
97
109
125
113
124
108
96
92
96
108
124
112
123
107
95
91
95
107
123
122
121
120
119
118
117
116
115
114
113
112
111
122
106
94
90
94
95
96
97
98
99
100
101
102
103
104
105
106
110
121
105
93
89
93
109
120
104
92
88
92
108
119
103
91
87
91
107
118
102
90
86
90
106
117
101
89
85
89
105
116
100
88
84
88
104
115
99
87
83
87
103
114
113
112
111
110
109
108
107
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
86
102
105
73
85
101
104
72
84
100
103
71
83
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
102
70
82
83
84
85
86
85
84
83
82
81
80
79
78
79
80
81
82
88
100
101
69
81
77
89
101
100
68
80
76
90
102
99
67
79
75
91
103
98
66
78
74
92
104
97
65
77
73
93
105
96
64
76
72
94
106
95
63
75
71
95
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
69
68
67
66
67
68
69
70
71
72
73
74
70
96
106
93
61
65
69
97
107
92
60
64
68
98
108
91
59
63
67
99
109
90
58
62
66
100
110
89
57
61
65
101
111
88
56
60
64
102
112
87
55
59
63
103
113
86
54
58
62
104
114
85
53
57
61
105
113
84
52
56
60
106
112
83
51
55
59
107
108
109
110
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
82
50
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
108
101
81
49
45
57
109
100
80
48
44
56
110
99
79
47
43
55
110
98
78
46
42
54
109
97
77
45
41
53
108
96
76
44
40
52
107
95
75
43
39
51
106
94
74
42
38
50
105
93
73
41
37
49
104
92
72
40
36
48
103
91
71
39
35
47
102
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
46
101
81
59
45
25
45
100
80
60
44
24
44
99
79
61
43
23
43
98
78
62
42
22
42
97
77
63
41
21
41
96
76
64
40
20
40
95
75
65
39
19
39
94
74
66
38
18
38
93
73
67
37
17
37
92
72
68
36
16
36
91
71
69
35
15
35
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
58
59
60
61
62
63
64
65
66
67
68
69
70
34
33
32
31
30
29
28
27
26
25
24
23
22
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
83
69
57
21
13
27
84
68
56
20
12
28
85
67
55
19
11
29
86
66
54
18
10
30
87
65
53
17
9
31
88
64
52
16
8
32
89
63
51
15
7
33
90
62
50
14
6
34
91
61
49
13
5
35
92
60
48
12
4
36
93
59
47
11
3
37
102
101
100
99
98
97
96
95
94
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
142
143
144
145
146
147
148
149
150
151
152
153
154
155
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
125
124
123
122
121
120
119
118
117
116
115
114
113
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
141
136
124
112
116
124
140
135
123
111
115
123
139
134
122
110
114
122
138
133
121
109
113
121
137
132
120
108
112
120
136
131
119
107
111
119
135
130
118
106
110
118
134
129
117
105
109
117
133
128
116
104
108
116
132
127
115
103
107
115
131
126
114
102
106
114
130
118
119
120
121
122
123
124
125
126
127
128
129
130
131
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
104
103
102
101
113
129
117
130
112
100
96
100
112
128
116
129
111
99
95
99
111
127
115
128
110
98
94
98
110
126
114
127
109
97
93
97
109
125
113
126
108
96
92
96
108
124
112
125
107
95
91
95
107
123
111
124
106
94
90
94
106
122
121
120
119
118
117
116
115
114
113
112
111
110
123
105
93
89
93
94
95
96
97
98
99
100
101
102
103
104
105
109
122
104
92
88
92
108
121
103
91
87
91
107
120
102
90
86
90
106
119
101
89
85
89
105
118
100
88
84
88
104
117
99
87
83
87
103
116
98
86
82
86
102
115
114
113
112
111
110
109
108
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
85
101
106
72
84
100
105
71
83
99
104
70
82
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
103
69
81
82
83
84
85
84
83
82
81
80
79
78
77
78
79
80
81
87
99
102
68
80
76
88
100
101
67
79
75
89
101
100
66
78
74
90
102
99
65
77
73
91
103
98
64
76
72
92
104
97
63
75
71
93
105
96
62
74
70
94
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
68
67
66
65
66
67
68
69
70
71
72
73
69
95
107
94
60
64
68
96
108
93
59
63
67
97
109
92
58
62
66
98
110
91
57
61
65
99
111
90
56
60
64
100
112
89
55
59
63
101
113
88
54
58
62
102
114
87
53
57
61
103
115
86
52
56
60
104
114
85
51
55
59
105
113
84
50
54
58
106
107
108
109
110
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
83
49
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
107
102
82
48
44
56
108
101
81
47
43
55
109
100
80
46
42
54
110
99
79
45
41
53
110
98
78
44
40
52
109
97
77
43
39
51
108
96
76
42
38
50
107
95
75
41
37
49
106
94
74
40
36
48
105
93
73
39
35
47
104
92
72
38
34
46
103
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
45
102
82
60
46
24
44
101
81
61
45
23
43
100
80
62
44
22
42
99
79
63
43
21
41
98
78
64
42
20
40
97
77
65
41
19
39
96
76
66
40
18
38
95
75
67
39
17
37
94
74
68
38
16
36
93
73
69
37
15
35
92
72
70
36
14
34
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
59
60
61
62
63
64
65
66
67
68
69
70
71
35
34
33
32
31
30
29
28
27
26
25
24
23
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
84
70
58
22
12
26
85
69
57
21
11
27
86
68
56
20
10
28
87
67
55
19
9
29
88
66
54
18
8
30
89
65
53
17
7
31
90
64
52
16
6
32
91
63
51
15
5
33
92
62
50
14
4
34
93
61
49
13
3
35
94
60
48
12
2
36
103
102
101
100
99
98
97
96
95
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
141
142
143
144
145
146
147
148
149
150
151
152
153
154
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
124
123
122
121
120
119
118
117
116
115
114
113
112
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
140
135
123
111
115
123
139
134
122
110
114
122
138
133
121
109
113
121
137
132
120
108
112
120
136
131
119
107
111
119
135
130
118
106
110
118
134
129
117
105
109
117
133
128
116
104
108
116
132
127
115
103
107
115
131
126
114
102
106
114
130
125
113
101
105
113
129
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
103
102
101
100
112
128
116
130
111
99
95
99
111
127
115
130
110
98
94
98
110
126
114
129
109
97
93
97
109
125
113
128
108
96
92
96
108
124
112
127
107
95
91
95
107
123
111
126
106
94
90
94
106
122
110
125
105
93
89
93
105
121
120
119
118
117
116
115
114
113
112
111
110
109
124
104
92
88
92
93
94
95
96
97
98
99
100
101
102
103
104
108
123
103
91
87
91
107
122
102
90
86
90
106
121
101
89
85
89
105
120
100
88
84
88
104
119
99
87
83
87
103
118
98
86
82
86
102
117
97
85
81
85
101
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
84
100
107
71
83
99
106
70
82
98
105
69
81
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
104
68
80
81
82
83
84
83
82
81
80
79
78
77
76
77
78
79
80
86
98
103
67
79
75
87
99
102
66
78
74
88
100
101
65
77
73
89
101
100
64
76
72
90
102
99
63
75
71
91
103
98
62
74
70
92
104
97
61
73
69
93
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
67
66
65
64
65
66
67
68
69
70
71
72
68
94
108
95
59
63
67
95
109
94
58
62
66
96
110
93
57
61
65
97
111
92
56
60
64
98
112
91
55
59
63
99
113
90
54
58
62
100
114
89
53
57
61
101
115
88
52
56
60
102
116
87
51
55
59
103
115
86
50
54
58
104
114
85
49
53
57
105
106
107
108
109
110
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
84
48
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
106
103
83
47
43
55
107
102
82
46
42
54
108
101
81
45
41
53
109
100
80
44
40
52
110
99
79
43
39
51
110
98
78
42
38
50
109
97
77
41
37
49
108
96
76
40
36
48
107
95
75
39
35
47
106
94
74
38
34
46
105
93
73
37
33
45
104
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
44
103
83
61
47
23
43
102
82
62
46
22
42
101
81
63
45
21
41
100
80
64
44
20
40
99
79
65
43
19
39
98
78
66
42
18
38
97
77
67
41
17
37
96
76
68
40
16
36
95
75
69
39
15
35
94
74
70
38
14
34
93
73
71
37
13
33
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
60
61
62
63
64
65
66
67
68
69
70
71
72
36
35
34
33
32
31
30
29
28
27
26
25
24
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
85
71
59
23
11
25
86
70
58
22
10
26
87
69
57
21
9
27
88
68
56
20
8
28
89
67
55
19
7
29
90
66
54
18
6
30
91
65
53
17
5
31
92
64
52
16
4
32
93
63
51
15
3
33
94
62
50
14
2
34
95
61
49
13
1
35
104
103
102
101
100
99
98
97
96
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
128
136
135
123
127
119
127
135
134
122
126
118
126
134
133
121
125
117
125
133
132
120
124
116
124
132
131
119
123
115
123
131
130
118
122
114
122
130
129
117
121
113
121
129
128
116
120
112
120
128
127
115
119
111
119
127
126
114
118
110
118
126
125
113
117
109
117
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
108
116
104
118
123
111
107
95
107
115
103
119
122
110
106
94
106
114
102
120
121
109
105
93
105
113
101
121
120
108
104
92
104
112
100
122
119
107
103
91
103
111
99
123
118
106
102
90
102
110
98
124
117
105
101
89
101
109
108
107
106
105
104
103
102
101
100
99
98
97
125
116
104
100
88
89
90
91
92
93
94
95
96
97
98
99
100
96
126
115
103
99
87
95
127
114
102
98
86
94
128
113
101
97
85
93
129
112
100
96
84
92
130
111
99
95
83
91
130
110
98
94
82
90
129
109
97
93
81
89
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
80
88
119
83
79
87
118
82
78
86
117
81
77
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
116
80
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
74
86
115
79
77
63
75
87
114
78
78
62
76
88
113
77
79
61
77
89
112
76
80
60
78
90
111
75
81
59
79
91
110
74
82
58
80
92
109
73
83
57
81
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
79
78
77
76
77
78
79
80
81
82
83
84
56
82
103
107
71
75
55
83
104
106
70
74
54
84
105
105
69
73
53
85
106
104
68
72
52
86
107
103
67
71
51
87
108
102
66
70
50
88
109
101
65
69
49
89
110
100
64
68
48
90
111
99
63
67
47
91
112
98
62
66
46
92
113
97
61
65
45
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
96
60
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
94
106
95
59
55
43
95
107
94
58
54
42
96
108
93
57
53
41
97
109
92
56
52
40
98
110
91
55
51
39
99
110
90
54
50
38
100
109
89
53
49
37
101
108
88
52
48
36
102
107
87
51
47
35
103
106
86
50
46
34
104
105
85
49
45
33
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
32
106
97
73
61
35
31
107
98
74
62
34
30
108
99
75
63
33
29
109
100
76
64
32
28
110
101
77
65
31
27
111
102
78
66
30
26
112
103
79
67
29
25
113
104
80
68
28
24
114
105
81
69
27
23
115
106
82
70
26
22
116
107
83
71
25
21
117
118
119
120
121
122
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
96
95
94
93
92
91
90
89
88
87
86
85
84
72
71
70
69
68
67
66
65
64
63
62
61
60
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
121
107
95
59
25
11
122
106
94
58
26
10
123
105
93
57
27
9
124
104
92
56
28
8
125
103
91
55
29
7
126
102
90
54
30
6
127
101
89
53
31
5
128
100
88
52
32
4
129
99
87
51
33
3
130
98
86
50
34
2
131
97
85
49
35
1
140
139
138
137
136
135
134
133
132
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
0
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
129
137
136
124
128
120
128
136
135
123
127
119
127
135
134
122
126
118
126
134
133
121
125
117
125
133
132
120
124
116
124
132
131
119
123
115
123
131
130
118
122
114
122
130
129
117
121
113
121
129
128
116
120
112
120
128
127
115
119
111
119
127
126
114
118
110
118
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
131
130
129
128
127
126
125
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
109
117
105
119
124
112
108
96
108
116
104
120
123
111
107
95
107
115
103
121
122
110
106
94
106
114
102
122
121
109
105
93
105
113
101
123
120
108
104
92
104
112
100
124
119
107
103
91
103
111
99
125
118
106
102
90
102
110
109
108
107
106
105
104
103
102
101
100
99
98
126
117
105
101
89
90
91
92
93
94
95
96
97
98
99
100
101
97
127
116
104
100
88
96
128
115
103
99
87
95
129
114
102
98
86
94
130
113
101
97
85
93
131
112
100
96
84
92
131
111
99
95
83
91
130
110
98
94
82
90
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
81
89
120
84
80
88
119
83
79
87
118
82
78
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
117
81
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
75
87
116
80
78
64
76
88
115
79
79
63
77
89
114
78
80
62
78
90
113
77
81
61
79
91
112
76
82
60
80
92
111
75
83
59
81
93
110
74
84
58
82
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
80
79
78
77
78
79
80
81
82
83
84
85
57
83
104
108
72
76
56
84
105
107
71
75
55
85
106
106
70
74
54
86
107
105
69
73
53
87
108
104
68
72
52
88
109
103
67
71
51
89
110
102
66
70
50
90
111
101
65
69
49
91
112
100
64
68
48
92
113
99
63
67
47
93
114
98
62
66
46
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
97
61
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
95
107
96
60
56
44
96
108
95
59
55
43
97
109
94
58
54
42
98
110
93
57
53
41
99
111
92
56
52
40
100
111
91
55
51
39
101
110
90
54
50
38
102
109
89
53
49
37
103
108
88
52
48
36
104
107
87
51
47
35
105
106
86
50
46
34
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
33
107
98
74
62
36
32
108
99
75
63
35
31
109
100
76
64
34
30
110
101
77
65
33
29
111
102
78
66
32
28
112
103
79
67
31
27
113
104
80
68
30
26
114
105
81
69
29
25
115
106
82
70
28
24
116
107
83
71
27
23
117
108
84
72
26
22
118
119
120
121
122
123
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
97
96
95
94
93
92
91
90
89
88
87
86
85
73
72
71
70
69
68
67
66
65
64
63
62
61
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
122
108
96
60
26
12
123
107
95
59
27
11
124
106
94
58
28
10
125
105
93
57
29
9
126
104
92
56
30
8
127
103
91
55
31
7
128
102
90
54
32
6
129
101
89
53
33
5
130
100
88
52
34
4
131
99
87
51
35
3
132
98
86
50
36
2
141
140
139
138
137
136
135
134
133
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
1
0
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
130
138
137
125
129
121
129
137
136
124
128
120
128
136
135
123
127
119
127
135
134
122
126
118
126
134
133
121
125
117
125
133
132
120
124
116
124
132
131
119
123
115
123
131
130
118
122
114
122
130
129
117
121
113
121
129
128
116
120
112
120
128
127
115
119
111
119
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
132
131
130
129
128
127
126
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
110
118
106
120
125
113
109
97
109
117
105
121
124
112
108
96
108
116
104
122
123
111
107
95
107
115
103
123
122
110
106
94
106
114
102
124
121
109
105
93
105
113
101
125
120
108
104
92
104
112
100
126
119
107
103
91
103
111
110
109
108
107
106
105
104
103
102
101
100
99
127
118
106
102
90
91
92
93
94
95
96
97
98
99
100
101
102
98
128
117
105
101
89
97
129
116
104
100
88
96
130
115
103
99
87
95
131
114
102
98
86
94
132
113
101
97
85
93
132
112
100
96
84
92
131
111
99
95
83
91
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
82
90
121
85
81
89
120
84
80
88
119
83
79
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
118
82
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
76
88
117
81
79
65
77
89
116
80
80
64
78
90
115
79
81
63
79
91
114
78
82
62
80
92
113
77
83
61
81
93
112
76
84
60
82
94
111
75
85
59
83
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
81
80
79
78
79
80
81
82
83
84
85
86
58
84
105
109
73
77
57
85
106
108
72
76
56
86
107
107
71
75
55
87
108
106
70
74
54
88
109
105
69
73
53
89
110
104
68
72
52
90
111
103
67
71
51
91
112
102
66
70
50
92
113
101
65
69
49
93
114
100
64
68
48
94
115
99
63
67
47
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
98
62
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
96
108
97
61
57
45
97
109
96
60
56
44
98
110
95
59
55
43
99
111
94
58
54
42
100
112
93
57
53
41
101
112
92
56
52
40
102
111
91
55
51
39
103
110
90
54
50
38
104
109
89
53
49
37
105
108
88
52
48
36
106
107
87
51
47
35
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
34
108
99
75
63
37
33
109
100
76
64
36
32
110
101
77
65
35
31
111
102
78
66
34
30
112
103
79
67
33
29
113
104
80
68
32
28
114
105
81
69
31
27
115
106
82
70
30
26
116
107
83
71
29
25
117
108
84
72
28
24
118
109
85
73
27
23
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
98
97
96
95
94
93
92
91
90
89
88
87
86
74
73
72
71
70
69
68
67
66
65
64
63
62
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
123
109
97
61
27
13
124
108
96
60
28
12
125
107
95
59
29
11
126
106
94
58
30
10
127
105
93
57
31
9
128
104
92
56
32
8
129
103
91
55
33
7
130
102
90
54
34
6
131
101
89
53
35
5
132
100
88
52
36
4
133
99
87
51
37
3
142
141
140
139
138
137
136
135
134
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
2
1
0
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
131
139
138
126
130
122
130
138
137
125
129
121
129
137
136
124
128
120
128
136
135
123
127
119
127
135
134
122
126
118
126
134
133
121
125
117
125
133
132
120
124
116
124
132
131
119
123
115
123
131
130
118
122
114
122
130
129
117
121
113
121
129
128
116
120
112
120
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
133
132
131
130
129
128
127
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
111
119
107
121
126
114
110
98
110
118
106
122
125
113
109
97
109
117
105
123
124
112
108
96
108
116
104
124
123
111
107
95
107
115
103
125
122
110
106
94
106
114
102
126
121
109
105
93
105
113
101
127
120
108
104
92
104
112
111
110
109
108
107
106
105
104
103
102
101
100
128
119
107
103
91
92
93
94
95
96
97
98
99
100
101
102
103
99
129
118
106
102
90
98
130
117
105
101
89
97
131
116
104
100
88
96
132
115
103
99
87
95
133
114
102
98
86
94
133
113
101
97
85
93
132
112
100
96
84
92
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
83
91
122
86
82
90
121
85
81
89
120
84
80
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
119
83
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
77
89
118
82
80
66
78
90
117
81
81
65
79
91
116
80
82
64
80
92
115
79
83
63
81
93
114
78
84
62
82
94
113
77
85
61
83
95
112
76
86
60
84
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
82
81
80
79
80
81
82
83
84
85
86
87
59
85
106
110
74
78
58
86
107
109
73
77
57
87
108
108
72
76
56
88
109
107
71
75
55
89
110
106
70
74
54
90
111
105
69
73
53
91
112
104
68
72
52
92
113
103
67
71
51
93
114
102
66
70
50
94
115
101
65
69
49
95
116
100
64
68
48
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
99
63
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
97
109
98
62
58
46
98
110
97
61
57
45
99
111
96
60
56
44
100
112
95
59
55
43
101
113
94
58
54
42
102
113
93
57
53
41
103
112
92
56
52
40
104
111
91
55
51
39
105
110
90
54
50
38
106
109
89
53
49
37
107
108
88
52
48
36
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
35
109
100
76
64
38
34
110
101
77
65
37
33
111
102
78
66
36
32
112
103
79
67
35
31
113
104
80
68
34
30
114
105
81
69
33
29
115
106
82
70
32
28
116
107
83
71
31
27
117
108
84
72
30
26
118
109
85
73
29
25
119
110
86
74
28
24
120
121
122
123
124
125
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
99
98
97
96
95
94
93
92
91
90
89
88
87
75
74
73
72
71
70
69
68
67
66
65
64
63
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
124
110
98
62
28
14
125
109
97
61
29
13
126
108
96
60
30
12
127
107
95
59
31
11
128
106
94
58
32
10
129
105
93
57
33
9
130
104
92
56
34
8
131
103
91
55
35
7
132
102
90
54
36
6
133
101
89
53
37
5
134
100
88
52
38
4
143
142
141
140
139
138
137
136
135
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
3
2
1
0
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
132
140
139
127
131
123
131
139
138
126
130
122
130
138
137
125
129
121
129
137
136
124
128
120
128
136
135
123
127
119
127
135
134
122
126
118
126
134
133
121
125
117
125
133
132
120
124
116
124
132
131
119
123
115
123
131
130
118
122
114
122
130
129
117
121
113
121
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
112
120
108
122
127
115
111
99
111
119
107
123
126
114
110
98
110
118
106
124
125
113
109
97
109
117
105
125
124
112
108
96
108
116
104
126
123
111
107
95
107
115
103
127
122
110
106
94
106
114
102
128
121
109
105
93
105
113
112
111
110
109
108
107
106
105
104
103
102
101
129
120
108
104
92
93
94
95
96
97
98
99
100
101
102
103
104
100
130
119
107
103
91
99
131
118
106
102
90
98
132
117
105
101
89
97
133
116
104
100
88
96
134
115
103
99
87
95
134
114
102
98
86
94
133
113
101
97
85
93
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
84
92
123
87
83
91
122
86
82
90
121
85
81
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
120
84
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
78
90
119
83
81
67
79
91
118
82
82
66
80
92
117
81
83
65
81
93
116
80
84
64
82
94
115
79
85
63
83
95
114
78
86
62
84
96
113
77
87
61
85
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
83
82
81
80
81
82
83
84
85
86
87
88
60
86
107
111
75
79
59
87
108
110
74
78
58
88
109
109
73
77
57
89
110
108
72
76
56
90
111
107
71
75
55
91
112
106
70
74
54
92
113
105
69
73
53
93
114
104
68
72
52
94
115
103
67
71
51
95
116
102
66
70
50
96
117
101
65
69
49
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
100
64
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
98
110
99
63
59
47
99
111
98
62
58
46
100
112
97
61
57
45
101
113
96
60
56
44
102
114
95
59
55
43
103
114
94
58
54
42
104
113
93
57
53
41
105
112
92
56
52
40
106
111
91
55
51
39
107
110
90
54
50
38
108
109
89
53
49
37
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
36
110
101
77
65
39
35
111
102
78
66
38
34
112
103
79
67
37
33
113
104
80
68
36
32
114
105
81
69
35
31
115
106
82
70
34
30
116
107
83
71
33
29
117
108
84
72
32
28
118
109
85
73
31
27
119
110
86
74
30
26
120
111
87
75
29
25
121
122
123
124
125
126
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
100
99
98
97
96
95
94
93
92
91
90
89
88
76
75
74
73
72
71
70
69
68
67
66
65
64
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
125
111
99
63
29
15
126
110
98
62
30
14
127
109
97
61
31
13
128
108
96
60
32
12
129
107
95
59
33
11
130
106
94
58
34
10
131
105
93
57
35
9
132
104
92
56
36
8
133
103
91
55
37
7
134
102
90
54
38
6
135
101
89
53
39
5
144
143
142
141
140
139
138
137
136
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
4
3
2
1
0
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
133
141
140
128
132
124
132
140
139
127
131
123
131
139
138
126
130
122
130
138
137
125
129
121
129
137
136
124
128
120
128
136
135
123
127
119
127
135
134
122
126
118
126
134
133
121
125
117
125
133
132
120
124
116
124
132
131
119
123
115
123
131
130
118
122
114
122
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
135
134
133
132
131
130
129
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
113
121
109
123
128
116
112
100
112
120
108
124
127
115
111
99
111
119
107
125
126
114
110
98
110
118
106
126
125
113
109
97
109
117
105
127
124
112
108
96
108
116
104
128
123
111
107
95
107
115
103
129
122
110
106
94
106
114
113
112
111
110
109
108
107
106
105
104
103
102
130
121
109
105
93
94
95
96
97
98
99
100
101
102
103
104
105
101
131
120
108
104
92
100
132
119
107
103
91
99
133
118
106
102
90
98
134
117
105
101
89
97
135
116
104
100
88
96
135
115
103
99
87
95
134
114
102
98
86
94
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
85
93
124
88
84
92
123
87
83
91
122
86
82
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
121
85
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
79
91
120
84
82
68
80
92
119
83
83
67
81
93
118
82
84
66
82
94
117
81
85
65
83
95
116
80
86
64
84
96
115
79
87
63
85
97
114
78
88
62
86
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
84
83
82
81
82
83
84
85
86
87
88
89
61
87
108
112
76
80
60
88
109
111
75
79
59
89
110
110
74
78
58
90
111
109
73
77
57
91
112
108
72
76
56
92
113
107
71
75
55
93
114
106
70
74
54
94
115
105
69
73
53
95
116
104
68
72
52
96
117
103
67
71
51
97
118
102
66
70
50
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
101
65
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
99
111
100
64
60
48
100
112
99
63
59
47
101
113
98
62
58
46
102
114
97
61
57
45
103
115
96
60
56
44
104
115
95
59
55
43
105
114
94
58
54
42
106
113
93
57
53
41
107
112
92
56
52
40
108
111
91
55
51
39
109
110
90
54
50
38
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
37
111
102
78
66
40
36
112
103
79
67
39
35
113
104
80
68
38
34
114
105
81
69
37
33
115
106
82
70
36
32
116
107
83
71
35
31
117
108
84
72
34
30
118
109
85
73
33
29
119
110
86
74
32
28
120
111
87
75
31
27
121
112
88
76
30
26
122
123
124
125
126
127
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
101
100
99
98
97
96
95
94
93
92
91
90
89
77
76
75
74
73
72
71
70
69
68
67
66
65
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
126
112
100
64
30
16
127
111
99
63
31
15
128
110
98
62
32
14
129
109
97
61
33
13
130
108
96
60
34
12
131
107
95
59
35
11
132
106
94
58
36
10
133
105
93
57
37
9
134
104
92
56
38
8
135
103
91
55
39
7
136
102
90
54
40
6
145
144
143
142
141
140
139
138
137
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
5
4
3
2
1
0
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
134
142
141
129
133
125
133
141
140
128
132
124
132
140
139
127
131
123
131
139
138
126
130
122
130
138
137
125
129
121
129
137
136
124
128
120
128
136
135
123
127
119
127
135
134
122
126
118
126
134
133
121
125
117
125
133
132
120
124
116
124
132
131
119
123
115
123
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
136
135
134
133
132
131
130
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
114
122
110
124
129
117
113
101
113
121
109
125
128
116
112
100
112
120
108
126
127
115
111
99
111
119
107
127
126
114
110
98
110
118
106
128
125
113
109
97
109
117
105
129
124
112
108
96
108
116
104
130
123
111
107
95
107
115
114
113
112
111
110
109
108
107
106
105
104
103
131
122
110
106
94
95
96
97
98
99
100
101
102
103
104
105
106
102
132
121
109
105
93
101
133
120
108
104
92
100
134
119
107
103
91
99
135
118
106
102
90
98
136
117
105
101
89
97
136
116
104
100
88
96
135
115
103
99
87
95
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
86
94
125
89
85
93
124
88
84
92
123
87
83
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
122
86
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
80
92
121
85
83
69
81
93
120
84
84
68
82
94
119
83
85
67
83
95
118
82
86
66
84
96
117
81
87
65
85
97
116
80
88
64
86
98
115
79
89
63
87
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
85
84
83
82
83
84
85
86
87
88
89
90
62
88
109
113
77
81
61
89
110
112
76
80
60
90
111
111
75
79
59
91
112
110
74
78
58
92
113
109
73
77
57
93
114
108
72
76
56
94
115
107
71
75
55
95
116
106
70
74
54
96
117
105
69
73
53
97
118
104
68
72
52
98
119
103
67
71
51
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
102
66
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
100
112
101
65
61
49
101
113
100
64
60
48
102
114
99
63
59
47
103
115
98
62
58
46
104
116
97
61
57
45
105
116
96
60
56
44
106
115
95
59
55
43
107
114
94
58
54
42
108
113
93
57
53
41
109
112
92
56
52
40
110
111
91
55
51
39
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
38
112
103
79
67
41
37
113
104
80
68
40
36
114
105
81
69
39
35
115
106
82
70
38
34
116
107
83
71
37
33
117
108
84
72
36
32
118
109
85
73
35
31
119
110
86
74
34
30
120
111
87
75
33
29
121
112
88
76
32
28
122
113
89
77
31
27
123
124
125
126
127
128
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
102
101
100
99
98
97
96
95
94
93
92
91
90
78
77
76
75
74
73
72
71
70
69
68
67
66
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
127
113
101
65
31
17
128
112
100
64
32
16
129
111
99
63
33
15
130
110
98
62
34
14
131
109
97
61
35
13
132
108
96
60
36
12
133
107
95
59
37
11
134
106
94
58
38
10
135
105
93
57
39
9
136
104
92
56
40
8
137
103
91
55
41
7
146
145
144
143
142
141
140
139
138
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
6
5
4
3
2
1
0
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
135
143
142
130
134
126
134
142
141
129
133
125
133
141
140
128
132
124
132
140
139
127
131
123
131
139
138
126
130
122
130
138
137
125
129
121
129
137
136
124
128
120
128
136
135
123
127
119
127
135
134
122
126
118
126
134
133
121
125
117
125
133
132
120
124
116
124
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
137
136
135
134
133
132
131
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
115
123
111
125
130
118
114
102
114
122
110
126
129
117
113
101
113
121
109
127
128
116
112
100
112
120
108
128
127
115
111
99
111
119
107
129
126
114
110
98
110
118
106
130
125
113
109
97
109
117
105
131
124
112
108
96
108
116
115
114
113
112
111
110
109
108
107
106
105
104
132
123
111
107
95
96
97
98
99
100
101
102
103
104
105
106
107
103
133
122
110
106
94
102
134
121
109
105
93
101
135
120
108
104
92
100
136
119
107
103
91
99
137
118
106
102
90
98
137
117
105
101
89
97
136
116
104
100
88
96
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
87
95
126
90
86
94
125
89
85
93
124
88
84
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
123
87
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
81
93
122
86
84
70
82
94
121
85
85
69
83
95
120
84
86
68
84
96
119
83
87
67
85
97
118
82
88
66
86
98
117
81
89
65
87
99
116
80
90
64
88
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
86
85
84
83
84
85
86
87
88
89
90
91
63
89
110
114
78
82
62
90
111
113
77
81
61
91
112
112
76
80
60
92
113
111
75
79
59
93
114
110
74
78
58
94
115
109
73
77
57
95
116
108
72
76
56
96
117
107
71
75
55
97
118
106
70
74
54
98
119
105
69
73
53
99
120
104
68
72
52
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
103
67
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
101
113
102
66
62
50
102
114
101
65
61
49
103
115
100
64
60
48
104
116
99
63
59
47
105
117
98
62
58
46
106
117
97
61
57
45
107
116
96
60
56
44
108
115
95
59
55
43
109
114
94
58
54
42
110
113
93
57
53
41
111
112
92
56
52
40
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
39
113
104
80
68
42
38
114
105
81
69
41
37
115
106
82
70
40
36
116
107
83
71
39
35
117
108
84
72
38
34
118
109
85
73
37
33
119
110
86
74
36
32
120
111
87
75
35
31
121
112
88
76
34
30
122
113
89
77
33
29
123
114
90
78
32
28
124
125
126
127
128
129
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
103
102
101
100
99
98
97
96
95
94
93
92
91
79
78
77
76
75
74
73
72
71
70
69
68
67
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
128
114
102
66
32
18
129
113
101
65
33
17
130
112
100
64
34
16
131
111
99
63
35
15
132
110
98
62
36
14
133
109
97
61
37
13
134
108
96
60
38
12
135
107
95
59
39
11
136
106
94
58
40
10
137
105
93
57
41
9
138
104
92
56
42
8
147
146
145
144
143
142
141
140
139
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
7
6
5
4
3
2
1
0
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
136
144
143
131
135
127
135
143
142
130
134
126
134
142
141
129
133
125
133
141
140
128
132
124
132
140
139
127
131
123
131
139
138
126
130
122
130
138
137
125
129
121
129
137
136
124
128
120
128
136
135
123
127
119
127
135
134
122
126
118
126
134
133
121
125
117
125
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
138
137
136
135
134
133
132
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
116
124
112
126
131
119
115
103
115
123
111
127
130
118
114
102
114
122
110
128
129
117
113
101
113
121
109
129
128
116
112
100
112
120
108
130
127
115
111
99
111
119
107
131
126
114
110
98
110
118
106
132
125
113
109
97
109
117
116
115
114
113
112
111
110
109
108
107
106
105
133
124
112
108
96
97
98
99
100
101
102
103
104
105
106
107
108
104
134
123
111
107
95
103
135
122
110
106
94
102
136
121
109
105
93
101
137
120
108
104
92
100
138
119
107
103
91
99
138
118
106
102
90
98
137
117
105
101
89
97
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
88
96
127
91
87
95
126
90
86
94
125
89
85
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
124
88
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
82
94
123
87
85
71
83
95
122
86
86
70
84
96
121
85
87
69
85
97
120
84
88
68
86
98
119
83
89
67
87
99
118
82
90
66
88
100
117
81
91
65
89
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
87
86
85
84
85
86
87
88
89
90
91
92
64
90
111
115
79
83
63
91
112
114
78
82
62
92
113
113
77
81
61
93
114
112
76
80
60
94
115
111
75
79
59
95
116
110
74
78
58
96
117
109
73
77
57
97
118
108
72
76
56
98
119
107
71
75
55
99
120
106
70
74
54
100
121
105
69
73
53
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
104
68
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
102
114
103
67
63
51
103
115
102
66
62
50
104
116
101
65
61
49
105
117
100
64
60
48
106
118
99
63
59
47
107
118
98
62
58
46
108
117
97
61
57
45
109
116
96
60
56
44
110
115
95
59
55
43
111
114
94
58
54
42
112
113
93
57
53
41
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
40
114
105
81
69
43
39
115
106
82
70
42
38
116
107
83
71
41
37
117
108
84
72
40
36
118
109
85
73
39
35
119
110
86
74
38
34
120
111
87
75
37
33
121
112
88
76
36
32
122
113
89
77
35
31
123
114
90
78
34
30
124
115
91
79
33
29
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
104
103
102
101
100
99
98
97
96
95
94
93
92
80
79
78
77
76
75
74
73
72
71
70
69
68
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
129
115
103
67
33
19
130
114
102
66
34
18
131
113
101
65
35
17
132
112
100
64
36
16
133
111
99
63
37
15
134
110
98
62
38
14
135
109
97
61
39
13
136
108
96
60
40
12
137
107
95
59
41
11
138
106
94
58
42
10
139
105
93
57
43
9
148
147
146
145
144
143
142
141
140
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
8
7
6
5
4
3
2
1
0
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
128
136
132
144
145
137
127
135
131
143
144
136
126
134
130
142
143
135
125
133
129
141
142
134
124
132
128
140
141
133
123
131
127
139
140
132
122
130
126
138
139
131
121
129
125
137
138
130
120
128
124
136
137
129
119
127
123
135
136
128
118
126
122
134
135
127
117
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
133
134
135
136
137
138
139
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
126
116
104
116
120
132
127
113
125
115
103
115
119
131
128
112
124
114
102
114
118
130
129
111
123
113
101
113
117
129
130
110
122
112
100
112
116
128
131
109
121
111
99
111
115
127
132
108
120
110
98
110
114
126
133
107
119
109
108
107
106
105
104
103
102
101
100
99
98
97
109
113
125
134
106
107
108
109
110
111
112
113
114
115
116
117
118
96
108
112
124
135
105
95
107
111
123
136
104
94
106
110
122
137
103
93
105
109
121
138
102
92
104
108
120
139
101
91
103
107
119
139
100
90
102
106
118
138
99
89
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
98
88
92
128
97
87
91
127
96
86
90
126
95
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
89
125
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
72
86
88
124
95
83
71
87
87
123
96
84
70
88
86
122
97
85
69
89
85
121
98
86
68
90
84
120
99
87
67
91
83
119
100
88
66
92
82
118
101
89
65
93
94
93
92
91
90
89
88
87
86
87
88
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
90
64
85
80
116
111
91
63
84
79
115
112
92
62
83
78
114
113
93
61
82
77
113
114
94
60
81
76
112
115
95
59
80
75
111
116
96
58
79
74
110
117
97
57
78
73
109
118
98
56
77
72
108
119
99
55
76
71
107
120
100
54
75
70
106
121
101
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
69
105
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
52
64
68
104
115
103
51
63
67
103
116
104
50
62
66
102
117
105
49
61
65
101
118
106
48
60
64
100
119
107
47
59
63
99
119
108
46
58
62
98
118
109
45
57
61
97
117
110
44
56
60
96
116
111
43
55
59
95
115
112
42
54
58
94
114
113
41
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
40
44
70
82
106
115
39
43
71
83
107
116
38
42
72
84
108
117
37
41
73
85
109
118
36
40
74
86
110
119
35
39
75
87
111
120
34
38
76
88
112
121
33
37
77
89
113
122
32
36
78
90
114
123
31
35
79
91
115
124
30
34
80
92
116
125
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
67
68
69
70
71
72
73
74
75
76
77
78
79
93
94
95
96
97
98
99
100
101
102
103
104
103
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
20
34
66
102
114
128
19
35
65
101
113
129
18
36
64
100
112
130
17
37
63
99
111
131
16
38
62
98
110
132
15
39
61
97
109
133
14
40
60
96
108
134
13
41
59
95
107
135
12
42
58
94
106
136
11
43
57
93
105
137
10
44
56
92
104
138
1
2
3
4
5
6
7
8
9
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
139
140
141
142
143
144
145
146
147
0
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
113
114
115
116
117
118
119
120
121
122
123
124
125
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
155
154
153
152
151
150
149
148
147
146
145
144
143
142
126
116
112
124
136
141
125
115
111
123
135
140
124
114
110
122
134
139
123
113
109
121
133
138
122
112
108
120
132
137
121
111
107
119
131
136
120
110
106
118
130
135
119
109
105
117
129
134
118
108
104
116
128
133
117
107
103
115
127
132
116
106
102
114
126
131
115
103
104
105
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
131
130
129
128
127
126
125
124
123
122
121
120
119
118
130
114
102
96
100
112
131
117
129
113
101
95
99
111
131
116
128
112
100
94
98
110
130
115
127
111
99
93
97
109
129
114
126
110
98
92
96
108
128
113
125
109
97
91
95
107
127
112
124
108
96
90
94
106
126
111
123
107
106
105
104
103
102
101
100
99
98
97
96
95
89
93
105
125
110
111
112
113
114
115
116
117
118
119
120
121
122
94
88
92
104
124
109
93
87
91
103
123
108
92
86
90
102
122
107
91
85
89
101
121
106
90
84
88
100
120
105
89
83
87
99
119
104
88
82
86
98
118
103
87
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
102
86
72
108
101
85
71
107
100
84
70
106
99
81
80
79
78
77
78
79
80
81
82
83
84
85
86
85
84
83
69
105
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
76
82
68
104
99
87
75
81
67
103
100
88
74
80
66
102
101
89
73
79
65
101
102
90
72
78
64
100
103
91
71
77
63
99
104
92
70
76
62
98
105
93
69
75
74
73
72
71
70
69
68
67
66
67
68
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
111
110
109
108
107
106
94
68
65
60
96
110
95
67
64
59
95
111
96
66
63
58
94
112
97
65
62
57
93
113
98
64
61
56
92
114
99
63
60
55
91
115
100
62
59
54
90
116
101
61
58
53
89
117
102
60
57
52
88
116
103
59
56
51
87
115
104
58
55
50
86
114
105
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
49
85
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
111
110
109
108
107
106
56
44
48
84
104
107
55
43
47
83
103
108
54
42
46
82
102
109
53
41
45
81
101
110
52
40
44
80
100
111
51
39
43
79
99
111
50
38
42
78
98
110
49
37
41
77
97
109
48
36
40
76
96
108
47
35
39
75
95
107
46
34
38
74
94
106
45
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
105
44
24
48
62
84
104
43
23
47
63
83
103
42
22
46
64
82
102
41
21
45
65
81
101
40
20
44
66
80
100
39
19
43
67
79
99
38
18
42
68
78
98
37
17
41
69
77
97
36
16
40
70
76
96
35
15
39
71
75
95
34
14
38
72
74
94
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
25
26
27
28
29
30
31
32
33
34
35
36
37
73
72
71
70
69
68
67
66
65
64
63
62
61
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
26
12
24
60
72
86
27
11
23
59
71
87
28
10
22
58
70
88
29
9
21
57
69
89
30
8
20
56
68
90
31
7
19
55
67
91
32
6
18
54
66
92
33
5
17
53
65
93
34
4
16
52
64
94
35
3
15
51
63
95
36
2
14
50
62
96
43
44
43
42
41
40
39
38
37
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
97
98
99
100
101
102
103
104
105
42
0
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
137
138
139
140
141
142
143
144
145
146
147
148
149
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
150
140
136
148
152
160
149
139
135
147
151
159
148
138
134
146
150
158
147
137
133
145
149
157
146
136
132
144
148
156
145
135
131
143
147
155
144
134
130
142
146
154
143
133
129
141
145
153
142
132
128
140
144
152
141
131
127
139
143
151
140
130
126
138
142
150
139
127
128
129
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
140
139
138
137
149
138
126
120
124
136
132
136
148
137
125
119
123
135
131
135
147
136
124
118
122
134
130
134
146
135
123
117
121
133
129
133
145
134
122
116
120
132
128
132
144
133
121
115
119
131
127
131
143
132
120
114
118
130
126
130
142
131
130
129
128
127
126
125
124
123
122
121
120
119
113
117
129
125
129
130
131
132
133
134
135
136
137
138
139
140
141
118
112
116
128
124
128
117
111
115
127
123
127
116
110
114
126
122
126
115
109
113
125
121
125
114
108
112
124
120
124
113
107
111
123
119
123
112
106
110
122
118
122
111
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
121
110
96
108
120
109
95
107
119
108
94
106
118
105
104
103
102
101
102
103
104
105
106
107
108
109
110
109
108
107
93
105
117
118
119
119
118
117
116
115
114
113
112
111
110
109
108
107
106
100
106
92
104
116
111
99
105
91
103
115
111
98
104
90
102
114
110
97
103
89
101
113
109
96
102
88
100
112
108
95
101
87
99
111
107
94
100
86
98
110
106
93
99
98
97
96
95
94
93
92
91
90
91
92
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
104
103
102
101
102
103
104
105
106
107
108
109
105
92
89
84
96
100
104
91
88
83
95
99
103
90
87
82
94
98
102
89
86
81
93
97
101
88
85
80
92
96
100
87
84
79
91
95
99
86
83
78
90
94
98
85
82
77
89
93
97
84
81
76
88
92
96
83
80
75
87
91
95
82
79
74
86
90
94
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
73
85
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
80
68
72
84
80
92
79
67
71
83
79
91
78
66
70
82
78
90
77
65
69
81
77
89
76
64
68
80
76
88
75
63
67
79
75
87
74
62
66
78
74
86
73
61
65
77
73
85
72
60
64
76
72
84
71
59
63
75
71
83
70
58
62
74
70
82
69
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
81
68
48
48
60
60
80
67
47
47
59
59
79
66
46
46
58
58
78
65
45
45
57
57
77
64
44
44
56
56
76
63
43
43
55
55
75
62
42
42
54
54
74
61
41
41
53
53
73
60
40
40
52
52
72
59
39
39
51
51
71
58
38
38
50
50
70
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
25
26
27
28
29
30
31
32
33
34
35
36
37
49
48
47
46
45
44
43
42
41
40
39
38
37
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
50
36
24
36
48
62
51
35
23
35
47
63
52
34
22
34
46
64
53
33
21
33
45
65
54
32
20
32
44
66
55
31
19
31
43
67
56
30
18
30
42
68
57
29
17
29
41
69
58
28
16
28
40
70
59
27
15
27
39
71
60
26
14
26
38
72
69
68
67
66
65
64
63
62
61
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
73
74
75
76
77
78
79
80
81
68
26
0
163
164
165
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
149
148
147
146
145
144
143
142
141
140
139
138
137
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
162
152
148
136
140
148
161
151
147
135
139
147
160
150
146
134
138
146
159
149
145
133
137
145
158
148
144
132
136
144
157
147
143
131
135
143
156
146
142
130
134
142
155
145
141
129
133
141
154
144
140
128
132
140
153
143
139
127
131
139
152
142
138
126
130
138
151
139
140
141
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
128
127
126
125
137
150
138
132
136
124
120
124
136
149
137
131
135
123
119
123
135
148
136
130
134
122
118
122
134
147
135
129
133
121
117
121
133
146
134
128
132
120
116
120
132
145
133
127
131
119
115
119
131
144
132
126
130
118
114
118
130
143
142
141
140
139
138
137
136
135
134
133
132
131
125
129
117
113
117
118
119
120
121
122
123
124
125
126
127
128
129
130
124
128
116
112
116
129
123
127
115
111
115
128
122
126
114
110
114
127
121
125
113
109
113
126
120
124
112
108
112
125
119
123
111
107
111
124
118
122
110
106
110
123
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
109
122
108
96
108
121
107
95
107
120
106
94
106
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
120
119
105
93
105
106
107
108
109
108
107
106
105
104
103
102
101
102
103
104
105
111
118
104
92
104
100
111
117
103
91
103
99
110
116
102
90
102
98
109
115
101
89
101
97
108
114
100
88
100
96
107
113
99
87
99
95
106
112
98
86
98
94
105
111
110
109
108
107
106
105
104
103
102
103
104
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
92
91
90
89
90
91
92
93
94
95
96
97
93
104
101
96
84
88
92
103
100
95
83
87
91
102
99
94
82
86
90
101
98
93
81
85
89
100
97
92
80
84
88
99
96
91
79
83
87
98
95
90
78
82
86
97
94
89
77
81
85
96
93
88
76
80
84
95
92
87
75
79
83
94
91
86
74
78
82
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
85
73
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
92
80
84
72
68
80
91
79
83
71
67
79
90
78
82
70
66
78
89
77
81
69
65
77
88
76
80
68
64
76
87
75
79
67
63
75
86
74
78
66
62
74
85
73
77
65
61
73
84
72
76
64
60
72
83
71
75
63
59
71
82
70
74
62
58
70
81
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
69
80
60
60
48
48
68
79
59
59
47
47
67
78
58
58
46
46
66
77
57
57
45
45
65
76
56
56
44
44
64
75
55
55
43
43
63
74
54
54
42
42
62
73
53
53
41
41
61
72
52
52
40
40
60
71
51
51
39
39
59
70
50
50
38
38
58
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
37
38
39
40
41
42
43
44
45
46
47
48
49
37
36
35
34
33
32
31
30
29
28
27
26
25
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
62
48
36
24
36
50
63
47
35
23
35
51
64
46
34
22
34
52
65
45
33
21
33
53
66
44
32
20
32
54
67
43
31
19
31
55
68
42
30
18
30
56
69
41
29
17
29
57
70
40
28
16
28
58
71
39
27
15
27
59
72
38
26
14
26
60
81
80
79
78
77
76
75
74
73
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
61
62
63
64
65
66
67
68
69
80
38
14
0
142
143
144
145
146
147
148
149
150
151
152
153
154
155
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
125
124
123
122
121
120
119
118
117
116
115
114
113
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
141
136
124
112
116
124
140
135
123
111
115
123
139
134
122
110
114
122
138
133
121
109
113
121
137
132
120
108
112
120
136
131
119
107
111
119
135
130
118
106
110
118
134
129
117
105
109
117
133
128
116
104
108
116
132
127
115
103
107
115
131
126
114
102
106
114
130
118
119
120
121
122
123
124
125
126
127
128
129
130
131
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
104
103
102
101
113
129
117
131
112
100
96
100
112
128
116
131
111
99
95
99
111
127
115
130
110
98
94
98
110
126
114
129
109
97
93
97
109
125
113
128
108
96
92
96
108
124
112
127
107
95
91
95
107
123
111
126
106
94
90
94
106
122
121
120
119
118
117
116
115
114
113
112
111
110
125
105
93
89
93
94
95
96
97
98
99
100
101
102
103
104
105
109
124
104
92
88
92
108
123
103
91
87
91
107
122
102
90
86
90
106
121
101
89
85
89
105
120
100
88
84
88
104
119
99
87
83
87
103
118
98
86
82
86
102
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
85
101
108
72
84
100
107
71
83
99
106
70
82
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
105
69
81
82
83
84
85
84
83
82
81
80
79
78
77
78
79
80
81
87
99
104
68
80
76
88
100
103
67
79
75
89
101
102
66
78
74
90
102
101
65
77
73
91
103
100
64
76
72
92
104
99
63
75
71
93
105
98
62
74
70
94
106
107
108
109
110
111
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
68
67
66
65
66
67
68
69
70
71
72
73
69
95
109
96
60
64
68
96
110
95
59
63
67
97
111
94
58
62
66
98
112
93
57
61
65
99
113
92
56
60
64
100
114
91
55
59
63
101
115
90
54
58
62
102
116
89
53
57
61
103
117
88
52
56
60
104
116
87
51
55
59
105
115
86
50
54
58
106
107
108
109
110
111
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
85
49
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
107
104
84
48
44
56
108
103
83
47
43
55
109
102
82
46
42
54
110
101
81
45
41
53
111
100
80
44
40
52
111
99
79
43
39
51
110
98
78
42
38
50
109
97
77
41
37
49
108
96
76
40
36
48
107
95
75
39
35
47
106
94
74
38
34
46
105
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
45
104
84
62
48
24
44
103
83
63
47
23
43
102
82
64
46
22
42
101
81
65
45
21
41
100
80
66
44
20
40
99
79
67
43
19
39
98
78
68
42
18
38
97
77
69
41
17
37
96
76
70
40
16
36
95
75
71
39
15
35
94
74
72
38
14
34
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
61
62
63
64
65
66
67
68
69
70
71
72
73
37
36
35
34
33
32
31
30
29
28
27
26
25
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
86
72
60
24
12
26
87
71
59
23
11
27
88
70
58
22
10
28
89
69
57
21
9
29
90
68
56
20
8
30
91
67
55
19
7
31
92
66
54
18
6
32
93
65
53
17
5
33
94
64
52
16
4
34
95
63
51
15
3
35
96
62
50
14
2
36
105
104
103
102
101
100
99
98
97
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
37
38
39
40
41
42
43
44
43
104
62
38
26
0
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
137
145
144
132
136
128
136
144
143
131
135
127
135
143
142
130
134
126
134
142
141
129
133
125
133
141
140
128
132
124
132
140
139
127
131
123
131
139
138
126
130
122
130
138
137
125
129
121
129
137
136
124
128
120
128
136
135
123
127
119
127
135
134
122
126
118
126
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
139
138
137
136
135
134
133
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
117
125
113
127
132
120
116
104
116
124
112
128
131
119
115
103
115
123
111
129
130
118
114
102
114
122
110
130
129
117
113
101
113
121
109
131
128
116
112
100
112
120
108
132
127
115
111
99
111
119
107
133
126
114
110
98
110
118
117
116
115
114
113
112
111
110
109
108
107
106
134
125
113
109
97
98
99
100
101
102
103
104
105
106
107
108
109
105
135
124
112
108
96
104
136
123
111
107
95
103
137
122
110
106
94
102
138
121
109
105
93
101
139
120
108
104
92
100
139
119
107
103
91
99
138
118
106
102
90
98
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
89
97
128
92
88
96
127
91
87
95
126
90
86
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
125
89
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
83
95
124
88
86
72
84
96
123
87
87
71
85
97
122
86
88
70
86
98
121
85
89
69
87
99
120
84
90
68
88
100
119
83
91
67
89
101
118
82
92
66
90
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
88
87
86
85
86
87
88
89
90
91
92
93
65
91
112
116
80
84
64
92
113
115
79
83
63
93
114
114
78
82
62
94
115
113
77
81
61
95
116
112
76
80
60
96
117
111
75
79
59
97
118
110
74
78
58
98
119
109
73
77
57
99
120
108
72
76
56
100
121
107
71
75
55
101
122
106
70
74
54
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
105
69
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
103
115
104
68
64
52
104
116
103
67
63
51
105
117
102
66
62
50
106
118
101
65
61
49
107
119
100
64
60
48
108
119
99
63
59
47
109
118
98
62
58
46
110
117
97
61
57
45
111
116
96
60
56
44
112
115
95
59
55
43
113
114
94
58
54
42
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
41
115
106
82
70
44
40
116
107
83
71
43
39
117
108
84
72
42
38
118
109
85
73
41
37
119
110
86
74
40
36
120
111
87
75
39
35
121
112
88
76
38
34
122
113
89
77
37
33
123
114
90
78
36
32
124
115
91
79
35
31
125
116
92
80
34
30
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
103
104
103
102
101
100
99
98
97
96
95
94
93
79
78
77
76
75
74
73
72
71
70
69
68
67
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
128
114
102
66
34
20
129
113
101
65
35
19
130
112
100
64
36
18
131
111
99
63
37
17
132
110
98
62
38
16
133
109
97
61
39
15
134
108
96
60
40
14
135
107
95
59
41
13
136
106
94
58
42
12
137
105
93
57
43
11
138
104
92
56
44
10
147
146
145
144
143
142
141
140
139
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
9
8
7
6
5
4
3
2
1
146
104
80
68
42
0
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
129
137
133
145
146
138
128
136
132
144
145
137
127
135
131
143
144
136
126
134
130
142
143
135
125
133
129
141
142
134
124
132
128
140
141
133
123
131
127
139
140
132
122
130
126
138
139
131
121
129
125
137
138
130
120
128
124
136
137
129
119
127
123
135
136
128
118
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
134
135
136
137
138
139
140
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
127
117
105
117
121
133
128
114
126
116
104
116
120
132
129
113
125
115
103
115
119
131
130
112
124
114
102
114
118
130
131
111
123
113
101
113
117
129
132
110
122
112
100
112
116
128
133
109
121
111
99
111
115
127
134
108
120
110
109
108
107
106
105
104
103
102
101
100
99
98
110
114
126
135
107
108
109
110
111
112
113
114
115
116
117
118
119
97
109
113
125
136
106
96
108
112
124
137
105
95
107
111
123
138
104
94
106
110
122
139
103
93
105
109
121
140
102
92
104
108
120
140
101
91
103
107
119
139
100
90
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
99
89
93
129
98
88
92
128
97
87
91
127
96
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
90
126
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
73
87
89
125
96
84
72
88
88
124
97
85
71
89
87
123
98
86
70
90
86
122
99
87
69
91
85
121
100
88
68
92
84
120
101
89
67
93
83
119
102
90
66
94
95
94
93
92
91
90
89
88
87
88
89
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
91
65
86
81
117
112
92
64
85
80
116
113
93
63
84
79
115
114
94
62
83
78
114
115
95
61
82
77
113
116
96
60
81
76
112
117
97
59
80
75
111
118
98
58
79
74
110
119
99
57
78
73
109
120
100
56
77
72
108
121
101
55
76
71
107
122
102
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
70
106
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
53
65
69
105
116
104
52
64
68
104
117
105
51
63
67
103
118
106
50
62
66
102
119
107
49
61
65
101
120
108
48
60
64
100
120
109
47
59
63
99
119
110
46
58
62
98
118
111
45
57
61
97
117
112
44
56
60
96
116
113
43
55
59
95
115
114
42
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
41
45
71
83
107
116
40
44
72
84
108
117
39
43
73
85
109
118
38
42
74
86
110
119
37
41
75
87
111
120
36
40
76
88
112
121
35
39
77
89
113
122
34
38
78
90
114
123
33
37
79
91
115
124
32
36
80
92
116
125
31
35
79
93
115
126
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
66
67
68
69
70
71
72
73
74
75
76
77
78
94
95
96
97
98
99
100
101
102
103
104
103
102
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
21
35
65
101
113
127
20
36
64
100
112
128
19
37
63
99
111
129
18
38
62
98
110
130
17
39
61
97
109
131
16
40
60
96
108
132
15
41
59
95
107
133
14
42
58
94
106
134
13
43
57
93
105
135
12
44
56
92
104
136
11
43
55
91
103
137
2
3
4
5
6
7
8
9
10
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
138
139
140
141
142
143
144
145
146
1
41
67
79
103
145
0
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
114
115
116
117
118
119
120
121
122
123
124
125
126
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
156
155
154
153
152
151
150
149
148
147
146
145
144
143
127
117
113
125
137
142
126
116
112
124
136
141
125
115
111
123
135
140
124
114
110
122
134
139
123
113
109
121
133
138
122
112
108
120
132
137
121
111
107
119
131
136
120
110
106
118
130
135
119
109
105
117
129
134
118
108
104
116
128
133
117
107
103
115
127
132
116
104
105
106
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
132
131
130
129
128
127
126
125
124
123
122
121
120
119
131
115
103
97
101
113
132
118
130
114
102
96
100
112
132
117
129
113
101
95
99
111
131
116
128
112
100
94
98
110
130
115
127
111
99
93
97
109
129
114
126
110
98
92
96
108
128
113
125
109
97
91
95
107
127
112
124
108
107
106
105
104
103
102
101
100
99
98
97
96
90
94
106
126
111
112
113
114
115
116
117
118
119
120
121
122
123
95
89
93
105
125
110
94
88
92
104
124
109
93
87
91
103
123
108
92
86
90
102
122
107
91
85
89
101
121
106
90
84
88
100
120
105
89
83
87
99
119
104
88
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
103
87
73
109
102
86
72
108
101
85
71
107
100
82
81
80
79
78
79
80
81
82
83
84
85
86
87
86
85
84
70
106
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
77
83
69
105
100
88
76
82
68
104
101
89
75
81
67
103
102
90
74
80
66
102
103
91
73
79
65
101
104
92
72
78
64
100
105
93
71
77
63
99
106
94
70
76
75
74
73
72
71
70
69
68
67
68
69
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
112
111
110
109
108
107
95
69
66
61
97
111
96
68
65
60
96
112
97
67
64
59
95
113
98
66
63
58
94
114
99
65
62
57
93
115
100
64
61
56
92
116
101
63
60
55
91
117
102
62
59
54
90
118
103
61
58
53
89
117
104
60
57
52
88
116
105
59
56
51
87
115
106
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
50
86
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
112
111
110
109
108
107
57
45
49
85
105
108
56
44
48
84
104
109
55
43
47
83
103
110
54
42
46
82
102
111
53
41
45
81
101
112
52
40
44
80
100
112
51
39
43
79
99
111
50
38
42
78
98
110
49
37
41
77
97
109
48
36
40
76
96
108
47
35
39
75
95
107
46
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
106
45
25
49
63
85
105
44
24
48
64
84
104
43
23
47
65
83
103
42
22
46
66
82
102
41
21
45
67
81
101
40
20
44
68
80
100
39
19
43
69
79
99
38
18
42
70
78
98
37
17
41
71
77
97
36
16
40
72
76
96
35
15
39
73
75
95
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
26
27
28
29
30
31
32
33
34
35
36
37
38
74
73
72
71
70
69
68
67
66
65
64
63
62
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
27
13
25
61
73
87
28
12
24
60
72
88
29
11
23
59
71
89
30
10
22
58
70
90
31
9
21
57
69
91
32
8
20
56
68
92
33
7
19
55
67
93
34
6
18
54
66
94
35
5
17
53
65
95
36
4
16
52
64
96
37
3
15
51
63
97
42
43
44
43
42
41
40
39
38
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
98
99
100
101
102
103
104
105
106
41
1
27
39
63
105
40
0
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
138
139
140
141
142
143
144
145
146
147
148
149
150
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
165
164
163
162
151
141
137
149
153
161
150
140
136
148
152
160
149
139
135
147
151
159
148
138
134
146
150
158
147
137
133
145
149
157
146
136
132
144
148
156
145
135
131
143
147
155
144
134
130
142
146
154
143
133
129
141
145
153
142
132
128
140
144
152
141
131
127
139
143
151
140
128
129
130
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
141
140
139
138
150
139
127
121
125
137
133
137
149
138
126
120
124
136
132
136
148
137
125
119
123
135
131
135
147
136
124
118
122
134
130
134
146
135
123
117
121
133
129
133
145
134
122
116
120
132
128
132
144
133
121
115
119
131
127
131
143
132
131
130
129
128
127
126
125
124
123
122
121
120
114
118
130
126
130
131
132
133
134
135
136
137
138
139
140
141
142
119
113
117
129
125
129
118
112
116
128
124
128
117
111
115
127
123
127
116
110
114
126
122
126
115
109
113
125
121
125
114
108
112
124
120
124
113
107
111
123
119
123
112
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
122
111
97
109
121
110
96
108
120
109
95
107
119
106
105
104
103
102
103
104
105
106
107
108
109
110
111
110
109
108
94
106
118
119
120
120
119
118
117
116
115
114
113
112
111
110
109
108
107
101
107
93
105
117
112
100
106
92
104
116
112
99
105
91
103
115
111
98
104
90
102
114
110
97
103
89
101
113
109
96
102
88
100
112
108
95
101
87
99
111
107
94
100
99
98
97
96
95
94
93
92
91
92
93
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
105
104
103
102
103
104
105
106
107
108
109
110
106
93
90
85
97
101
105
92
89
84
96
100
104
91
88
83
95
99
103
90
87
82
94
98
102
89
86
81
93
97
101
88
85
80
92
96
100
87
84
79
91
95
99
86
83
78
90
94
98
85
82
77
89
93
97
84
81
76
88
92
96
83
80
75
87
91
95
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
74
86
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
81
69
73
85
81
93
80
68
72
84
80
92
79
67
71
83
79
91
78
66
70
82
78
90
77
65
69
81
77
89
76
64
68
80
76
88
75
63
67
79
75
87
74
62
66
78
74
86
73
61
65
77
73
85
72
60
64
76
72
84
71
59
63
75
71
83
70
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
82
69
49
49
61
61
81
68
48
48
60
60
80
67
47
47
59
59
79
66
46
46
58
58
78
65
45
45
57
57
77
64
44
44
56
56
76
63
43
43
55
55
75
62
42
42
54
54
74
61
41
41
53
53
73
60
40
40
52
52
72
59
39
39
51
51
71
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
26
27
28
29
30
31
32
33
34
35
36
37
38
50
49
48
47
46
45
44
43
42
41
40
39
38
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
51
37
25
37
49
63
52
36
24
36
48
64
53
35
23
35
47
65
54
34
22
34
46
66
55
33
21
33
45
67
56
32
20
32
44
68
57
31
19
31
43
69
58
30
18
30
42
70
59
29
17
29
41
71
60
28
16
28
40
72
61
27
15
27
39
73
70
69
68
67
66
65
64
63
62
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
74
75
76
77
78
79
80
81
82
69
27
1
15
39
81
68
28
0
164
165
166
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
150
149
148
147
146
145
144
143
142
141
140
139
138
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
163
153
149
137
141
149
162
152
148
136
140
148
161
151
147
135
139
147
160
150
146
134
138
146
159
149
145
133
137
145
158
148
144
132
136
144
157
147
143
131
135
143
156
146
142
130
134
142
155
145
141
129
133
141
154
144
140
128
132
140
153
143
139
127
131
139
152
140
141
142
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
129
128
127
126
138
151
139
133
137
125
121
125
137
150
138
132
136
124
120
124
136
149
137
131
135
123
119
123
135
148
136
130
134
122
118
122
134
147
135
129
133
121
117
121
133
146
134
128
132
120
116
120
132
145
133
127
131
119
115
119
131
144
143
142
141
140
139
138
137
136
135
134
133
132
126
130
118
114
118
119
120
121
122
123
124
125
126
127
128
129
130
131
125
129
117
113
117
130
124
128
116
112
116
129
123
127
115
111
115
128
122
126
114
110
114
127
121
125
113
109
113
126
120
124
112
108
112
125
119
123
111
107
111
124
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
110
123
109
97
109
122
108
96
108
121
107
95
107
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
121
120
106
94
106
107
108
109
110
109
108
107
106
105
104
103
102
103
104
105
106
112
119
105
93
105
101
112
118
104
92
104
100
111
117
103
91
103
99
110
116
102
90
102
98
109
115
101
89
101
97
108
114
100
88
100
96
107
113
99
87
99
95
106
112
111
110
109
108
107
106
105
104
103
104
105
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
93
92
91
90
91
92
93
94
95
96
97
98
94
105
102
97
85
89
93
104
101
96
84
88
92
103
100
95
83
87
91
102
99
94
82
86
90
101
98
93
81
85
89
100
97
92
80
84
88
99
96
91
79
83
87
98
95
90
78
82
86
97
94
89
77
81
85
96
93
88
76
80
84
95
92
87
75
79
83
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
86
74
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
93
81
85
73
69
81
92
80
84
72
68
80
91
79
83
71
67
79
90
78
82
70
66
78
89
77
81
69
65
77
88
76
80
68
64
76
87
75
79
67
63
75
86
74
78
66
62
74
85
73
77
65
61
73
84
72
76
64
60
72
83
71
75
63
59
71
82
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
70
81
61
61
49
49
69
80
60
60
48
48
68
79
59
59
47
47
67
78
58
58
46
46
66
77
57
57
45
45
65
76
56
56
44
44
64
75
55
55
43
43
63
74
54
54
42
42
62
73
53
53
41
41
61
72
52
52
40
40
60
71
51
51
39
39
59
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
38
39
40
41
42
43
44
45
46
47
48
49
50
38
37
36
35
34
33
32
31
30
29
28
27
26
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
63
49
37
25
37
51
64
48
36
24
36
52
65
47
35
23
35
53
66
46
34
22
34
54
67
45
33
21
33
55
68
44
32
20
32
56
69
43
31
19
31
57
70
42
30
18
30
58
71
41
29
17
29
59
72
40
28
16
28
60
73
39
27
15
27
61
82
81
80
79
78
77
76
75
74
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
62
63
64
65
66
67
68
69
70
81
39
15
1
27
69
80
40
16
0
143
144
145
146
147
148
149
150
151
152
153
154
155
156
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
126
125
124
123
122
121
120
119
118
117
116
115
114
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
142
137
125
113
117
125
141
136
124
112
116
124
140
135
123
111
115
123
139
134
122
110
114
122
138
133
121
109
113
121
137
132
120
108
112
120
136
131
119
107
111
119
135
130
118
106
110
118
134
129
117
105
109
117
133
128
116
104
108
116
132
127
115
103
107
115
131
119
120
121
122
123
124
125
126
127
128
129
130
131
132
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
105
104
103
102
114
130
118
132
113
101
97
101
113
129
117
132
112
100
96
100
112
128
116
131
111
99
95
99
111
127
115
130
110
98
94
98
110
126
114
129
109
97
93
97
109
125
113
128
108
96
92
96
108
124
112
127
107
95
91
95
107
123
122
121
120
119
118
117
116
115
114
113
112
111
126
106
94
90
94
95
96
97
98
99
100
101
102
103
104
105
106
110
125
105
93
89
93
109
124
104
92
88
92
108
123
103
91
87
91
107
122
102
90
86
90
106
121
101
89
85
89
105
120
100
88
84
88
104
119
99
87
83
87
103
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
86
102
109
73
85
101
108
72
84
100
107
71
83
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
106
70
82
83
84
85
86
85
84
83
82
81
80
79
78
79
80
81
82
88
100
105
69
81
77
89
101
104
68
80
76
90
102
103
67
79
75
91
103
102
66
78
74
92
104
101
65
77
73
93
105
100
64
76
72
94
106
99
63
75
71
95
107
108
109
110
111
112
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
69
68
67
66
67
68
69
70
71
72
73
74
70
96
110
97
61
65
69
97
111
96
60
64
68
98
112
95
59
63
67
99
113
94
58
62
66
100
114
93
57
61
65
101
115
92
56
60
64
102
116
91
55
59
63
103
117
90
54
58
62
104
118
89
53
57
61
105
117
88
52
56
60
106
116
87
51
55
59
107
108
109
110
111
112
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
86
50
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
108
105
85
49
45
57
109
104
84
48
44
56
110
103
83
47
43
55
111
102
82
46
42
54
112
101
81
45
41
53
112
100
80
44
40
52
111
99
79
43
39
51
110
98
78
42
38
50
109
97
77
41
37
49
108
96
76
40
36
48
107
95
75
39
35
47
106
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
46
105
85
63
49
25
45
104
84
64
48
24
44
103
83
65
47
23
43
102
82
66
46
22
42
101
81
67
45
21
41
100
80
68
44
20
40
99
79
69
43
19
39
98
78
70
42
18
38
97
77
71
41
17
37
96
76
72
40
16
36
95
75
73
39
15
35
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
62
63
64
65
66
67
68
69
70
71
72
73
74
38
37
36
35
34
33
32
31
30
29
28
27
26
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
87
73
61
25
13
27
88
72
60
24
12
28
89
71
59
23
11
29
90
70
58
22
10
30
91
69
57
21
9
31
92
68
56
20
8
32
93
67
55
19
7
33
94
66
54
18
6
34
95
65
53
17
5
35
96
64
52
16
4
36
97
63
51
15
3
37
106
105
104
103
102
101
100
99
98
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
38
39
40
41
42
43
44
43
42
105
63
39
27
1
41
104
64
40
28
0
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
138
146
145
133
137
129
137
145
144
132
136
128
136
144
143
131
135
127
135
143
142
130
134
126
134
142
141
129
133
125
133
141
140
128
132
124
132
140
139
127
131
123
131
139
138
126
130
122
130
138
137
125
129
121
129
137
136
124
128
120
128
136
135
123
127
119
127
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
140
139
138
137
136
135
134
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
118
126
114
128
133
121
117
105
117
125
113
129
132
120
116
104
116
124
112
130
131
119
115
103
115
123
111
131
130
118
114
102
114
122
110
132
129
117
113
101
113
121
109
133
128
116
112
100
112
120
108
134
127
115
111
99
111
119
118
117
116
115
114
113
112
111
110
109
108
107
135
126
114
110
98
99
100
101
102
103
104
105
106
107
108
109
110
106
136
125
113
109
97
105
137
124
112
108
96
104
138
123
111
107
95
103
139
122
110
106
94
102
140
121
109
105
93
101
140
120
108
104
92
100
139
119
107
103
91
99
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
90
98
129
93
89
97
128
92
88
96
127
91
87
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
126
90
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
84
96
125
89
87
73
85
97
124
88
88
72
86
98
123
87
89
71
87
99
122
86
90
70
88
100
121
85
91
69
89
101
120
84
92
68
90
102
119
83
93
67
91
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
89
88
87
86
87
88
89
90
91
92
93
94
66
92
113
117
81
85
65
93
114
116
80
84
64
94
115
115
79
83
63
95
116
114
78
82
62
96
117
113
77
81
61
97
118
112
76
80
60
98
119
111
75
79
59
99
120
110
74
78
58
100
121
109
73
77
57
101
122
108
72
76
56
102
123
107
71
75
55
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
106
70
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
104
116
105
69
65
53
105
117
104
68
64
52
106
118
103
67
63
51
107
119
102
66
62
50
108
120
101
65
61
49
109
120
100
64
60
48
110
119
99
63
59
47
111
118
98
62
58
46
112
117
97
61
57
45
113
116
96
60
56
44
114
115
95
59
55
43
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
42
116
107
83
71
45
41
117
108
84
72
44
40
118
109
85
73
43
39
119
110
86
74
42
38
120
111
87
75
41
37
121
112
88
76
40
36
122
113
89
77
39
35
123
114
90
78
38
34
124
115
91
79
37
33
125
116
92
80
36
32
126
115
93
79
35
31
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
102
103
104
103
102
101
100
99
98
97
96
95
94
78
77
76
75
74
73
72
71
70
69
68
67
66
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
127
113
101
65
35
21
128
112
100
64
36
20
129
111
99
63
37
19
130
110
98
62
38
18
131
109
97
61
39
17
132
108
96
60
40
16
133
107
95
59
41
15
134
106
94
58
42
14
135
105
93
57
43
13
136
104
92
56
44
12
137
103
91
55
43
11
146
145
144
143
142
141
140
139
138
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
10
9
8
7
6
5
4
3
2
145
103
79
67
41
1
144
104
80
68
40
0
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
130
138
134
146
147
139
129
137
133
145
146
138
128
136
132
144
145
137
127
135
131
143
144
136
126
134
130
142
143
135
125
133
129
141
142
134
124
132
128
140
141
133
123
131
127
139
140
132
122
130
126
138
139
131
121
129
125
137
138
130
120
128
124
136
137
129
119
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
135
136
137
138
139
140
141
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
128
118
106
118
122
134
129
115
127
117
105
117
121
133
130
114
126
116
104
116
120
132
131
113
125
115
103
115
119
131
132
112
124
114
102
114
118
130
133
111
123
113
101
113
117
129
134
110
122
112
100
112
116
128
135
109
121
111
110
109
108
107
106
105
104
103
102
101
100
99
111
115
127
136
108
109
110
111
112
113
114
115
116
117
118
119
120
98
110
114
126
137
107
97
109
113
125
138
106
96
108
112
124
139
105
95
107
111
123
140
104
94
106
110
122
141
103
93
105
109
121
141
102
92
104
108
120
140
101
91
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
100
90
94
130
99
89
93
129
98
88
92
128
97
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
91
127
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
74
88
90
126
97
85
73
89
89
125
98
86
72
90
88
124
99
87
71
91
87
123
100
88
70
92
86
122
101
89
69
93
85
121
102
90
68
94
84
120
103
91
67
95
96
95
94
93
92
91
90
89
88
89
90
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
92
66
87
82
118
113
93
65
86
81
117
114
94
64
85
80
116
115
95
63
84
79
115
116
96
62
83
78
114
117
97
61
82
77
113
118
98
60
81
76
112
119
99
59
80
75
111
120
100
58
79
74
110
121
101
57
78
73
109
122
102
56
77
72
108
123
103
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
71
107
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
54
66
70
106
117
105
53
65
69
105
118
106
52
64
68
104
119
107
51
63
67
103
120
108
50
62
66
102
121
109
49
61
65
101
121
110
48
60
64
100
120
111
47
59
63
99
119
112
46
58
62
98
118
113
45
57
61
97
117
114
44
56
60
96
116
115
43
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
42
46
72
84
108
117
41
45
73
85
109
118
40
44
74
86
110
119
39
43
75
87
111
120
38
42
76
88
112
121
37
41
77
89
113
122
36
40
78
90
114
123
35
39
79
91
115
124
34
38
80
92
116
125
33
37
79
93
115
126
32
36
78
94
114
127
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
65
66
67
68
69
70
71
72
73
74
75
76
77
95
96
97
98
99
100
101
102
103
104
103
102
101
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
22
36
64
100
112
126
21
37
63
99
111
127
20
38
62
98
110
128
19
39
61
97
109
129
18
40
60
96
108
130
17
41
59
95
107
131
16
42
58
94
106
132
15
43
57
93
105
133
14
44
56
92
104
134
13
43
55
91
103
135
12
42
54
90
102
136
3
4
5
6
7
8
9
10
11
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
137
138
139
140
141
142
143
144
145
2
40
66
78
102
144
1
39
67
79
103
143
0
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
115
116
117
118
119
120
121
122
123
124
125
126
127
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
157
156
155
154
153
152
151
150
149
148
147
146
145
144
128
118
114
126
138
143
127
117
113
125
137
142
126
116
112
124
136
141
125
115
111
123
135
140
124
114
110
122
134
139
123
113
109
121
133
138
122
112
108
120
132
137
121
111
107
119
131
136
120
110
106
118
130
135
119
109
105
117
129
134
118
108
104
116
128
133
117
105
106
107
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
133
132
131
130
129
128
127
126
125
124
123
122
121
120
132
116
104
98
102
114
133
119
131
115
103
97
101
113
133
118
130
114
102
96
100
112
132
117
129
113
101
95
99
111
131
116
128
112
100
94
98
110
130
115
127
111
99
93
97
109
129
114
126
110
98
92
96
108
128
113
125
109
108
107
106
105
104
103
102
101
100
99
98
97
91
95
107
127
112
113
114
115
116
117
118
119
120
121
122
123
124
96
90
94
106
126
111
95
89
93
105
125
110
94
88
92
104
124
109
93
87
91
103
123
108
92
86
90
102
122
107
91
85
89
101
121
106
90
84
88
100
120
105
89
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
104
88
74
110
103
87
73
109
102
86
72
108
101
83
82
81
80
79
80
81
82
83
84
85
86
87
88
87
86
85
71
107
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
78
84
70
106
101
89
77
83
69
105
102
90
76
82
68
104
103
91
75
81
67
103
104
92
74
80
66
102
105
93
73
79
65
101
106
94
72
78
64
100
107
95
71
77
76
75
74
73
72
71
70
69
68
69
70
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
96
70
67
62
98
112
97
69
66
61
97
113
98
68
65
60
96
114
99
67
64
59
95
115
100
66
63
58
94
116
101
65
62
57
93
117
102
64
61
56
92
118
103
63
60
55
91
119
104
62
59
54
90
118
105
61
58
53
89
117
106
60
57
52
88
116
107
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
51
87
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
113
112
111
110
109
108
58
46
50
86
106
109
57
45
49
85
105
110
56
44
48
84
104
111
55
43
47
83
103
112
54
42
46
82
102
113
53
41
45
81
101
113
52
40
44
80
100
112
51
39
43
79
99
111
50
38
42
78
98
110
49
37
41
77
97
109
48
36
40
76
96
108
47
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
107
46
26
50
64
86
106
45
25
49
65
85
105
44
24
48
66
84
104
43
23
47
67
83
103
42
22
46
68
82
102
41
21
45
69
81
101
40
20
44
70
80
100
39
19
43
71
79
99
38
18
42
72
78
98
37
17
41
73
77
97
36
16
40
74
76
96
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
27
28
29
30
31
32
33
34
35
36
37
38
39
75
74
73
72
71
70
69
68
67
66
65
64
63
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
28
14
26
62
74
88
29
13
25
61
73
89
30
12
24
60
72
90
31
11
23
59
71
91
32
10
22
58
70
92
33
9
21
57
69
93
34
8
20
56
68
94
35
7
19
55
67
95
36
6
18
54
66
96
37
5
17
53
65
97
38
4
16
52
64
98
41
42
43
44
43
42
41
40
39
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
99
100
101
102
103
104
105
106
107
40
2
28
40
64
106
39
1
29
41
65
105
38
0
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
139
140
141
142
143
144
145
146
147
148
149
150
151
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
166
165
164
163
152
142
138
150
154
162
151
141
137
149
153
161
150
140
136
148
152
160
149
139
135
147
151
159
148
138
134
146
150
158
147
137
133
145
149
157
146
136
132
144
148
156
145
135
131
143
147
155
144
134
130
142
146
154
143
133
129
141
145
153
142
132
128
140
144
152
141
129
130
131
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
142
141
140
139
151
140
128
122
126
138
134
138
150
139
127
121
125
137
133
137
149
138
126
120
124
136
132
136
148
137
125
119
123
135
131
135
147
136
124
118
122
134
130
134
146
135
123
117
121
133
129
133
145
134
122
116
120
132
128
132
144
133
132
131
130
129
128
127
126
125
124
123
122
121
115
119
131
127
131
132
133
134
135
136
137
138
139
140
141
142
143
120
114
118
130
126
130
119
113
117
129
125
129
118
112
116
128
124
128
117
111
115
127
123
127
116
110
114
126
122
126
115
109
113
125
121
125
114
108
112
124
120
124
113
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
123
112
98
110
122
111
97
109
121
110
96
108
120
107
106
105
104
103
104
105
106
107
108
109
110
111
112
111
110
109
95
107
119
120
121
121
120
119
118
117
116
115
114
113
112
111
110
109
108
102
108
94
106
118
113
101
107
93
105
117
113
100
106
92
104
116
112
99
105
91
103
115
111
98
104
90
102
114
110
97
103
89
101
113
109
96
102
88
100
112
108
95
101
100
99
98
97
96
95
94
93
92
93
94
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
106
105
104
103
104
105
106
107
108
109
110
111
107
94
91
86
98
102
106
93
90
85
97
101
105
92
89
84
96
100
104
91
88
83
95
99
103
90
87
82
94
98
102
89
86
81
93
97
101
88
85
80
92
96
100
87
84
79
91
95
99
86
83
78
90
94
98
85
82
77
89
93
97
84
81
76
88
92
96
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
75
87
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
82
70
74
86
82
94
81
69
73
85
81
93
80
68
72
84
80
92
79
67
71
83
79
91
78
66
70
82
78
90
77
65
69
81
77
89
76
64
68
80
76
88
75
63
67
79
75
87
74
62
66
78
74
86
73
61
65
77
73
85
72
60
64
76
72
84
71
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
83
70
50
50
62
62
82
69
49
49
61
61
81
68
48
48
60
60
80
67
47
47
59
59
79
66
46
46
58
58
78
65
45
45
57
57
77
64
44
44
56
56
76
63
43
43
55
55
75
62
42
42
54
54
74
61
41
41
53
53
73
60
40
40
52
52
72
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
27
28
29
30
31
32
33
34
35
36
37
38
39
51
50
49
48
47
46
45
44
43
42
41
40
39
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
52
38
26
38
50
64
53
37
25
37
49
65
54
36
24
36
48
66
55
35
23
35
47
67
56
34
22
34
46
68
57
33
21
33
45
69
58
32
20
32
44
70
59
31
19
31
43
71
60
30
18
30
42
72
61
29
17
29
41
73
62
28
16
28
40
74
71
70
69
68
67
66
65
64
63
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
75
76
77
78
79
80
81
82
83
70
28
2
16
40
82
69
29
1
17
41
81
68
30
0
165
166
167
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
151
150
149
148
147
146
145
144
143
142
141
140
139
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
164
154
150
138
142
150
163
153
149
137
141
149
162
152
148
136
140
148
161
151
147
135
139
147
160
150
146
134
138
146
159
149
145
133
137
145
158
148
144
132
136
144
157
147
143
131
135
143
156
146
142
130
134
142
155
145
141
129
133
141
154
144
140
128
132
140
153
141
142
143
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
130
129
128
127
139
152
140
134
138
126
122
126
138
151
139
133
137
125
121
125
137
150
138
132
136
124
120
124
136
149
137
131
135
123
119
123
135
148
136
130
134
122
118
122
134
147
135
129
133
121
117
121
133
146
134
128
132
120
116
120
132
145
144
143
142
141
140
139
138
137
136
135
134
133
127
131
119
115
119
120
121
122
123
124
125
126
127
128
129
130
131
132
126
130
118
114
118
131
125
129
117
113
117
130
124
128
116
112
116
129
123
127
115
111
115
128
122
126
114
110
114
127
121
125
113
109
113
126
120
124
112
108
112
125
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
111
124
110
98
110
123
109
97
109
122
108
96
108
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
122
121
107
95
107
108
109
110
111
110
109
108
107
106
105
104
103
104
105
106
107
113
120
106
94
106
102
113
119
105
93
105
101
112
118
104
92
104
100
111
117
103
91
103
99
110
116
102
90
102
98
109
115
101
89
101
97
108
114
100
88
100
96
107
113
112
111
110
109
108
107
106
105
104
105
106
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
94
93
92
91
92
93
94
95
96
97
98
99
95
106
103
98
86
90
94
105
102
97
85
89
93
104
101
96
84
88
92
103
100
95
83
87
91
102
99
94
82
86
90
101
98
93
81
85
89
100
97
92
80
84
88
99
96
91
79
83
87
98
95
90
78
82
86
97
94
89
77
81
85
96
93
88
76
80
84
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
87
75
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
94
82
86
74
70
82
93
81
85
73
69
81
92
80
84
72
68
80
91
79
83
71
67
79
90
78
82
70
66
78
89
77
81
69
65
77
88
76
80
68
64
76
87
75
79
67
63
75
86
74
78
66
62
74
85
73
77
65
61
73
84
72
76
64
60
72
83
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
71
82
62
62
50
50
70
81
61
61
49
49
69
80
60
60
48
48
68
79
59
59
47
47
67
78
58
58
46
46
66
77
57
57
45
45
65
76
56
56
44
44
64
75
55
55
43
43
63
74
54
54
42
42
62
73
53
53
41
41
61
72
52
52
40
40
60
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
39
40
41
42
43
44
45
46
47
48
49
50
51
39
38
37
36
35
34
33
32
31
30
29
28
27
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
64
50
38
26
38
52
65
49
37
25
37
53
66
48
36
24
36
54
67
47
35
23
35
55
68
46
34
22
34
56
69
45
33
21
33
57
70
44
32
20
32
58
71
43
31
19
31
59
72
42
30
18
30
60
73
41
29
17
29
61
74
40
28
16
28
62
83
82
81
80
79
78
77
76
75
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
63
64
65
66
67
68
69
70
71
82
40
16
2
28
70
81
41
17
1
29
69
80
42
18
0
144
145
146
147
148
149
150
151
152
153
154
155
156
157
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
127
126
125
124
123
122
121
120
119
118
117
116
115
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
143
138
126
114
118
126
142
137
125
113
117
125
141
136
124
112
116
124
140
135
123
111
115
123
139
134
122
110
114
122
138
133
121
109
113
121
137
132
120
108
112
120
136
131
119
107
111
119
135
130
118
106
110
118
134
129
117
105
109
117
133
128
116
104
108
116
132
120
121
122
123
124
125
126
127
128
129
130
131
132
133
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
106
105
104
103
115
131
119
133
114
102
98
102
114
130
118
133
113
101
97
101
113
129
117
132
112
100
96
100
112
128
116
131
111
99
95
99
111
127
115
130
110
98
94
98
110
126
114
129
109
97
93
97
109
125
113
128
108
96
92
96
108
124
123
122
121
120
119
118
117
116
115
114
113
112
127
107
95
91
95
96
97
98
99
100
101
102
103
104
105
106
107
111
126
106
94
90
94
110
125
105
93
89
93
109
124
104
92
88
92
108
123
103
91
87
91
107
122
102
90
86
90
106
121
101
89
85
89
105
120
100
88
84
88
104
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
87
103
110
74
86
102
109
73
85
101
108
72
84
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
107
71
83
84
85
86
87
86
85
84
83
82
81
80
79
80
81
82
83
89
101
106
70
82
78
90
102
105
69
81
77
91
103
104
68
80
76
92
104
103
67
79
75
93
105
102
66
78
74
94
106
101
65
77
73
95
107
100
64
76
72
96
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
70
69
68
67
68
69
70
71
72
73
74
75
71
97
111
98
62
66
70
98
112
97
61
65
69
99
113
96
60
64
68
100
114
95
59
63
67
101
115
94
58
62
66
102
116
93
57
61
65
103
117
92
56
60
64
104
118
91
55
59
63
105
119
90
54
58
62
106
118
89
53
57
61
107
117
88
52
56
60
108
109
110
111
112
113
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
87
51
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
109
106
86
50
46
58
110
105
85
49
45
57
111
104
84
48
44
56
112
103
83
47
43
55
113
102
82
46
42
54
113
101
81
45
41
53
112
100
80
44
40
52
111
99
79
43
39
51
110
98
78
42
38
50
109
97
77
41
37
49
108
96
76
40
36
48
107
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
47
106
86
64
50
26
46
105
85
65
49
25
45
104
84
66
48
24
44
103
83
67
47
23
43
102
82
68
46
22
42
101
81
69
45
21
41
100
80
70
44
20
40
99
79
71
43
19
39
98
78
72
42
18
38
97
77
73
41
17
37
96
76
74
40
16
36
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
63
64
65
66
67
68
69
70
71
72
73
74
75
39
38
37
36
35
34
33
32
31
30
29
28
27
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
88
74
62
26
14
28
89
73
61
25
13
29
90
72
60
24
12
30
91
71
59
23
11
31
92
70
58
22
10
32
93
69
57
21
9
33
94
68
56
20
8
34
95
67
55
19
7
35
96
66
54
18
6
36
97
65
53
17
5
37
98
64
52
16
4
38
107
106
105
104
103
102
101
100
99
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
39
40
41
42
43
44
43
42
41
106
64
40
28
2
40
105
65
41
29
1
39
104
66
42
30
0
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
139
147
146
134
138
130
138
146
145
133
137
129
137
145
144
132
136
128
136
144
143
131
135
127
135
143
142
130
134
126
134
142
141
129
133
125
133
141
140
128
132
124
132
140
139
127
131
123
131
139
138
126
130
122
130
138
137
125
129
121
129
137
136
124
128
120
128
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
141
140
139
138
137
136
135
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
119
127
115
129
134
122
118
106
118
126
114
130
133
121
117
105
117
125
113
131
132
120
116
104
116
124
112
132
131
119
115
103
115
123
111
133
130
118
114
102
114
122
110
134
129
117
113
101
113
121
109
135
128
116
112
100
112
120
119
118
117
116
115
114
113
112
111
110
109
108
136
127
115
111
99
100
101
102
103
104
105
106
107
108
109
110
111
107
137
126
114
110
98
106
138
125
113
109
97
105
139
124
112
108
96
104
140
123
111
107
95
103
141
122
110
106
94
102
141
121
109
105
93
101
140
120
108
104
92
100
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
91
99
130
94
90
98
129
93
89
97
128
92
88
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
127
91
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
85
97
126
90
88
74
86
98
125
89
89
73
87
99
124
88
90
72
88
100
123
87
91
71
89
101
122
86
92
70
90
102
121
85
93
69
91
103
120
84
94
68
92
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
90
89
88
87
88
89
90
91
92
93
94
95
67
93
114
118
82
86
66
94
115
117
81
85
65
95
116
116
80
84
64
96
117
115
79
83
63
97
118
114
78
82
62
98
119
113
77
81
61
99
120
112
76
80
60
100
121
111
75
79
59
101
122
110
74
78
58
102
123
109
73
77
57
103
124
108
72
76
56
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
107
71
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
105
117
106
70
66
54
106
118
105
69
65
53
107
119
104
68
64
52
108
120
103
67
63
51
109
121
102
66
62
50
110
121
101
65
61
49
111
120
100
64
60
48
112
119
99
63
59
47
113
118
98
62
58
46
114
117
97
61
57
45
115
116
96
60
56
44
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
43
117
108
84
72
46
42
118
109
85
73
45
41
119
110
86
74
44
40
120
111
87
75
43
39
121
112
88
76
42
38
122
113
89
77
41
37
123
114
90
78
40
36
124
115
91
79
39
35
125
116
92
80
38
34
126
115
93
79
37
33
127
114
94
78
36
32
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
101
102
103
104
103
102
101
100
99
98
97
96
95
77
76
75
74
73
72
71
70
69
68
67
66
65
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
126
112
100
64
36
22
127
111
99
63
37
21
128
110
98
62
38
20
129
109
97
61
39
19
130
108
96
60
40
18
131
107
95
59
41
17
132
106
94
58
42
16
133
105
93
57
43
15
134
104
92
56
44
14
135
103
91
55
43
13
136
102
90
54
42
12
145
144
143
142
141
140
139
138
137
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
11
10
9
8
7
6
5
4
3
144
102
78
66
40
2
143
103
79
67
39
1
142
104
80
68
38
0
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
131
139
135
147
148
140
130
138
134
146
147
139
129
137
133
145
146
138
128
136
132
144
145
137
127
135
131
143
144
136
126
134
130
142
143
135
125
133
129
141
142
134
124
132
128
140
141
133
123
131
127
139
140
132
122
130
126
138
139
131
121
129
125
137
138
130
120
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
129
119
107
119
123
135
130
116
128
118
106
118
122
134
131
115
127
117
105
117
121
133
132
114
126
116
104
116
120
132
133
113
125
115
103
115
119
131
134
112
124
114
102
114
118
130
135
111
123
113
101
113
117
129
136
110
122
112
111
110
109
108
107
106
105
104
103
102
101
100
112
116
128
137
109
110
111
112
113
114
115
116
117
118
119
120
121
99
111
115
127
138
108
98
110
114
126
139
107
97
109
113
125
140
106
96
108
112
124
141
105
95
107
111
123
142
104
94
106
110
122
142
103
93
105
109
121
141
102
92
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
101
91
95
131
100
90
94
130
99
89
93
129
98
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
92
128
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
75
89
91
127
98
86
74
90
90
126
99
87
73
91
89
125
100
88
72
92
88
124
101
89
71
93
87
123
102
90
70
94
86
122
103
91
69
95
85
121
104
92
68
96
97
96
95
94
93
92
91
90
89
90
91
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
93
67
88
83
119
114
94
66
87
82
118
115
95
65
86
81
117
116
96
64
85
80
116
117
97
63
84
79
115
118
98
62
83
78
114
119
99
61
82
77
113
120
100
60
81
76
112
121
101
59
80
75
111
122
102
58
79
74
110
123
103
57
78
73
109
124
104
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
72
108
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
55
67
71
107
118
106
54
66
70
106
119
107
53
65
69
105
120
108
52
64
68
104
121
109
51
63
67
103
122
110
50
62
66
102
122
111
49
61
65
101
121
112
48
60
64
100
120
113
47
59
63
99
119
114
46
58
62
98
118
115
45
57
61
97
117
116
44
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
43
47
73
85
109
118
42
46
74
86
110
119
41
45
75
87
111
120
40
44
76
88
112
121
39
43
77
89
113
122
38
42
78
90
114
123
37
41
79
91
115
124
36
40
80
92
116
125
35
39
79
93
115
126
34
38
78
94
114
127
33
37
77
95
113
128
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
64
65
66
67
68
69
70
71
72
73
74
75
76
96
97
98
99
100
101
102
103
104
103
102
101
100
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
23
37
63
99
111
125
22
38
62
98
110
126
21
39
61
97
109
127
20
40
60
96
108
128
19
41
59
95
107
129
18
42
58
94
106
130
17
43
57
93
105
131
16
44
56
92
104
132
15
43
55
91
103
133
14
42
54
90
102
134
13
41
53
89
101
135
4
5
6
7
8
9
10
11
12
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
136
137
138
139
140
141
142
143
144
3
39
65
77
101
143
2
38
66
78
102
142
1
37
67
79
103
141
0
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
116
117
118
119
120
121
122
123
124
125
126
127
128
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
158
157
156
155
154
153
152
151
150
149
148
147
146
145
129
119
115
127
139
144
128
118
114
126
138
143
127
117
113
125
137
142
126
116
112
124
136
141
125
115
111
123
135
140
124
114
110
122
134
139
123
113
109
121
133
138
122
112
108
120
132
137
121
111
107
119
131
136
120
110
106
118
130
135
119
109
105
117
129
134
118
106
107
108
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
133
117
105
99
103
115
134
120
132
116
104
98
102
114
134
119
131
115
103
97
101
113
133
118
130
114
102
96
100
112
132
117
129
113
101
95
99
111
131
116
128
112
100
94
98
110
130
115
127
111
99
93
97
109
129
114
126
110
109
108
107
106
105
104
103
102
101
100
99
98
92
96
108
128
113
114
115
116
117
118
119
120
121
122
123
124
125
97
91
95
107
127
112
96
90
94
106
126
111
95
89
93
105
125
110
94
88
92
104
124
109
93
87
91
103
123
108
92
86
90
102
122
107
91
85
89
101
121
106
90
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
105
89
75
111
104
88
74
110
103
87
73
109
102
84
83
82
81
80
81
82
83
84
85
86
87
88
89
88
87
86
72
108
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
79
85
71
107
102
90
78
84
70
106
103
91
77
83
69
105
104
92
76
82
68
104
105
93
75
81
67
103
106
94
74
80
66
102
107
95
73
79
65
101
108
96
72
78
77
76
75
74
73
72
71
70
69
70
71
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
114
113
112
111
110
109
97
71
68
63
99
113
98
70
67
62
98
114
99
69
66
61
97
115
100
68
65
60
96
116
101
67
64
59
95
117
102
66
63
58
94
118
103
65
62
57
93
119
104
64
61
56
92
120
105
63
60
55
91
119
106
62
59
54
90
118
107
61
58
53
89
117
108
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
52
88
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
114
113
112
111
110
109
59
47
51
87
107
110
58
46
50
86
106
111
57
45
49
85
105
112
56
44
48
84
104
113
55
43
47
83
103
114
54
42
46
82
102
114
53
41
45
81
101
113
52
40
44
80
100
112
51
39
43
79
99
111
50
38
42
78
98
110
49
37
41
77
97
109
48
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
108
47
27
51
65
87
107
46
26
50
66
86
106
45
25
49
67
85
105
44
24
48
68
84
104
43
23
47
69
83
103
42
22
46
70
82
102
41
21
45
71
81
101
40
20
44
72
80
100
39
19
43
73
79
99
38
18
42
74
78
98
37
17
41
75
77
97
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
28
29
30
31
32
33
34
35
36
37
38
39
40
76
75
74
73
72
71
70
69
68
67
66
65
64
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
29
15
27
63
75
89
30
14
26
62
74
90
31
13
25
61
73
91
32
12
24
60
72
92
33
11
23
59
71
93
34
10
22
58
70
94
35
9
21
57
69
95
36
8
20
56
68
96
37
7
19
55
67
97
38
6
18
54
66
98
39
5
17
53
65
99
40
41
42
43
44
43
42
41
40
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
100
101
102
103
104
105
106
107
108
39
3
29
41
65
107
38
2
30
42
66
106
37
1
31
43
67
105
36
0
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
140
141
142
143
144
145
146
147
148
149
150
151
152
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
167
166
165
164
153
143
139
151
155
163
152
142
138
150
154
162
151
141
137
149
153
161
150
140
136
148
152
160
149
139
135
147
151
159
148
138
134
146
150
158
147
137
133
145
149
157
146
136
132
144
148
156
145
135
131
143
147
155
144
134
130
142
146
154
143
133
129
141
145
153
142
130
131
132
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
143
142
141
140
152
141
129
123
127
139
135
139
151
140
128
122
126
138
134
138
150
139
127
121
125
137
133
137
149
138
126
120
124
136
132
136
148
137
125
119
123
135
131
135
147
136
124
118
122
134
130
134
146
135
123
117
121
133
129
133
145
134
133
132
131
130
129
128
127
126
125
124
123
122
116
120
132
128
132
133
134
135
136
137
138
139
140
141
142
143
144
121
115
119
131
127
131
120
114
118
130
126
130
119
113
117
129
125
129
118
112
116
128
124
128
117
111
115
127
123
127
116
110
114
126
122
126
115
109
113
125
121
125
114
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
124
113
99
111
123
112
98
110
122
111
97
109
121
108
107
106
105
104
105
106
107
108
109
110
111
112
113
112
111
110
96
108
120
121
122
122
121
120
119
118
117
116
115
114
113
112
111
110
109
103
109
95
107
119
114
102
108
94
106
118
114
101
107
93
105
117
113
100
106
92
104
116
112
99
105
91
103
115
111
98
104
90
102
114
110
97
103
89
101
113
109
96
102
101
100
99
98
97
96
95
94
93
94
95
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
107
106
105
104
105
106
107
108
109
110
111
112
108
95
92
87
99
103
107
94
91
86
98
102
106
93
90
85
97
101
105
92
89
84
96
100
104
91
88
83
95
99
103
90
87
82
94
98
102
89
86
81
93
97
101
88
85
80
92
96
100
87
84
79
91
95
99
86
83
78
90
94
98
85
82
77
89
93
97
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
76
88
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
83
71
75
87
83
95
82
70
74
86
82
94
81
69
73
85
81
93
80
68
72
84
80
92
79
67
71
83
79
91
78
66
70
82
78
90
77
65
69
81
77
89
76
64
68
80
76
88
75
63
67
79
75
87
74
62
66
78
74
86
73
61
65
77
73
85
72
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
84
71
51
51
63
63
83
70
50
50
62
62
82
69
49
49
61
61
81
68
48
48
60
60
80
67
47
47
59
59
79
66
46
46
58
58
78
65
45
45
57
57
77
64
44
44
56
56
76
63
43
43
55
55
75
62
42
42
54
54
74
61
41
41
53
53
73
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
28
29
30
31
32
33
34
35
36
37
38
39
40
52
51
50
49
48
47
46
45
44
43
42
41
40
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
53
39
27
39
51
65
54
38
26
38
50
66
55
37
25
37
49
67
56
36
24
36
48
68
57
35
23
35
47
69
58
34
22
34
46
70
59
33
21
33
45
71
60
32
20
32
44
72
61
31
19
31
43
73
62
30
18
30
42
74
63
29
17
29
41
75
72
71
70
69
68
67
66
65
64
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
76
77
78
79
80
81
82
83
84
71
29
3
17
41
83
70
30
2
18
42
82
69
31
1
19
43
81
68
32
0
166
167
168
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
152
151
150
149
148
147
146
145
144
143
142
141
140
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
165
155
151
139
143
151
164
154
150
138
142
150
163
153
149
137
141
149
162
152
148
136
140
148
161
151
147
135
139
147
160
150
146
134
138
146
159
149
145
133
137
145
158
148
144
132
136
144
157
147
143
131
135
143
156
146
142
130
134
142
155
145
141
129
133
141
154
142
143
144
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
131
130
129
128
140
153
141
135
139
127
123
127
139
152
140
134
138
126
122
126
138
151
139
133
137
125
121
125
137
150
138
132
136
124
120
124
136
149
137
131
135
123
119
123
135
148
136
130
134
122
118
122
134
147
135
129
133
121
117
121
133
146
145
144
143
142
141
140
139
138
137
136
135
134
128
132
120
116
120
121
122
123
124
125
126
127
128
129
130
131
132
133
127
131
119
115
119
132
126
130
118
114
118
131
125
129
117
113
117
130
124
128
116
112
116
129
123
127
115
111
115
128
122
126
114
110
114
127
121
125
113
109
113
126
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
112
125
111
99
111
124
110
98
110
123
109
97
109
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
123
122
108
96
108
109
110
111
112
111
110
109
108
107
106
105
104
105
106
107
108
114
121
107
95
107
103
114
120
106
94
106
102
113
119
105
93
105
101
112
118
104
92
104
100
111
117
103
91
103
99
110
116
102
90
102
98
109
115
101
89
101
97
108
114
113
112
111
110
109
108
107
106
105
106
107
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
95
94
93
92
93
94
95
96
97
98
99
100
96
107
104
99
87
91
95
106
103
98
86
90
94
105
102
97
85
89
93
104
101
96
84
88
92
103
100
95
83
87
91
102
99
94
82
86
90
101
98
93
81
85
89
100
97
92
80
84
88
99
96
91
79
83
87
98
95
90
78
82
86
97
94
89
77
81
85
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
88
76
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
95
83
87
75
71
83
94
82
86
74
70
82
93
81
85
73
69
81
92
80
84
72
68
80
91
79
83
71
67
79
90
78
82
70
66
78
89
77
81
69
65
77
88
76
80
68
64
76
87
75
79
67
63
75
86
74
78
66
62
74
85
73
77
65
61
73
84
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
72
83
63
63
51
51
71
82
62
62
50
50
70
81
61
61
49
49
69
80
60
60
48
48
68
79
59
59
47
47
67
78
58
58
46
46
66
77
57
57
45
45
65
76
56
56
44
44
64
75
55
55
43
43
63
74
54
54
42
42
62
73
53
53
41
41
61
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
40
41
42
43
44
45
46
47
48
49
50
51
52
40
39
38
37
36
35
34
33
32
31
30
29
28
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
65
51
39
27
39
53
66
50
38
26
38
54
67
49
37
25
37
55
68
48
36
24
36
56
69
47
35
23
35
57
70
46
34
22
34
58
71
45
33
21
33
59
72
44
32
20
32
60
73
43
31
19
31
61
74
42
30
18
30
62
75
41
29
17
29
63
84
83
82
81
80
79
78
77
76
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
64
65
66
67
68
69
70
71
72
83
41
17
3
29
71
82
42
18
2
30
70
81
43
19
1
31
69
80
44
20
0
145
146
147
148
149
150
151
152
153
154
155
156
157
158
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
128
127
126
125
124
123
122
121
120
119
118
117
116
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
144
139
127
115
119
127
143
138
126
114
118
126
142
137
125
113
117
125
141
136
124
112
116
124
140
135
123
111
115
123
139
134
122
110
114
122
138
133
121
109
113
121
137
132
120
108
112
120
136
131
119
107
111
119
135
130
118
106
110
118
134
129
117
105
109
117
133
121
122
123
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
107
106
105
104
116
132
120
134
115
103
99
103
115
131
119
134
114
102
98
102
114
130
118
133
113
101
97
101
113
129
117
132
112
100
96
100
112
128
116
131
111
99
95
99
111
127
115
130
110
98
94
98
110
126
114
129
109
97
93
97
109
125
124
123
122
121
120
119
118
117
116
115
114
113
128
108
96
92
96
97
98
99
100
101
102
103
104
105
106
107
108
112
127
107
95
91
95
111
126
106
94
90
94
110
125
105
93
89
93
109
124
104
92
88
92
108
123
103
91
87
91
107
122
102
90
86
90
106
121
101
89
85
89
105
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
88
104
111
75
87
103
110
74
86
102
109
73
85
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
108
72
84
85
86
87
88
87
86
85
84
83
82
81
80
81
82
83
84
90
102
107
71
83
79
91
103
106
70
82
78
92
104
105
69
81
77
93
105
104
68
80
76
94
106
103
67
79
75
95
107
102
66
78
74
96
108
101
65
77
73
97
109
110
111
112
113
114
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
71
70
69
68
69
70
71
72
73
74
75
76
72
98
112
99
63
67
71
99
113
98
62
66
70
100
114
97
61
65
69
101
115
96
60
64
68
102
116
95
59
63
67
103
117
94
58
62
66
104
118
93
57
61
65
105
119
92
56
60
64
106
120
91
55
59
63
107
119
90
54
58
62
108
118
89
53
57
61
109
110
111
112
113
114
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
88
52
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
110
107
87
51
47
59
111
106
86
50
46
58
112
105
85
49
45
57
113
104
84
48
44
56
114
103
83
47
43
55
114
102
82
46
42
54
113
101
81
45
41
53
112
100
80
44
40
52
111
99
79
43
39
51
110
98
78
42
38
50
109
97
77
41
37
49
108
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
48
107
87
65
51
27
47
106
86
66
50
26
46
105
85
67
49
25
45
104
84
68
48
24
44
103
83
69
47
23
43
102
82
70
46
22
42
101
81
71
45
21
41
100
80
72
44
20
40
99
79
73
43
19
39
98
78
74
42
18
38
97
77
75
41
17
37
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
64
65
66
67
68
69
70
71
72
73
74
75
76
40
39
38
37
36
35
34
33
32
31
30
29
28
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
89
75
63
27
15
29
90
74
62
26
14
30
91
73
61
25
13
31
92
72
60
24
12
32
93
71
59
23
11
33
94
70
58
22
10
34
95
69
57
21
9
35
96
68
56
20
8
36
97
67
55
19
7
37
98
66
54
18
6
38
99
65
53
17
5
39
108
107
106
105
104
103
102
101
100
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
40
41
42
43
44
43
42
41
40
107
65
41
29
3
39
106
66
42
30
2
38
105
67
43
31
1
37
104
68
44
32
0
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
140
148
147
135
139
131
139
147
146
134
138
130
138
146
145
133
137
129
137
145
144
132
136
128
136
144
143
131
135
127
135
143
142
130
134
126
134
142
141
129
133
125
133
141
140
128
132
124
132
140
139
127
131
123
131
139
138
126
130
122
130
138
137
125
129
121
129
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
120
128
116
130
135
123
119
107
119
127
115
131
134
122
118
106
118
126
114
132
133
121
117
105
117
125
113
133
132
120
116
104
116
124
112
134
131
119
115
103
115
123
111
135
130
118
114
102
114
122
110
136
129
117
113
101
113
121
120
119
118
117
116
115
114
113
112
111
110
109
137
128
116
112
100
101
102
103
104
105
106
107
108
109
110
111
112
108
138
127
115
111
99
107
139
126
114
110
98
106
140
125
113
109
97
105
141
124
112
108
96
104
142
123
111
107
95
103
142
122
110
106
94
102
141
121
109
105
93
101
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
92
100
131
95
91
99
130
94
90
98
129
93
89
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
128
92
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
86
98
127
91
89
75
87
99
126
90
90
74
88
100
125
89
91
73
89
101
124
88
92
72
90
102
123
87
93
71
91
103
122
86
94
70
92
104
121
85
95
69
93
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
91
90
89
88
89
90
91
92
93
94
95
96
68
94
115
119
83
87
67
95
116
118
82
86
66
96
117
117
81
85
65
97
118
116
80
84
64
98
119
115
79
83
63
99
120
114
78
82
62
100
121
113
77
81
61
101
122
112
76
80
60
102
123
111
75
79
59
103
124
110
74
78
58
104
125
109
73
77
57
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
108
72
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
106
118
107
71
67
55
107
119
106
70
66
54
108
120
105
69
65
53
109
121
104
68
64
52
110
122
103
67
63
51
111
122
102
66
62
50
112
121
101
65
61
49
113
120
100
64
60
48
114
119
99
63
59
47
115
118
98
62
58
46
116
117
97
61
57
45
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
44
118
109
85
73
47
43
119
110
86
74
46
42
120
111
87
75
45
41
121
112
88
76
44
40
122
113
89
77
43
39
123
114
90
78
42
38
124
115
91
79
41
37
125
116
92
80
40
36
126
115
93
79
39
35
127
114
94
78
38
34
128
113
95
77
37
33
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
100
101
102
103
104
103
102
101
100
99
98
97
96
76
75
74
73
72
71
70
69
68
67
66
65
64
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
125
111
99
63
37
23
126
110
98
62
38
22
127
109
97
61
39
21
128
108
96
60
40
20
129
107
95
59
41
19
130
106
94
58
42
18
131
105
93
57
43
17
132
104
92
56
44
16
133
103
91
55
43
15
134
102
90
54
42
14
135
101
89
53
41
13
144
143
142
141
140
139
138
137
136
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
12
11
10
9
8
7
6
5
4
143
101
77
65
39
3
142
102
78
66
38
2
141
103
79
67
37
1
140
104
80
68
36
0
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
132
140
136
148
149
141
131
139
135
147
148
140
130
138
134
146
147
139
129
137
133
145
146
138
128
136
132
144
145
137
127
135
131
143
144
136
126
134
130
142
143
135
125
133
129
141
142
134
124
132
128
140
141
133
123
131
127
139
140
132
122
130
126
138
139
131
121
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
137
138
139
140
141
142
143
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
130
120
108
120
124
136
131
117
129
119
107
119
123
135
132
116
128
118
106
118
122
134
133
115
127
117
105
117
121
133
134
114
126
116
104
116
120
132
135
113
125
115
103
115
119
131
136
112
124
114
102
114
118
130
137
111
123
113
112
111
110
109
108
107
106
105
104
103
102
101
113
117
129
138
110
111
112
113
114
115
116
117
118
119
120
121
122
100
112
116
128
139
109
99
111
115
127
140
108
98
110
114
126
141
107
97
109
113
125
142
106
96
108
112
124
143
105
95
107
111
123
143
104
94
106
110
122
142
103
93
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
102
92
96
132
101
91
95
131
100
90
94
130
99
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
93
129
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
76
90
92
128
99
87
75
91
91
127
100
88
74
92
90
126
101
89
73
93
89
125
102
90
72
94
88
124
103
91
71
95
87
123
104
92
70
96
86
122
105
93
69
97
98
97
96
95
94
93
92
91
90
91
92
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
94
68
89
84
120
115
95
67
88
83
119
116
96
66
87
82
118
117
97
65
86
81
117
118
98
64
85
80
116
119
99
63
84
79
115
120
100
62
83
78
114
121
101
61
82
77
113
122
102
60
81
76
112
123
103
59
80
75
111
124
104
58
79
74
110
125
105
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
73
109
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
56
68
72
108
119
107
55
67
71
107
120
108
54
66
70
106
121
109
53
65
69
105
122
110
52
64
68
104
123
111
51
63
67
103
123
112
50
62
66
102
122
113
49
61
65
101
121
114
48
60
64
100
120
115
47
59
63
99
119
116
46
58
62
98
118
117
45
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
44
48
74
86
110
119
43
47
75
87
111
120
42
46
76
88
112
121
41
45
77
89
113
122
40
44
78
90
114
123
39
43
79
91
115
124
38
42
80
92
116
125
37
41
79
93
115
126
36
40
78
94
114
127
35
39
77
95
113
128
34
38
76
96
112
129
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
63
64
65
66
67
68
69
70
71
72
73
74
75
97
98
99
100
101
102
103
104
103
102
101
100
99
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
24
38
62
98
110
124
23
39
61
97
109
125
22
40
60
96
108
126
21
41
59
95
107
127
20
42
58
94
106
128
19
43
57
93
105
129
18
44
56
92
104
130
17
43
55
91
103
131
16
42
54
90
102
132
15
41
53
89
101
133
14
40
52
88
100
134
5
6
7
8
9
10
11
12
13
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
135
136
137
138
139
140
141
142
143
4
38
64
76
100
142
3
37
65
77
101
141
2
36
66
78
102
140
1
35
67
79
103
139
0
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
117
118
119
120
121
122
123
124
125
126
127
128
129
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
159
158
157
156
155
154
153
152
151
150
149
148
147
146
130
120
116
128
140
145
129
119
115
127
139
144
128
118
114
126
138
143
127
117
113
125
137
142
126
116
112
124
136
141
125
115
111
123
135
140
124
114
110
122
134
139
123
113
109
121
133
138
122
112
108
120
132
137
121
111
107
119
131
136
120
110
106
118
130
135
119
107
108
109
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
135
134
133
132
131
130
129
128
127
126
125
124
123
122
134
118
106
100
104
116
135
121
133
117
105
99
103
115
135
120
132
116
104
98
102
114
134
119
131
115
103
97
101
113
133
118
130
114
102
96
100
112
132
117
129
113
101
95
99
111
131
116
128
112
100
94
98
110
130
115
127
111
110
109
108
107
106
105
104
103
102
101
100
99
93
97
109
129
114
115
116
117
118
119
120
121
122
123
124
125
126
98
92
96
108
128
113
97
91
95
107
127
112
96
90
94
106
126
111
95
89
93
105
125
110
94
88
92
104
124
109
93
87
91
103
123
108
92
86
90
102
122
107
91
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
106
90
76
112
105
89
75
111
104
88
74
110
103
85
84
83
82
81
82
83
84
85
86
87
88
89
90
89
88
87
73
109
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
80
86
72
108
103
91
79
85
71
107
104
92
78
84
70
106
105
93
77
83
69
105
106
94
76
82
68
104
107
95
75
81
67
103
108
96
74
80
66
102
109
97
73
79
78
77
76
75
74
73
72
71
70
71
72
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
115
114
113
112
111
110
98
72
69
64
100
114
99
71
68
63
99
115
100
70
67
62
98
116
101
69
66
61
97
117
102
68
65
60
96
118
103
67
64
59
95
119
104
66
63
58
94
120
105
65
62
57
93
121
106
64
61
56
92
120
107
63
60
55
91
119
108
62
59
54
90
118
109
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
53
89
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
115
114
113
112
111
110
60
48
52
88
108
111
59
47
51
87
107
112
58
46
50
86
106
113
57
45
49
85
105
114
56
44
48
84
104
115
55
43
47
83
103
115
54
42
46
82
102
114
53
41
45
81
101
113
52
40
44
80
100
112
51
39
43
79
99
111
50
38
42
78
98
110
49
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
109
48
28
52
66
88
108
47
27
51
67
87
107
46
26
50
68
86
106
45
25
49
69
85
105
44
24
48
70
84
104
43
23
47
71
83
103
42
22
46
72
82
102
41
21
45
73
81
101
40
20
44
74
80
100
39
19
43
75
79
99
38
18
42
76
78
98
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
29
30
31
32
33
34
35
36
37
38
39
40
41
77
76
75
74
73
72
71
70
69
68
67
66
65
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
30
16
28
64
76
90
31
15
27
63
75
91
32
14
26
62
74
92
33
13
25
61
73
93
34
12
24
60
72
94
35
11
23
59
71
95
36
10
22
58
70
96
37
9
21
57
69
97
38
8
20
56
68
98
39
7
19
55
67
99
40
6
18
54
66
100
39
40
41
42
43
44
43
42
41
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
101
102
103
104
105
106
107
108
109
38
4
30
42
66
108
37
3
31
43
67
107
36
2
32
44
68
106
35
1
33
45
69
105
34
0
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
141
142
143
144
145
146
147
148
149
150
151
152
153
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
168
167
166
165
154
144
140
152
156
164
153
143
139
151
155
163
152
142
138
150
154
162
151
141
137
149
153
161
150
140
136
148
152
160
149
139
135
147
151
159
148
138
134
146
150
158
147
137
133
145
149
157
146
136
132
144
148
156
145
135
131
143
147
155
144
134
130
142
146
154
143
131
132
133
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
144
143
142
141
153
142
130
124
128
140
136
140
152
141
129
123
127
139
135
139
151
140
128
122
126
138
134
138
150
139
127
121
125
137
133
137
149
138
126
120
124
136
132
136
148
137
125
119
123
135
131
135
147
136
124
118
122
134
130
134
146
135
134
133
132
131
130
129
128
127
126
125
124
123
117
121
133
129
133
134
135
136
137
138
139
140
141
142
143
144
145
122
116
120
132
128
132
121
115
119
131
127
131
120
114
118
130
126
130
119
113
117
129
125
129
118
112
116
128
124
128
117
111
115
127
123
127
116
110
114
126
122
126
115
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
125
114
100
112
124
113
99
111
123
112
98
110
122
109
108
107
106
105
106
107
108
109
110
111
112
113
114
113
112
111
97
109
121
122
123
123
122
121
120
119
118
117
116
115
114
113
112
111
110
104
110
96
108
120
115
103
109
95
107
119
115
102
108
94
106
118
114
101
107
93
105
117
113
100
106
92
104
116
112
99
105
91
103
115
111
98
104
90
102
114
110
97
103
102
101
100
99
98
97
96
95
94
95
96
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
108
107
106
105
106
107
108
109
110
111
112
113
109
96
93
88
100
104
108
95
92
87
99
103
107
94
91
86
98
102
106
93
90
85
97
101
105
92
89
84
96
100
104
91
88
83
95
99
103
90
87
82
94
98
102
89
86
81
93
97
101
88
85
80
92
96
100
87
84
79
91
95
99
86
83
78
90
94
98
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
77
89
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
84
72
76
88
84
96
83
71
75
87
83
95
82
70
74
86
82
94
81
69
73
85
81
93
80
68
72
84
80
92
79
67
71
83
79
91
78
66
70
82
78
90
77
65
69
81
77
89
76
64
68
80
76
88
75
63
67
79
75
87
74
62
66
78
74
86
73
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
85
72
52
52
64
64
84
71
51
51
63
63
83
70
50
50
62
62
82
69
49
49
61
61
81
68
48
48
60
60
80
67
47
47
59
59
79
66
46
46
58
58
78
65
45
45
57
57
77
64
44
44
56
56
76
63
43
43
55
55
75
62
42
42
54
54
74
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
29
30
31
32
33
34
35
36
37
38
39
40
41
53
52
51
50
49
48
47
46
45
44
43
42
41
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
54
40
28
40
52
66
55
39
27
39
51
67
56
38
26
38
50
68
57
37
25
37
49
69
58
36
24
36
48
70
59
35
23
35
47
71
60
34
22
34
46
72
61
33
21
33
45
73
62
32
20
32
44
74
63
31
19
31
43
75
64
30
18
30
42
76
73
72
71
70
69
68
67
66
65
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
77
78
79
80
81
82
83
84
85
72
30
4
18
42
84
71
31
3
19
43
83
70
32
2
20
44
82
69
33
1
21
45
81
68
34
0
167
168
169
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
153
152
151
150
149
148
147
146
145
144
143
142
141
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
166
156
152
140
144
152
165
155
151
139
143
151
164
154
150
138
142
150
163
153
149
137
141
149
162
152
148
136
140
148
161
151
147
135
139
147
160
150
146
134
138
146
159
149
145
133
137
145
158
148
144
132
136
144
157
147
143
131
135
143
156
146
142
130
134
142
155
143
144
145
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
132
131
130
129
141
154
142
136
140
128
124
128
140
153
141
135
139
127
123
127
139
152
140
134
138
126
122
126
138
151
139
133
137
125
121
125
137
150
138
132
136
124
120
124
136
149
137
131
135
123
119
123
135
148
136
130
134
122
118
122
134
147
146
145
144
143
142
141
140
139
138
137
136
135
129
133
121
117
121
122
123
124
125
126
127
128
129
130
131
132
133
134
128
132
120
116
120
133
127
131
119
115
119
132
126
130
118
114
118
131
125
129
117
113
117
130
124
128
116
112
116
129
123
127
115
111
115
128
122
126
114
110
114
127
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
113
126
112
100
112
125
111
99
111
124
110
98
110
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
109
97
109
110
111
112
113
112
111
110
109
108
107
106
105
106
107
108
109
115
122
108
96
108
104
115
121
107
95
107
103
114
120
106
94
106
102
113
119
105
93
105
101
112
118
104
92
104
100
111
117
103
91
103
99
110
116
102
90
102
98
109
115
114
113
112
111
110
109
108
107
106
107
108
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
96
95
94
93
94
95
96
97
98
99
100
101
97
108
105
100
88
92
96
107
104
99
87
91
95
106
103
98
86
90
94
105
102
97
85
89
93
104
101
96
84
88
92
103
100
95
83
87
91
102
99
94
82
86
90
101
98
93
81
85
89
100
97
92
80
84
88
99
96
91
79
83
87
98
95
90
78
82
86
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
89
77
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
96
84
88
76
72
84
95
83
87
75
71
83
94
82
86
74
70
82
93
81
85
73
69
81
92
80
84
72
68
80
91
79
83
71
67
79
90
78
82
70
66
78
89
77
81
69
65
77
88
76
80
68
64
76
87
75
79
67
63
75
86
74
78
66
62
74
85
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
73
84
64
64
52
52
72
83
63
63
51
51
71
82
62
62
50
50
70
81
61
61
49
49
69
80
60
60
48
48
68
79
59
59
47
47
67
78
58
58
46
46
66
77
57
57
45
45
65
76
56
56
44
44
64
75
55
55
43
43
63
74
54
54
42
42
62
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
41
42
43
44
45
46
47
48
49
50
51
52
53
41
40
39
38
37
36
35
34
33
32
31
30
29
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
66
52
40
28
40
54
67
51
39
27
39
55
68
50
38
26
38
56
69
49
37
25
37
57
70
48
36
24
36
58
71
47
35
23
35
59
72
46
34
22
34
60
73
45
33
21
33
61
74
44
32
20
32
62
75
43
31
19
31
63
76
42
30
18
30
64
85
84
83
82
81
80
79
78
77
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
65
66
67
68
69
70
71
72
73
84
42
18
4
30
72
83
43
19
3
31
71
82
44
20
2
32
70
81
45
21
1
33
69
80
46
22
0
146
147
148
149
150
151
152
153
154
155
156
157
158
159
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
129
128
127
126
125
124
123
122
121
120
119
118
117
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
145
140
128
116
120
128
144
139
127
115
119
127
143
138
126
114
118
126
142
137
125
113
117
125
141
136
124
112
116
124
140
135
123
111
115
123
139
134
122
110
114
122
138
133
121
109
113
121
137
132
120
108
112
120
136
131
119
107
111
119
135
130
118
106
110
118
134
122
123
124
125
126
127
128
129
130
131
132
133
134
135
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
108
107
106
105
117
133
121
135
116
104
100
104
116
132
120
135
115
103
99
103
115
131
119
134
114
102
98
102
114
130
118
133
113
101
97
101
113
129
117
132
112
100
96
100
112
128
116
131
111
99
95
99
111
127
115
130
110
98
94
98
110
126
125
124
123
122
121
120
119
118
117
116
115
114
129
109
97
93
97
98
99
100
101
102
103
104
105
106
107
108
109
113
128
108
96
92
96
112
127
107
95
91
95
111
126
106
94
90
94
110
125
105
93
89
93
109
124
104
92
88
92
108
123
103
91
87
91
107
122
102
90
86
90
106
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
89
105
112
76
88
104
111
75
87
103
110
74
86
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
109
73
85
86
87
88
89
88
87
86
85
84
83
82
81
82
83
84
85
91
103
108
72
84
80
92
104
107
71
83
79
93
105
106
70
82
78
94
106
105
69
81
77
95
107
104
68
80
76
96
108
103
67
79
75
97
109
102
66
78
74
98
110
111
112
113
114
115
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
72
71
70
69
70
71
72
73
74
75
76
77
73
99
113
100
64
68
72
100
114
99
63
67
71
101
115
98
62
66
70
102
116
97
61
65
69
103
117
96
60
64
68
104
118
95
59
63
67
105
119
94
58
62
66
106
120
93
57
61
65
107
121
92
56
60
64
108
120
91
55
59
63
109
119
90
54
58
62
110
111
112
113
114
115
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
89
53
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
111
108
88
52
48
60
112
107
87
51
47
59
113
106
86
50
46
58
114
105
85
49
45
57
115
104
84
48
44
56
115
103
83
47
43
55
114
102
82
46
42
54
113
101
81
45
41
53
112
100
80
44
40
52
111
99
79
43
39
51
110
98
78
42
38
50
109
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
49
108
88
66
52
28
48
107
87
67
51
27
47
106
86
68
50
26
46
105
85
69
49
25
45
104
84
70
48
24
44
103
83
71
47
23
43
102
82
72
46
22
42
101
81
73
45
21
41
100
80
74
44
20
40
99
79
75
43
19
39
98
78
76
42
18
38
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
65
66
67
68
69
70
71
72
73
74
75
76
77
41
40
39
38
37
36
35
34
33
32
31
30
29
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
90
76
64
28
16
30
91
75
63
27
15
31
92
74
62
26
14
32
93
73
61
25
13
33
94
72
60
24
12
34
95
71
59
23
11
35
96
70
58
22
10
36
97
69
57
21
9
37
98
68
56
20
8
38
99
67
55
19
7
39
100
66
54
18
6
40
109
108
107
106
105
104
103
102
101
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
41
42
43
44
43
42
41
40
39
108
66
42
30
4
38
107
67
43
31
3
37
106
68
44
32
2
36
105
69
45
33
1
35
104
70
46
34
0
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
141
149
148
136
140
132
140
148
147
135
139
131
139
147
146
134
138
130
138
146
145
133
137
129
137
145
144
132
136
128
136
144
143
131
135
127
135
143
142
130
134
126
134
142
141
129
133
125
133
141
140
128
132
124
132
140
139
127
131
123
131
139
138
126
130
122
130
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
143
142
141
140
139
138
137
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
121
129
117
131
136
124
120
108
120
128
116
132
135
123
119
107
119
127
115
133
134
122
118
106
118
126
114
134
133
121
117
105
117
125
113
135
132
120
116
104
116
124
112
136
131
119
115
103
115
123
111
137
130
118
114
102
114
122
121
120
119
118
117
116
115
114
113
112
111
110
138
129
117
113
101
102
103
104
105
106
107
108
109
110
111
112
113
109
139
128
116
112
100
108
140
127
115
111
99
107
141
126
114
110
98
106
142
125
113
109
97
105
143
124
112
108
96
104
143
123
111
107
95
103
142
122
110
106
94
102
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
93
101
132
96
92
100
131
95
91
99
130
94
90
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
129
93
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
87
99
128
92
90
76
88
100
127
91
91
75
89
101
126
90
92
74
90
102
125
89
93
73
91
103
124
88
94
72
92
104
123
87
95
71
93
105
122
86
96
70
94
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
92
91
90
89
90
91
92
93
94
95
96
97
69
95
116
120
84
88
68
96
117
119
83
87
67
97
118
118
82
86
66
98
119
117
81
85
65
99
120
116
80
84
64
100
121
115
79
83
63
101
122
114
78
82
62
102
123
113
77
81
61
103
124
112
76
80
60
104
125
111
75
79
59
105
126
110
74
78
58
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
109
73
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
107
119
108
72
68
56
108
120
107
71
67
55
109
121
106
70
66
54
110
122
105
69
65
53
111
123
104
68
64
52
112
123
103
67
63
51
113
122
102
66
62
50
114
121
101
65
61
49
115
120
100
64
60
48
116
119
99
63
59
47
117
118
98
62
58
46
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
45
119
110
86
74
48
44
120
111
87
75
47
43
121
112
88
76
46
42
122
113
89
77
45
41
123
114
90
78
44
40
124
115
91
79
43
39
125
116
92
80
42
38
126
115
93
79
41
37
127
114
94
78
40
36
128
113
95
77
39
35
129
112
96
76
38
34
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
99
100
101
102
103
104
103
102
101
100
99
98
97
75
74
73
72
71
70
69
68
67
66
65
64
63
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
124
110
98
62
38
24
125
109
97
61
39
23
126
108
96
60
40
22
127
107
95
59
41
21
128
106
94
58
42
20
129
105
93
57
43
19
130
104
92
56
44
18
131
103
91
55
43
17
132
102
90
54
42
16
133
101
89
53
41
15
134
100
88
52
40
14
143
142
141
140
139
138
137
136
135
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
13
12
11
10
9
8
7
6
5
142
100
76
64
38
4
141
101
77
65
37
3
140
102
78
66
36
2
139
103
79
67
35
1
138
104
80
68
34
0
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
133
141
137
149
150
142
132
140
136
148
149
141
131
139
135
147
148
140
130
138
134
146
147
139
129
137
133
145
146
138
128
136
132
144
145
137
127
135
131
143
144
136
126
134
130
142
143
135
125
133
129
141
142
134
124
132
128
140
141
133
123
131
127
139
140
132
122
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
138
139
140
141
142
143
144
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
131
121
109
121
125
137
132
118
130
120
108
120
124
136
133
117
129
119
107
119
123
135
134
116
128
118
106
118
122
134
135
115
127
117
105
117
121
133
136
114
126
116
104
116
120
132
137
113
125
115
103
115
119
131
138
112
124
114
113
112
111
110
109
108
107
106
105
104
103
102
114
118
130
139
111
112
113
114
115
116
117
118
119
120
121
122
123
101
113
117
129
140
110
100
112
116
128
141
109
99
111
115
127
142
108
98
110
114
126
143
107
97
109
113
125
144
106
96
108
112
124
144
105
95
107
111
123
143
104
94
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
103
93
97
133
102
92
96
132
101
91
95
131
100
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
94
130
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
77
91
93
129
100
88
76
92
92
128
101
89
75
93
91
127
102
90
74
94
90
126
103
91
73
95
89
125
104
92
72
96
88
124
105
93
71
97
87
123
106
94
70
98
99
98
97
96
95
94
93
92
91
92
93
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
95
69
90
85
121
116
96
68
89
84
120
117
97
67
88
83
119
118
98
66
87
82
118
119
99
65
86
81
117
120
100
64
85
80
116
121
101
63
84
79
115
122
102
62
83
78
114
123
103
61
82
77
113
124
104
60
81
76
112
125
105
59
80
75
111
126
106
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
74
110
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
57
69
73
109
120
108
56
68
72
108
121
109
55
67
71
107
122
110
54
66
70
106
123
111
53
65
69
105
124
112
52
64
68
104
124
113
51
63
67
103
123
114
50
62
66
102
122
115
49
61
65
101
121
116
48
60
64
100
120
117
47
59
63
99
119
118
46
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
45
49
75
87
111
120
44
48
76
88
112
121
43
47
77
89
113
122
42
46
78
90
114
123
41
45
79
91
115
124
40
44
80
92
116
125
39
43
79
93
115
126
38
42
78
94
114
127
37
41
77
95
113
128
36
40
76
96
112
129
35
39
75
97
111
130
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
62
63
64
65
66
67
68
69
70
71
72
73
74
98
99
100
101
102
103
104
103
102
101
100
99
98
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
25
39
61
97
109
123
24
40
60
96
108
124
23
41
59
95
107
125
22
42
58
94
106
126
21
43
57
93
105
127
20
44
56
92
104
128
19
43
55
91
103
129
18
42
54
90
102
130
17
41
53
89
101
131
16
40
52
88
100
132
15
39
51
87
99
133
6
7
8
9
10
11
12
13
14
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
134
135
136
137
138
139
140
141
142
5
37
63
75
99
141
4
36
64
76
100
140
3
35
65
77
101
139
2
34
66
78
102
138
1
33
67
79
103
137
0
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
118
119
120
121
122
123
124
125
126
127
128
129
130
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
160
159
158
157
156
155
154
153
152
151
150
149
148
147
131
121
117
129
141
146
130
120
116
128
140
145
129
119
115
127
139
144
128
118
114
126
138
143
127
117
113
125
137
142
126
116
112
124
136
141
125
115
111
123
135
140
124
114
110
122
134
139
123
113
109
121
133
138
122
112
108
120
132
137
121
111
107
119
131
136
120
108
109
110
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
136
135
134
133
132
131
130
129
128
127
126
125
124
123
135
119
107
101
105
117
136
122
134
118
106
100
104
116
136
121
133
117
105
99
103
115
135
120
132
116
104
98
102
114
134
119
131
115
103
97
101
113
133
118
130
114
102
96
100
112
132
117
129
113
101
95
99
111
131
116
128
112
111
110
109
108
107
106
105
104
103
102
101
100
94
98
110
130
115
116
117
118
119
120
121
122
123
124
125
126
127
99
93
97
109
129
114
98
92
96
108
128
113
97
91
95
107
127
112
96
90
94
106
126
111
95
89
93
105
125
110
94
88
92
104
124
109
93
87
91
103
123
108
92
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
107
91
77
113
106
90
76
112
105
89
75
111
104
86
85
84
83
82
83
84
85
86
87
88
89
90
91
90
89
88
74
110
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
81
87
73
109
104
92
80
86
72
108
105
93
79
85
71
107
106
94
78
84
70
106
107
95
77
83
69
105
108
96
76
82
68
104
109
97
75
81
67
103
110
98
74
80
79
78
77
76
75
74
73
72
71
72
73
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
116
115
114
113
112
111
99
73
70
65
101
115
100
72
69
64
100
116
101
71
68
63
99
117
102
70
67
62
98
118
103
69
66
61
97
119
104
68
65
60
96
120
105
67
64
59
95
121
106
66
63
58
94
122
107
65
62
57
93
121
108
64
61
56
92
120
109
63
60
55
91
119
110
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
54
90
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
116
115
114
113
112
111
61
49
53
89
109
112
60
48
52
88
108
113
59
47
51
87
107
114
58
46
50
86
106
115
57
45
49
85
105
116
56
44
48
84
104
116
55
43
47
83
103
115
54
42
46
82
102
114
53
41
45
81
101
113
52
40
44
80
100
112
51
39
43
79
99
111
50
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
110
49
29
53
67
89
109
48
28
52
68
88
108
47
27
51
69
87
107
46
26
50
70
86
106
45
25
49
71
85
105
44
24
48
72
84
104
43
23
47
73
83
103
42
22
46
74
82
102
41
21
45
75
81
101
40
20
44
76
80
100
39
19
43
77
79
99
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
30
31
32
33
34
35
36
37
38
39
40
41
42
78
77
76
75
74
73
72
71
70
69
68
67
66
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
31
17
29
65
77
91
32
16
28
64
76
92
33
15
27
63
75
93
34
14
26
62
74
94
35
13
25
61
73
95
36
12
24
60
72
96
37
11
23
59
71
97
38
10
22
58
70
98
39
9
21
57
69
99
40
8
20
56
68
100
41
7
19
55
67
101
38
39
40
41
42
43
44
43
42
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
102
103
104
105
106
107
108
109
110
37
5
31
43
67
109
36
4
32
44
68
108
35
3
33
45
69
107
34
2
34
46
70
106
33
1
35
47
71
105
32
0
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
142
143
144
145
146
147
148
149
150
151
152
153
154
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
169
168
167
166
155
145
141
153
157
165
154
144
140
152
156
164
153
143
139
151
155
163
152
142
138
150
154
162
151
141
137
149
153
161
150
140
136
148
152
160
149
139
135
147
151
159
148
138
134
146
150
158
147
137
133
145
149
157
146
136
132
144
148
156
145
135
131
143
147
155
144
132
133
134
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
145
144
143
142
154
143
131
125
129
141
137
141
153
142
130
124
128
140
136
140
152
141
129
123
127
139
135
139
151
140
128
122
126
138
134
138
150
139
127
121
125
137
133
137
149
138
126
120
124
136
132
136
148
137
125
119
123
135
131
135
147
136
135
134
133
132
131
130
129
128
127
126
125
124
118
122
134
130
134
135
136
137
138
139
140
141
142
143
144
145
146
123
117
121
133
129
133
122
116
120
132
128
132
121
115
119
131
127
131
120
114
118
130
126
130
119
113
117
129
125
129
118
112
116
128
124
128
117
111
115
127
123
127
116
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
126
115
101
113
125
114
100
112
124
113
99
111
123
110
109
108
107
106
107
108
109
110
111
112
113
114
115
114
113
112
98
110
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
105
111
97
109
121
116
104
110
96
108
120
116
103
109
95
107
119
115
102
108
94
106
118
114
101
107
93
105
117
113
100
106
92
104
116
112
99
105
91
103
115
111
98
104
103
102
101
100
99
98
97
96
95
96
97
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
109
108
107
106
107
108
109
110
111
112
113
114
110
97
94
89
101
105
109
96
93
88
100
104
108
95
92
87
99
103
107
94
91
86
98
102
106
93
90
85
97
101
105
92
89
84
96
100
104
91
88
83
95
99
103
90
87
82
94
98
102
89
86
81
93
97
101
88
85
80
92
96
100
87
84
79
91
95
99
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
78
90
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
85
73
77
89
85
97
84
72
76
88
84
96
83
71
75
87
83
95
82
70
74
86
82
94
81
69
73
85
81
93
80
68
72
84
80
92
79
67
71
83
79
91
78
66
70
82
78
90
77
65
69
81
77
89
76
64
68
80
76
88
75
63
67
79
75
87
74
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
86
73
53
53
65
65
85
72
52
52
64
64
84
71
51
51
63
63
83
70
50
50
62
62
82
69
49
49
61
61
81
68
48
48
60
60
80
67
47
47
59
59
79
66
46
46
58
58
78
65
45
45
57
57
77
64
44
44
56
56
76
63
43
43
55
55
75
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
30
31
32
33
34
35
36
37
38
39
40
41
42
54
53
52
51
50
49
48
47
46
45
44
43
42
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
55
41
29
41
53
67
56
40
28
40
52
68
57
39
27
39
51
69
58
38
26
38
50
70
59
37
25
37
49
71
60
36
24
36
48
72
61
35
23
35
47
73
62
34
22
34
46
74
63
33
21
33
45
75
64
32
20
32
44
76
65
31
19
31
43
77
74
73
72
71
70
69
68
67
66
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
78
79
80
81
82
83
84
85
86
73
31
5
19
43
85
72
32
4
20
44
84
71
33
3
21
45
83
70
34
2
22
46
82
69
35
1
23
47
81
68
36
0
168
169
170
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
154
153
152
151
150
149
148
147
146
145
144
143
142
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
167
157
153
141
145
153
166
156
152
140
144
152
165
155
151
139
143
151
164
154
150
138
142
150
163
153
149
137
141
149
162
152
148
136
140
148
161
151
147
135
139
147
160
150
146
134
138
146
159
149
145
133
137
145
158
148
144
132
136
144
157
147
143
131
135
143
156
144
145
146
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
133
132
131
130
142
155
143
137
141
129
125
129
141
154
142
136
140
128
124
128
140
153
141
135
139
127
123
127
139
152
140
134
138
126
122
126
138
151
139
133
137
125
121
125
137
150
138
132
136
124
120
124
136
149
137
131
135
123
119
123
135
148
147
146
145
144
143
142
141
140
139
138
137
136
130
134
122
118
122
123
124
125
126
127
128
129
130
131
132
133
134
135
129
133
121
117
121
134
128
132
120
116
120
133
127
131
119
115
119
132
126
130
118
114
118
131
125
129
117
113
117
130
124
128
116
112
116
129
123
127
115
111
115
128
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
114
127
113
101
113
126
112
100
112
125
111
99
111
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
125
124
110
98
110
111
112
113
114
113
112
111
110
109
108
107
106
107
108
109
110
116
123
109
97
109
105
116
122
108
96
108
104
115
121
107
95
107
103
114
120
106
94
106
102
113
119
105
93
105
101
112
118
104
92
104
100
111
117
103
91
103
99
110
116
115
114
113
112
111
110
109
108
107
108
109
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
97
96
95
94
95
96
97
98
99
100
101
102
98
109
106
101
89
93
97
108
105
100
88
92
96
107
104
99
87
91
95
106
103
98
86
90
94
105
102
97
85
89
93
104
101
96
84
88
92
103
100
95
83
87
91
102
99
94
82
86
90
101
98
93
81
85
89
100
97
92
80
84
88
99
96
91
79
83
87
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
90
78
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
97
85
89
77
73
85
96
84
88
76
72
84
95
83
87
75
71
83
94
82
86
74
70
82
93
81
85
73
69
81
92
80
84
72
68
80
91
79
83
71
67
79
90
78
82
70
66
78
89
77
81
69
65
77
88
76
80
68
64
76
87
75
79
67
63
75
86
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
74
85
65
65
53
53
73
84
64
64
52
52
72
83
63
63
51
51
71
82
62
62
50
50
70
81
61
61
49
49
69
80
60
60
48
48
68
79
59
59
47
47
67
78
58
58
46
46
66
77
57
57
45
45
65
76
56
56
44
44
64
75
55
55
43
43
63
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
42
43
44
45
46
47
48
49
50
51
52
53
54
42
41
40
39
38
37
36
35
34
33
32
31
30
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
67
53
41
29
41
55
68
52
40
28
40
56
69
51
39
27
39
57
70
50
38
26
38
58
71
49
37
25
37
59
72
48
36
24
36
60
73
47
35
23
35
61
74
46
34
22
34
62
75
45
33
21
33
63
76
44
32
20
32
64
77
43
31
19
31
65
86
85
84
83
82
81
80
79
78
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
66
67
68
69
70
71
72
73
74
85
43
19
5
31
73
84
44
20
4
32
72
83
45
21
3
33
71
82
46
22
2
34
70
81
47
23
1
35
69
80
48
24
0
147
148
149
150
151
152
153
154
155
156
157
158
159
160
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
130
129
128
127
126
125
124
123
122
121
120
119
118
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
146
141
129
117
121
129
145
140
128
116
120
128
144
139
127
115
119
127
143
138
126
114
118
126
142
137
125
113
117
125
141
136
124
112
116
124
140
135
123
111
115
123
139
134
122
110
114
122
138
133
121
109
113
121
137
132
120
108
112
120
136
131
119
107
111
119
135
123
124
125
126
127
128
129
130
131
132
133
134
135
136
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
109
108
107
106
118
134
122
136
117
105
101
105
117
133
121
136
116
104
100
104
116
132
120
135
115
103
99
103
115
131
119
134
114
102
98
102
114
130
118
133
113
101
97
101
113
129
117
132
112
100
96
100
112
128
116
131
111
99
95
99
111
127
126
125
124
123
122
121
120
119
118
117
116
115
130
110
98
94
98
99
100
101
102
103
104
105
106
107
108
109
110
114
129
109
97
93
97
113
128
108
96
92
96
112
127
107
95
91
95
111
126
106
94
90
94
110
125
105
93
89
93
109
124
104
92
88
92
108
123
103
91
87
91
107
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
90
106
113
77
89
105
112
76
88
104
111
75
87
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
110
74
86
87
88
89
90
89
88
87
86
85
84
83
82
83
84
85
86
92
104
109
73
85
81
93
105
108
72
84
80
94
106
107
71
83
79
95
107
106
70
82
78
96
108
105
69
81
77
97
109
104
68
80
76
98
110
103
67
79
75
99
111
112
113
114
115
116
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
73
72
71
70
71
72
73
74
75
76
77
78
74
100
114
101
65
69
73
101
115
100
64
68
72
102
116
99
63
67
71
103
117
98
62
66
70
104
118
97
61
65
69
105
119
96
60
64
68
106
120
95
59
63
67
107
121
94
58
62
66
108
122
93
57
61
65
109
121
92
56
60
64
110
120
91
55
59
63
111
112
113
114
115
116
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
90
54
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
112
109
89
53
49
61
113
108
88
52
48
60
114
107
87
51
47
59
115
106
86
50
46
58
116
105
85
49
45
57
116
104
84
48
44
56
115
103
83
47
43
55
114
102
82
46
42
54
113
101
81
45
41
53
112
100
80
44
40
52
111
99
79
43
39
51
110
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
50
109
89
67
53
29
49
108
88
68
52
28
48
107
87
69
51
27
47
106
86
70
50
26
46
105
85
71
49
25
45
104
84
72
48
24
44
103
83
73
47
23
43
102
82
74
46
22
42
101
81
75
45
21
41
100
80
76
44
20
40
99
79
77
43
19
39
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
66
67
68
69
70
71
72
73
74
75
76
77
78
42
41
40
39
38
37
36
35
34
33
32
31
30
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
91
77
65
29
17
31
92
76
64
28
16
32
93
75
63
27
15
33
94
74
62
26
14
34
95
73
61
25
13
35
96
72
60
24
12
36
97
71
59
23
11
37
98
70
58
22
10
38
99
69
57
21
9
39
100
68
56
20
8
40
101
67
55
19
7
41
110
109
108
107
106
105
104
103
102
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
42
43
44
43
42
41
40
39
38
109
67
43
31
5
37
108
68
44
32
4
36
107
69
45
33
3
35
106
70
46
34
2
34
105
71
47
35
1
33
104
72
48
36
0
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
142
150
149
137
141
133
141
149
148
136
140
132
140
148
147
135
139
131
139
147
146
134
138
130
138
146
145
133
137
129
137
145
144
132
136
128
136
144
143
131
135
127
135
143
142
130
134
126
134
142
141
129
133
125
133
141
140
128
132
124
132
140
139
127
131
123
131
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
144
143
142
141
140
139
138
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
122
130
118
132
137
125
121
109
121
129
117
133
136
124
120
108
120
128
116
134
135
123
119
107
119
127
115
135
134
122
118
106
118
126
114
136
133
121
117
105
117
125
113
137
132
120
116
104
116
124
112
138
131
119
115
103
115
123
122
121
120
119
118
117
116
115
114
113
112
111
139
130
118
114
102
103
104
105
106
107
108
109
110
111
112
113
114
110
140
129
117
113
101
109
141
128
116
112
100
108
142
127
115
111
99
107
143
126
114
110
98
106
144
125
113
109
97
105
144
124
112
108
96
104
143
123
111
107
95
103
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
94
102
133
97
93
101
132
96
92
100
131
95
91
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
130
94
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
88
100
129
93
91
77
89
101
128
92
92
76
90
102
127
91
93
75
91
103
126
90
94
74
92
104
125
89
95
73
93
105
124
88
96
72
94
106
123
87
97
71
95
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
93
92
91
90
91
92
93
94
95
96
97
98
70
96
117
121
85
89
69
97
118
120
84
88
68
98
119
119
83
87
67
99
120
118
82
86
66
100
121
117
81
85
65
101
122
116
80
84
64
102
123
115
79
83
63
103
124
114
78
82
62
104
125
113
77
81
61
105
126
112
76
80
60
106
127
111
75
79
59
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
110
74
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
108
120
109
73
69
57
109
121
108
72
68
56
110
122
107
71
67
55
111
123
106
70
66
54
112
124
105
69
65
53
113
124
104
68
64
52
114
123
103
67
63
51
115
122
102
66
62
50
116
121
101
65
61
49
117
120
100
64
60
48
118
119
99
63
59
47
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
46
120
111
87
75
49
45
121
112
88
76
48
44
122
113
89
77
47
43
123
114
90
78
46
42
124
115
91
79
45
41
125
116
92
80
44
40
126
115
93
79
43
39
127
114
94
78
42
38
128
113
95
77
41
37
129
112
96
76
40
36
130
111
97
75
39
35
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
98
99
100
101
102
103
104
103
102
101
100
99
98
74
73
72
71
70
69
68
67
66
65
64
63
62
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
123
109
97
61
39
25
124
108
96
60
40
24
125
107
95
59
41
23
126
106
94
58
42
22
127
105
93
57
43
21
128
104
92
56
44
20
129
103
91
55
43
19
130
102
90
54
42
18
131
101
89
53
41
17
132
100
88
52
40
16
133
99
87
51
39
15
142
141
140
139
138
137
136
135
134
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
14
13
12
11
10
9
8
7
6
141
99
75
63
37
5
140
100
76
64
36
4
139
101
77
65
35
3
138
102
78
66
34
2
137
103
79
67
33
1
136
104
80
68
32
0
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
134
142
138
150
151
143
133
141
137
149
150
142
132
140
136
148
149
141
131
139
135
147
148
140
130
138
134
146
147
139
129
137
133
145
146
138
128
136
132
144
145
137
127
135
131
143
144
136
126
134
130
142
143
135
125
133
129
141
142
134
124
132
128
140
141
133
123
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
139
140
141
142
143
144
145
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
132
122
110
122
126
138
133
119
131
121
109
121
125
137
134
118
130
120
108
120
124
136
135
117
129
119
107
119
123
135
136
116
128
118
106
118
122
134
137
115
127
117
105
117
121
133
138
114
126
116
104
116
120
132
139
113
125
115
114
113
112
111
110
109
108
107
106
105
104
103
115
119
131
140
112
113
114
115
116
117
118
119
120
121
122
123
124
102
114
118
130
141
111
101
113
117
129
142
110
100
112
116
128
143
109
99
111
115
127
144
108
98
110
114
126
145
107
97
109
113
125
145
106
96
108
112
124
144
105
95
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
104
94
98
134
103
93
97
133
102
92
96
132
101
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
95
131
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
78
92
94
130
101
89
77
93
93
129
102
90
76
94
92
128
103
91
75
95
91
127
104
92
74
96
90
126
105
93
73
97
89
125
106
94
72
98
88
124
107
95
71
99
100
99
98
97
96
95
94
93
92
93
94
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
96
70
91
86
122
117
97
69
90
85
121
118
98
68
89
84
120
119
99
67
88
83
119
120
100
66
87
82
118
121
101
65
86
81
117
122
102
64
85
80
116
123
103
63
84
79
115
124
104
62
83
78
114
125
105
61
82
77
113
126
106
60
81
76
112
127
107
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
75
111
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
58
70
74
110
121
109
57
69
73
109
122
110
56
68
72
108
123
111
55
67
71
107
124
112
54
66
70
106
125
113
53
65
69
105
125
114
52
64
68
104
124
115
51
63
67
103
123
116
50
62
66
102
122
117
49
61
65
101
121
118
48
60
64
100
120
119
47
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
46
50
76
88
112
121
45
49
77
89
113
122
44
48
78
90
114
123
43
47
79
91
115
124
42
46
80
92
116
125
41
45
79
93
115
126
40
44
78
94
114
127
39
43
77
95
113
128
38
42
76
96
112
129
37
41
75
97
111
130
36
40
74
98
110
130
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
61
62
63
64
65
66
67
68
69
70
71
72
73
99
100
101
102
103
104
103
102
101
100
99
98
97
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
26
40
60
96
108
122
25
41
59
95
107
123
24
42
58
94
106
124
23
43
57
93
105
125
22
44
56
92
104
126
21
43
55
91
103
127
20
42
54
90
102
128
19
41
53
89
101
129
18
40
52
88
100
130
17
39
51
87
99
131
16
38
50
86
98
132
7
8
9
10
11
12
13
14
15
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
133
134
135
136
137
138
139
140
141
6
36
62
74
98
140
5
35
63
75
99
139
4
34
64
76
100
138
3
33
65
77
101
137
2
32
66
78
102
136
1
31
67
79
103
135
0
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
119
120
121
122
123
124
125
126
127
128
129
130
131
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
161
160
159
158
157
156
155
154
153
152
151
150
149
148
132
122
118
130
142
147
131
121
117
129
141
146
130
120
116
128
140
145
129
119
115
127
139
144
128
118
114
126
138
143
127
117
113
125
137
142
126
116
112
124
136
141
125
115
111
123
135
140
124
114
110
122
134
139
123
113
109
121
133
138
122
112
108
120
132
137
121
109
110
111
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
137
136
135
134
133
132
131
130
129
128
127
126
125
124
136
120
108
102
106
118
137
123
135
119
107
101
105
117
137
122
134
118
106
100
104
116
136
121
133
117
105
99
103
115
135
120
132
116
104
98
102
114
134
119
131
115
103
97
101
113
133
118
130
114
102
96
100
112
132
117
129
113
112
111
110
109
108
107
106
105
104
103
102
101
95
99
111
131
116
117
118
119
120
121
122
123
124
125
126
127
128
100
94
98
110
130
115
99
93
97
109
129
114
98
92
96
108
128
113
97
91
95
107
127
112
96
90
94
106
126
111
95
89
93
105
125
110
94
88
92
104
124
109
93
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
108
92
78
114
107
91
77
113
106
90
76
112
105
87
86
85
84
83
84
85
86
87
88
89
90
91
92
91
90
89
75
111
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
82
88
74
110
105
93
81
87
73
109
106
94
80
86
72
108
107
95
79
85
71
107
108
96
78
84
70
106
109
97
77
83
69
105
110
98
76
82
68
104
111
99
75
81
80
79
78
77
76
75
74
73
72
73
74
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
117
116
115
114
113
112
100
74
71
66
102
116
101
73
70
65
101
117
102
72
69
64
100
118
103
71
68
63
99
119
104
70
67
62
98
120
105
69
66
61
97
121
106
68
65
60
96
122
107
67
64
59
95
123
108
66
63
58
94
122
109
65
62
57
93
121
110
64
61
56
92
120
111
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
55
91
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
117
116
115
114
113
112
62
50
54
90
110
113
61
49
53
89
109
114
60
48
52
88
108
115
59
47
51
87
107
116
58
46
50
86
106
117
57
45
49
85
105
117
56
44
48
84
104
116
55
43
47
83
103
115
54
42
46
82
102
114
53
41
45
81
101
113
52
40
44
80
100
112
51
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
111
50
30
54
68
90
110
49
29
53
69
89
109
48
28
52
70
88
108
47
27
51
71
87
107
46
26
50
72
86
106
45
25
49
73
85
105
44
24
48
74
84
104
43
23
47
75
83
103
42
22
46
76
82
102
41
21
45
77
81
101
40
20
44
78
80
100
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
31
32
33
34
35
36
37
38
39
40
41
42
43
79
78
77
76
75
74
73
72
71
70
69
68
67
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
32
18
30
66
78
92
33
17
29
65
77
93
34
16
28
64
76
94
35
15
27
63
75
95
36
14
26
62
74
96
37
13
25
61
73
97
38
12
24
60
72
98
39
11
23
59
71
99
40
10
22
58
70
100
41
9
21
57
69
101
42
8
20
56
68
102
37
38
39
40
41
42
43
44
43
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
103
104
105
106
107
108
109
110
111
36
6
32
44
68
110
35
5
33
45
69
109
34
4
34
46
70
108
33
3
35
47
71
107
32
2
36
48
72
106
31
1
37
49
73
105
30
0
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
143
144
145
146
147
148
149
150
151
152
153
154
155
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
170
169
168
167
156
146
142
154
158
166
155
145
141
153
157
165
154
144
140
152
156
164
153
143
139
151
155
163
152
142
138
150
154
162
151
141
137
149
153
161
150
140
136
148
152
160
149
139
135
147
151
159
148
138
134
146
150
158
147
137
133
145
149
157
146
136
132
144
148
156
145
133
134
135
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
146
145
144
143
155
144
132
126
130
142
138
142
154
143
131
125
129
141
137
141
153
142
130
124
128
140
136
140
152
141
129
123
127
139
135
139
151
140
128
122
126
138
134
138
150
139
127
121
125
137
133
137
149
138
126
120
124
136
132
136
148
137
136
135
134
133
132
131
130
129
128
127
126
125
119
123
135
131
135
136
137
138
139
140
141
142
143
144
145
146
147
124
118
122
134
130
134
123
117
121
133
129
133
122
116
120
132
128
132
121
115
119
131
127
131
120
114
118
130
126
130
119
113
117
129
125
129
118
112
116
128
124
128
117
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
127
116
102
114
126
115
101
113
125
114
100
112
124
111
110
109
108
107
108
109
110
111
112
113
114
115
116
115
114
113
99
111
123
124
125
125
124
123
122
121
120
119
118
117
116
115
114
113
112
106
112
98
110
122
117
105
111
97
109
121
117
104
110
96
108
120
116
103
109
95
107
119
115
102
108
94
106
118
114
101
107
93
105
117
113
100
106
92
104
116
112
99
105
104
103
102
101
100
99
98
97
96
97
98
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
110
109
108
107
108
109
110
111
112
113
114
115
111
98
95
90
102
106
110
97
94
89
101
105
109
96
93
88
100
104
108
95
92
87
99
103
107
94
91
86
98
102
106
93
90
85
97
101
105
92
89
84
96
100
104
91
88
83
95
99
103
90
87
82
94
98
102
89
86
81
93
97
101
88
85
80
92
96
100
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
79
91
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
86
74
78
90
86
98
85
73
77
89
85
97
84
72
76
88
84
96
83
71
75
87
83
95
82
70
74
86
82
94
81
69
73
85
81
93
80
68
72
84
80
92
79
67
71
83
79
91
78
66
70
82
78
90
77
65
69
81
77
89
76
64
68
80
76
88
75
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
87
74
54
54
66
66
86
73
53
53
65
65
85
72
52
52
64
64
84
71
51
51
63
63
83
70
50
50
62
62
82
69
49
49
61
61
81
68
48
48
60
60
80
67
47
47
59
59
79
66
46
46
58
58
78
65
45
45
57
57
77
64
44
44
56
56
76
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
31
32
33
34
35
36
37
38
39
40
41
42
43
55
54
53
52
51
50
49
48
47
46
45
44
43
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
56
42
30
42
54
68
57
41
29
41
53
69
58
40
28
40
52
70
59
39
27
39
51
71
60
38
26
38
50
72
61
37
25
37
49
73
62
36
24
36
48
74
63
35
23
35
47
75
64
34
22
34
46
76
65
33
21
33
45
77
66
32
20
32
44
78
75
74
73
72
71
70
69
68
67
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
79
80
81
82
83
84
85
86
87
74
32
6
20
44
86
73
33
5
21
45
85
72
34
4
22
46
84
71
35
3
23
47
83
70
36
2
24
48
82
69
37
1
25
49
81
68
38
0
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
155
154
153
152
151
150
149
148
147
146
145
144
143
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
168
158
154
142
146
154
167
157
153
141
145
153
166
156
152
140
144
152
165
155
151
139
143
151
164
154
150
138
142
150
163
153
149
137
141
149
162
152
148
136
140
148
161
151
147
135
139
147
160
150
146
134
138
146
159
149
145
133
137
145
158
148
144
132
136
144
157
145
146
147
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
134
133
132
131
143
156
144
138
142
130
126
130
142
155
143
137
141
129
125
129
141
154
142
136
140
128
124
128
140
153
141
135
139
127
123
127
139
152
140
134
138
126
122
126
138
151
139
133
137
125
121
125
137
150
138
132
136
124
120
124
136
149
148
147
146
145
144
143
142
141
140
139
138
137
131
135
123
119
123
124
125
126
127
128
129
130
131
132
133
134
135
136
130
134
122
118
122
135
129
133
121
117
121
134
128
132
120
116
120
133
127
131
119
115
119
132
126
130
118
114
118
131
125
129
117
113
117
130
124
128
116
112
116
129
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
115
128
114
102
114
127
113
101
113
126
112
100
112
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
126
125
111
99
111
112
113
114
115
114
113
112
111
110
109
108
107
108
109
110
111
117
124
110
98
110
106
117
123
109
97
109
105
116
122
108
96
108
104
115
121
107
95
107
103
114
120
106
94
106
102
113
119
105
93
105
101
112
118
104
92
104
100
111
117
116
115
114
113
112
111
110
109
108
109
110
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
98
97
96
95
96
97
98
99
100
101
102
103
99
110
107
102
90
94
98
109
106
101
89
93
97
108
105
100
88
92
96
107
104
99
87
91
95
106
103
98
86
90
94
105
102
97
85
89
93
104
101
96
84
88
92
103
100
95
83
87
91
102
99
94
82
86
90
101
98
93
81
85
89
100
97
92
80
84
88
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
91
79
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
98
86
90
78
74
86
97
85
89
77
73
85
96
84
88
76
72
84
95
83
87
75
71
83
94
82
86
74
70
82
93
81
85
73
69
81
92
80
84
72
68
80
91
79
83
71
67
79
90
78
82
70
66
78
89
77
81
69
65
77
88
76
80
68
64
76
87
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
75
86
66
66
54
54
74
85
65
65
53
53
73
84
64
64
52
52
72
83
63
63
51
51
71
82
62
62
50
50
70
81
61
61
49
49
69
80
60
60
48
48
68
79
59
59
47
47
67
78
58
58
46
46
66
77
57
57
45
45
65
76
56
56
44
44
64
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
43
44
45
46
47
48
49
50
51
52
53
54
55
43
42
41
40
39
38
37
36
35
34
33
32
31
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
68
54
42
30
42
56
69
53
41
29
41
57
70
52
40
28
40
58
71
51
39
27
39
59
72
50
38
26
38
60
73
49
37
25
37
61
74
48
36
24
36
62
75
47
35
23
35
63
76
46
34
22
34
64
77
45
33
21
33
65
78
44
32
20
32
66
87
86
85
84
83
82
81
80
79
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
67
68
69
70
71
72
73
74
75
86
44
20
6
32
74
85
45
21
5
33
73
84
46
22
4
34
72
83
47
23
3
35
71
82
48
24
2
36
70
81
49
25
1
37
69
80
50
26
0
148
149
150
151
152
153
154
155
156
157
158
159
160
161
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
131
130
129
128
127
126
125
124
123
122
121
120
119
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
147
142
130
118
122
130
146
141
129
117
121
129
145
140
128
116
120
128
144
139
127
115
119
127
143
138
126
114
118
126
142
137
125
113
117
125
141
136
124
112
116
124
140
135
123
111
115
123
139
134
122
110
114
122
138
133
121
109
113
121
137
132
120
108
112
120
136
124
125
126
127
128
129
130
131
132
133
134
135
136
137
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
110
109
108
107
119
135
123
137
118
106
102
106
118
134
122
137
117
105
101
105
117
133
121
136
116
104
100
104
116
132
120
135
115
103
99
103
115
131
119
134
114
102
98
102
114
130
118
133
113
101
97
101
113
129
117
132
112
100
96
100
112
128
127
126
125
124
123
122
121
120
119
118
117
116
131
111
99
95
99
100
101
102
103
104
105
106
107
108
109
110
111
115
130
110
98
94
98
114
129
109
97
93
97
113
128
108
96
92
96
112
127
107
95
91
95
111
126
106
94
90
94
110
125
105
93
89
93
109
124
104
92
88
92
108
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
91
107
114
78
90
106
113
77
89
105
112
76
88
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
111
75
87
88
89
90
91
90
89
88
87
86
85
84
83
84
85
86
87
93
105
110
74
86
82
94
106
109
73
85
81
95
107
108
72
84
80
96
108
107
71
83
79
97
109
106
70
82
78
98
110
105
69
81
77
99
111
104
68
80
76
100
112
113
114
115
116
117
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
74
73
72
71
72
73
74
75
76
77
78
79
75
101
115
102
66
70
74
102
116
101
65
69
73
103
117
100
64
68
72
104
118
99
63
67
71
105
119
98
62
66
70
106
120
97
61
65
69
107
121
96
60
64
68
108
122
95
59
63
67
109
123
94
58
62
66
110
122
93
57
61
65
111
121
92
56
60
64
112
113
114
115
116
117
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
91
55
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
113
110
90
54
50
62
114
109
89
53
49
61
115
108
88
52
48
60
116
107
87
51
47
59
117
106
86
50
46
58
117
105
85
49
45
57
116
104
84
48
44
56
115
103
83
47
43
55
114
102
82
46
42
54
113
101
81
45
41
53
112
100
80
44
40
52
111
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
51
110
90
68
54
30
50
109
89
69
53
29
49
108
88
70
52
28
48
107
87
71
51
27
47
106
86
72
50
26
46
105
85
73
49
25
45
104
84
74
48
24
44
103
83
75
47
23
43
102
82
76
46
22
42
101
81
77
45
21
41
100
80
78
44
20
40
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
67
68
69
70
71
72
73
74
75
76
77
78
79
43
42
41
40
39
38
37
36
35
34
33
32
31
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
92
78
66
30
18
32
93
77
65
29
17
33
94
76
64
28
16
34
95
75
63
27
15
35
96
74
62
26
14
36
97
73
61
25
13
37
98
72
60
24
12
38
99
71
59
23
11
39
100
70
58
22
10
40
101
69
57
21
9
41
102
68
56
20
8
42
111
110
109
108
107
106
105
104
103
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
43
44
43
42
41
40
39
38
37
110
68
44
32
6
36
109
69
45
33
5
35
108
70
46
34
4
34
107
71
47
35
3
33
106
72
48
36
2
32
105
73
49
37
1
31
104
74
50
38
0
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
143
151
150
138
142
134
142
150
149
137
141
133
141
149
148
136
140
132
140
148
147
135
139
131
139
147
146
134
138
130
138
146
145
133
137
129
137
145
144
132
136
128
136
144
143
131
135
127
135
143
142
130
134
126
134
142
141
129
133
125
133
141
140
128
132
124
132
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
145
144
143
142
141
140
139
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
123
131
119
133
138
126
122
110
122
130
118
134
137
125
121
109
121
129
117
135
136
124
120
108
120
128
116
136
135
123
119
107
119
127
115
137
134
122
118
106
118
126
114
138
133
121
117
105
117
125
113
139
132
120
116
104
116
124
123
122
121
120
119
118
117
116
115
114
113
112
140
131
119
115
103
104
105
106
107
108
109
110
111
112
113
114
115
111
141
130
118
114
102
110
142
129
117
113
101
109
143
128
116
112
100
108
144
127
115
111
99
107
145
126
114
110
98
106
145
125
113
109
97
105
144
124
112
108
96
104
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
95
103
134
98
94
102
133
97
93
101
132
96
92
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
131
95
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
89
101
130
94
92
78
90
102
129
93
93
77
91
103
128
92
94
76
92
104
127
91
95
75
93
105
126
90
96
74
94
106
125
89
97
73
95
107
124
88
98
72
96
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
94
93
92
91
92
93
94
95
96
97
98
99
71
97
118
122
86
90
70
98
119
121
85
89
69
99
120
120
84
88
68
100
121
119
83
87
67
101
122
118
82
86
66
102
123
117
81
85
65
103
124
116
80
84
64
104
125
115
79
83
63
105
126
114
78
82
62
106
127
113
77
81
61
107
128
112
76
80
60
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
111
75
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
109
121
110
74
70
58
110
122
109
73
69
57
111
123
108
72
68
56
112
124
107
71
67
55
113
125
106
70
66
54
114
125
105
69
65
53
115
124
104
68
64
52
116
123
103
67
63
51
117
122
102
66
62
50
118
121
101
65
61
49
119
120
100
64
60
48
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
47
121
112
88
76
50
46
122
113
89
77
49
45
123
114
90
78
48
44
124
115
91
79
47
43
125
116
92
80
46
42
126
115
93
79
45
41
127
114
94
78
44
40
128
113
95
77
43
39
129
112
96
76
42
38
130
111
97
75
41
37
130
110
98
74
40
36
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
97
98
99
100
101
102
103
104
103
102
101
100
99
73
72
71
70
69
68
67
66
65
64
63
62
61
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
122
108
96
60
40
26
123
107
95
59
41
25
124
106
94
58
42
24
125
105
93
57
43
23
126
104
92
56
44
22
127
103
91
55
43
21
128
102
90
54
42
20
129
101
89
53
41
19
130
100
88
52
40
18
131
99
87
51
39
17
132
98
86
50
38
16
141
140
139
138
137
136
135
134
133
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
15
14
13
12
11
10
9
8
7
140
98
74
62
36
6
139
99
75
63
35
5
138
100
76
64
34
4
137
101
77
65
33
3
136
102
78
66
32
2
135
103
79
67
31
1
134
104
80
68
30
0
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
135
143
139
151
152
144
134
142
138
150
151
143
133
141
137
149
150
142
132
140
136
148
149
141
131
139
135
147
148
140
130
138
134
146
147
139
129
137
133
145
146
138
128
136
132
144
145
137
127
135
131
143
144
136
126
134
130
142
143
135
125
133
129
141
142
134
124
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
140
141
142
143
144
145
146
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
133
123
111
123
127
139
134
120
132
122
110
122
126
138
135
119
131
121
109
121
125
137
136
118
130
120
108
120
124
136
137
117
129
119
107
119
123
135
138
116
128
118
106
118
122
134
139
115
127
117
105
117
121
133
140
114
126
116
115
114
113
112
111
110
109
108
107
106
105
104
116
120
132
141
113
114
115
116
117
118
119
120
121
122
123
124
125
103
115
119
131
142
112
102
114
118
130
143
111
101
113
117
129
144
110
100
112
116
128
145
109
99
111
115
127
146
108
98
110
114
126
146
107
97
109
113
125
145
106
96
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
105
95
99
135
104
94
98
134
103
93
97
133
102
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
96
132
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
79
93
95
131
102
90
78
94
94
130
103
91
77
95
93
129
104
92
76
96
92
128
105
93
75
97
91
127
106
94
74
98
90
126
107
95
73
99
89
125
108
96
72
100
101
100
99
98
97
96
95
94
93
94
95
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
97
71
92
87
123
118
98
70
91
86
122
119
99
69
90
85
121
120
100
68
89
84
120
121
101
67
88
83
119
122
102
66
87
82
118
123
103
65
86
81
117
124
104
64
85
80
116
125
105
63
84
79
115
126
106
62
83
78
114
127
107
61
82
77
113
128
108
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
76
112
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
59
71
75
111
122
110
58
70
74
110
123
111
57
69
73
109
124
112
56
68
72
108
125
113
55
67
71
107
126
114
54
66
70
106
126
115
53
65
69
105
125
116
52
64
68
104
124
117
51
63
67
103
123
118
50
62
66
102
122
119
49
61
65
101
121
120
48
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
47
51
77
89
113
122
46
50
78
90
114
123
45
49
79
91
115
124
44
48
80
92
116
125
43
47
79
93
115
126
42
46
78
94
114
127
41
45
77
95
113
128
40
44
76
96
112
129
39
43
75
97
111
130
38
42
74
98
110
130
37
41
73
99
109
129
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
60
61
62
63
64
65
66
67
68
69
70
71
72
100
101
102
103
104
103
102
101
100
99
98
97
96
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
27
41
59
95
107
121
26
42
58
94
106
122
25
43
57
93
105
123
24
44
56
92
104
124
23
43
55
91
103
125
22
42
54
90
102
126
21
41
53
89
101
127
20
40
52
88
100
128
19
39
51
87
99
129
18
38
50
86
98
130
17
37
49
85
97
131
8
9
10
11
12
13
14
15
16
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
132
133
134
135
136
137
138
139
140
7
35
61
73
97
139
6
34
62
74
98
138
5
33
63
75
99
137
4
32
64
76
100
136
3
31
65
77
101
135
2
30
66
78
102
134
1
29
67
79
103
133
0
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
120
121
122
123
124
125
126
127
128
129
130
131
132
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
133
123
119
131
143
148
132
122
118
130
142
147
131
121
117
129
141
146
130
120
116
128
140
145
129
119
115
127
139
144
128
118
114
126
138
143
127
117
113
125
137
142
126
116
112
124
136
141
125
115
111
123
135
140
124
114
110
122
134
139
123
113
109
121
133
138
122
110
111
112
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
138
137
136
135
134
133
132
131
130
129
128
127
126
125
137
121
109
103
107
119
138
124
136
120
108
102
106
118
138
123
135
119
107
101
105
117
137
122
134
118
106
100
104
116
136
121
133
117
105
99
103
115
135
120
132
116
104
98
102
114
134
119
131
115
103
97
101
113
133
118
130
114
113
112
111
110
109
108
107
106
105
104
103
102
96
100
112
132
117
118
119
120
121
122
123
124
125
126
127
128
129
101
95
99
111
131
116
100
94
98
110
130
115
99
93
97
109
129
114
98
92
96
108
128
113
97
91
95
107
127
112
96
90
94
106
126
111
95
89
93
105
125
110
94
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
109
93
79
115
108
92
78
114
107
91
77
113
106
88
87
86
85
84
85
86
87
88
89
90
91
92
93
92
91
90
76
112
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
83
89
75
111
106
94
82
88
74
110
107
95
81
87
73
109
108
96
80
86
72
108
109
97
79
85
71
107
110
98
78
84
70
106
111
99
77
83
69
105
112
100
76
82
81
80
79
78
77
76
75
74
73
74
75
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
101
75
72
67
103
117
102
74
71
66
102
118
103
73
70
65
101
119
104
72
69
64
100
120
105
71
68
63
99
121
106
70
67
62
98
122
107
69
66
61
97
123
108
68
65
60
96
124
109
67
64
59
95
123
110
66
63
58
94
122
111
65
62
57
93
121
112
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
56
92
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
118
117
116
115
114
113
63
51
55
91
111
114
62
50
54
90
110
115
61
49
53
89
109
116
60
48
52
88
108
117
59
47
51
87
107
118
58
46
50
86
106
118
57
45
49
85
105
117
56
44
48
84
104
116
55
43
47
83
103
115
54
42
46
82
102
114
53
41
45
81
101
113
52
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
112
51
31
55
69
91
111
50
30
54
70
90
110
49
29
53
71
89
109
48
28
52
72
88
108
47
27
51
73
87
107
46
26
50
74
86
106
45
25
49
75
85
105
44
24
48
76
84
104
43
23
47
77
83
103
42
22
46
78
82
102
41
21
45
79
81
101
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
32
33
34
35
36
37
38
39
40
41
42
43
44
80
79
78
77
76
75
74
73
72
71
70
69
68
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
33
19
31
67
79
93
34
18
30
66
78
94
35
17
29
65
77
95
36
16
28
64
76
96
37
15
27
63
75
97
38
14
26
62
74
98
39
13
25
61
73
99
40
12
24
60
72
100
41
11
23
59
71
101
42
10
22
58
70
102
43
9
21
57
69
103
36
37
38
39
40
41
42
43
44
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
104
105
106
107
108
109
110
111
112
35
7
33
45
69
111
34
6
34
46
70
110
33
5
35
47
71
109
32
4
36
48
72
108
31
3
37
49
73
107
30
2
38
50
74
106
29
1
39
51
75
105
28
0
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
144
145
146
147
148
149
150
151
152
153
154
155
156
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
157
147
143
155
159
167
156
146
142
154
158
166
155
145
141
153
157
165
154
144
140
152
156
164
153
143
139
151
155
163
152
142
138
150
154
162
151
141
137
149
153
161
150
140
136
148
152
160
149
139
135
147
151
159
148
138
134
146
150
158
147
137
133
145
149
157
146
134
135
136
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
147
146
145
144
156
145
133
127
131
143
139
143
155
144
132
126
130
142
138
142
154
143
131
125
129
141
137
141
153
142
130
124
128
140
136
140
152
141
129
123
127
139
135
139
151
140
128
122
126
138
134
138
150
139
127
121
125
137
133
137
149
138
137
136
135
134
133
132
131
130
129
128
127
126
120
124
136
132
136
137
138
139
140
141
142
143
144
145
146
147
148
125
119
123
135
131
135
124
118
122
134
130
134
123
117
121
133
129
133
122
116
120
132
128
132
121
115
119
131
127
131
120
114
118
130
126
130
119
113
117
129
125
129
118
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
128
117
103
115
127
116
102
114
126
115
101
113
125
112
111
110
109
108
109
110
111
112
113
114
115
116
117
116
115
114
100
112
124
125
126
126
125
124
123
122
121
120
119
118
117
116
115
114
113
107
113
99
111
123
118
106
112
98
110
122
118
105
111
97
109
121
117
104
110
96
108
120
116
103
109
95
107
119
115
102
108
94
106
118
114
101
107
93
105
117
113
100
106
105
104
103
102
101
100
99
98
97
98
99
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
111
110
109
108
109
110
111
112
113
114
115
116
112
99
96
91
103
107
111
98
95
90
102
106
110
97
94
89
101
105
109
96
93
88
100
104
108
95
92
87
99
103
107
94
91
86
98
102
106
93
90
85
97
101
105
92
89
84
96
100
104
91
88
83
95
99
103
90
87
82
94
98
102
89
86
81
93
97
101
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
80
92
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
87
75
79
91
87
99
86
74
78
90
86
98
85
73
77
89
85
97
84
72
76
88
84
96
83
71
75
87
83
95
82
70
74
86
82
94
81
69
73
85
81
93
80
68
72
84
80
92
79
67
71
83
79
91
78
66
70
82
78
90
77
65
69
81
77
89
76
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
88
75
55
55
67
67
87
74
54
54
66
66
86
73
53
53
65
65
85
72
52
52
64
64
84
71
51
51
63
63
83
70
50
50
62
62
82
69
49
49
61
61
81
68
48
48
60
60
80
67
47
47
59
59
79
66
46
46
58
58
78
65
45
45
57
57
77
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
32
33
34
35
36
37
38
39
40
41
42
43
44
56
55
54
53
52
51
50
49
48
47
46
45
44
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
57
43
31
43
55
69
58
42
30
42
54
70
59
41
29
41
53
71
60
40
28
40
52
72
61
39
27
39
51
73
62
38
26
38
50
74
63
37
25
37
49
75
64
36
24
36
48
76
65
35
23
35
47
77
66
34
22
34
46
78
67
33
21
33
45
79
76
75
74
73
72
71
70
69
68
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
80
81
82
83
84
85
86
87
88
75
33
7
21
45
87
74
34
6
22
46
86
73
35
5
23
47
85
72
36
4
24
48
84
71
37
3
25
49
83
70
38
2
26
50
82
69
39
1
27
51
81
68
40
0
170
171
172
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
156
155
154
153
152
151
150
149
148
147
146
145
144
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
169
159
155
143
147
155
168
158
154
142
146
154
167
157
153
141
145
153
166
156
152
140
144
152
165
155
151
139
143
151
164
154
150
138
142
150
163
153
149
137
141
149
162
152
148
136
140
148
161
151
147
135
139
147
160
150
146
134
138
146
159
149
145
133
137
145
158
146
147
148
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
135
134
133
132
144
157
145
139
143
131
127
131
143
156
144
138
142
130
126
130
142
155
143
137
141
129
125
129
141
154
142
136
140
128
124
128
140
153
141
135
139
127
123
127
139
152
140
134
138
126
122
126
138
151
139
133
137
125
121
125
137
150
149
148
147
146
145
144
143
142
141
140
139
138
132
136
124
120
124
125
126
127
128
129
130
131
132
133
134
135
136
137
131
135
123
119
123
136
130
134
122
118
122
135
129
133
121
117
121
134
128
132
120
116
120
133
127
131
119
115
119
132
126
130
118
114
118
131
125
129
117
113
117
130
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
116
129
115
103
115
128
114
102
114
127
113
101
113
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
127
126
112
100
112
113
114
115
116
115
114
113
112
111
110
109
108
109
110
111
112
118
125
111
99
111
107
118
124
110
98
110
106
117
123
109
97
109
105
116
122
108
96
108
104
115
121
107
95
107
103
114
120
106
94
106
102
113
119
105
93
105
101
112
118
117
116
115
114
113
112
111
110
109
110
111
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
99
98
97
96
97
98
99
100
101
102
103
104
100
111
108
103
91
95
99
110
107
102
90
94
98
109
106
101
89
93
97
108
105
100
88
92
96
107
104
99
87
91
95
106
103
98
86
90
94
105
102
97
85
89
93
104
101
96
84
88
92
103
100
95
83
87
91
102
99
94
82
86
90
101
98
93
81
85
89
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
92
80
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
99
87
91
79
75
87
98
86
90
78
74
86
97
85
89
77
73
85
96
84
88
76
72
84
95
83
87
75
71
83
94
82
86
74
70
82
93
81
85
73
69
81
92
80
84
72
68
80
91
79
83
71
67
79
90
78
82
70
66
78
89
77
81
69
65
77
88
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
76
87
67
67
55
55
75
86
66
66
54
54
74
85
65
65
53
53
73
84
64
64
52
52
72
83
63
63
51
51
71
82
62
62
50
50
70
81
61
61
49
49
69
80
60
60
48
48
68
79
59
59
47
47
67
78
58
58
46
46
66
77
57
57
45
45
65
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
44
45
46
47
48
49
50
51
52
53
54
55
56
44
43
42
41
40
39
38
37
36
35
34
33
32
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
69
55
43
31
43
57
70
54
42
30
42
58
71
53
41
29
41
59
72
52
40
28
40
60
73
51
39
27
39
61
74
50
38
26
38
62
75
49
37
25
37
63
76
48
36
24
36
64
77
47
35
23
35
65
78
46
34
22
34
66
79
45
33
21
33
67
88
87
86
85
84
83
82
81
80
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
68
69
70
71
72
73
74
75
76
87
45
21
7
33
75
86
46
22
6
34
74
85
47
23
5
35
73
84
48
24
4
36
72
83
49
25
3
37
71
82
50
26
2
38
70
81
51
27
1
39
69
80
52
28
0
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
132
131
130
129
128
127
126
125
124
123
122
121
120
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
148
143
131
119
123
131
147
142
130
118
122
130
146
141
129
117
121
129
145
140
128
116
120
128
144
139
127
115
119
127
143
138
126
114
118
126
142
137
125
113
117
125
141
136
124
112
116
124
140
135
123
111
115
123
139
134
122
110
114
122
138
133
121
109
113
121
137
125
126
127
128
129
130
131
132
133
134
135
136
137
138
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
111
110
109
108
120
136
124
138
119
107
103
107
119
135
123
138
118
106
102
106
118
134
122
137
117
105
101
105
117
133
121
136
116
104
100
104
116
132
120
135
115
103
99
103
115
131
119
134
114
102
98
102
114
130
118
133
113
101
97
101
113
129
128
127
126
125
124
123
122
121
120
119
118
117
132
112
100
96
100
101
102
103
104
105
106
107
108
109
110
111
112
116
131
111
99
95
99
115
130
110
98
94
98
114
129
109
97
93
97
113
128
108
96
92
96
112
127
107
95
91
95
111
126
106
94
90
94
110
125
105
93
89
93
109
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
92
108
115
79
91
107
114
78
90
106
113
77
89
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
112
76
88
89
90
91
92
91
90
89
88
87
86
85
84
85
86
87
88
94
106
111
75
87
83
95
107
110
74
86
82
96
108
109
73
85
81
97
109
108
72
84
80
98
110
107
71
83
79
99
111
106
70
82
78
100
112
105
69
81
77
101
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
75
74
73
72
73
74
75
76
77
78
79
80
76
102
116
103
67
71
75
103
117
102
66
70
74
104
118
101
65
69
73
105
119
100
64
68
72
106
120
99
63
67
71
107
121
98
62
66
70
108
122
97
61
65
69
109
123
96
60
64
68
110
124
95
59
63
67
111
123
94
58
62
66
112
122
93
57
61
65
113
114
115
116
117
118
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
92
56
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
114
111
91
55
51
63
115
110
90
54
50
62
116
109
89
53
49
61
117
108
88
52
48
60
118
107
87
51
47
59
118
106
86
50
46
58
117
105
85
49
45
57
116
104
84
48
44
56
115
103
83
47
43
55
114
102
82
46
42
54
113
101
81
45
41
53
112
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
52
111
91
69
55
31
51
110
90
70
54
30
50
109
89
71
53
29
49
108
88
72
52
28
48
107
87
73
51
27
47
106
86
74
50
26
46
105
85
75
49
25
45
104
84
76
48
24
44
103
83
77
47
23
43
102
82
78
46
22
42
101
81
79
45
21
41
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
68
69
70
71
72
73
74
75
76
77
78
79
80
44
43
42
41
40
39
38
37
36
35
34
33
32
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
93
79
67
31
19
33
94
78
66
30
18
34
95
77
65
29
17
35
96
76
64
28
16
36
97
75
63
27
15
37
98
74
62
26
14
38
99
73
61
25
13
39
100
72
60
24
12
40
101
71
59
23
11
41
102
70
58
22
10
42
103
69
57
21
9
43
112
111
110
109
108
107
106
105
104
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
44
43
42
41
40
39
38
37
36
111
69
45
33
7
35
110
70
46
34
6
34
109
71
47
35
5
33
108
72
48
36
4
32
107
73
49
37
3
31
106
74
50
38
2
30
105
75
51
39
1
29
104
76
52
40
0
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
144
152
151
139
143
135
143
151
150
138
142
134
142
150
149
137
141
133
141
149
148
136
140
132
140
148
147
135
139
131
139
147
146
134
138
130
138
146
145
133
137
129
137
145
144
132
136
128
136
144
143
131
135
127
135
143
142
130
134
126
134
142
141
129
133
125
133
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
146
145
144
143
142
141
140
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
124
132
120
134
139
127
123
111
123
131
119
135
138
126
122
110
122
130
118
136
137
125
121
109
121
129
117
137
136
124
120
108
120
128
116
138
135
123
119
107
119
127
115
139
134
122
118
106
118
126
114
140
133
121
117
105
117
125
124
123
122
121
120
119
118
117
116
115
114
113
141
132
120
116
104
105
106
107
108
109
110
111
112
113
114
115
116
112
142
131
119
115
103
111
143
130
118
114
102
110
144
129
117
113
101
109
145
128
116
112
100
108
146
127
115
111
99
107
146
126
114
110
98
106
145
125
113
109
97
105
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
96
104
135
99
95
103
134
98
94
102
133
97
93
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
132
96
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
90
102
131
95
93
79
91
103
130
94
94
78
92
104
129
93
95
77
93
105
128
92
96
76
94
106
127
91
97
75
95
107
126
90
98
74
96
108
125
89
99
73
97
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
95
94
93
92
93
94
95
96
97
98
99
100
72
98
119
123
87
91
71
99
120
122
86
90
70
100
121
121
85
89
69
101
122
120
84
88
68
102
123
119
83
87
67
103
124
118
82
86
66
104
125
117
81
85
65
105
126
116
80
84
64
106
127
115
79
83
63
107
128
114
78
82
62
108
129
113
77
81
61
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
112
76
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
110
122
111
75
71
59
111
123
110
74
70
58
112
124
109
73
69
57
113
125
108
72
68
56
114
126
107
71
67
55
115
126
106
70
66
54
116
125
105
69
65
53
117
124
104
68
64
52
118
123
103
67
63
51
119
122
102
66
62
50
120
121
101
65
61
49
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
48
122
113
89
77
51
47
123
114
90
78
50
46
124
115
91
79
49
45
125
116
92
80
48
44
126
115
93
79
47
43
127
114
94
78
46
42
128
113
95
77
45
41
129
112
96
76
44
40
130
111
97
75
43
39
130
110
98
74
42
38
129
109
99
73
41
37
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
96
97
98
99
100
101
102
103
104
103
102
101
100
72
71
70
69
68
67
66
65
64
63
62
61
60
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
121
107
95
59
41
27
122
106
94
58
42
26
123
105
93
57
43
25
124
104
92
56
44
24
125
103
91
55
43
23
126
102
90
54
42
22
127
101
89
53
41
21
128
100
88
52
40
20
129
99
87
51
39
19
130
98
86
50
38
18
131
97
85
49
37
17
140
139
138
137
136
135
134
133
132
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
16
15
14
13
12
11
10
9
8
139
97
73
61
35
7
138
98
74
62
34
6
137
99
75
63
33
5
136
100
76
64
32
4
135
101
77
65
31
3
134
102
78
66
30
2
133
103
79
67
29
1
132
104
80
68
28
0
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
148
147
146
145
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
136
144
140
152
153
145
135
143
139
151
152
144
134
142
138
150
151
143
133
141
137
149
150
142
132
140
136
148
149
141
131
139
135
147
148
140
130
138
134
146
147
139
129
137
133
145
146
138
128
136
132
144
145
137
127
135
131
143
144
136
126
134
130
142
143
135
125
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
141
142
143
144
145
146
147
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
134
124
112
124
128
140
135
121
133
123
111
123
127
139
136
120
132
122
110
122
126
138
137
119
131
121
109
121
125
137
138
118
130
120
108
120
124
136
139
117
129
119
107
119
123
135
140
116
128
118
106
118
122
134
141
115
127
117
116
115
114
113
112
111
110
109
108
107
106
105
117
121
133
142
114
115
116
117
118
119
120
121
122
123
124
125
126
104
116
120
132
143
113
103
115
119
131
144
112
102
114
118
130
145
111
101
113
117
129
146
110
100
112
116
128
147
109
99
111
115
127
147
108
98
110
114
126
146
107
97
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
106
96
100
136
105
95
99
135
104
94
98
134
103
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
97
133
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
80
94
96
132
103
91
79
95
95
131
104
92
78
96
94
130
105
93
77
97
93
129
106
94
76
98
92
128
107
95
75
99
91
127
108
96
74
100
90
126
109
97
73
101
102
101
100
99
98
97
96
95
94
95
96
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
98
72
93
88
124
119
99
71
92
87
123
120
100
70
91
86
122
121
101
69
90
85
121
122
102
68
89
84
120
123
103
67
88
83
119
124
104
66
87
82
118
125
105
65
86
81
117
126
106
64
85
80
116
127
107
63
84
79
115
128
108
62
83
78
114
129
109
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
77
113
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
60
72
76
112
123
111
59
71
75
111
124
112
58
70
74
110
125
113
57
69
73
109
126
114
56
68
72
108
127
115
55
67
71
107
127
116
54
66
70
106
126
117
53
65
69
105
125
118
52
64
68
104
124
119
51
63
67
103
123
120
50
62
66
102
122
121
49
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
48
52
78
90
114
123
47
51
79
91
115
124
46
50
80
92
116
125
45
49
79
93
115
126
44
48
78
94
114
127
43
47
77
95
113
128
42
46
76
96
112
129
41
45
75
97
111
130
40
44
74
98
110
130
39
43
73
99
109
129
38
42
72
100
108
128
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
59
60
61
62
63
64
65
66
67
68
69
70
71
101
102
103
104
103
102
101
100
99
98
97
96
95
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
28
42
58
94
106
120
27
43
57
93
105
121
26
44
56
92
104
122
25
43
55
91
103
123
24
42
54
90
102
124
23
41
53
89
101
125
22
40
52
88
100
126
21
39
51
87
99
127
20
38
50
86
98
128
19
37
49
85
97
129
18
36
48
84
96
130
9
10
11
12
13
14
15
16
17
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
131
132
133
134
135
136
137
138
139
8
34
60
72
96
138
7
33
61
73
97
137
6
32
62
74
98
136
5
31
63
75
99
135
4
30
64
76
100
134
3
29
65
77
101
133
2
28
66
78
102
132
1
27
67
79
103
131
0
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
121
122
123
124
125
126
127
128
129
130
131
132
133
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
163
162
161
160
159
158
157
156
155
154
153
152
151
150
134
124
120
132
144
149
133
123
119
131
143
148
132
122
118
130
142
147
131
121
117
129
141
146
130
120
116
128
140
145
129
119
115
127
139
144
128
118
114
126
138
143
127
117
113
125
137
142
126
116
112
124
136
141
125
115
111
123
135
140
124
114
110
122
134
139
123
111
112
113
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
139
138
137
136
135
134
133
132
131
130
129
128
127
126
138
122
110
104
108
120
139
125
137
121
109
103
107
119
139
124
136
120
108
102
106
118
138
123
135
119
107
101
105
117
137
122
134
118
106
100
104
116
136
121
133
117
105
99
103
115
135
120
132
116
104
98
102
114
134
119
131
115
114
113
112
111
110
109
108
107
106
105
104
103
97
101
113
133
118
119
120
121
122
123
124
125
126
127
128
129
130
102
96
100
112
132
117
101
95
99
111
131
116
100
94
98
110
130
115
99
93
97
109
129
114
98
92
96
108
128
113
97
91
95
107
127
112
96
90
94
106
126
111
95
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
110
94
80
116
109
93
79
115
108
92
78
114
107
89
88
87
86
85
86
87
88
89
90
91
92
93
94
93
92
91
77
113
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
84
90
76
112
107
95
83
89
75
111
108
96
82
88
74
110
109
97
81
87
73
109
110
98
80
86
72
108
111
99
79
85
71
107
112
100
78
84
70
106
113
101
77
83
82
81
80
79
78
77
76
75
74
75
76
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
119
118
117
116
115
114
102
76
73
68
104
118
103
75
72
67
103
119
104
74
71
66
102
120
105
73
70
65
101
121
106
72
69
64
100
122
107
71
68
63
99
123
108
70
67
62
98
124
109
69
66
61
97
125
110
68
65
60
96
124
111
67
64
59
95
123
112
66
63
58
94
122
113
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
57
93
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
119
118
117
116
115
114
64
52
56
92
112
115
63
51
55
91
111
116
62
50
54
90
110
117
61
49
53
89
109
118
60
48
52
88
108
119
59
47
51
87
107
119
58
46
50
86
106
118
57
45
49
85
105
117
56
44
48
84
104
116
55
43
47
83
103
115
54
42
46
82
102
114
53
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
113
52
32
56
70
92
112
51
31
55
71
91
111
50
30
54
72
90
110
49
29
53
73
89
109
48
28
52
74
88
108
47
27
51
75
87
107
46
26
50
76
86
106
45
25
49
77
85
105
44
24
48
78
84
104
43
23
47
79
83
103
42
22
46
80
82
102
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
33
34
35
36
37
38
39
40
41
42
43
44
45
81
80
79
78
77
76
75
74
73
72
71
70
69
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
34
20
32
68
80
94
35
19
31
67
79
95
36
18
30
66
78
96
37
17
29
65
77
97
38
16
28
64
76
98
39
15
27
63
75
99
40
14
26
62
74
100
41
13
25
61
73
101
42
12
24
60
72
102
43
11
23
59
71
103
44
10
22
58
70
104
35
36
37
38
39
40
41
42
43
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
105
106
107
108
109
110
111
112
113
34
8
34
46
70
112
33
7
35
47
71
111
32
6
36
48
72
110
31
5
37
49
73
109
30
4
38
50
74
108
29
3
39
51
75
107
28
2
40
52
76
106
27
1
41
53
77
105
26
0
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
145
146
147
148
149
150
151
152
153
154
155
156
157
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
172
171
170
169
158
148
144
156
160
168
157
147
143
155
159
167
156
146
142
154
158
166
155
145
141
153
157
165
154
144
140
152
156
164
153
143
139
151
155
163
152
142
138
150
154
162
151
141
137
149
153
161
150
140
136
148
152
160
149
139
135
147
151
159
148
138
134
146
150
158
147
135
136
137
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
148
147
146
145
157
146
134
128
132
144
140
144
156
145
133
127
131
143
139
143
155
144
132
126
130
142
138
142
154
143
131
125
129
141
137
141
153
142
130
124
128
140
136
140
152
141
129
123
127
139
135
139
151
140
128
122
126
138
134
138
150
139
138
137
136
135
134
133
132
131
130
129
128
127
121
125
137
133
137
138
139
140
141
142
143
144
145
146
147
148
149
126
120
124
136
132
136
125
119
123
135
131
135
124
118
122
134
130
134
123
117
121
133
129
133
122
116
120
132
128
132
121
115
119
131
127
131
120
114
118
130
126
130
119
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
129
118
104
116
128
117
103
115
127
116
102
114
126
113
112
111
110
109
110
111
112
113
114
115
116
117
118
117
116
115
101
113
125
126
127
127
126
125
124
123
122
121
120
119
118
117
116
115
114
108
114
100
112
124
119
107
113
99
111
123
119
106
112
98
110
122
118
105
111
97
109
121
117
104
110
96
108
120
116
103
109
95
107
119
115
102
108
94
106
118
114
101
107
106
105
104
103
102
101
100
99
98
99
100
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
112
111
110
109
110
111
112
113
114
115
116
117
113
100
97
92
104
108
112
99
96
91
103
107
111
98
95
90
102
106
110
97
94
89
101
105
109
96
93
88
100
104
108
95
92
87
99
103
107
94
91
86
98
102
106
93
90
85
97
101
105
92
89
84
96
100
104
91
88
83
95
99
103
90
87
82
94
98
102
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
81
93
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
88
76
80
92
88
100
87
75
79
91
87
99
86
74
78
90
86
98
85
73
77
89
85
97
84
72
76
88
84
96
83
71
75
87
83
95
82
70
74
86
82
94
81
69
73
85
81
93
80
68
72
84
80
92
79
67
71
83
79
91
78
66
70
82
78
90
77
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
89
76
56
56
68
68
88
75
55
55
67
67
87
74
54
54
66
66
86
73
53
53
65
65
85
72
52
52
64
64
84
71
51
51
63
63
83
70
50
50
62
62
82
69
49
49
61
61
81
68
48
48
60
60
80
67
47
47
59
59
79
66
46
46
58
58
78
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
33
34
35
36
37
38
39
40
41
42
43
44
45
57
56
55
54
53
52
51
50
49
48
47
46
45
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
58
44
32
44
56
70
59
43
31
43
55
71
60
42
30
42
54
72
61
41
29
41
53
73
62
40
28
40
52
74
63
39
27
39
51
75
64
38
26
38
50
76
65
37
25
37
49
77
66
36
24
36
48
78
67
35
23
35
47
79
68
34
22
34
46
80
77
76
75
74
73
72
71
70
69
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
81
82
83
84
85
86
87
88
89
76
34
8
22
46
88
75
35
7
23
47
87
74
36
6
24
48
86
73
37
5
25
49
85
72
38
4
26
50
84
71
39
3
27
51
83
70
40
2
28
52
82
69
41
1
29
53
81
68
42
0
171
172
173
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
157
156
155
154
153
152
151
150
149
148
147
146
145
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
170
160
156
144
148
156
169
159
155
143
147
155
168
158
154
142
146
154
167
157
153
141
145
153
166
156
152
140
144
152
165
155
151
139
143
151
164
154
150
138
142
150
163
153
149
137
141
149
162
152
148
136
140
148
161
151
147
135
139
147
160
150
146
134
138
146
159
147
148
149
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
136
135
134
133
145
158
146
140
144
132
128
132
144
157
145
139
143
131
127
131
143
156
144
138
142
130
126
130
142
155
143
137
141
129
125
129
141
154
142
136
140
128
124
128
140
153
141
135
139
127
123
127
139
152
140
134
138
126
122
126
138
151
150
149
148
147
146
145
144
143
142
141
140
139
133
137
125
121
125
126
127
128
129
130
131
132
133
134
135
136
137
138
132
136
124
120
124
137
131
135
123
119
123
136
130
134
122
118
122
135
129
133
121
117
121
134
128
132
120
116
120
133
127
131
119
115
119
132
126
130
118
114
118
131
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
117
130
116
104
116
129
115
103
115
128
114
102
114
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
128
127
113
101
113
114
115
116
117
116
115
114
113
112
111
110
109
110
111
112
113
119
126
112
100
112
108
119
125
111
99
111
107
118
124
110
98
110
106
117
123
109
97
109
105
116
122
108
96
108
104
115
121
107
95
107
103
114
120
106
94
106
102
113
119
118
117
116
115
114
113
112
111
110
111
112
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
100
99
98
97
98
99
100
101
102
103
104
105
101
112
109
104
92
96
100
111
108
103
91
95
99
110
107
102
90
94
98
109
106
101
89
93
97
108
105
100
88
92
96
107
104
99
87
91
95
106
103
98
86
90
94
105
102
97
85
89
93
104
101
96
84
88
92
103
100
95
83
87
91
102
99
94
82
86
90
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
93
81
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
100
88
92
80
76
88
99
87
91
79
75
87
98
86
90
78
74
86
97
85
89
77
73
85
96
84
88
76
72
84
95
83
87
75
71
83
94
82
86
74
70
82
93
81
85
73
69
81
92
80
84
72
68
80
91
79
83
71
67
79
90
78
82
70
66
78
89
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
77
88
68
68
56
56
76
87
67
67
55
55
75
86
66
66
54
54
74
85
65
65
53
53
73
84
64
64
52
52
72
83
63
63
51
51
71
82
62
62
50
50
70
81
61
61
49
49
69
80
60
60
48
48
68
79
59
59
47
47
67
78
58
58
46
46
66
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
45
46
47
48
49
50
51
52
53
54
55
56
57
45
44
43
42
41
40
39
38
37
36
35
34
33
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
70
56
44
32
44
58
71
55
43
31
43
59
72
54
42
30
42
60
73
53
41
29
41
61
74
52
40
28
40
62
75
51
39
27
39
63
76
50
38
26
38
64
77
49
37
25
37
65
78
48
36
24
36
66
79
47
35
23
35
67
80
46
34
22
34
68
89
88
87
86
85
84
83
82
81
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
69
70
71
72
73
74
75
76
77
88
46
22
8
34
76
87
47
23
7
35
75
86
48
24
6
36
74
85
49
25
5
37
73
84
50
26
4
38
72
83
51
27
3
39
71
82
52
28
2
40
70
81
53
29
1
41
69
80
54
30
0
150
151
152
153
154
155
156
157
158
159
160
161
162
163
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
133
132
131
130
129
128
127
126
125
124
123
122
121
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
149
144
132
120
124
132
148
143
131
119
123
131
147
142
130
118
122
130
146
141
129
117
121
129
145
140
128
116
120
128
144
139
127
115
119
127
143
138
126
114
118
126
142
137
125
113
117
125
141
136
124
112
116
124
140
135
123
111
115
123
139
134
122
110
114
122
138
126
127
128
129
130
131
132
133
134
135
136
137
138
139
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
112
111
110
109
121
137
125
139
120
108
104
108
120
136
124
139
119
107
103
107
119
135
123
138
118
106
102
106
118
134
122
137
117
105
101
105
117
133
121
136
116
104
100
104
116
132
120
135
115
103
99
103
115
131
119
134
114
102
98
102
114
130
129
128
127
126
125
124
123
122
121
120
119
118
133
113
101
97
101
102
103
104
105
106
107
108
109
110
111
112
113
117
132
112
100
96
100
116
131
111
99
95
99
115
130
110
98
94
98
114
129
109
97
93
97
113
128
108
96
92
96
112
127
107
95
91
95
111
126
106
94
90
94
110
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
93
109
116
80
92
108
115
79
91
107
114
78
90
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
113
77
89
90
91
92
93
92
91
90
89
88
87
86
85
86
87
88
89
95
107
112
76
88
84
96
108
111
75
87
83
97
109
110
74
86
82
98
110
109
73
85
81
99
111
108
72
84
80
100
112
107
71
83
79
101
113
106
70
82
78
102
114
115
116
117
118
119
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
76
75
74
73
74
75
76
77
78
79
80
81
77
103
117
104
68
72
76
104
118
103
67
71
75
105
119
102
66
70
74
106
120
101
65
69
73
107
121
100
64
68
72
108
122
99
63
67
71
109
123
98
62
66
70
110
124
97
61
65
69
111
125
96
60
64
68
112
124
95
59
63
67
113
123
94
58
62
66
114
115
116
117
118
119
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
93
57
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
115
112
92
56
52
64
116
111
91
55
51
63
117
110
90
54
50
62
118
109
89
53
49
61
119
108
88
52
48
60
119
107
87
51
47
59
118
106
86
50
46
58
117
105
85
49
45
57
116
104
84
48
44
56
115
103
83
47
43
55
114
102
82
46
42
54
113
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
53
112
92
70
56
32
52
111
91
71
55
31
51
110
90
72
54
30
50
109
89
73
53
29
49
108
88
74
52
28
48
107
87
75
51
27
47
106
86
76
50
26
46
105
85
77
49
25
45
104
84
78
48
24
44
103
83
79
47
23
43
102
82
80
46
22
42
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
69
70
71
72
73
74
75
76
77
78
79
80
81
45
44
43
42
41
40
39
38
37
36
35
34
33
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
94
80
68
32
20
34
95
79
67
31
19
35
96
78
66
30
18
36
97
77
65
29
17
37
98
76
64
28
16
38
99
75
63
27
15
39
100
74
62
26
14
40
101
73
61
25
13
41
102
72
60
24
12
42
103
71
59
23
11
43
104
70
58
22
10
44
113
112
111
110
109
108
107
106
105
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
43
42
41
40
39
38
37
36
35
112
70
46
34
8
34
111
71
47
35
7
33
110
72
48
36
6
32
109
73
49
37
5
31
108
74
50
38
4
30
107
75
51
39
3
29
106
76
52
40
2
28
105
77
53
41
1
27
104
78
54
42
0
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
145
146
147
148
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
145
153
152
140
144
136
144
152
151
139
143
135
143
151
150
138
142
134
142
150
149
137
141
133
141
149
148
136
140
132
140
148
147
135
139
131
139
147
146
134
138
130
138
146
145
133
137
129
137
145
144
132
136
128
136
144
143
131
135
127
135
143
142
130
134
126
134
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
147
146
145
144
143
142
141
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
125
133
121
135
140
128
124
112
124
132
120
136
139
127
123
111
123
131
119
137
138
126
122
110
122
130
118
138
137
125
121
109
121
129
117
139
136
124
120
108
120
128
116
140
135
123
119
107
119
127
115
141
134
122
118
106
118
126
125
124
123
122
121
120
119
118
117
116
115
114
142
133
121
117
105
106
107
108
109
110
111
112
113
114
115
116
117
113
143
132
120
116
104
112
144
131
119
115
103
111
145
130
118
114
102
110
146
129
117
113
101
109
147
128
116
112
100
108
147
127
115
111
99
107
146
126
114
110
98
106
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
97
105
136
100
96
104
135
99
95
103
134
98
94
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
133
97
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
91
103
132
96
94
80
92
104
131
95
95
79
93
105
130
94
96
78
94
106
129
93
97
77
95
107
128
92
98
76
96
108
127
91
99
75
97
109
126
90
100
74
98
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
96
95
94
93
94
95
96
97
98
99
100
101
73
99
120
124
88
92
72
100
121
123
87
91
71
101
122
122
86
90
70
102
123
121
85
89
69
103
124
120
84
88
68
104
125
119
83
87
67
105
126
118
82
86
66
106
127
117
81
85
65
107
128
116
80
84
64
108
129
115
79
83
63
109
130
114
78
82
62
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
113
77
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
111
123
112
76
72
60
112
124
111
75
71
59
113
125
110
74
70
58
114
126
109
73
69
57
115
127
108
72
68
56
116
127
107
71
67
55
117
126
106
70
66
54
118
125
105
69
65
53
119
124
104
68
64
52
120
123
103
67
63
51
121
122
102
66
62
50
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
49
123
114
90
78
52
48
124
115
91
79
51
47
125
116
92
80
50
46
126
115
93
79
49
45
127
114
94
78
48
44
128
113
95
77
47
43
129
112
96
76
46
42
130
111
97
75
45
41
130
110
98
74
44
40
129
109
99
73
43
39
128
108
100
72
42
38
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
95
96
97
98
99
100
101
102
103
104
103
102
101
71
70
69
68
67
66
65
64
63
62
61
60
59
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
120
106
94
58
42
28
121
105
93
57
43
27
122
104
92
56
44
26
123
103
91
55
43
25
124
102
90
54
42
24
125
101
89
53
41
23
126
100
88
52
40
22
127
99
87
51
39
21
128
98
86
50
38
20
129
97
85
49
37
19
130
96
84
48
36
18
139
138
137
136
135
134
133
132
131
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
17
16
15
14
13
12
11
10
9
138
96
72
60
34
8
137
97
73
61
33
7
136
98
74
62
32
6
135
99
75
63
31
5
134
100
76
64
30
4
133
101
77
65
29
3
132
102
78
66
28
2
131
103
79
67
27
1
130
104
80
68
26
0
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
149
148
147
146
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
137
145
141
153
154
146
136
144
140
152
153
145
135
143
139
151
152
144
134
142
138
150
151
143
133
141
137
149
150
142
132
140
136
148
149
141
131
139
135
147
148
140
130
138
134
146
147
139
129
137
133
145
146
138
128
136
132
144
145
137
127
135
131
143
144
136
126
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
142
143
144
145
146
147
148
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
135
125
113
125
129
141
136
122
134
124
112
124
128
140
137
121
133
123
111
123
127
139
138
120
132
122
110
122
126
138
139
119
131
121
109
121
125
137
140
118
130
120
108
120
124
136
141
117
129
119
107
119
123
135
142
116
128
118
117
116
115
114
113
112
111
110
109
108
107
106
118
122
134
143
115
116
117
118
119
120
121
122
123
124
125
126
127
105
117
121
133
144
114
104
116
120
132
145
113
103
115
119
131
146
112
102
114
118
130
147
111
101
113
117
129
148
110
100
112
116
128
148
109
99
111
115
127
147
108
98
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
107
97
101
137
106
96
100
136
105
95
99
135
104
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
98
134
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
81
95
97
133
104
92
80
96
96
132
105
93
79
97
95
131
106
94
78
98
94
130
107
95
77
99
93
129
108
96
76
100
92
128
109
97
75
101
91
127
110
98
74
102
103
102
101
100
99
98
97
96
95
96
97
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
99
73
94
89
125
120
100
72
93
88
124
121
101
71
92
87
123
122
102
70
91
86
122
123
103
69
90
85
121
124
104
68
89
84
120
125
105
67
88
83
119
126
106
66
87
82
118
127
107
65
86
81
117
128
108
64
85
80
116
129
109
63
84
79
115
130
110
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
78
114
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
61
73
77
113
124
112
60
72
76
112
125
113
59
71
75
111
126
114
58
70
74
110
127
115
57
69
73
109
128
116
56
68
72
108
128
117
55
67
71
107
127
118
54
66
70
106
126
119
53
65
69
105
125
120
52
64
68
104
124
121
51
63
67
103
123
122
50
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
49
53
79
91
115
124
48
52
80
92
116
125
47
51
79
93
115
126
46
50
78
94
114
127
45
49
77
95
113
128
44
48
76
96
112
129
43
47
75
97
111
130
42
46
74
98
110
130
41
45
73
99
109
129
40
44
72
100
108
128
39
43
71
101
107
127
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
58
59
60
61
62
63
64
65
66
67
68
69
70
102
103
104
103
102
101
100
99
98
97
96
95
94
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
29
43
57
93
105
119
28
44
56
92
104
120
27
43
55
91
103
121
26
42
54
90
102
122
25
41
53
89
101
123
24
40
52
88
100
124
23
39
51
87
99
125
22
38
50
86
98
126
21
37
49
85
97
127
20
36
48
84
96
128
19
35
47
83
95
129
10
11
12
13
14
15
16
17
18
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
130
131
132
133
134
135
136
137
138
9
33
59
71
95
137
8
32
60
72
96
136
7
31
61
73
97
135
6
30
62
74
98
134
5
29
63
75
99
133
4
28
64
76
100
132
3
27
65
77
101
131
2
26
66
78
102
130
1
25
67
79
103
129
0
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
122
123
124
125
126
127
128
129
130
131
132
133
134
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
164
163
162
161
160
159
158
157
156
155
154
153
152
151
135
125
121
133
145
150
134
124
120
132
144
149
133
123
119
131
143
148
132
122
118
130
142
147
131
121
117
129
141
146
130
120
116
128
140
145
129
119
115
127
139
144
128
118
114
126
138
143
127
117
113
125
137
142
126
116
112
124
136
141
125
115
111
123
135
140
124
112
113
114
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
140
139
138
137
136
135
134
133
132
131
130
129
128
127
139
123
111
105
109
121
140
126
138
122
110
104
108
120
140
125
137
121
109
103
107
119
139
124
136
120
108
102
106
118
138
123
135
119
107
101
105
117
137
122
134
118
106
100
104
116
136
121
133
117
105
99
103
115
135
120
132
116
115
114
113
112
111
110
109
108
107
106
105
104
98
102
114
134
119
120
121
122
123
124
125
126
127
128
129
130
131
103
97
101
113
133
118
102
96
100
112
132
117
101
95
99
111
131
116
100
94
98
110
130
115
99
93
97
109
129
114
98
92
96
108
128
113
97
91
95
107
127
112
96
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
111
95
81
117
110
94
80
116
109
93
79
115
108
90
89
88
87
86
87
88
89
90
91
92
93
94
95
94
93
92
78
114
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
85
91
77
113
108
96
84
90
76
112
109
97
83
89
75
111
110
98
82
88
74
110
111
99
81
87
73
109
112
100
80
86
72
108
113
101
79
85
71
107
114
102
78
84
83
82
81
80
79
78
77
76
75
76
77
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
120
119
118
117
116
115
103
77
74
69
105
119
104
76
73
68
104
120
105
75
72
67
103
121
106
74
71
66
102
122
107
73
70
65
101
123
108
72
69
64
100
124
109
71
68
63
99
125
110
70
67
62
98
126
111
69
66
61
97
125
112
68
65
60
96
124
113
67
64
59
95
123
114
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
58
94
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
120
119
118
117
116
115
65
53
57
93
113
116
64
52
56
92
112
117
63
51
55
91
111
118
62
50
54
90
110
119
61
49
53
89
109
120
60
48
52
88
108
120
59
47
51
87
107
119
58
46
50
86
106
118
57
45
49
85
105
117
56
44
48
84
104
116
55
43
47
83
103
115
54
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
114
53
33
57
71
93
113
52
32
56
72
92
112
51
31
55
73
91
111
50
30
54
74
90
110
49
29
53
75
89
109
48
28
52
76
88
108
47
27
51
77
87
107
46
26
50
78
86
106
45
25
49
79
85
105
44
24
48
80
84
104
43
23
47
81
83
103
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
34
35
36
37
38
39
40
41
42
43
44
45
46
82
81
80
79
78
77
76
75
74
73
72
71
70
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
35
21
33
69
81
95
36
20
32
68
80
96
37
19
31
67
79
97
38
18
30
66
78
98
39
17
29
65
77
99
40
16
28
64
76
100
41
15
27
63
75
101
42
14
26
62
74
102
43
13
25
61
73
103
44
12
24
60
72
104
43
11
23
59
71
105
34
35
36
37
38
39
40
41
42
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
106
107
108
109
110
111
112
113
114
33
9
35
47
71
113
32
8
36
48
72
112
31
7
37
49
73
111
30
6
38
50
74
110
29
5
39
51
75
109
28
4
40
52
76
108
27
3
41
53
77
107
26
2
42
54
78
106
25
1
43
55
79
105
24
0
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
146
147
148
149
150
151
152
153
154
155
156
157
158
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
173
172
171
170
159
149
145
157
161
169
158
148
144
156
160
168
157
147
143
155
159
167
156
146
142
154
158
166
155
145
141
153
157
165
154
144
140
152
156
164
153
143
139
151
155
163
152
142
138
150
154
162
151
141
137
149
153
161
150
140
136
148
152
160
149
139
135
147
151
159
148
136
137
138
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
149
148
147
146
158
147
135
129
133
145
141
145
157
146
134
128
132
144
140
144
156
145
133
127
131
143
139
143
155
144
132
126
130
142
138
142
154
143
131
125
129
141
137
141
153
142
130
124
128
140
136
140
152
141
129
123
127
139
135
139
151
140
139
138
137
136
135
134
133
132
131
130
129
128
122
126
138
134
138
139
140
141
142
143
144
145
146
147
148
149
150
127
121
125
137
133
137
126
120
124
136
132
136
125
119
123
135
131
135
124
118
122
134
130
134
123
117
121
133
129
133
122
116
120
132
128
132
121
115
119
131
127
131
120
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
130
119
105
117
129
118
104
116
128
117
103
115
127
114
113
112
111
110
111
112
113
114
115
116
117
118
119
118
117
116
102
114
126
127
128
128
127
126
125
124
123
122
121
120
119
118
117
116
115
109
115
101
113
125
120
108
114
100
112
124
120
107
113
99
111
123
119
106
112
98
110
122
118
105
111
97
109
121
117
104
110
96
108
120
116
103
109
95
107
119
115
102
108
107
106
105
104
103
102
101
100
99
100
101
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
113
112
111
110
111
112
113
114
115
116
117
118
114
101
98
93
105
109
113
100
97
92
104
108
112
99
96
91
103
107
111
98
95
90
102
106
110
97
94
89
101
105
109
96
93
88
100
104
108
95
92
87
99
103
107
94
91
86
98
102
106
93
90
85
97
101
105
92
89
84
96
100
104
91
88
83
95
99
103
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
82
94
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
89
77
81
93
89
101
88
76
80
92
88
100
87
75
79
91
87
99
86
74
78
90
86
98
85
73
77
89
85
97
84
72
76
88
84
96
83
71
75
87
83
95
82
70
74
86
82
94
81
69
73
85
81
93
80
68
72
84
80
92
79
67
71
83
79
91
78
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
90
77
57
57
69
69
89
76
56
56
68
68
88
75
55
55
67
67
87
74
54
54
66
66
86
73
53
53
65
65
85
72
52
52
64
64
84
71
51
51
63
63
83
70
50
50
62
62
82
69
49
49
61
61
81
68
48
48
60
60
80
67
47
47
59
59
79
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
34
35
36
37
38
39
40
41
42
43
44
45
46
58
57
56
55
54
53
52
51
50
49
48
47
46
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
59
45
33
45
57
71
60
44
32
44
56
72
61
43
31
43
55
73
62
42
30
42
54
74
63
41
29
41
53
75
64
40
28
40
52
76
65
39
27
39
51
77
66
38
26
38
50
78
67
37
25
37
49
79
68
36
24
36
48
80
69
35
23
35
47
81
78
77
76
75
74
73
72
71
70
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
82
83
84
85
86
87
88
89
90
77
35
9
23
47
89
76
36
8
24
48
88
75
37
7
25
49
87
74
38
6
26
50
86
73
39
5
27
51
85
72
40
4
28
52
84
71
41
3
29
53
83
70
42
2
30
54
82
69
43
1
31
55
81
68
44
0
172
173
174
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
158
157
156
155
154
153
152
151
150
149
148
147
146
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
171
161
157
145
149
157
170
160
156
144
148
156
169
159
155
143
147
155
168
158
154
142
146
154
167
157
153
141
145
153
166
156
152
140
144
152
165
155
151
139
143
151
164
154
150
138
142
150
163
153
149
137
141
149
162
152
148
136
140
148
161
151
147
135
139
147
160
148
149
150
151
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
137
136
135
134
146
159
147
141
145
133
129
133
145
158
146
140
144
132
128
132
144
157
145
139
143
131
127
131
143
156
144
138
142
130
126
130
142
155
143
137
141
129
125
129
141
154
142
136
140
128
124
128
140
153
141
135
139
127
123
127
139
152
151
150
149
148
147
146
145
144
143
142
141
140
134
138
126
122
126
127
128
129
130
131
132
133
134
135
136
137
138
139
133
137
125
121
125
138
132
136
124
120
124
137
131
135
123
119
123
136
130
134
122
118
122
135
129
133
121
117
121
134
128
132
120
116
120
133
127
131
119
115
119
132
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
118
131
117
105
117
130
116
104
116
129
115
103
115
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
129
128
114
102
114
115
116
117
118
117
116
115
114
113
112
111
110
111
112
113
114
120
127
113
101
113
109
120
126
112
100
112
108
119
125
111
99
111
107
118
124
110
98
110
106
117
123
109
97
109
105
116
122
108
96
108
104
115
121
107
95
107
103
114
120
119
118
117
116
115
114
113
112
111
112
113
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
101
100
99
98
99
100
101
102
103
104
105
106
102
113
110
105
93
97
101
112
109
104
92
96
100
111
108
103
91
95
99
110
107
102
90
94
98
109
106
101
89
93
97
108
105
100
88
92
96
107
104
99
87
91
95
106
103
98
86
90
94
105
102
97
85
89
93
104
101
96
84
88
92
103
100
95
83
87
91
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
94
82
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
101
89
93
81
77
89
100
88
92
80
76
88
99
87
91
79
75
87
98
86
90
78
74
86
97
85
89
77
73
85
96
84
88
76
72
84
95
83
87
75
71
83
94
82
86
74
70
82
93
81
85
73
69
81
92
80
84
72
68
80
91
79
83
71
67
79
90
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
78
89
69
69
57
57
77
88
68
68
56
56
76
87
67
67
55
55
75
86
66
66
54
54
74
85
65
65
53
53
73
84
64
64
52
52
72
83
63
63
51
51
71
82
62
62
50
50
70
81
61
61
49
49
69
80
60
60
48
48
68
79
59
59
47
47
67
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
46
47
48
49
50
51
52
53
54
55
56
57
58
46
45
44
43
42
41
40
39
38
37
36
35
34
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
71
57
45
33
45
59
72
56
44
32
44
60
73
55
43
31
43
61
74
54
42
30
42
62
75
53
41
29
41
63
76
52
40
28
40
64
77
51
39
27
39
65
78
50
38
26
38
66
79
49
37
25
37
67
80
48
36
24
36
68
81
47
35
23
35
69
90
89
88
87
86
85
84
83
82
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
70
71
72
73
74
75
76
77
78
89
47
23
9
35
77
88
48
24
8
36
76
87
49
25
7
37
75
86
50
26
6
38
74
85
51
27
5
39
73
84
52
28
4
40
72
83
53
29
3
41
71
82
54
30
2
42
70
81
55
31
1
43
69
80
56
32
0
151
152
153
154
155
156
157
158
159
160
161
162
163
164
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
134
133
132
131
130
129
128
127
126
125
124
123
122
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
150
145
133
121
125
133
149
144
132
120
124
132
148
143
131
119
123
131
147
142
130
118
122
130
146
141
129
117
121
129
145
140
128
116
120
128
144
139
127
115
119
127
143
138
126
114
118
126
142
137
125
113
117
125
141
136
124
112
116
124
140
135
123
111
115
123
139
127
128
129
130
131
132
133
134
135
136
137
138
139
140
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
113
112
111
110
122
138
126
140
121
109
105
109
121
137
125
140
120
108
104
108
120
136
124
139
119
107
103
107
119
135
123
138
118
106
102
106
118
134
122
137
117
105
101
105
117
133
121
136
116
104
100
104
116
132
120
135
115
103
99
103
115
131
130
129
128
127
126
125
124
123
122
121
120
119
134
114
102
98
102
103
104
105
106
107
108
109
110
111
112
113
114
118
133
113
101
97
101
117
132
112
100
96
100
116
131
111
99
95
99
115
130
110
98
94
98
114
129
109
97
93
97
113
128
108
96
92
96
112
127
107
95
91
95
111
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
94
110
117
81
93
109
116
80
92
108
115
79
91
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
114
78
90
91
92
93
94
93
92
91
90
89
88
87
86
87
88
89
90
96
108
113
77
89
85
97
109
112
76
88
84
98
110
111
75
87
83
99
111
110
74
86
82
100
112
109
73
85
81
101
113
108
72
84
80
102
114
107
71
83
79
103
115
116
117
118
119
120
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
77
76
75
74
75
76
77
78
79
80
81
82
78
104
118
105
69
73
77
105
119
104
68
72
76
106
120
103
67
71
75
107
121
102
66
70
74
108
122
101
65
69
73
109
123
100
64
68
72
110
124
99
63
67
71
111
125
98
62
66
70
112
126
97
61
65
69
113
125
96
60
64
68
114
124
95
59
63
67
115
116
117
118
119
120
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
94
58
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
116
113
93
57
53
65
117
112
92
56
52
64
118
111
91
55
51
63
119
110
90
54
50
62
120
109
89
53
49
61
120
108
88
52
48
60
119
107
87
51
47
59
118
106
86
50
46
58
117
105
85
49
45
57
116
104
84
48
44
56
115
103
83
47
43
55
114
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
54
113
93
71
57
33
53
112
92
72
56
32
52
111
91
73
55
31
51
110
90
74
54
30
50
109
89
75
53
29
49
108
88
76
52
28
48
107
87
77
51
27
47
106
86
78
50
26
46
105
85
79
49
25
45
104
84
80
48
24
44
103
83
81
47
23
43
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
70
71
72
73
74
75
76
77
78
79
80
81
82
46
45
44
43
42
41
40
39
38
37
36
35
34
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
95
81
69
33
21
35
96
80
68
32
20
36
97
79
67
31
19
37
98
78
66
30
18
38
99
77
65
29
17
39
100
76
64
28
16
40
101
75
63
27
15
41
102
74
62
26
14
42
103
73
61
25
13
43
104
72
60
24
12
44
105
71
59
23
11
43
114
113
112
111
110
109
108
107
106
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
42
41
40
39
38
37
36
35
34
113
71
47
35
9
33
112
72
48
36
8
32
111
73
49
37
7
31
110
74
50
38
6
30
109
75
51
39
5
29
108
76
52
40
4
28
107
77
53
41
3
27
106
78
54
42
2
26
105
79
55
43
1
25
104
80
56
44
0
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
146
147
148
149
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
146
154
153
141
145
137
145
153
152
140
144
136
144
152
151
139
143
135
143
151
150
138
142
134
142
150
149
137
141
133
141
149
148
136
140
132
140
148
147
135
139
131
139
147
146
134
138
130
138
146
145
133
137
129
137
145
144
132
136
128
136
144
143
131
135
127
135
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
148
147
146
145
144
143
142
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
126
134
122
136
141
129
125
113
125
133
121
137
140
128
124
112
124
132
120
138
139
127
123
111
123
131
119
139
138
126
122
110
122
130
118
140
137
125
121
109
121
129
117
141
136
124
120
108
120
128
116
142
135
123
119
107
119
127
126
125
124
123
122
121
120
119
118
117
116
115
143
134
122
118
106
107
108
109
110
111
112
113
114
115
116
117
118
114
144
133
121
117
105
113
145
132
120
116
104
112
146
131
119
115
103
111
147
130
118
114
102
110
148
129
117
113
101
109
148
128
116
112
100
108
147
127
115
111
99
107
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
98
106
137
101
97
105
136
100
96
104
135
99
95
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
134
98
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
92
104
133
97
95
81
93
105
132
96
96
80
94
106
131
95
97
79
95
107
130
94
98
78
96
108
129
93
99
77
97
109
128
92
100
76
98
110
127
91
101
75
99
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
97
96
95
94
95
96
97
98
99
100
101
102
74
100
121
125
89
93
73
101
122
124
88
92
72
102
123
123
87
91
71
103
124
122
86
90
70
104
125
121
85
89
69
105
126
120
84
88
68
106
127
119
83
87
67
107
128
118
82
86
66
108
129
117
81
85
65
109
130
116
80
84
64
110
131
115
79
83
63
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
114
78
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
112
124
113
77
73
61
113
125
112
76
72
60
114
126
111
75
71
59
115
127
110
74
70
58
116
128
109
73
69
57
117
128
108
72
68
56
118
127
107
71
67
55
119
126
106
70
66
54
120
125
105
69
65
53
121
124
104
68
64
52
122
123
103
67
63
51
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
50
124
115
91
79
53
49
125
116
92
80
52
48
126
115
93
79
51
47
127
114
94
78
50
46
128
113
95
77
49
45
129
112
96
76
48
44
130
111
97
75
47
43
130
110
98
74
46
42
129
109
99
73
45
41
128
108
100
72
44
40
127
107
101
71
43
39
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
94
95
96
97
98
99
100
101
102
103
104
103
102
70
69
68
67
66
65
64
63
62
61
60
59
58
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
119
105
93
57
43
29
120
104
92
56
44
28
121
103
91
55
43
27
122
102
90
54
42
26
123
101
89
53
41
25
124
100
88
52
40
24
125
99
87
51
39
23
126
98
86
50
38
22
127
97
85
49
37
21
128
96
84
48
36
20
129
95
83
47
35
19
138
137
136
135
134
133
132
131
130
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
18
17
16
15
14
13
12
11
10
137
95
71
59
33
9
136
96
72
60
32
8
135
97
73
61
31
7
134
98
74
62
30
6
133
99
75
63
29
5
132
100
76
64
28
4
131
101
77
65
27
3
130
102
78
66
26
2
129
103
79
67
25
1
128
104
80
68
24
0
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
150
149
148
147
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
138
146
142
154
155
147
137
145
141
153
154
146
136
144
140
152
153
145
135
143
139
151
152
144
134
142
138
150
151
143
133
141
137
149
150
142
132
140
136
148
149
141
131
139
135
147
148
140
130
138
134
146
147
139
129
137
133
145
146
138
128
136
132
144
145
137
127
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
136
126
114
126
130
142
137
123
135
125
113
125
129
141
138
122
134
124
112
124
128
140
139
121
133
123
111
123
127
139
140
120
132
122
110
122
126
138
141
119
131
121
109
121
125
137
142
118
130
120
108
120
124
136
143
117
129
119
118
117
116
115
114
113
112
111
110
109
108
107
119
123
135
144
116
117
118
119
120
121
122
123
124
125
126
127
128
106
118
122
134
145
115
105
117
121
133
146
114
104
116
120
132
147
113
103
115
119
131
148
112
102
114
118
130
149
111
101
113
117
129
149
110
100
112
116
128
148
109
99
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
108
98
102
138
107
97
101
137
106
96
100
136
105
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
99
135
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
82
96
98
134
105
93
81
97
97
133
106
94
80
98
96
132
107
95
79
99
95
131
108
96
78
100
94
130
109
97
77
101
93
129
110
98
76
102
92
128
111
99
75
103
104
103
102
101
100
99
98
97
96
97
98
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
100
74
95
90
126
121
101
73
94
89
125
122
102
72
93
88
124
123
103
71
92
87
123
124
104
70
91
86
122
125
105
69
90
85
121
126
106
68
89
84
120
127
107
67
88
83
119
128
108
66
87
82
118
129
109
65
86
81
117
130
110
64
85
80
116
131
111
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
79
115
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
62
74
78
114
125
113
61
73
77
113
126
114
60
72
76
112
127
115
59
71
75
111
128
116
58
70
74
110
129
117
57
69
73
109
129
118
56
68
72
108
128
119
55
67
71
107
127
120
54
66
70
106
126
121
53
65
69
105
125
122
52
64
68
104
124
123
51
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
50
54
80
92
116
125
49
53
79
93
115
126
48
52
78
94
114
127
47
51
77
95
113
128
46
50
76
96
112
129
45
49
75
97
111
130
44
48
74
98
110
130
43
47
73
99
109
129
42
46
72
100
108
128
41
45
71
101
107
127
40
44
70
102
106
126
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
57
58
59
60
61
62
63
64
65
66
67
68
69
103
104
103
102
101
100
99
98
97
96
95
94
93
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
30
44
56
92
104
118
29
43
55
91
103
119
28
42
54
90
102
120
27
41
53
89
101
121
26
40
52
88
100
122
25
39
51
87
99
123
24
38
50
86
98
124
23
37
49
85
97
125
22
36
48
84
96
126
21
35
47
83
95
127
20
34
46
82
94
128
11
12
13
14
15
16
17
18
19
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
129
130
131
132
133
134
135
136
137
10
32
58
70
94
136
9
31
59
71
95
135
8
30
60
72
96
134
7
29
61
73
97
133
6
28
62
74
98
132
5
27
63
75
99
131
4
26
64
76
100
130
3
25
65
77
101
129
2
24
66
78
102
128
1
23
67
79
103
127
0
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
123
124
125
126
127
128
129
130
131
132
133
134
135
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
165
164
163
162
161
160
159
158
157
156
155
154
153
152
136
126
122
134
146
151
135
125
121
133
145
150
134
124
120
132
144
149
133
123
119
131
143
148
132
122
118
130
142
147
131
121
117
129
141
146
130
120
116
128
140
145
129
119
115
127
139
144
128
118
114
126
138
143
127
117
113
125
137
142
126
116
112
124
136
141
125
113
114
115
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
141
140
139
138
137
136
135
134
133
132
131
130
129
128
140
124
112
106
110
122
141
127
139
123
111
105
109
121
141
126
138
122
110
104
108
120
140
125
137
121
109
103
107
119
139
124
136
120
108
102
106
118
138
123
135
119
107
101
105
117
137
122
134
118
106
100
104
116
136
121
133
117
116
115
114
113
112
111
110
109
108
107
106
105
99
103
115
135
120
121
122
123
124
125
126
127
128
129
130
131
132
104
98
102
114
134
119
103
97
101
113
133
118
102
96
100
112
132
117
101
95
99
111
131
116
100
94
98
110
130
115
99
93
97
109
129
114
98
92
96
108
128
113
97
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
112
96
82
118
111
95
81
117
110
94
80
116
109
91
90
89
88
87
88
89
90
91
92
93
94
95
96
95
94
93
79
115
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
86
92
78
114
109
97
85
91
77
113
110
98
84
90
76
112
111
99
83
89
75
111
112
100
82
88
74
110
113
101
81
87
73
109
114
102
80
86
72
108
115
103
79
85
84
83
82
81
80
79
78
77
76
77
78
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
121
120
119
118
117
116
104
78
75
70
106
120
105
77
74
69
105
121
106
76
73
68
104
122
107
75
72
67
103
123
108
74
71
66
102
124
109
73
70
65
101
125
110
72
69
64
100
126
111
71
68
63
99
127
112
70
67
62
98
126
113
69
66
61
97
125
114
68
65
60
96
124
115
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
59
95
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
121
120
119
118
117
116
66
54
58
94
114
117
65
53
57
93
113
118
64
52
56
92
112
119
63
51
55
91
111
120
62
50
54
90
110
121
61
49
53
89
109
121
60
48
52
88
108
120
59
47
51
87
107
119
58
46
50
86
106
118
57
45
49
85
105
117
56
44
48
84
104
116
55
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
115
54
34
58
72
94
114
53
33
57
73
93
113
52
32
56
74
92
112
51
31
55
75
91
111
50
30
54
76
90
110
49
29
53
77
89
109
48
28
52
78
88
108
47
27
51
79
87
107
46
26
50
80
86
106
45
25
49
81
85
105
44
24
48
82
84
104
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
35
36
37
38
39
40
41
42
43
44
45
46
47
83
82
81
80
79
78
77
76
75
74
73
72
71
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
36
22
34
70
82
96
37
21
33
69
81
97
38
20
32
68
80
98
39
19
31
67
79
99
40
18
30
66
78
100
41
17
29
65
77
101
42
16
28
64
76
102
43
15
27
63
75
103
44
14
26
62
74
104
43
13
25
61
73
105
42
12
24
60
72
106
33
34
35
36
37
38
39
40
41
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
107
108
109
110
111
112
113
114
115
32
10
36
48
72
114
31
9
37
49
73
113
30
8
38
50
74
112
29
7
39
51
75
111
28
6
40
52
76
110
27
5
41
53
77
109
26
4
42
54
78
108
25
3
43
55
79
107
24
2
44
56
80
106
23
1
45
57
81
105
22
0
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
147
148
149
150
151
152
153
154
155
156
157
158
159
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
174
173
172
171
160
150
146
158
162
170
159
149
145
157
161
169
158
148
144
156
160
168
157
147
143
155
159
167
156
146
142
154
158
166
155
145
141
153
157
165
154
144
140
152
156
164
153
143
139
151
155
163
152
142
138
150
154
162
151
141
137
149
153
161
150
140
136
148
152
160
149
137
138
139
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
150
149
148
147
159
148
136
130
134
146
142
146
158
147
135
129
133
145
141
145
157
146
134
128
132
144
140
144
156
145
133
127
131
143
139
143
155
144
132
126
130
142
138
142
154
143
131
125
129
141
137
141
153
142
130
124
128
140
136
140
152
141
140
139
138
137
136
135
134
133
132
131
130
129
123
127
139
135
139
140
141
142
143
144
145
146
147
148
149
150
151
128
122
126
138
134
138
127
121
125
137
133
137
126
120
124
136
132
136
125
119
123
135
131
135
124
118
122
134
130
134
123
117
121
133
129
133
122
116
120
132
128
132
121
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
131
120
106
118
130
119
105
117
129
118
104
116
128
115
114
113
112
111
112
113
114
115
116
117
118
119
120
119
118
117
103
115
127
128
129
129
128
127
126
125
124
123
122
121
120
119
118
117
116
110
116
102
114
126
121
109
115
101
113
125
121
108
114
100
112
124
120
107
113
99
111
123
119
106
112
98
110
122
118
105
111
97
109
121
117
104
110
96
108
120
116
103
109
108
107
106
105
104
103
102
101
100
101
102
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
114
113
112
111
112
113
114
115
116
117
118
119
115
102
99
94
106
110
114
101
98
93
105
109
113
100
97
92
104
108
112
99
96
91
103
107
111
98
95
90
102
106
110
97
94
89
101
105
109
96
93
88
100
104
108
95
92
87
99
103
107
94
91
86
98
102
106
93
90
85
97
101
105
92
89
84
96
100
104
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
83
95
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
90
78
82
94
90
102
89
77
81
93
89
101
88
76
80
92
88
100
87
75
79
91
87
99
86
74
78
90
86
98
85
73
77
89
85
97
84
72
76
88
84
96
83
71
75
87
83
95
82
70
74
86
82
94
81
69
73
85
81
93
80
68
72
84
80
92
79
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
91
78
58
58
70
70
90
77
57
57
69
69
89
76
56
56
68
68
88
75
55
55
67
67
87
74
54
54
66
66
86
73
53
53
65
65
85
72
52
52
64
64
84
71
51
51
63
63
83
70
50
50
62
62
82
69
49
49
61
61
81
68
48
48
60
60
80
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
35
36
37
38
39
40
41
42
43
44
45
46
47
59
58
57
56
55
54
53
52
51
50
49
48
47
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
60
46
34
46
58
72
61
45
33
45
57
73
62
44
32
44
56
74
63
43
31
43
55
75
64
42
30
42
54
76
65
41
29
41
53
77
66
40
28
40
52
78
67
39
27
39
51
79
68
38
26
38
50
80
69
37
25
37
49
81
70
36
24
36
48
82
79
78
77
76
75
74
73
72
71
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
83
84
85
86
87
88
89
90
91
78
36
10
24
48
90
77
37
9
25
49
89
76
38
8
26
50
88
75
39
7
27
51
87
74
40
6
28
52
86
73
41
5
29
53
85
72
42
4
30
54
84
71
43
3
31
55
83
70
44
2
32
56
82
69
45
1
33
57
81
68
46
0
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
159
158
157
156
155
154
153
152
151
150
149
148
147
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
172
162
158
146
150
158
171
161
157
145
149
157
170
160
156
144
148
156
169
159
155
143
147
155
168
158
154
142
146
154
167
157
153
141
145
153
166
156
152
140
144
152
165
155
151
139
143
151
164
154
150
138
142
150
163
153
149
137
141
149
162
152
148
136
140
148
161
149
150
151
152
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
138
137
136
135
147
160
148
142
146
134
130
134
146
159
147
141
145
133
129
133
145
158
146
140
144
132
128
132
144
157
145
139
143
131
127
131
143
156
144
138
142
130
126
130
142
155
143
137
141
129
125
129
141
154
142
136
140
128
124
128
140
153
152
151
150
149
148
147
146
145
144
143
142
141
135
139
127
123
127
128
129
130
131
132
133
134
135
136
137
138
139
140
134
138
126
122
126
139
133
137
125
121
125
138
132
136
124
120
124
137
131
135
123
119
123
136
130
134
122
118
122
135
129
133
121
117
121
134
128
132
120
116
120
133
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
119
132
118
106
118
131
117
105
117
130
116
104
116
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
115
103
115
116
117
118
119
118
117
116
115
114
113
112
111
112
113
114
115
121
128
114
102
114
110
121
127
113
101
113
109
120
126
112
100
112
108
119
125
111
99
111
107
118
124
110
98
110
106
117
123
109
97
109
105
116
122
108
96
108
104
115
121
120
119
118
117
116
115
114
113
112
113
114
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
102
101
100
99
100
101
102
103
104
105
106
107
103
114
111
106
94
98
102
113
110
105
93
97
101
112
109
104
92
96
100
111
108
103
91
95
99
110
107
102
90
94
98
109
106
101
89
93
97
108
105
100
88
92
96
107
104
99
87
91
95
106
103
98
86
90
94
105
102
97
85
89
93
104
101
96
84
88
92
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
95
83
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
102
90
94
82
78
90
101
89
93
81
77
89
100
88
92
80
76
88
99
87
91
79
75
87
98
86
90
78
74
86
97
85
89
77
73
85
96
84
88
76
72
84
95
83
87
75
71
83
94
82
86
74
70
82
93
81
85
73
69
81
92
80
84
72
68
80
91
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
79
90
70
70
58
58
78
89
69
69
57
57
77
88
68
68
56
56
76
87
67
67
55
55
75
86
66
66
54
54
74
85
65
65
53
53
73
84
64
64
52
52
72
83
63
63
51
51
71
82
62
62
50
50
70
81
61
61
49
49
69
80
60
60
48
48
68
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
47
48
49
50
51
52
53
54
55
56
57
58
59
47
46
45
44
43
42
41
40
39
38
37
36
35
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
72
58
46
34
46
60
73
57
45
33
45
61
74
56
44
32
44
62
75
55
43
31
43
63
76
54
42
30
42
64
77
53
41
29
41
65
78
52
40
28
40
66
79
51
39
27
39
67
80
50
38
26
38
68
81
49
37
25
37
69
82
48
36
24
36
70
91
90
89
88
87
86
85
84
83
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
71
72
73
74
75
76
77
78
79
90
48
24
10
36
78
89
49
25
9
37
77
88
50
26
8
38
76
87
51
27
7
39
75
86
52
28
6
40
74
85
53
29
5
41
73
84
54
30
4
42
72
83
55
31
3
43
71
82
56
32
2
44
70
81
57
33
1
45
69
80
58
34
0
152
153
154
155
156
157
158
159
160
161
162
163
164
165
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
135
134
133
132
131
130
129
128
127
126
125
124
123
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
151
146
134
122
126
134
150
145
133
121
125
133
149
144
132
120
124
132
148
143
131
119
123
131
147
142
130
118
122
130
146
141
129
117
121
129
145
140
128
116
120
128
144
139
127
115
119
127
143
138
126
114
118
126
142
137
125
113
117
125
141
136
124
112
116
124
140
128
129
130
131
132
133
134
135
136
137
138
139
140
141
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
114
113
112
111
123
139
127
141
122
110
106
110
122
138
126
141
121
109
105
109
121
137
125
140
120
108
104
108
120
136
124
139
119
107
103
107
119
135
123
138
118
106
102
106
118
134
122
137
117
105
101
105
117
133
121
136
116
104
100
104
116
132
131
130
129
128
127
126
125
124
123
122
121
120
135
115
103
99
103
104
105
106
107
108
109
110
111
112
113
114
115
119
134
114
102
98
102
118
133
113
101
97
101
117
132
112
100
96
100
116
131
111
99
95
99
115
130
110
98
94
98
114
129
109
97
93
97
113
128
108
96
92
96
112
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
95
111
118
82
94
110
117
81
93
109
116
80
92
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
115
79
91
92
93
94
95
94
93
92
91
90
89
88
87
88
89
90
91
97
109
114
78
90
86
98
110
113
77
89
85
99
111
112
76
88
84
100
112
111
75
87
83
101
113
110
74
86
82
102
114
109
73
85
81
103
115
108
72
84
80
104
116
117
118
119
120
121
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
78
77
76
75
76
77
78
79
80
81
82
83
79
105
119
106
70
74
78
106
120
105
69
73
77
107
121
104
68
72
76
108
122
103
67
71
75
109
123
102
66
70
74
110
124
101
65
69
73
111
125
100
64
68
72
112
126
99
63
67
71
113
127
98
62
66
70
114
126
97
61
65
69
115
125
96
60
64
68
116
117
118
119
120
121
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
95
59
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
117
114
94
58
54
66
118
113
93
57
53
65
119
112
92
56
52
64
120
111
91
55
51
63
121
110
90
54
50
62
121
109
89
53
49
61
120
108
88
52
48
60
119
107
87
51
47
59
118
106
86
50
46
58
117
105
85
49
45
57
116
104
84
48
44
56
115
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
55
114
94
72
58
34
54
113
93
73
57
33
53
112
92
74
56
32
52
111
91
75
55
31
51
110
90
76
54
30
50
109
89
77
53
29
49
108
88
78
52
28
48
107
87
79
51
27
47
106
86
80
50
26
46
105
85
81
49
25
45
104
84
82
48
24
44
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
71
72
73
74
75
76
77
78
79
80
81
82
83
47
46
45
44
43
42
41
40
39
38
37
36
35
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
96
82
70
34
22
36
97
81
69
33
21
37
98
80
68
32
20
38
99
79
67
31
19
39
100
78
66
30
18
40
101
77
65
29
17
41
102
76
64
28
16
42
103
75
63
27
15
43
104
74
62
26
14
44
105
73
61
25
13
43
106
72
60
24
12
42
115
114
113
112
111
110
109
108
107
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
41
40
39
38
37
36
35
34
33
114
72
48
36
10
32
113
73
49
37
9
31
112
74
50
38
8
30
111
75
51
39
7
29
110
76
52
40
6
28
109
77
53
41
5
27
108
78
54
42
4
26
107
79
55
43
3
25
106
80
56
44
2
24
105
81
57
45
1
23
104
82
58
46
0
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
147
148
149
150
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
147
155
154
142
146
138
146
154
153
141
145
137
145
153
152
140
144
136
144
152
151
139
143
135
143
151
150
138
142
134
142
150
149
137
141
133
141
149
148
136
140
132
140
148
147
135
139
131
139
147
146
134
138
130
138
146
145
133
137
129
137
145
144
132
136
128
136
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
127
135
123
137
142
130
126
114
126
134
122
138
141
129
125
113
125
133
121
139
140
128
124
112
124
132
120
140
139
127
123
111
123
131
119
141
138
126
122
110
122
130
118
142
137
125
121
109
121
129
117
143
136
124
120
108
120
128
127
126
125
124
123
122
121
120
119
118
117
116
144
135
123
119
107
108
109
110
111
112
113
114
115
116
117
118
119
115
145
134
122
118
106
114
146
133
121
117
105
113
147
132
120
116
104
112
148
131
119
115
103
111
149
130
118
114
102
110
149
129
117
113
101
109
148
128
116
112
100
108
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
99
107
138
102
98
106
137
101
97
105
136
100
96
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
135
99
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
93
105
134
98
96
82
94
106
133
97
97
81
95
107
132
96
98
80
96
108
131
95
99
79
97
109
130
94
100
78
98
110
129
93
101
77
99
111
128
92
102
76
100
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
98
97
96
95
96
97
98
99
100
101
102
103
75
101
122
126
90
94
74
102
123
125
89
93
73
103
124
124
88
92
72
104
125
123
87
91
71
105
126
122
86
90
70
106
127
121
85
89
69
107
128
120
84
88
68
108
129
119
83
87
67
109
130
118
82
86
66
110
131
117
81
85
65
111
132
116
80
84
64
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
115
79
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
113
125
114
78
74
62
114
126
113
77
73
61
115
127
112
76
72
60
116
128
111
75
71
59
117
129
110
74
70
58
118
129
109
73
69
57
119
128
108
72
68
56
120
127
107
71
67
55
121
126
106
70
66
54
122
125
105
69
65
53
123
124
104
68
64
52
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
51
125
116
92
80
54
50
126
115
93
79
53
49
127
114
94
78
52
48
128
113
95
77
51
47
129
112
96
76
50
46
130
111
97
75
49
45
130
110
98
74
48
44
129
109
99
73
47
43
128
108
100
72
46
42
127
107
101
71
45
41
126
106
102
70
44
40
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
93
94
95
96
97
98
99
100
101
102
103
104
103
69
68
67
66
65
64
63
62
61
60
59
58
57
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
118
104
92
56
44
30
119
103
91
55
43
29
120
102
90
54
42
28
121
101
89
53
41
27
122
100
88
52
40
26
123
99
87
51
39
25
124
98
86
50
38
24
125
97
85
49
37
23
126
96
84
48
36
22
127
95
83
47
35
21
128
94
82
46
34
20
137
136
135
134
133
132
131
130
129
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
19
18
17
16
15
14
13
12
11
136
94
70
58
32
10
135
95
71
59
31
9
134
96
72
60
30
8
133
97
73
61
29
7
132
98
74
62
28
6
131
99
75
63
27
5
130
100
76
64
26
4
129
101
77
65
25
3
128
102
78
66
24
2
127
103
79
67
23
1
126
104
80
68
22
0
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
139
147
143
155
156
148
138
146
142
154
155
147
137
145
141
153
154
146
136
144
140
152
153
145
135
143
139
151
152
144
134
142
138
150
151
143
133
141
137
149
150
142
132
140
136
148
149
141
131
139
135
147
148
140
130
138
134
146
147
139
129
137
133
145
146
138
128
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
137
127
115
127
131
143
138
124
136
126
114
126
130
142
139
123
135
125
113
125
129
141
140
122
134
124
112
124
128
140
141
121
133
123
111
123
127
139
142
120
132
122
110
122
126
138
143
119
131
121
109
121
125
137
144
118
130
120
119
118
117
116
115
114
113
112
111
110
109
108
120
124
136
145
117
118
119
120
121
122
123
124
125
126
127
128
129
107
119
123
135
146
116
106
118
122
134
147
115
105
117
121
133
148
114
104
116
120
132
149
113
103
115
119
131
150
112
102
114
118
130
150
111
101
113
117
129
149
110
100
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
109
99
103
139
108
98
102
138
107
97
101
137
106
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
100
136
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
83
97
99
135
106
94
82
98
98
134
107
95
81
99
97
133
108
96
80
100
96
132
109
97
79
101
95
131
110
98
78
102
94
130
111
99
77
103
93
129
112
100
76
104
105
104
103
102
101
100
99
98
97
98
99
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
101
75
96
91
127
122
102
74
95
90
126
123
103
73
94
89
125
124
104
72
93
88
124
125
105
71
92
87
123
126
106
70
91
86
122
127
107
69
90
85
121
128
108
68
89
84
120
129
109
67
88
83
119
130
110
66
87
82
118
131
111
65
86
81
117
132
112
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
80
116
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
63
75
79
115
126
114
62
74
78
114
127
115
61
73
77
113
128
116
60
72
76
112
129
117
59
71
75
111
130
118
58
70
74
110
130
119
57
69
73
109
129
120
56
68
72
108
128
121
55
67
71
107
127
122
54
66
70
106
126
123
53
65
69
105
125
124
52
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
51
55
79
93
115
126
50
54
78
94
114
127
49
53
77
95
113
128
48
52
76
96
112
129
47
51
75
97
111
130
46
50
74
98
110
130
45
49
73
99
109
129
44
48
72
100
108
128
43
47
71
101
107
127
42
46
70
102
106
126
41
45
69
103
105
125
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
56
57
58
59
60
61
62
63
64
65
66
67
68
104
103
102
101
100
99
98
97
96
95
94
93
92
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
31
43
55
91
103
117
30
42
54
90
102
118
29
41
53
89
101
119
28
40
52
88
100
120
27
39
51
87
99
121
26
38
50
86
98
122
25
37
49
85
97
123
24
36
48
84
96
124
23
35
47
83
95
125
22
34
46
82
94
126
21
33
45
81
93
127
12
13
14
15
16
17
18
19
20
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
128
129
130
131
132
133
134
135
136
11
31
57
69
93
135
10
30
58
70
94
134
9
29
59
71
95
133
8
28
60
72
96
132
7
27
61
73
97
131
6
26
62
74
98
130
5
25
63
75
99
129
4
24
64
76
100
128
3
23
65
77
101
127
2
22
66
78
102
126
1
21
67
79
103
125
0
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
143
144
145
146
147
148
149
150
151
152
153
154
155
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
140
146
142
154
157
149
139
145
141
153
156
148
138
144
140
152
155
147
137
143
139
151
154
146
136
142
138
150
153
145
135
141
137
149
152
144
134
140
136
148
151
143
133
139
135
147
150
142
132
138
134
146
149
141
131
137
133
145
148
140
130
136
132
144
147
139
129
117
118
119
120
121
122
123
124
125
126
127
128
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
138
128
116
126
130
142
139
125
137
127
115
125
129
141
140
124
136
126
114
124
128
140
141
123
135
125
113
123
127
139
142
122
134
124
112
122
126
138
143
121
133
123
111
121
125
137
144
120
132
122
110
120
124
136
145
119
131
121
120
119
118
117
116
115
114
113
112
111
110
109
119
123
135
146
118
119
120
121
122
123
124
125
126
127
128
129
130
108
118
122
134
147
117
107
117
121
133
148
116
106
116
120
132
149
115
105
115
119
131
150
114
104
114
118
130
150
113
103
113
117
129
149
112
102
112
116
128
148
111
101
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
110
100
102
138
109
99
101
137
108
98
100
136
107
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
99
135
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
84
98
98
134
107
95
83
99
97
133
108
96
82
100
96
132
109
97
81
101
95
131
110
98
80
102
94
130
111
99
79
103
93
129
112
100
78
104
92
128
113
101
77
105
104
103
102
101
100
99
98
97
96
97
98
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
102
76
95
90
126
123
103
75
94
89
125
124
104
74
93
88
124
125
105
73
92
87
123
126
106
72
91
86
122
127
107
71
90
85
121
128
108
70
89
84
120
129
109
69
88
83
119
130
110
68
87
82
118
131
111
67
86
81
117
132
112
66
85
80
116
133
113
65
66
67
68
69
70
71
72
73
74
75
76
75
76
77
78
79
80
81
82
83
84
79
115
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
64
74
78
114
127
115
63
73
77
113
128
116
62
72
76
112
129
117
61
71
75
111
130
118
60
70
74
110
130
119
59
69
73
109
129
120
58
68
72
108
128
121
57
67
71
107
127
122
56
66
70
106
126
123
55
65
69
105
125
124
54
64
68
104
124
125
53
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
126
52
54
78
92
114
127
51
53
77
93
113
128
50
52
76
94
112
129
49
51
75
95
111
130
48
50
74
96
110
130
47
49
73
97
109
129
46
48
72
98
108
128
45
47
71
99
107
127
44
46
70
100
106
126
43
45
69
101
105
125
42
44
68
102
104
124
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
43
55
56
57
58
59
60
61
62
63
64
65
66
67
103
102
101
100
99
98
97
96
95
94
93
92
91
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
32
42
54
90
102
116
31
41
53
89
101
117
30
40
52
88
100
118
29
39
51
87
99
119
28
38
50
86
98
120
27
37
49
85
97
121
26
36
48
84
96
122
25
35
47
83
95
123
24
34
46
82
94
124
23
33
45
81
93
125
22
32
44
80
92
126
13
14
15
16
17
18
19
20
21
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
127
128
129
130
131
132
133
134
135
12
30
56
68
92
134
11
29
57
69
93
133
10
28
58
70
94
132
9
27
59
71
95
131
8
26
60
72
96
130
7
25
61
73
97
129
6
24
62
74
98
128
5
23
63
75
99
127
4
22
64
76
100
126
3
21
65
77
101
125
2
20
66
78
102
124
1
0
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
142
143
144
145
146
147
148
149
150
151
152
153
154
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
141
145
141
153
158
150
140
144
140
152
157
149
139
143
139
151
156
148
138
142
138
150
155
147
137
141
137
149
154
146
136
140
136
148
153
145
135
139
135
147
152
144
134
138
134
146
151
143
133
137
133
145
150
142
132
136
132
144
149
141
131
135
131
143
148
140
130
118
119
120
121
122
123
124
125
126
127
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
139
129
117
125
129
141
140
126
138
128
116
124
128
140
141
125
137
127
115
123
127
139
142
124
136
126
114
122
126
138
143
123
135
125
113
121
125
137
144
122
134
124
112
120
124
136
145
121
133
123
111
119
123
135
146
120
132
122
121
120
119
118
117
116
115
114
113
112
111
110
118
122
134
147
119
120
121
122
123
124
125
126
127
128
129
130
131
109
117
121
133
148
118
108
116
120
132
149
117
107
115
119
131
150
116
106
114
118
130
150
115
105
113
117
129
149
114
104
112
116
128
148
113
103
111
115
127
147
112
102
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
111
101
101
137
110
100
100
136
109
99
99
135
108
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
98
134
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
85
99
97
133
108
96
84
100
96
132
109
97
83
101
95
131
110
98
82
102
94
130
111
99
81
103
93
129
112
100
80
104
92
128
113
101
79
105
91
127
114
102
78
104
103
102
101
100
99
98
97
96
95
96
97
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
103
77
94
89
125
124
104
76
93
88
124
125
105
75
92
87
123
126
106
74
91
86
122
127
107
73
90
85
121
128
108
72
89
84
120
129
109
71
88
83
119
130
110
70
87
82
118
131
111
69
86
81
117
132
112
68
85
80
116
133
113
67
84
79
115
134
114
66
67
68
69
70
71
72
73
74
75
76
75
74
75
76
77
78
79
80
81
82
83
78
114
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
65
73
77
113
128
116
64
72
76
112
129
117
63
71
75
111
130
118
62
70
74
110
130
119
61
69
73
109
129
120
60
68
72
108
128
121
59
67
71
107
127
122
58
66
70
106
126
123
57
65
69
105
125
124
56
64
68
104
124
125
55
63
67
103
123
126
54
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
127
53
53
77
91
113
128
52
52
76
92
112
129
51
51
75
93
111
130
50
50
74
94
110
130
49
49
73
95
109
129
48
48
72
96
108
128
47
47
71
97
107
127
46
46
70
98
106
126
45
45
69
99
105
125
44
44
68
100
104
124
43
43
67
101
103
123
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
43
42
54
55
56
57
58
59
60
61
62
63
64
65
66
102
101
100
99
98
97
96
95
94
93
92
91
90
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
33
41
53
89
101
115
32
40
52
88
100
116
31
39
51
87
99
117
30
38
50
86
98
118
29
37
49
85
97
119
28
36
48
84
96
120
27
35
47
83
95
121
26
34
46
82
94
122
25
33
45
81
93
123
24
32
44
80
92
124
23
31
43
79
91
125
14
15
16
17
18
19
20
21
22
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
126
127
128
129
130
131
132
133
134
13
29
55
67
91
133
12
28
56
68
92
132
11
27
57
69
93
131
10
26
58
70
94
130
9
25
59
71
95
129
8
24
60
72
96
128
7
23
61
73
97
127
6
22
62
74
98
126
5
21
63
75
99
125
4
20
64
76
100
124
3
19
65
77
101
123
2
1
0
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
141
142
143
144
145
146
147
148
149
150
151
152
153
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
142
144
140
152
159
151
141
143
139
151
158
150
140
142
138
150
157
149
139
141
137
149
156
148
138
140
136
148
155
147
137
139
135
147
154
146
136
138
134
146
153
145
135
137
133
145
152
144
134
136
132
144
151
143
133
135
131
143
150
142
132
134
130
142
149
141
131
119
120
121
122
123
124
125
126
127
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
140
130
118
124
128
140
141
127
139
129
117
123
127
139
142
126
138
128
116
122
126
138
143
125
137
127
115
121
125
137
144
124
136
126
114
120
124
136
145
123
135
125
113
119
123
135
146
122
134
124
112
118
122
134
147
121
133
123
122
121
120
119
118
117
116
115
114
113
112
111
117
121
133
148
120
121
122
123
124
125
126
127
128
129
130
131
132
110
116
120
132
149
119
109
115
119
131
150
118
108
114
118
130
150
117
107
113
117
129
149
116
106
112
116
128
148
115
105
111
115
127
147
114
104
110
114
126
146
113
103
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
112
102
100
136
111
101
99
135
110
100
98
134
109
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
97
133
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
86
100
96
132
109
97
85
101
95
131
110
98
84
102
94
130
111
99
83
103
93
129
112
100
82
104
92
128
113
101
81
105
91
127
114
102
80
104
90
126
115
103
79
103
102
101
100
99
98
97
96
95
94
95
96
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
104
78
93
88
124
125
105
77
92
87
123
126
106
76
91
86
122
127
107
75
90
85
121
128
108
74
89
84
120
129
109
73
88
83
119
130
110
72
87
82
118
131
111
71
86
81
117
132
112
70
85
80
116
133
113
69
84
79
115
134
114
68
83
78
114
135
115
67
68
69
70
71
72
73
74
75
76
75
74
73
74
75
76
77
78
79
80
81
82
77
113
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
66
72
76
112
129
117
65
71
75
111
130
118
64
70
74
110
130
119
63
69
73
109
129
120
62
68
72
108
128
121
61
67
71
107
127
122
60
66
70
106
126
123
59
65
69
105
125
124
58
64
68
104
124
125
57
63
67
103
123
126
56
62
66
102
122
127
55
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
128
54
52
76
90
112
129
53
51
75
91
111
130
52
50
74
92
110
130
51
49
73
93
109
129
50
48
72
94
108
128
49
47
71
95
107
127
48
46
70
96
106
126
47
45
69
97
105
125
46
44
68
98
104
124
45
43
67
99
103
123
44
42
66
100
102
122
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
43
42
41
53
54
55
56
57
58
59
60
61
62
63
64
65
101
100
99
98
97
96
95
94
93
92
91
90
89
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
34
40
52
88
100
114
33
39
51
87
99
115
32
38
50
86
98
116
31
37
49
85
97
117
30
36
48
84
96
118
29
35
47
83
95
119
28
34
46
82
94
120
27
33
45
81
93
121
26
32
44
80
92
122
25
31
43
79
91
123
24
30
42
78
90
124
15
16
17
18
19
20
21
22
23
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
125
126
127
128
129
130
131
132
133
14
28
54
66
90
132
13
27
55
67
91
131
12
26
56
68
92
130
11
25
57
69
93
129
10
24
58
70
94
128
9
23
59
71
95
127
8
22
60
72
96
126
7
21
61
73
97
125
6
20
62
74
98
124
5
19
63
75
99
123
4
18
64
76
100
122
3
2
1
0
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
140
141
142
143
144
145
146
147
148
149
150
151
152
161
162
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
143
143
139
151
160
152
142
142
138
150
159
151
141
141
137
149
158
150
140
140
136
148
157
149
139
139
135
147
156
148
138
138
134
146
155
147
137
137
133
145
154
146
136
136
132
144
153
145
135
135
131
143
152
144
134
134
130
142
151
143
133
133
129
141
150
142
132
120
121
122
123
124
125
126
127
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
141
131
119
123
127
139
142
128
140
130
118
122
126
138
143
127
139
129
117
121
125
137
144
126
138
128
116
120
124
136
145
125
137
127
115
119
123
135
146
124
136
126
114
118
122
134
147
123
135
125
113
117
121
133
148
122
134
124
123
122
121
120
119
118
117
116
115
114
113
112
116
120
132
149
121
122
123
124
125
126
127
128
129
130
131
132
133
111
115
119
131
150
120
110
114
118
130
150
119
109
113
117
129
149
118
108
112
116
128
148
117
107
111
115
127
147
116
106
110
114
126
146
115
105
109
113
125
145
114
104
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
113
103
99
135
112
102
98
134
111
101
97
133
110
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
96
132
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
87
101
95
131
110
98
86
102
94
130
111
99
85
103
93
129
112
100
84
104
92
128
113
101
83
105
91
127
114
102
82
104
90
126
115
103
81
103
89
125
116
104
80
102
101
100
99
98
97
96
95
94
93
94
95
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
105
79
92
87
123
126
106
78
91
86
122
127
107
77
90
85
121
128
108
76
89
84
120
129
109
75
88
83
119
130
110
74
87
82
118
131
111
73
86
81
117
132
112
72
85
80
116
133
113
71
84
79
115
134
114
70
83
78
114
135
115
69
82
77
113
136
116
68
69
70
71
72
73
74
75
76
75
74
73
72
73
74
75
76
77
78
79
80
81
76
112
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
67
71
75
111
130
118
66
70
74
110
130
119
65
69
73
109
129
120
64
68
72
108
128
121
63
67
71
107
127
122
62
66
70
106
126
123
61
65
69
105
125
124
60
64
68
104
124
125
59
63
67
103
123
126
58
62
66
102
122
127
57
61
65
101
121
128
56
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
129
55
51
75
89
111
130
54
50
74
90
110
130
53
49
73
91
109
129
52
48
72
92
108
128
51
47
71
93
107
127
50
46
70
94
106
126
49
45
69
95
105
125
48
44
68
96
104
124
47
43
67
97
103
123
46
42
66
98
102
122
45
41
65
99
101
121
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
43
42
41
40
52
53
54
55
56
57
58
59
60
61
62
63
64
100
99
98
97
96
95
94
93
92
91
90
89
88
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
35
39
51
87
99
113
34
38
50
86
98
114
33
37
49
85
97
115
32
36
48
84
96
116
31
35
47
83
95
117
30
34
46
82
94
118
29
33
45
81
93
119
28
32
44
80
92
120
27
31
43
79
91
121
26
30
42
78
90
122
25
29
41
77
89
123
16
17
18
19
20
21
22
23
24
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
124
125
126
127
128
129
130
131
132
15
27
53
65
89
131
14
26
54
66
90
130
13
25
55
67
91
129
12
24
56
68
92
128
11
23
57
69
93
127
10
22
58
70
94
126
9
21
59
71
95
125
8
20
60
72
96
124
7
19
61
73
97
123
6
18
62
74
98
122
5
17
63
75
99
121
4
3
2
1
0
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
139
140
141
142
143
144
145
146
147
148
149
150
151
162
163
164
165
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
144
142
138
150
161
153
143
141
137
149
160
152
142
140
136
148
159
151
141
139
135
147
158
150
140
138
134
146
157
149
139
137
133
145
156
148
138
136
132
144
155
147
137
135
131
143
154
146
136
134
130
142
153
145
135
133
129
141
152
144
134
132
128
140
151
143
133
121
122
123
124
125
126
127
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
142
132
120
122
126
138
143
129
141
131
119
121
125
137
144
128
140
130
118
120
124
136
145
127
139
129
117
119
123
135
146
126
138
128
116
118
122
134
147
125
137
127
115
117
121
133
148
124
136
126
114
116
120
132
149
123
135
125
124
123
122
121
120
119
118
117
116
115
114
113
115
119
131
150
122
123
124
125
126
127
128
129
130
131
132
133
134
112
114
118
130
150
121
111
113
117
129
149
120
110
112
116
128
148
119
109
111
115
127
147
118
108
110
114
126
146
117
107
109
113
125
145
116
106
108
112
124
144
115
105
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
114
104
98
134
113
103
97
133
112
102
96
132
111
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
95
131
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
88
102
94
130
111
99
87
103
93
129
112
100
86
104
92
128
113
101
85
105
91
127
114
102
84
104
90
126
115
103
83
103
89
125
116
104
82
102
88
124
117
105
81
101
100
99
98
97
96
95
94
93
92
93
94
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
106
80
91
86
122
127
107
79
90
85
121
128
108
78
89
84
120
129
109
77
88
83
119
130
110
76
87
82
118
131
111
75
86
81
117
132
112
74
85
80
116
133
113
73
84
79
115
134
114
72
83
78
114
135
115
71
82
77
113
136
116
70
81
76
112
137
117
69
70
71
72
73
74
75
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
75
111
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
68
70
74
110
130
119
67
69
73
109
129
120
66
68
72
108
128
121
65
67
71
107
127
122
64
66
70
106
126
123
63
65
69
105
125
124
62
64
68
104
124
125
61
63
67
103
123
126
60
62
66
102
122
127
59
61
65
101
121
128
58
60
64
100
120
129
57
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
130
56
50
74
88
110
130
55
49
73
89
109
129
54
48
72
90
108
128
53
47
71
91
107
127
52
46
70
92
106
126
51
45
69
93
105
125
50
44
68
94
104
124
49
43
67
95
103
123
48
42
66
96
102
122
47
41
65
97
101
121
46
40
64
98
100
120
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
43
42
41
40
39
51
52
53
54
55
56
57
58
59
60
61
62
63
99
98
97
96
95
94
93
92
91
90
89
88
87
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
36
38
50
86
98
112
35
37
49
85
97
113
34
36
48
84
96
114
33
35
47
83
95
115
32
34
46
82
94
116
31
33
45
81
93
117
30
32
44
80
92
118
29
31
43
79
91
119
28
30
42
78
90
120
27
29
41
77
89
121
26
28
40
76
88
122
17
18
19
20
21
22
23
24
25
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
123
124
125
126
127
128
129
130
131
16
26
52
64
88
130
15
25
53
65
89
129
14
24
54
66
90
128
13
23
55
67
91
127
12
22
56
68
92
126
11
21
57
69
93
125
10
20
58
70
94
124
9
19
59
71
95
123
8
18
60
72
96
122
7
17
61
73
97
121
6
16
62
74
98
120
5
4
3
2
1
0
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
138
139
140
141
142
143
144
145
146
147
148
149
150
162
163
164
165
166
167
168
169
170
171
172
173
174
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
145
141
137
149
161
154
144
140
136
148
160
153
143
139
135
147
159
152
142
138
134
146
158
151
141
137
133
145
157
150
140
136
132
144
156
149
139
135
131
143
155
148
138
134
130
142
154
147
137
133
129
141
153
146
136
132
128
140
152
145
135
131
127
139
151
144
134
122
123
124
125
126
127
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
143
133
121
121
125
137
144
130
142
132
120
120
124
136
145
129
141
131
119
119
123
135
146
128
140
130
118
118
122
134
147
127
139
129
117
117
121
133
148
126
138
128
116
116
120
132
149
125
137
127
115
115
119
131
150
124
136
126
125
124
123
122
121
120
119
118
117
116
115
114
114
118
130
150
123
124
125
126
127
128
129
130
131
132
133
134
135
113
113
117
129
149
122
112
112
116
128
148
121
111
111
115
127
147
120
110
110
114
126
146
119
109
109
113
125
145
118
108
108
112
124
144
117
107
107
111
123
143
116
106
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
115
105
97
133
114
104
96
132
113
103
95
131
112
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
94
130
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
89
103
93
129
112
100
88
104
92
128
113
101
87
105
91
127
114
102
86
104
90
126
115
103
85
103
89
125
116
104
84
102
88
124
117
105
83
101
87
123
118
106
82
100
99
98
97
96
95
94
93
92
91
92
93
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
107
81
90
85
121
128
108
80
89
84
120
129
109
79
88
83
119
130
110
78
87
82
118
131
111
77
86
81
117
132
112
76
85
80
116
133
113
75
84
79
115
134
114
74
83
78
114
135
115
73
82
77
113
136
116
72
81
76
112
137
117
71
80
75
111
138
118
70
71
72
73
74
75
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
74
110
138
137
136
135
134
133
132
131
130
130
129
128
127
126
125
124
123
122
121
120
119
69
69
73
109
129
120
68
68
72
108
128
121
67
67
71
107
127
122
66
66
70
106
126
123
65
65
69
105
125
124
64
64
68
104
124
125
63
63
67
103
123
126
62
62
66
102
122
127
61
61
65
101
121
128
60
60
64
100
120
129
59
59
63
99
119
130
58
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
130
57
49
73
87
109
129
56
48
72
88
108
128
55
47
71
89
107
127
54
46
70
90
106
126
53
45
69
91
105
125
52
44
68
92
104
124
51
43
67
93
103
123
50
42
66
94
102
122
49
41
65
95
101
121
48
40
64
96
100
120
47
39
63
97
99
119
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
43
42
41
40
39
38
50
51
52
53
54
55
56
57
58
59
60
61
62
98
97
96
95
94
93
92
91
90
89
88
87
86
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
37
37
49
85
97
111
36
36
48
84
96
112
35
35
47
83
95
113
34
34
46
82
94
114
33
33
45
81
93
115
32
32
44
80
92
116
31
31
43
79
91
117
30
30
42
78
90
118
29
29
41
77
89
119
28
28
40
76
88
120
27
27
39
75
87
121
18
19
20
21
22
23
24
25
26
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
122
123
124
125
126
127
128
129
130
17
25
51
63
87
129
16
24
52
64
88
128
15
23
53
65
89
127
14
22
54
66
90
126
13
21
55
67
91
125
12
20
56
68
92
124
11
19
57
69
93
123
10
18
58
70
94
122
9
17
59
71
95
121
8
16
60
72
96
120
7
15
61
73
97
119
6
5
4
3
2
1
0
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
137
138
139
140
141
142
143
144
145
146
147
148
149
161
162
163
164
165
166
167
168
169
170
171
172
173
174
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
146
140
136
148
160
155
145
139
135
147
159
154
144
138
134
146
158
153
143
137
133
145
157
152
142
136
132
144
156
151
141
135
131
143
155
150
140
134
130
142
154
149
139
133
129
141
153
148
138
132
128
140
152
147
137
131
127
139
151
146
136
130
126
138
150
145
135
123
124
125
126
127
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
144
134
122
120
124
136
145
131
143
133
121
119
123
135
146
130
142
132
120
118
122
134
147
129
141
131
119
117
121
133
148
128
140
130
118
116
120
132
149
127
139
129
117
115
119
131
150
126
138
128
116
114
118
130
150
125
137
127
126
125
124
123
122
121
120
119
118
117
116
115
113
117
129
149
124
125
126
127
128
129
130
131
132
133
134
135
136
114
112
116
128
148
123
113
111
115
127
147
122
112
110
114
126
146
121
111
109
113
125
145
120
110
108
112
124
144
119
109
107
111
123
143
118
108
106
110
122
142
117
107
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
116
106
96
132
115
105
95
131
114
104
94
130
113
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
93
129
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
90
104
92
128
113
101
89
105
91
127
114
102
88
104
90
126
115
103
87
103
89
125
116
104
86
102
88
124
117
105
85
101
87
123
118
106
84
100
86
122
119
107
83
99
98
97
96
95
94
93
92
91
90
91
92
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
108
82
89
84
120
129
109
81
88
83
119
130
110
80
87
82
118
131
111
79
86
81
117
132
112
78
85
80
116
133
113
77
84
79
115
134
114
76
83
78
114
135
115
75
82
77
113
136
116
74
81
76
112
137
117
73
80
75
111
138
118
72
79
74
110
138
119
71
72
73
74
75
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
73
109
137
136
135
134
133
132
131
130
129
130
130
129
128
127
126
125
124
123
122
121
120
70
68
72
108
128
121
69
67
71
107
127
122
68
66
70
106
126
123
67
65
69
105
125
124
66
64
68
104
124
125
65
63
67
103
123
126
64
62
66
102
122
127
63
61
65
101
121
128
62
60
64
100
120
129
61
59
63
99
119
130
60
58
62
98
118
130
59
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
129
58
48
72
86
108
128
57
47
71
87
107
127
56
46
70
88
106
126
55
45
69
89
105
125
54
44
68
90
104
124
53
43
67
91
103
123
52
42
66
92
102
122
51
41
65
93
101
121
50
40
64
94
100
120
49
39
63
95
99
119
48
38
62
96
98
118
47
46
45
44
43
42
41
40
39
40
41
42
43
44
43
42
41
40
39
38
37
49
50
51
52
53
54
55
56
57
58
59
60
61
97
96
95
94
93
92
91
90
89
88
87
86
85
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
38
36
48
84
96
110
37
35
47
83
95
111
36
34
46
82
94
112
35
33
45
81
93
113
34
32
44
80
92
114
33
31
43
79
91
115
32
30
42
78
90
116
31
29
41
77
89
117
30
28
40
76
88
118
29
27
39
75
87
119
28
26
38
74
86
120
19
20
21
22
23
24
25
26
27
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
121
122
123
124
125
126
127
128
129
18
24
50
62
86
128
17
23
51
63
87
127
16
22
52
64
88
126
15
21
53
65
89
125
14
20
54
66
90
124
13
19
55
67
91
123
12
18
56
68
92
122
11
17
57
69
93
121
10
16
58
70
94
120
9
15
59
71
95
119
8
14
60
72
96
118
7
6
5
4
3
2
1
0
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
136
137
138
139
140
141
142
143
144
145
146
147
148
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
147
139
135
147
159
156
146
138
134
146
158
155
145
137
133
145
157
154
144
136
132
144
156
153
143
135
131
143
155
152
142
134
130
142
154
151
141
133
129
141
153
150
140
132
128
140
152
149
139
131
127
139
151
148
138
130
126
138
150
147
137
129
125
137
149
146
136
124
125
126
127
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
145
135
123
119
123
135
146
132
144
134
122
118
122
134
147
131
143
133
121
117
121
133
148
130
142
132
120
116
120
132
149
129
141
131
119
115
119
131
150
128
140
130
118
114
118
130
150
127
139
129
117
113
117
129
149
126
138
128
127
126
125
124
123
122
121
120
119
118
117
116
112
116
128
148
125
126
127
128
129
130
131
132
133
134
135
136
137
115
111
115
127
147
124
114
110
114
126
146
123
113
109
113
125
145
122
112
108
112
124
144
121
111
107
111
123
143
120
110
106
110
122
142
119
109
105
109
121
141
118
108
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
117
107
95
131
116
106
94
130
115
105
93
129
114
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
92
128
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
91
105
91
127
114
102
90
104
90
126
115
103
89
103
89
125
116
104
88
102
88
124
117
105
87
101
87
123
118
106
86
100
86
122
119
107
85
99
85
121
120
108
84
98
97
96
95
94
93
92
91
90
89
90
91
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
109
83
88
83
119
130
110
82
87
82
118
131
111
81
86
81
117
132
112
80
85
80
116
133
113
79
84
79
115
134
114
78
83
78
114
135
115
77
82
77
113
136
116
76
81
76
112
137
117
75
80
75
111
138
118
74
79
74
110
138
119
73
78
73
109
137
120
72
73
74
75
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
72
108
136
135
134
133
132
131
130
129
128
129
130
130
129
128
127
126
125
124
123
122
121
71
67
71
107
127
122
70
66
70
106
126
123
69
65
69
105
125
124
68
64
68
104
124
125
67
63
67
103
123
126
66
62
66
102
122
127
65
61
65
101
121
128
64
60
64
100
120
129
63
59
63
99
119
130
62
58
62
98
118
130
61
57
61
97
117
129
60
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
128
59
47
71
85
107
127
58
46
70
86
106
126
57
45
69
87
105
125
56
44
68
88
104
124
55
43
67
89
103
123
54
42
66
90
102
122
53
41
65
91
101
121
52
40
64
92
100
120
51
39
63
93
99
119
50
38
62
94
98
118
49
37
61
95
97
117
48
47
46
45
44
43
42
41
40
41
42
43
44
43
42
41
40
39
38
37
36
48
49
50
51
52
53
54
55
56
57
58
59
60
96
95
94
93
92
91
90
89
88
87
86
85
84
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
39
35
47
83
95
109
38
34
46
82
94
110
37
33
45
81
93
111
36
32
44
80
92
112
35
31
43
79
91
113
34
30
42
78
90
114
33
29
41
77
89
115
32
28
40
76
88
116
31
27
39
75
87
117
30
26
38
74
86
118
29
25
37
73
85
119
20
21
22
23
24
25
26
27
28
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
120
121
122
123
124
125
126
127
128
19
23
49
61
85
127
18
22
50
62
86
126
17
21
51
63
87
125
16
20
52
64
88
124
15
19
53
65
89
123
14
18
54
66
90
122
13
17
55
67
91
121
12
16
56
68
92
120
11
15
57
69
93
119
10
14
58
70
94
118
9
13
59
71
95
117
8
7
6
5
4
3
2
1
0
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
135
136
137
138
139
140
141
142
143
144
145
146
147
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
148
138
134
146
158
157
147
137
133
145
157
156
146
136
132
144
156
155
145
135
131
143
155
154
144
134
130
142
154
153
143
133
129
141
153
152
142
132
128
140
152
151
141
131
127
139
151
150
140
130
126
138
150
149
139
129
125
137
149
148
138
128
124
136
148
147
137
125
126
127
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
146
136
124
118
122
134
147
133
145
135
123
117
121
133
148
132
144
134
122
116
120
132
149
131
143
133
121
115
119
131
150
130
142
132
120
114
118
130
150
129
141
131
119
113
117
129
149
128
140
130
118
112
116
128
148
127
139
129
128
127
126
125
124
123
122
121
120
119
118
117
111
115
127
147
126
127
128
129
130
131
132
133
134
135
136
137
138
116
110
114
126
146
125
115
109
113
125
145
124
114
108
112
124
144
123
113
107
111
123
143
122
112
106
110
122
142
121
111
105
109
121
141
120
110
104
108
120
140
119
109
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
118
108
94
130
117
107
93
129
116
106
92
128
115
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
91
127
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
92
104
90
126
115
103
91
103
89
125
116
104
90
102
88
124
117
105
89
101
87
123
118
106
88
100
86
122
119
107
87
99
85
121
120
108
86
98
84
120
121
109
85
97
96
95
94
93
92
91
90
89
88
89
90
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
110
84
87
82
118
131
111
83
86
81
117
132
112
82
85
80
116
133
113
81
84
79
115
134
114
80
83
78
114
135
115
79
82
77
113
136
116
78
81
76
112
137
117
77
80
75
111
138
118
76
79
74
110
138
119
75
78
73
109
137
120
74
77
72
108
136
121
73
74
75
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
71
107
135
134
133
132
131
130
129
128
127
128
129
130
130
129
128
127
126
125
124
123
122
72
66
70
106
126
123
71
65
69
105
125
124
70
64
68
104
124
125
69
63
67
103
123
126
68
62
66
102
122
127
67
61
65
101
121
128
66
60
64
100
120
129
65
59
63
99
119
130
64
58
62
98
118
130
63
57
61
97
117
129
62
56
60
96
116
128
61
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
127
60
46
70
84
106
126
59
45
69
85
105
125
58
44
68
86
104
124
57
43
67
87
103
123
56
42
66
88
102
122
55
41
65
89
101
121
54
40
64
90
100
120
53
39
63
91
99
119
52
38
62
92
98
118
51
37
61
93
97
117
50
36
60
94
96
116
49
48
47
46
45
44
43
42
41
42
43
44
43
42
41
40
39
38
37
36
35
47
48
49
50
51
52
53
54
55
56
57
58
59
95
94
93
92
91
90
89
88
87
86
85
84
83
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
40
34
46
82
94
108
39
33
45
81
93
109
38
32
44
80
92
110
37
31
43
79
91
111
36
30
42
78
90
112
35
29
41
77
89
113
34
28
40
76
88
114
33
27
39
75
87
115
32
26
38
74
86
116
31
25
37
73
85
117
30
24
36
72
84
118
21
22
23
24
25
26
27
28
29
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
119
120
121
122
123
124
125
126
127
20
22
48
60
84
126
19
21
49
61
85
125
18
20
50
62
86
124
17
19
51
63
87
123
16
18
52
64
88
122
15
17
53
65
89
121
14
16
54
66
90
120
13
15
55
67
91
119
12
14
56
68
92
118
11
13
57
69
93
117
10
12
58
70
94
116
9
8
7
6
5
4
3
2
1
0
148
149
150
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
134
135
136
137
138
139
140
141
142
143
144
145
146
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
147
137
133
145
157
158
146
136
132
144
156
157
145
135
131
143
155
156
144
134
130
142
154
155
143
133
129
141
153
154
142
132
128
140
152
153
141
131
127
139
151
152
140
130
126
138
150
151
139
129
125
137
149
150
138
128
124
136
148
149
137
127
123
135
147
148
136
124
125
126
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
147
135
123
117
121
133
148
134
146
134
122
116
120
132
149
133
145
133
121
115
119
131
150
132
144
132
120
114
118
130
150
131
143
131
119
113
117
129
149
130
142
130
118
112
116
128
148
129
141
129
117
111
115
127
147
128
140
128
127
126
125
124
123
122
121
120
119
118
117
116
110
114
126
146
127
128
129
130
131
132
133
134
135
136
137
138
139
115
109
113
125
145
126
114
108
112
124
144
125
113
107
111
123
143
124
112
106
110
122
142
123
111
105
109
121
141
122
110
104
108
120
140
121
109
103
107
119
139
120
108
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
119
107
93
129
118
106
92
128
117
105
91
127
116
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
104
90
126
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
93
103
89
125
116
104
92
102
88
124
117
105
91
101
87
123
118
106
90
100
86
122
119
107
89
99
85
121
120
108
88
98
84
120
121
109
87
97
83
119
122
110
86
96
95
94
93
92
91
90
89
88
87
88
89
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
111
85
86
81
117
131
112
84
85
80
116
132
113
83
84
79
115
133
114
82
83
78
114
134
115
81
82
77
113
135
116
80
81
76
112
136
117
79
80
75
111
137
118
78
79
74
110
138
119
77
78
73
109
137
120
76
77
72
108
136
121
75
76
71
107
135
122
74
75
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
70
106
134
133
132
131
130
129
128
127
126
127
128
129
130
130
129
128
127
126
125
124
123
73
65
69
105
125
124
72
64
68
104
124
125
71
63
67
103
123
126
70
62
66
102
122
127
69
61
65
101
121
128
68
60
64
100
120
129
67
59
63
99
119
130
66
58
62
98
118
130
65
57
61
97
117
129
64
56
60
96
116
128
63
55
59
95
115
127
62
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
126
61
45
69
83
105
125
60
44
68
84
104
124
59
43
67
85
103
123
58
42
66
86
102
122
57
41
65
87
101
121
56
40
64
88
100
120
55
39
63
89
99
119
54
38
62
90
98
118
53
37
61
91
97
117
52
36
60
92
96
116
51
35
59
93
95
115
50
49
48
47
46
45
44
43
42
43
44
43
42
41
40
39
38
37
36
35
34
46
47
48
49
50
51
52
53
54
55
56
57
58
94
93
92
91
90
89
88
87
86
85
84
83
82
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
41
33
45
81
93
107
40
32
44
80
92
108
39
31
43
79
91
109
38
30
42
78
90
110
37
29
41
77
89
111
36
28
40
76
88
112
35
27
39
75
87
113
34
26
38
74
86
114
33
25
37
73
85
115
32
24
36
72
84
116
31
23
35
71
83
117
22
23
24
25
26
27
28
29
30
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
118
119
120
121
122
123
124
125
126
21
21
47
59
83
125
20
20
48
60
84
124
19
19
49
61
85
123
18
18
50
62
86
122
17
17
51
63
87
121
16
16
52
64
88
120
15
15
53
65
89
119
14
14
54
66
90
118
13
13
55
67
91
117
12
12
56
68
92
116
11
11
57
69
93
115
10
9
8
7
6
5
4
3
2
1
0
147
148
149
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
133
134
135
136
137
138
139
140
141
142
143
144
145
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
146
136
132
144
156
159
145
135
131
143
155
158
144
134
130
142
154
157
143
133
129
141
153
156
142
132
128
140
152
155
141
131
127
139
151
154
140
130
126
138
150
153
139
129
125
137
149
152
138
128
124
136
148
151
137
127
123
135
147
150
136
126
122
134
146
149
135
123
124
125
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
148
134
122
116
120
132
149
135
147
133
121
115
119
131
150
134
146
132
120
114
118
130
150
133
145
131
119
113
117
129
149
132
144
130
118
112
116
128
148
131
143
129
117
111
115
127
147
130
142
128
116
110
114
126
146
129
141
127
126
125
124
123
122
121
120
119
118
117
116
115
109
113
125
145
128
129
130
131
132
133
134
135
136
137
138
139
140
114
108
112
124
144
127
113
107
111
123
143
126
112
106
110
122
142
125
111
105
109
121
141
124
110
104
108
120
140
123
109
103
107
119
139
122
108
102
106
118
138
121
107
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
120
106
92
128
119
105
91
127
118
104
90
126
117
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
104
103
89
125
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
94
102
88
124
117
105
93
101
87
123
118
106
92
100
86
122
119
107
91
99
85
121
120
108
90
98
84
120
121
109
89
97
83
119
122
110
88
96
82
118
123
111
87
95
94
93
92
91
90
89
88
87
86
87
88
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
112
86
85
80
116
130
113
85
84
79
115
131
114
84
83
78
114
132
115
83
82
77
113
133
116
82
81
76
112
134
117
81
80
75
111
135
118
80
79
74
110
136
119
79
78
73
109
137
120
78
77
72
108
136
121
77
76
71
107
135
122
76
75
70
106
134
123
75
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
69
105
133
132
131
130
129
128
127
126
125
126
127
128
129
130
130
129
128
127
126
125
124
74
64
68
104
124
125
73
63
67
103
123
126
72
62
66
102
122
127
71
61
65
101
121
128
70
60
64
100
120
129
69
59
63
99
119
130
68
58
62
98
118
130
67
57
61
97
117
129
66
56
60
96
116
128
65
55
59
95
115
127
64
54
58
94
114
126
63
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
125
62
44
68
82
104
124
61
43
67
83
103
123
60
42
66
84
102
122
59
41
65
85
101
121
58
40
64
86
100
120
57
39
63
87
99
119
56
38
62
88
98
118
55
37
61
89
97
117
54
36
60
90
96
116
53
35
59
91
95
115
52
34
58
92
94
114
51
50
49
48
47
46
45
44
43
44
43
42
41
40
39
38
37
36
35
34
33
45
46
47
48
49
50
51
52
53
54
55
56
57
93
92
91
90
89
88
87
86
85
84
83
82
81
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
42
32
44
80
92
106
41
31
43
79
91
107
40
30
42
78
90
108
39
29
41
77
89
109
38
28
40
76
88
110
37
27
39
75
87
111
36
26
38
74
86
112
35
25
37
73
85
113
34
24
36
72
84
114
33
23
35
71
83
115
32
22
34
70
82
116
23
24
25
26
27
28
29
30
31
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
117
118
119
120
121
122
123
124
125
22
20
46
58
82
124
21
19
47
59
83
123
20
18
48
60
84
122
19
17
49
61
85
121
18
16
50
62
86
120
17
15
51
63
87
119
16
14
52
64
88
118
15
13
53
65
89
117
14
12
54
66
90
116
13
11
55
67
91
115
12
10
56
68
92
114
11
10
9
8
7
6
5
4
3
2
1
0
146
147
148
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
132
133
134
135
136
137
138
139
140
141
142
143
144
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
174
173
172
171
170
169
168
167
166
165
164
163
162
161
145
135
131
143
155
160
144
134
130
142
154
159
143
133
129
141
153
158
142
132
128
140
152
157
141
131
127
139
151
156
140
130
126
138
150
155
139
129
125
137
149
154
138
128
124
136
148
153
137
127
123
135
147
152
136
126
122
134
146
151
135
125
121
133
145
150
134
122
123
124
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
149
133
121
115
119
131
150
136
148
132
120
114
118
130
150
135
147
131
119
113
117
129
149
134
146
130
118
112
116
128
148
133
145
129
117
111
115
127
147
132
144
128
116
110
114
126
146
131
143
127
115
109
113
125
145
130
142
126
125
124
123
122
121
120
119
118
117
116
115
114
108
112
124
144
129
130
131
132
133
134
135
136
137
138
139
140
141
113
107
111
123
143
128
112
106
110
122
142
127
111
105
109
121
141
126
110
104
108
120
140
125
109
103
107
119
139
124
108
102
106
118
138
123
107
101
105
117
137
122
106
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
121
105
91
127
120
104
90
126
119
103
89
125
118
100
99
98
97
96
97
98
99
100
101
102
103
104
105
104
103
102
88
124
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
95
101
87
123
118
106
94
100
86
122
119
107
93
99
85
121
120
108
92
98
84
120
121
109
91
97
83
119
122
110
90
96
82
118
123
111
89
95
81
117
124
112
88
94
93
92
91
90
89
88
87
86
85
86
87
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
113
87
84
79
115
129
114
86
83
78
114
130
115
85
82
77
113
131
116
84
81
76
112
132
117
83
80
75
111
133
118
82
79
74
110
134
119
81
78
73
109
135
120
80
77
72
108
136
121
79
76
71
107
135
122
78
75
70
106
134
123
77
74
69
105
133
124
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
68
104
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
130
129
128
127
126
125
75
63
67
103
123
126
74
62
66
102
122
127
73
61
65
101
121
128
72
60
64
100
120
129
71
59
63
99
119
130
70
58
62
98
118
130
69
57
61
97
117
129
68
56
60
96
116
128
67
55
59
95
115
127
66
54
58
94
114
126
65
53
57
93
113
125
64
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
124
63
43
67
81
103
123
62
42
66
82
102
122
61
41
65
83
101
121
60
40
64
84
100
120
59
39
63
85
99
119
58
38
62
86
98
118
57
37
61
87
97
117
56
36
60
88
96
116
55
35
59
89
95
115
54
34
58
90
94
114
53
33
57
91
93
113
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
44
45
46
47
48
49
50
51
52
53
54
55
56
92
91
90
89
88
87
86
85
84
83
82
81
80
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
43
31
43
79
91
105
42
30
42
78
90
106
41
29
41
77
89
107
40
28
40
76
88
108
39
27
39
75
87
109
38
26
38
74
86
110
37
25
37
73
85
111
36
24
36
72
84
112
35
23
35
71
83
113
34
22
34
70
82
114
33
21
33
69
81
115
24
25
26
27
28
29
30
31
32
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
116
117
118
119
120
121
122
123
124
23
19
45
57
81
123
22
18
46
58
82
122
21
17
47
59
83
121
20
16
48
60
84
120
19
15
49
61
85
119
18
14
50
62
86
118
17
13
51
63
87
117
16
12
52
64
88
116
15
11
53
65
89
115
14
10
54
66
90
114
13
9
55
67
91
113
12
11
10
9
8
7
6
5
4
3
2
1
0
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
131
132
133
134
135
136
137
138
139
140
141
142
143
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
173
172
171
170
169
168
167
166
165
164
163
162
161
160
144
134
130
142
154
159
143
133
129
141
153
158
142
132
128
140
152
157
141
131
127
139
151
156
140
130
126
138
150
155
139
129
125
137
149
154
138
128
124
136
148
153
137
127
123
135
147
152
136
126
122
134
146
151
135
125
121
133
145
150
134
124
120
132
144
149
133
121
122
123
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
148
132
120
114
118
130
149
135
147
131
119
113
117
129
149
134
146
130
118
112
116
128
148
133
145
129
117
111
115
127
147
132
144
128
116
110
114
126
146
131
143
127
115
109
113
125
145
130
142
126
114
108
112
124
144
129
141
125
124
123
122
121
120
119
118
117
116
115
114
113
107
111
123
143
128
129
130
131
132
133
134
135
136
137
138
139
140
112
106
110
122
142
127
111
105
109
121
141
126
110
104
108
120
140
125
109
103
107
119
139
124
108
102
106
118
138
123
107
101
105
117
137
122
106
100
104
116
136
121
105
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
120
104
90
126
119
103
89
125
118
102
88
124
117
99
98
97
96
95
96
97
98
99
100
101
102
103
104
103
102
101
87
123
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
94
100
86
122
117
105
93
99
85
121
118
106
92
98
84
120
119
107
91
97
83
119
120
108
90
96
82
118
121
109
89
95
81
117
122
110
88
94
80
116
123
111
87
93
92
91
90
89
88
87
86
85
84
85
86
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
129
128
127
126
125
124
112
86
83
78
114
128
113
85
82
77
113
129
114
84
81
76
112
130
115
83
80
75
111
131
116
82
79
74
110
132
117
81
78
73
109
133
118
80
77
72
108
134
119
79
76
71
107
135
120
78
75
70
106
134
121
77
74
69
105
133
122
76
73
68
104
132
123
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
67
103
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
129
128
127
126
125
124
74
62
66
102
122
125
73
61
65
101
121
126
72
60
64
100
120
127
71
59
63
99
119
128
70
58
62
98
118
129
69
57
61
97
117
129
68
56
60
96
116
128
67
55
59
95
115
127
66
54
58
94
114
126
65
53
57
93
113
125
64
52
56
92
112
124
63
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
123
62
42
66
80
102
122
61
41
65
81
101
121
60
40
64
82
100
120
59
39
63
83
99
119
58
38
62
84
98
118
57
37
61
85
97
117
56
36
60
86
96
116
55
35
59
87
95
115
54
34
58
88
94
114
53
33
57
89
93
113
52
32
56
90
92
112
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
43
44
45
46
47
48
49
50
51
52
53
54
55
91
90
89
88
87
86
85
84
83
82
81
80
79
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
44
30
42
78
90
104
43
29
41
77
89
105
42
28
40
76
88
106
41
27
39
75
87
107
40
26
38
74
86
108
39
25
37
73
85
109
38
24
36
72
84
110
37
23
35
71
83
111
36
22
34
70
82
112
35
21
33
69
81
113
34
20
32
68
80
114
25
26
27
28
29
30
31
32
33
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
115
116
117
118
119
120
121
122
123
24
18
44
56
80
122
23
17
45
57
81
121
22
16
46
58
82
120
21
15
47
59
83
119
20
14
48
60
84
118
19
13
49
61
85
117
18
12
50
62
86
116
17
11
51
63
87
115
16
10
52
64
88
114
15
9
53
65
89
113
14
8
54
66
90
112
13
12
11
10
9
8
7
6
5
4
3
2
1
0
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
130
131
132
133
134
135
136
137
138
139
140
141
142
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
172
171
170
169
168
167
166
165
164
163
162
161
160
159
143
133
129
141
153
158
142
132
128
140
152
157
141
131
127
139
151
156
140
130
126
138
150
155
139
129
125
137
149
154
138
128
124
136
148
153
137
127
123
135
147
152
136
126
122
134
146
151
135
125
121
133
145
150
134
124
120
132
144
149
133
123
119
131
143
148
132
120
121
122
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
148
147
146
145
144
143
142
141
140
139
138
137
136
135
147
131
119
113
117
129
148
134
146
130
118
112
116
128
148
133
145
129
117
111
115
127
147
132
144
128
116
110
114
126
146
131
143
127
115
109
113
125
145
130
142
126
114
108
112
124
144
129
141
125
113
107
111
123
143
128
140
124
123
122
121
120
119
118
117
116
115
114
113
112
106
110
122
142
127
128
129
130
131
132
133
134
135
136
137
138
139
111
105
109
121
141
126
110
104
108
120
140
125
109
103
107
119
139
124
108
102
106
118
138
123
107
101
105
117
137
122
106
100
104
116
136
121
105
99
103
115
135
120
104
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
119
103
89
125
118
102
88
124
117
101
87
123
116
98
97
96
95
94
95
96
97
98
99
100
101
102
103
102
101
100
86
122
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
93
99
85
121
116
104
92
98
84
120
117
105
91
97
83
119
118
106
90
96
82
118
119
107
89
95
81
117
120
108
88
94
80
116
121
109
87
93
79
115
122
110
86
92
91
90
89
88
87
86
85
84
83
84
85
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
128
127
126
125
124
123
111
85
82
77
113
127
112
84
81
76
112
128
113
83
80
75
111
129
114
82
79
74
110
130
115
81
78
73
109
131
116
80
77
72
108
132
117
79
76
71
107
133
118
78
75
70
106
134
119
77
74
69
105
133
120
76
73
68
104
132
121
75
72
67
103
131
122
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
66
102
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
128
127
126
125
124
123
73
61
65
101
121
124
72
60
64
100
120
125
71
59
63
99
119
126
70
58
62
98
118
127
69
57
61
97
117
128
68
56
60
96
116
128
67
55
59
95
115
127
66
54
58
94
114
126
65
53
57
93
113
125
64
52
56
92
112
124
63
51
55
91
111
123
62
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
122
61
41
65
79
101
121
60
40
64
80
100
120
59
39
63
81
99
119
58
38
62
82
98
118
57
37
61
83
97
117
56
36
60
84
96
116
55
35
59
85
95
115
54
34
58
86
94
114
53
33
57
87
93
113
52
32
56
88
92
112
51
31
55
89
91
111
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
42
43
44
45
46
47
48
49
50
51
52
53
54
90
89
88
87
86
85
84
83
82
81
80
79
78
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
43
29
41
77
89
103
44
28
40
76
88
104
43
27
39
75
87
105
42
26
38
74
86
106
41
25
37
73
85
107
40
24
36
72
84
108
39
23
35
71
83
109
38
22
34
70
82
110
37
21
33
69
81
111
36
20
32
68
80
112
35
19
31
67
79
113
26
27
28
29
30
31
32
33
34
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
114
115
116
117
118
119
120
121
122
25
17
43
55
79
121
24
16
44
56
80
120
23
15
45
57
81
119
22
14
46
58
82
118
21
13
47
59
83
117
20
12
48
60
84
116
19
11
49
61
85
115
18
10
50
62
86
114
17
9
51
63
87
113
16
8
52
64
88
112
15
7
53
65
89
111
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
129
130
131
132
133
134
135
136
137
138
139
140
141
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
171
170
169
168
167
166
165
164
163
162
161
160
159
158
142
132
128
140
152
157
141
131
127
139
151
156
140
130
126
138
150
155
139
129
125
137
149
154
138
128
124
136
148
153
137
127
123
135
147
152
136
126
122
134
146
151
135
125
121
133
145
150
134
124
120
132
144
149
133
123
119
131
143
148
132
122
118
130
142
147
131
119
120
121
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
147
146
145
144
143
142
141
140
139
138
137
136
135
134
146
130
118
112
116
128
147
133
145
129
117
111
115
127
147
132
144
128
116
110
114
126
146
131
143
127
115
109
113
125
145
130
142
126
114
108
112
124
144
129
141
125
113
107
111
123
143
128
140
124
112
106
110
122
142
127
139
123
122
121
120
119
118
117
116
115
114
113
112
111
105
109
121
141
126
127
128
129
130
131
132
133
134
135
136
137
138
110
104
108
120
140
125
109
103
107
119
139
124
108
102
106
118
138
123
107
101
105
117
137
122
106
100
104
116
136
121
105
99
103
115
135
120
104
98
102
114
134
119
103
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
118
102
88
124
117
101
87
123
116
100
86
122
115
97
96
95
94
93
94
95
96
97
98
99
100
101
102
101
100
99
85
121
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
92
98
84
120
115
103
91
97
83
119
116
104
90
96
82
118
117
105
89
95
81
117
118
106
88
94
80
116
119
107
87
93
79
115
120
108
86
92
78
114
121
109
85
91
90
89
88
87
86
85
84
83
82
83
84
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
127
126
125
124
123
122
110
84
81
76
112
126
111
83
80
75
111
127
112
82
79
74
110
128
113
81
78
73
109
129
114
80
77
72
108
130
115
79
76
71
107
131
116
78
75
70
106
132
117
77
74
69
105
133
118
76
73
68
104
132
119
75
72
67
103
131
120
74
71
66
102
130
121
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
65
101
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
127
126
125
124
123
122
72
60
64
100
120
123
71
59
63
99
119
124
70
58
62
98
118
125
69
57
61
97
117
126
68
56
60
96
116
127
67
55
59
95
115
127
66
54
58
94
114
126
65
53
57
93
113
125
64
52
56
92
112
124
63
51
55
91
111
123
62
50
54
90
110
122
61
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
121
60
40
64
78
100
120
59
39
63
79
99
119
58
38
62
80
98
118
57
37
61
81
97
117
56
36
60
82
96
116
55
35
59
83
95
115
54
34
58
84
94
114
53
33
57
85
93
113
52
32
56
86
92
112
51
31
55
87
91
111
50
30
54
88
90
110
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
41
42
43
44
45
46
47
48
49
50
51
52
53
89
88
87
86
85
84
83
82
81
80
79
78
77
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
42
28
40
76
88
102
43
27
39
75
87
103
44
26
38
74
86
104
43
25
37
73
85
105
42
24
36
72
84
106
41
23
35
71
83
107
40
22
34
70
82
108
39
21
33
69
81
109
38
20
32
68
80
110
37
19
31
67
79
111
36
18
30
66
78
112
27
28
29
30
31
32
33
34
35
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
113
114
115
116
117
118
119
120
121
26
16
42
54
78
120
25
15
43
55
79
119
24
14
44
56
80
118
23
13
45
57
81
117
22
12
46
58
82
116
21
11
47
59
83
115
20
10
48
60
84
114
19
9
49
61
85
113
18
8
50
62
86
112
17
7
51
63
87
111
16
6
52
64
88
110
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
128
129
130
131
132
133
134
135
136
137
138
139
140
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
170
169
168
167
166
165
164
163
162
161
160
159
158
157
141
131
127
139
151
156
140
130
126
138
150
155
139
129
125
137
149
154
138
128
124
136
148
153
137
127
123
135
147
152
136
126
122
134
146
151
135
125
121
133
145
150
134
124
120
132
144
149
133
123
119
131
143
148
132
122
118
130
142
147
131
121
117
129
141
146
130
118
119
120
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
146
145
144
143
142
141
140
139
138
137
136
135
134
133
145
129
117
111
115
127
146
132
144
128
116
110
114
126
146
131
143
127
115
109
113
125
145
130
142
126
114
108
112
124
144
129
141
125
113
107
111
123
143
128
140
124
112
106
110
122
142
127
139
123
111
105
109
121
141
126
138
122
121
120
119
118
117
116
115
114
113
112
111
110
104
108
120
140
125
126
127
128
129
130
131
132
133
134
135
136
137
109
103
107
119
139
124
108
102
106
118
138
123
107
101
105
117
137
122
106
100
104
116
136
121
105
99
103
115
135
120
104
98
102
114
134
119
103
97
101
113
133
118
102
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
117
101
87
123
116
100
86
122
115
99
85
121
114
96
95
94
93
92
93
94
95
96
97
98
99
100
101
100
99
98
84
120
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
91
97
83
119
114
102
90
96
82
118
115
103
89
95
81
117
116
104
88
94
80
116
117
105
87
93
79
115
118
106
86
92
78
114
119
107
85
91
77
113
120
108
84
90
89
88
87
86
85
84
83
82
81
82
83
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
126
125
124
123
122
121
109
83
80
75
111
125
110
82
79
74
110
126
111
81
78
73
109
127
112
80
77
72
108
128
113
79
76
71
107
129
114
78
75
70
106
130
115
77
74
69
105
131
116
76
73
68
104
132
117
75
72
67
103
131
118
74
71
66
102
130
119
73
70
65
101
129
120
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
64
100
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
126
125
124
123
122
121
71
59
63
99
119
122
70
58
62
98
118
123
69
57
61
97
117
124
68
56
60
96
116
125
67
55
59
95
115
126
66
54
58
94
114
126
65
53
57
93
113
125
64
52
56
92
112
124
63
51
55
91
111
123
62
50
54
90
110
122
61
49
53
89
109
121
60
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
120
59
39
63
77
99
119
58
38
62
78
98
118
57
37
61
79
97
117
56
36
60
80
96
116
55
35
59
81
95
115
54
34
58
82
94
114
53
33
57
83
93
113
52
32
56
84
92
112
51
31
55
85
91
111
50
30
54
86
90
110
49
29
53
87
89
109
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
40
41
42
43
44
45
46
47
48
49
50
51
52
88
87
86
85
84
83
82
81
80
79
78
77
76
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
41
27
39
75
87
101
42
26
38
74
86
102
43
25
37
73
85
103
44
24
36
72
84
104
43
23
35
71
83
105
42
22
34
70
82
106
41
21
33
69
81
107
40
20
32
68
80
108
39
19
31
67
79
109
38
18
30
66
78
110
37
17
29
65
77
111
28
29
30
31
32
33
34
35
36
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
112
113
114
115
116
117
118
119
120
27
15
41
53
77
119
26
14
42
54
78
118
25
13
43
55
79
117
24
12
44
56
80
116
23
11
45
57
81
115
22
10
46
58
82
114
21
9
47
59
83
113
20
8
48
60
84
112
19
7
49
61
85
111
18
6
50
62
86
110
17
5
51
63
87
109
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
127
128
129
130
131
132
133
134
135
136
137
138
139
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
169
168
167
166
165
164
163
162
161
160
159
158
157
156
140
130
126
138
150
155
139
129
125
137
149
154
138
128
124
136
148
153
137
127
123
135
147
152
136
126
122
134
146
151
135
125
121
133
145
150
134
124
120
132
144
149
133
123
119
131
143
148
132
122
118
130
142
147
131
121
117
129
141
146
130
120
116
128
140
145
129
117
118
119
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
145
144
143
142
141
140
139
138
137
136
135
134
133
132
144
128
116
110
114
126
145
131
143
127
115
109
113
125
145
130
142
126
114
108
112
124
144
129
141
125
113
107
111
123
143
128
140
124
112
106
110
122
142
127
139
123
111
105
109
121
141
126
138
122
110
104
108
120
140
125
137
121
120
119
118
117
116
115
114
113
112
111
110
109
103
107
119
139
124
125
126
127
128
129
130
131
132
133
134
135
136
108
102
106
118
138
123
107
101
105
117
137
122
106
100
104
116
136
121
105
99
103
115
135
120
104
98
102
114
134
119
103
97
101
113
133
118
102
96
100
112
132
117
101
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
116
100
86
122
115
99
85
121
114
98
84
120
113
95
94
93
92
91
92
93
94
95
96
97
98
99
100
99
98
97
83
119
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
90
96
82
118
113
101
89
95
81
117
114
102
88
94
80
116
115
103
87
93
79
115
116
104
86
92
78
114
117
105
85
91
77
113
118
106
84
90
76
112
119
107
83
89
88
87
86
85
84
83
82
81
80
81
82
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
125
124
123
122
121
120
108
82
79
74
110
124
109
81
78
73
109
125
110
80
77
72
108
126
111
79
76
71
107
127
112
78
75
70
106
128
113
77
74
69
105
129
114
76
73
68
104
130
115
75
72
67
103
131
116
74
71
66
102
130
117
73
70
65
101
129
118
72
69
64
100
128
119
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
63
99
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
125
124
123
122
121
120
70
58
62
98
118
121
69
57
61
97
117
122
68
56
60
96
116
123
67
55
59
95
115
124
66
54
58
94
114
125
65
53
57
93
113
125
64
52
56
92
112
124
63
51
55
91
111
123
62
50
54
90
110
122
61
49
53
89
109
121
60
48
52
88
108
120
59
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
119
58
38
62
76
98
118
57
37
61
77
97
117
56
36
60
78
96
116
55
35
59
79
95
115
54
34
58
80
94
114
53
33
57
81
93
113
52
32
56
82
92
112
51
31
55
83
91
111
50
30
54
84
90
110
49
29
53
85
89
109
48
28
52
86
88
108
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
39
40
41
42
43
44
45
46
47
48
49
50
51
87
86
85
84
83
82
81
80
79
78
77
76
75
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
40
26
38
74
86
100
41
25
37
73
85
101
42
24
36
72
84
102
43
23
35
71
83
103
44
22
34
70
82
104
43
21
33
69
81
105
42
20
32
68
80
106
41
19
31
67
79
107
40
18
30
66
78
108
39
17
29
65
77
109
38
16
28
64
76
110
29
30
31
32
33
34
35
36
37
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
111
112
113
114
115
116
117
118
119
28
14
40
52
76
118
27
13
41
53
77
117
26
12
42
54
78
116
25
11
43
55
79
115
24
10
44
56
80
114
23
9
45
57
81
113
22
8
46
58
82
112
21
7
47
59
83
111
20
6
48
60
84
110
19
5
49
61
85
109
18
4
50
62
86
108
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
126
127
128
129
130
131
132
133
134
135
136
137
138
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
168
167
166
165
164
163
162
161
160
159
158
157
156
155
139
129
125
137
149
154
138
128
124
136
148
153
137
127
123
135
147
152
136
126
122
134
146
151
135
125
121
133
145
150
134
124
120
132
144
149
133
123
119
131
143
148
132
122
118
130
142
147
131
121
117
129
141
146
130
120
116
128
140
145
129
119
115
127
139
144
128
116
117
118
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
144
143
142
141
140
139
138
137
136
135
134
133
132
131
143
127
115
109
113
125
144
130
142
126
114
108
112
124
144
129
141
125
113
107
111
123
143
128
140
124
112
106
110
122
142
127
139
123
111
105
109
121
141
126
138
122
110
104
108
120
140
125
137
121
109
103
107
119
139
124
136
120
119
118
117
116
115
114
113
112
111
110
109
108
102
106
118
138
123
124
125
126
127
128
129
130
131
132
133
134
135
107
101
105
117
137
122
106
100
104
116
136
121
105
99
103
115
135
120
104
98
102
114
134
119
103
97
101
113
133
118
102
96
100
112
132
117
101
95
99
111
131
116
100
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
115
99
85
121
114
98
84
120
113
97
83
119
112
94
93
92
91
90
91
92
93
94
95
96
97
98
99
98
97
96
82
118
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
89
95
81
117
112
100
88
94
80
116
113
101
87
93
79
115
114
102
86
92
78
114
115
103
85
91
77
113
116
104
84
90
76
112
117
105
83
89
75
111
118
106
82
88
87
86
85
84
83
82
81
80
79
80
81
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
107
81
78
73
109
123
108
80
77
72
108
124
109
79
76
71
107
125
110
78
75
70
106
126
111
77
74
69
105
127
112
76
73
68
104
128
113
75
72
67
103
129
114
74
71
66
102
130
115
73
70
65
101
129
116
72
69
64
100
128
117
71
68
63
99
127
118
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
62
98
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
124
123
122
121
120
119
69
57
61
97
117
120
68
56
60
96
116
121
67
55
59
95
115
122
66
54
58
94
114
123
65
53
57
93
113
124
64
52
56
92
112
124
63
51
55
91
111
123
62
50
54
90
110
122
61
49
53
89
109
121
60
48
52
88
108
120
59
47
51
87
107
119
58
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
118
57
37
61
75
97
117
56
36
60
76
96
116
55
35
59
77
95
115
54
34
58
78
94
114
53
33
57
79
93
113
52
32
56
80
92
112
51
31
55
81
91
111
50
30
54
82
90
110
49
29
53
83
89
109
48
28
52
84
88
108
47
27
51
85
87
107
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
38
39
40
41
42
43
44
45
46
47
48
49
50
86
85
84
83
82
81
80
79
78
77
76
75
74
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
39
25
37
73
85
99
40
24
36
72
84
100
41
23
35
71
83
101
42
22
34
70
82
102
43
21
33
69
81
103
44
20
32
68
80
104
43
19
31
67
79
105
42
18
30
66
78
106
41
17
29
65
77
107
40
16
28
64
76
108
39
15
27
63
75
109
30
31
32
33
34
35
36
37
38
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
110
111
112
113
114
115
116
117
118
29
13
39
51
75
117
28
12
40
52
76
116
27
11
41
53
77
115
26
10
42
54
78
114
25
9
43
55
79
113
24
8
44
56
80
112
23
7
45
57
81
111
22
6
46
58
82
110
21
5
47
59
83
109
20
4
48
60
84
108
19
3
49
61
85
107
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
125
126
127
128
129
130
131
132
133
134
135
136
137
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
167
166
165
164
163
162
161
160
159
158
157
156
155
154
138
128
124
136
148
153
137
127
123
135
147
152
136
126
122
134
146
151
135
125
121
133
145
150
134
124
120
132
144
149
133
123
119
131
143
148
132
122
118
130
142
147
131
121
117
129
141
146
130
120
116
128
140
145
129
119
115
127
139
144
128
118
114
126
138
143
127
115
116
117
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
143
142
141
140
139
138
137
136
135
134
133
132
131
130
142
126
114
108
112
124
143
129
141
125
113
107
111
123
143
128
140
124
112
106
110
122
142
127
139
123
111
105
109
121
141
126
138
122
110
104
108
120
140
125
137
121
109
103
107
119
139
124
136
120
108
102
106
118
138
123
135
119
118
117
116
115
114
113
112
111
110
109
108
107
101
105
117
137
122
123
124
125
126
127
128
129
130
131
132
133
134
106
100
104
116
136
121
105
99
103
115
135
120
104
98
102
114
134
119
103
97
101
113
133
118
102
96
100
112
132
117
101
95
99
111
131
116
100
94
98
110
130
115
99
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
114
98
84
120
113
97
83
119
112
96
82
118
111
93
92
91
90
89
90
91
92
93
94
95
96
97
98
97
96
95
81
117
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
88
94
80
116
111
99
87
93
79
115
112
100
86
92
78
114
113
101
85
91
77
113
114
102
84
90
76
112
115
103
83
89
75
111
116
104
82
88
74
110
117
105
81
87
86
85
84
83
82
81
80
79
78
79
80
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
123
122
121
120
119
118
106
80
77
72
108
122
107
79
76
71
107
123
108
78
75
70
106
124
109
77
74
69
105
125
110
76
73
68
104
126
111
75
72
67
103
127
112
74
71
66
102
128
113
73
70
65
101
129
114
72
69
64
100
128
115
71
68
63
99
127
116
70
67
62
98
126
117
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
61
97
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
123
122
121
120
119
118
68
56
60
96
116
119
67
55
59
95
115
120
66
54
58
94
114
121
65
53
57
93
113
122
64
52
56
92
112
123
63
51
55
91
111
123
62
50
54
90
110
122
61
49
53
89
109
121
60
48
52
88
108
120
59
47
51
87
107
119
58
46
50
86
106
118
57
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
117
56
36
60
74
96
116
55
35
59
75
95
115
54
34
58
76
94
114
53
33
57
77
93
113
52
32
56
78
92
112
51
31
55
79
91
111
50
30
54
80
90
110
49
29
53
81
89
109
48
28
52
82
88
108
47
27
51
83
87
107
46
26
50
84
86
106
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
37
38
39
40
41
42
43
44
45
46
47
48
49
85
84
83
82
81
80
79
78
77
76
75
74
73
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
38
24
36
72
84
98
39
23
35
71
83
99
40
22
34
70
82
100
41
21
33
69
81
101
42
20
32
68
80
102
43
19
31
67
79
103
44
18
30
66
78
104
43
17
29
65
77
105
42
16
28
64
76
106
41
15
27
63
75
107
40
14
26
62
74
108
31
32
33
34
35
36
37
38
39
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
109
110
111
112
113
114
115
116
117
30
12
38
50
74
116
29
11
39
51
75
115
28
10
40
52
76
114
27
9
41
53
77
113
26
8
42
54
78
112
25
7
43
55
79
111
24
6
44
56
80
110
23
5
45
57
81
109
22
4
46
58
82
108
21
3
47
59
83
107
20
2
48
60
84
106
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
124
125
126
127
128
129
130
131
132
133
134
135
136
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
166
165
164
163
162
161
160
159
158
157
156
155
154
153
137
127
123
135
147
152
136
126
122
134
146
151
135
125
121
133
145
150
134
124
120
132
144
149
133
123
119
131
143
148
132
122
118
130
142
147
131
121
117
129
141
146
130
120
116
128
140
145
129
119
115
127
139
144
128
118
114
126
138
143
127
117
113
125
137
142
126
114
115
116
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
141
125
113
107
111
123
142
128
140
124
112
106
110
122
142
127
139
123
111
105
109
121
141
126
138
122
110
104
108
120
140
125
137
121
109
103
107
119
139
124
136
120
108
102
106
118
138
123
135
119
107
101
105
117
137
122
134
118
117
116
115
114
113
112
111
110
109
108
107
106
100
104
116
136
121
122
123
124
125
126
127
128
129
130
131
132
133
105
99
103
115
135
120
104
98
102
114
134
119
103
97
101
113
133
118
102
96
100
112
132
117
101
95
99
111
131
116
100
94
98
110
130
115
99
93
97
109
129
114
98
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
113
97
83
119
112
96
82
118
111
95
81
117
110
92
91
90
89
88
89
90
91
92
93
94
95
96
97
96
95
94
80
116
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
87
93
79
115
110
98
86
92
78
114
111
99
85
91
77
113
112
100
84
90
76
112
113
101
83
89
75
111
114
102
82
88
74
110
115
103
81
87
73
109
116
104
80
86
85
84
83
82
81
80
79
78
77
78
79
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
122
121
120
119
118
117
105
79
76
71
107
121
106
78
75
70
106
122
107
77
74
69
105
123
108
76
73
68
104
124
109
75
72
67
103
125
110
74
71
66
102
126
111
73
70
65
101
127
112
72
69
64
100
128
113
71
68
63
99
127
114
70
67
62
98
126
115
69
66
61
97
125
116
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
60
96
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
122
121
120
119
118
117
67
55
59
95
115
118
66
54
58
94
114
119
65
53
57
93
113
120
64
52
56
92
112
121
63
51
55
91
111
122
62
50
54
90
110
122
61
49
53
89
109
121
60
48
52
88
108
120
59
47
51
87
107
119
58
46
50
86
106
118
57
45
49
85
105
117
56
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
116
55
35
59
73
95
115
54
34
58
74
94
114
53
33
57
75
93
113
52
32
56
76
92
112
51
31
55
77
91
111
50
30
54
78
90
110
49
29
53
79
89
109
48
28
52
80
88
108
47
27
51
81
87
107
46
26
50
82
86
106
45
25
49
83
85
105
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
36
37
38
39
40
41
42
43
44
45
46
47
48
84
83
82
81
80
79
78
77
76
75
74
73
72
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
37
23
35
71
83
97
38
22
34
70
82
98
39
21
33
69
81
99
40
20
32
68
80
100
41
19
31
67
79
101
42
18
30
66
78
102
43
17
29
65
77
103
44
16
28
64
76
104
43
15
27
63
75
105
42
14
26
62
74
106
41
13
25
61
73
107
32
33
34
35
36
37
38
39
40
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
108
109
110
111
112
113
114
115
116
31
11
37
49
73
115
30
10
38
50
74
114
29
9
39
51
75
113
28
8
40
52
76
112
27
7
41
53
77
111
26
6
42
54
78
110
25
5
43
55
79
109
24
4
44
56
80
108
23
3
45
57
81
107
22
2
46
58
82
106
21
1
47
59
83
105
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
174
175
176
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
160
161
162
163
164
165
166
167
168
169
170
171
172
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
195
194
193
192
191
190
189
188
187
186
185
184
173
163
159
171
175
183
172
162
158
170
174
182
171
161
157
169
173
181
170
160
156
168
172
180
169
159
155
167
171
179
168
158
154
166
170
178
167
157
153
165
169
177
166
156
152
164
168
176
165
155
151
163
167
175
164
154
150
162
166
174
163
153
149
161
165
173
162
150
151
152
153
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
163
162
161
160
172
161
149
143
147
159
155
159
171
160
148
142
146
158
154
158
170
159
147
141
145
157
153
157
169
158
146
140
144
156
152
156
168
157
145
139
143
155
151
155
167
156
144
138
142
154
150
154
166
155
143
137
141
153
149
153
165
154
153
152
151
150
149
148
147
146
145
144
143
142
136
140
152
148
152
153
154
155
156
157
158
159
160
161
162
163
164
141
135
139
151
147
151
140
134
138
150
146
150
139
133
137
149
145
149
138
132
136
148
144
148
137
131
135
147
143
147
136
130
134
146
142
146
135
129
133
145
141
145
134
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
144
133
119
131
143
132
118
130
142
131
117
129
141
128
127
126
125
124
125
126
127
128
129
130
131
132
133
132
131
130
116
128
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
123
129
115
127
139
134
122
128
114
126
138
134
121
127
113
125
137
133
120
126
112
124
136
132
119
125
111
123
135
131
118
124
110
122
134
130
117
123
109
121
133
129
116
122
121
120
119
118
117
116
115
114
113
114
115
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
127
126
125
124
125
126
127
128
129
130
131
132
128
115
112
107
119
123
127
114
111
106
118
122
126
113
110
105
117
121
125
112
109
104
116
120
124
111
108
103
115
119
123
110
107
102
114
118
122
109
106
101
113
117
121
108
105
100
112
116
120
107
104
99
111
115
119
106
103
98
110
114
118
105
102
97
109
113
117
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
96
108
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
103
91
95
107
103
115
102
90
94
106
102
114
101
89
93
105
101
113
100
88
92
104
100
112
99
87
91
103
99
111
98
86
90
102
98
110
97
85
89
101
97
109
96
84
88
100
96
108
95
83
87
99
95
107
94
82
86
98
94
106
93
81
85
97
93
105
92
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
104
91
71
71
83
83
103
90
70
70
82
82
102
89
69
69
81
81
101
88
68
68
80
80
100
87
67
67
79
79
99
86
66
66
78
78
98
85
65
65
77
77
97
84
64
64
76
76
96
83
63
63
75
75
95
82
62
62
74
74
94
81
61
61
73
73
93
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
48
49
50
51
52
53
54
55
56
57
58
59
60
72
71
70
69
68
67
66
65
64
63
62
61
60
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
73
59
47
59
71
85
74
58
46
58
70
86
75
57
45
57
69
87
76
56
44
56
68
88
77
55
43
55
67
89
78
54
42
54
66
90
79
53
41
53
65
91
80
52
40
52
64
92
81
51
39
51
63
93
82
50
38
50
62
94
83
49
37
49
61
95
92
91
90
89
88
87
86
85
84
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
96
97
98
99
100
101
102
103
104
91
49
23
37
61
103
90
50
22
38
62
102
89
51
21
39
63
101
88
52
20
40
64
100
87
53
19
41
65
99
86
54
18
42
66
98
85
55
17
43
67
97
84
56
16
44
68
96
83
57
15
45
69
95
82
58
14
46
70
94
81
59
13
47
71
93
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
0
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
159
160
161
162
163
164
165
166
167
168
169
170
171
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
194
193
192
191
190
189
188
187
186
185
184
183
172
162
158
170
174
182
171
161
157
169
173
181
170
160
156
168
172
180
169
159
155
167
171
179
168
158
154
166
170
178
167
157
153
165
169
177
166
156
152
164
168
176
165
155
151
163
167
175
164
154
150
162
166
174
163
153
149
161
165
173
162
152
148
160
164
172
161
149
150
151
152
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
162
161
160
159
171
160
148
142
146
158
154
158
170
159
147
141
145
157
153
157
169
158
146
140
144
156
152
156
168
157
145
139
143
155
151
155
167
156
144
138
142
154
150
154
166
155
143
137
141
153
149
153
165
154
142
136
140
152
148
152
164
153
152
151
150
149
148
147
146
145
144
143
142
141
135
139
151
147
151
152
153
154
155
156
157
158
159
160
161
162
163
140
134
138
150
146
150
139
133
137
149
145
149
138
132
136
148
144
148
137
131
135
147
143
147
136
130
134
146
142
146
135
129
133
145
141
145
134
128
132
144
140
144
133
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
143
132
118
130
142
131
117
129
141
130
116
128
140
127
126
125
124
123
124
125
126
127
128
129
130
131
132
131
130
129
115
127
139
140
141
141
140
139
138
137
136
135
134
133
132
131
130
129
128
122
128
114
126
138
133
121
127
113
125
137
133
120
126
112
124
136
132
119
125
111
123
135
131
118
124
110
122
134
130
117
123
109
121
133
129
116
122
108
120
132
128
115
121
120
119
118
117
116
115
114
113
112
113
114
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
126
125
124
123
124
125
126
127
128
129
130
131
127
114
111
106
118
122
126
113
110
105
117
121
125
112
109
104
116
120
124
111
108
103
115
119
123
110
107
102
114
118
122
109
106
101
113
117
121
108
105
100
112
116
120
107
104
99
111
115
119
106
103
98
110
114
118
105
102
97
109
113
117
104
101
96
108
112
116
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
95
107
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
102
90
94
106
102
114
101
89
93
105
101
113
100
88
92
104
100
112
99
87
91
103
99
111
98
86
90
102
98
110
97
85
89
101
97
109
96
84
88
100
96
108
95
83
87
99
95
107
94
82
86
98
94
106
93
81
85
97
93
105
92
80
84
96
92
104
91
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
103
90
70
70
82
82
102
89
69
69
81
81
101
88
68
68
80
80
100
87
67
67
79
79
99
86
66
66
78
78
98
85
65
65
77
77
97
84
64
64
76
76
96
83
63
63
75
75
95
82
62
62
74
74
94
81
61
61
73
73
93
80
60
60
72
72
92
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
47
48
49
50
51
52
53
54
55
56
57
58
59
71
70
69
68
67
66
65
64
63
62
61
60
59
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
72
58
46
58
70
84
73
57
45
57
69
85
74
56
44
56
68
86
75
55
43
55
67
87
76
54
42
54
66
88
77
53
41
53
65
89
78
52
40
52
64
90
79
51
39
51
63
91
80
50
38
50
62
92
81
49
37
49
61
93
82
48
36
48
60
94
91
90
89
88
87
86
85
84
83
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
95
96
97
98
99
100
101
102
103
90
48
22
36
60
102
89
49
21
37
61
101
88
50
20
38
62
100
87
51
19
39
63
99
86
52
18
40
64
98
85
53
17
41
65
97
84
54
16
42
66
96
83
55
15
43
67
95
82
56
14
44
68
94
81
57
13
45
69
93
80
58
12
46
70
92
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
1
0
172
173
174
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
158
159
160
161
162
163
164
165
166
167
168
169
170
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
193
192
191
190
189
188
187
186
185
184
183
182
171
161
157
169
173
181
170
160
156
168
172
180
169
159
155
167
171
179
168
158
154
166
170
178
167
157
153
165
169
177
166
156
152
164
168
176
165
155
151
163
167
175
164
154
150
162
166
174
163
153
149
161
165
173
162
152
148
160
164
172
161
151
147
159
163
171
160
148
149
150
151
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
161
160
159
158
170
159
147
141
145
157
153
157
169
158
146
140
144
156
152
156
168
157
145
139
143
155
151
155
167
156
144
138
142
154
150
154
166
155
143
137
141
153
149
153
165
154
142
136
140
152
148
152
164
153
141
135
139
151
147
151
163
152
151
150
149
148
147
146
145
144
143
142
141
140
134
138
150
146
150
151
152
153
154
155
156
157
158
159
160
161
162
139
133
137
149
145
149
138
132
136
148
144
148
137
131
135
147
143
147
136
130
134
146
142
146
135
129
133
145
141
145
134
128
132
144
140
144
133
127
131
143
139
143
132
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
142
131
117
129
141
130
116
128
140
129
115
127
139
126
125
124
123
122
123
124
125
126
127
128
129
130
131
130
129
128
114
126
138
139
140
140
139
138
137
136
135
134
133
132
131
130
129
128
127
121
127
113
125
137
132
120
126
112
124
136
132
119
125
111
123
135
131
118
124
110
122
134
130
117
123
109
121
133
129
116
122
108
120
132
128
115
121
107
119
131
127
114
120
119
118
117
116
115
114
113
112
111
112
113
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
125
124
123
122
123
124
125
126
127
128
129
130
126
113
110
105
117
121
125
112
109
104
116
120
124
111
108
103
115
119
123
110
107
102
114
118
122
109
106
101
113
117
121
108
105
100
112
116
120
107
104
99
111
115
119
106
103
98
110
114
118
105
102
97
109
113
117
104
101
96
108
112
116
103
100
95
107
111
115
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
94
106
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
101
89
93
105
101
113
100
88
92
104
100
112
99
87
91
103
99
111
98
86
90
102
98
110
97
85
89
101
97
109
96
84
88
100
96
108
95
83
87
99
95
107
94
82
86
98
94
106
93
81
85
97
93
105
92
80
84
96
92
104
91
79
83
95
91
103
90
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
102
89
69
69
81
81
101
88
68
68
80
80
100
87
67
67
79
79
99
86
66
66
78
78
98
85
65
65
77
77
97
84
64
64
76
76
96
83
63
63
75
75
95
82
62
62
74
74
94
81
61
61
73
73
93
80
60
60
72
72
92
79
59
59
71
71
91
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
46
47
48
49
50
51
52
53
54
55
56
57
58
70
69
68
67
66
65
64
63
62
61
60
59
58
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
71
57
45
57
69
83
72
56
44
56
68
84
73
55
43
55
67
85
74
54
42
54
66
86
75
53
41
53
65
87
76
52
40
52
64
88
77
51
39
51
63
89
78
50
38
50
62
90
79
49
37
49
61
91
80
48
36
48
60
92
81
47
35
47
59
93
90
89
88
87
86
85
84
83
82
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
94
95
96
97
98
99
100
101
102
89
47
21
35
59
101
88
48
20
36
60
100
87
49
19
37
61
99
86
50
18
38
62
98
85
51
17
39
63
97
84
52
16
40
64
96
83
53
15
41
65
95
82
54
14
42
66
94
81
55
13
43
67
93
80
56
12
44
68
92
79
57
11
45
69
91
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
2
1
0
171
172
173
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
157
158
159
160
161
162
163
164
165
166
167
168
169
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
192
191
190
189
188
187
186
185
184
183
182
181
170
160
156
168
172
180
169
159
155
167
171
179
168
158
154
166
170
178
167
157
153
165
169
177
166
156
152
164
168
176
165
155
151
163
167
175
164
154
150
162
166
174
163
153
149
161
165
173
162
152
148
160
164
172
161
151
147
159
163
171
160
150
146
158
162
170
159
147
148
149
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
160
159
158
157
169
158
146
140
144
156
152
156
168
157
145
139
143
155
151
155
167
156
144
138
142
154
150
154
166
155
143
137
141
153
149
153
165
154
142
136
140
152
148
152
164
153
141
135
139
151
147
151
163
152
140
134
138
150
146
150
162
151
150
149
148
147
146
145
144
143
142
141
140
139
133
137
149
145
149
150
151
152
153
154
155
156
157
158
159
160
161
138
132
136
148
144
148
137
131
135
147
143
147
136
130
134
146
142
146
135
129
133
145
141
145
134
128
132
144
140
144
133
127
131
143
139
143
132
126
130
142
138
142
131
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
141
130
116
128
140
129
115
127
139
128
114
126
138
125
124
123
122
121
122
123
124
125
126
127
128
129
130
129
128
127
113
125
137
138
139
139
138
137
136
135
134
133
132
131
130
129
128
127
126
120
126
112
124
136
131
119
125
111
123
135
131
118
124
110
122
134
130
117
123
109
121
133
129
116
122
108
120
132
128
115
121
107
119
131
127
114
120
106
118
130
126
113
119
118
117
116
115
114
113
112
111
110
111
112
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
124
123
122
121
122
123
124
125
126
127
128
129
125
112
109
104
116
120
124
111
108
103
115
119
123
110
107
102
114
118
122
109
106
101
113
117
121
108
105
100
112
116
120
107
104
99
111
115
119
106
103
98
110
114
118
105
102
97
109
113
117
104
101
96
108
112
116
103
100
95
107
111
115
102
99
94
106
110
114
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
93
105
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
100
88
92
104
100
112
99
87
91
103
99
111
98
86
90
102
98
110
97
85
89
101
97
109
96
84
88
100
96
108
95
83
87
99
95
107
94
82
86
98
94
106
93
81
85
97
93
105
92
80
84
96
92
104
91
79
83
95
91
103
90
78
82
94
90
102
89
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
101
88
68
68
80
80
100
87
67
67
79
79
99
86
66
66
78
78
98
85
65
65
77
77
97
84
64
64
76
76
96
83
63
63
75
75
95
82
62
62
74
74
94
81
61
61
73
73
93
80
60
60
72
72
92
79
59
59
71
71
91
78
58
58
70
70
90
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
45
46
47
48
49
50
51
52
53
54
55
56
57
69
68
67
66
65
64
63
62
61
60
59
58
57
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
70
56
44
56
68
82
71
55
43
55
67
83
72
54
42
54
66
84
73
53
41
53
65
85
74
52
40
52
64
86
75
51
39
51
63
87
76
50
38
50
62
88
77
49
37
49
61
89
78
48
36
48
60
90
79
47
35
47
59
91
80
46
34
46
58
92
89
88
87
86
85
84
83
82
81
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
93
94
95
96
97
98
99
100
101
88
46
20
34
58
100
87
47
19
35
59
99
86
48
18
36
60
98
85
49
17
37
61
97
84
50
16
38
62
96
83
51
15
39
63
95
82
52
14
40
64
94
81
53
13
41
65
93
80
54
12
42
66
92
79
55
11
43
67
91
78
56
10
44
68
90
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
3
2
1
0
170
171
172
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
156
157
158
159
160
161
162
163
164
165
166
167
168
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
191
190
189
188
187
186
185
184
183
182
181
180
169
159
155
167
171
179
168
158
154
166
170
178
167
157
153
165
169
177
166
156
152
164
168
176
165
155
151
163
167
175
164
154
150
162
166
174
163
153
149
161
165
173
162
152
148
160
164
172
161
151
147
159
163
171
160
150
146
158
162
170
159
149
145
157
161
169
158
146
147
148
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
159
158
157
156
168
157
145
139
143
155
151
155
167
156
144
138
142
154
150
154
166
155
143
137
141
153
149
153
165
154
142
136
140
152
148
152
164
153
141
135
139
151
147
151
163
152
140
134
138
150
146
150
162
151
139
133
137
149
145
149
161
150
149
148
147
146
145
144
143
142
141
140
139
138
132
136
148
144
148
149
150
151
152
153
154
155
156
157
158
159
160
137
131
135
147
143
147
136
130
134
146
142
146
135
129
133
145
141
145
134
128
132
144
140
144
133
127
131
143
139
143
132
126
130
142
138
142
131
125
129
141
137
141
130
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
140
129
115
127
139
128
114
126
138
127
113
125
137
124
123
122
121
120
121
122
123
124
125
126
127
128
129
128
127
126
112
124
136
137
138
138
137
136
135
134
133
132
131
130
129
128
127
126
125
119
125
111
123
135
130
118
124
110
122
134
130
117
123
109
121
133
129
116
122
108
120
132
128
115
121
107
119
131
127
114
120
106
118
130
126
113
119
105
117
129
125
112
118
117
116
115
114
113
112
111
110
109
110
111
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
123
122
121
120
121
122
123
124
125
126
127
128
124
111
108
103
115
119
123
110
107
102
114
118
122
109
106
101
113
117
121
108
105
100
112
116
120
107
104
99
111
115
119
106
103
98
110
114
118
105
102
97
109
113
117
104
101
96
108
112
116
103
100
95
107
111
115
102
99
94
106
110
114
101
98
93
105
109
113
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
92
104
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
99
87
91
103
99
111
98
86
90
102
98
110
97
85
89
101
97
109
96
84
88
100
96
108
95
83
87
99
95
107
94
82
86
98
94
106
93
81
85
97
93
105
92
80
84
96
92
104
91
79
83
95
91
103
90
78
82
94
90
102
89
77
81
93
89
101
88
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
100
87
67
67
79
79
99
86
66
66
78
78
98
85
65
65
77
77
97
84
64
64
76
76
96
83
63
63
75
75
95
82
62
62
74
74
94
81
61
61
73
73
93
80
60
60
72
72
92
79
59
59
71
71
91
78
58
58
70
70
90
77
57
57
69
69
89
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
44
45
46
47
48
49
50
51
52
53
54
55
56
68
67
66
65
64
63
62
61
60
59
58
57
56
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
69
55
43
55
67
81
70
54
42
54
66
82
71
53
41
53
65
83
72
52
40
52
64
84
73
51
39
51
63
85
74
50
38
50
62
86
75
49
37
49
61
87
76
48
36
48
60
88
77
47
35
47
59
89
78
46
34
46
58
90
79
45
33
45
57
91
88
87
86
85
84
83
82
81
80
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
92
93
94
95
96
97
98
99
100
87
45
19
33
57
99
86
46
18
34
58
98
85
47
17
35
59
97
84
48
16
36
60
96
83
49
15
37
61
95
82
50
14
38
62
94
81
51
13
39
63
93
80
52
12
40
64
92
79
53
11
41
65
91
78
54
10
42
66
90
77
55
9
43
67
89
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
4
3
2
1
0
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
155
156
157
158
159
160
161
162
163
164
165
166
167
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
190
189
188
187
186
185
184
183
182
181
180
179
168
158
154
166
170
178
167
157
153
165
169
177
166
156
152
164
168
176
165
155
151
163
167
175
164
154
150
162
166
174
163
153
149
161
165
173
162
152
148
160
164
172
161
151
147
159
163
171
160
150
146
158
162
170
159
149
145
157
161
169
158
148
144
156
160
168
157
145
146
147
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
158
157
156
155
167
156
144
138
142
154
150
154
166
155
143
137
141
153
149
153
165
154
142
136
140
152
148
152
164
153
141
135
139
151
147
151
163
152
140
134
138
150
146
150
162
151
139
133
137
149
145
149
161
150
138
132
136
148
144
148
160
149
148
147
146
145
144
143
142
141
140
139
138
137
131
135
147
143
147
148
149
150
151
152
153
154
155
156
157
158
159
136
130
134
146
142
146
135
129
133
145
141
145
134
128
132
144
140
144
133
127
131
143
139
143
132
126
130
142
138
142
131
125
129
141
137
141
130
124
128
140
136
140
129
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
139
128
114
126
138
127
113
125
137
126
112
124
136
123
122
121
120
119
120
121
122
123
124
125
126
127
128
127
126
125
111
123
135
136
137
137
136
135
134
133
132
131
130
129
128
127
126
125
124
118
124
110
122
134
129
117
123
109
121
133
129
116
122
108
120
132
128
115
121
107
119
131
127
114
120
106
118
130
126
113
119
105
117
129
125
112
118
104
116
128
124
111
117
116
115
114
113
112
111
110
109
108
109
110
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
122
121
120
119
120
121
122
123
124
125
126
127
123
110
107
102
114
118
122
109
106
101
113
117
121
108
105
100
112
116
120
107
104
99
111
115
119
106
103
98
110
114
118
105
102
97
109
113
117
104
101
96
108
112
116
103
100
95
107
111
115
102
99
94
106
110
114
101
98
93
105
109
113
100
97
92
104
108
112
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
91
103
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
98
86
90
102
98
110
97
85
89
101
97
109
96
84
88
100
96
108
95
83
87
99
95
107
94
82
86
98
94
106
93
81
85
97
93
105
92
80
84
96
92
104
91
79
83
95
91
103
90
78
82
94
90
102
89
77
81
93
89
101
88
76
80
92
88
100
87
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
99
86
66
66
78
78
98
85
65
65
77
77
97
84
64
64
76
76
96
83
63
63
75
75
95
82
62
62
74
74
94
81
61
61
73
73
93
80
60
60
72
72
92
79
59
59
71
71
91
78
58
58
70
70
90
77
57
57
69
69
89
76
56
56
68
68
88
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
43
44
45
46
47
48
49
50
51
52
53
54
55
67
66
65
64
63
62
61
60
59
58
57
56
55
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
68
54
42
54
66
80
69
53
41
53
65
81
70
52
40
52
64
82
71
51
39
51
63
83
72
50
38
50
62
84
73
49
37
49
61
85
74
48
36
48
60
86
75
47
35
47
59
87
76
46
34
46
58
88
77
45
33
45
57
89
78
44
32
44
56
90
87
86
85
84
83
82
81
80
79
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
91
92
93
94
95
96
97
98
99
86
44
18
32
56
98
85
45
17
33
57
97
84
46
16
34
58
96
83
47
15
35
59
95
82
48
14
36
60
94
81
49
13
37
61
93
80
50
12
38
62
92
79
51
11
39
63
91
78
52
10
40
64
90
77
53
9
41
65
89
76
54
8
42
66
88
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
5
4
3
2
1
0
168
169
170
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
154
155
156
157
158
159
160
161
162
163
164
165
166
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
189
188
187
186
185
184
183
182
181
180
179
178
167
157
153
165
169
177
166
156
152
164
168
176
165
155
151
163
167
175
164
154
150
162
166
174
163
153
149
161
165
173
162
152
148
160
164
172
161
151
147
159
163
171
160
150
146
158
162
170
159
149
145
157
161
169
158
148
144
156
160
168
157
147
143
155
159
167
156
144
145
146
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
157
156
155
154
166
155
143
137
141
153
149
153
165
154
142
136
140
152
148
152
164
153
141
135
139
151
147
151
163
152
140
134
138
150
146
150
162
151
139
133
137
149
145
149
161
150
138
132
136
148
144
148
160
149
137
131
135
147
143
147
159
148
147
146
145
144
143
142
141
140
139
138
137
136
130
134
146
142
146
147
148
149
150
151
152
153
154
155
156
157
158
135
129
133
145
141
145
134
128
132
144
140
144
133
127
131
143
139
143
132
126
130
142
138
142
131
125
129
141
137
141
130
124
128
140
136
140
129
123
127
139
135
139
128
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
138
127
113
125
137
126
112
124
136
125
111
123
135
122
121
120
119
118
119
120
121
122
123
124
125
126
127
126
125
124
110
122
134
135
136
136
135
134
133
132
131
130
129
128
127
126
125
124
123
117
123
109
121
133
128
116
122
108
120
132
128
115
121
107
119
131
127
114
120
106
118
130
126
113
119
105
117
129
125
112
118
104
116
128
124
111
117
103
115
127
123
110
116
115
114
113
112
111
110
109
108
107
108
109
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
121
120
119
118
119
120
121
122
123
124
125
126
122
109
106
101
113
117
121
108
105
100
112
116
120
107
104
99
111
115
119
106
103
98
110
114
118
105
102
97
109
113
117
104
101
96
108
112
116
103
100
95
107
111
115
102
99
94
106
110
114
101
98
93
105
109
113
100
97
92
104
108
112
99
96
91
103
107
111
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
90
102
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
97
85
89
101
97
109
96
84
88
100
96
108
95
83
87
99
95
107
94
82
86
98
94
106
93
81
85
97
93
105
92
80
84
96
92
104
91
79
83
95
91
103
90
78
82
94
90
102
89
77
81
93
89
101
88
76
80
92
88
100
87
75
79
91
87
99
86
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
98
85
65
65
77
77
97
84
64
64
76
76
96
83
63
63
75
75
95
82
62
62
74
74
94
81
61
61
73
73
93
80
60
60
72
72
92
79
59
59
71
71
91
78
58
58
70
70
90
77
57
57
69
69
89
76
56
56
68
68
88
75
55
55
67
67
87
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
42
43
44
45
46
47
48
49
50
51
52
53
54
66
65
64
63
62
61
60
59
58
57
56
55
54
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
67
53
41
53
65
79
68
52
40
52
64
80
69
51
39
51
63
81
70
50
38
50
62
82
71
49
37
49
61
83
72
48
36
48
60
84
73
47
35
47
59
85
74
46
34
46
58
86
75
45
33
45
57
87
76
44
32
44
56
88
77
43
31
43
55
89
86
85
84
83
82
81
80
79
78
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
90
91
92
93
94
95
96
97
98
85
43
17
31
55
97
84
44
16
32
56
96
83
45
15
33
57
95
82
46
14
34
58
94
81
47
13
35
59
93
80
48
12
36
60
92
79
49
11
37
61
91
78
50
10
38
62
90
77
51
9
39
63
89
76
52
8
40
64
88
75
53
7
41
65
87
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
6
5
4
3
2
1
0
167
168
169
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
153
154
155
156
157
158
159
160
161
162
163
164
165
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
188
187
186
185
184
183
182
181
180
179
178
177
166
156
152
164
168
176
165
155
151
163
167
175
164
154
150
162
166
174
163
153
149
161
165
173
162
152
148
160
164
172
161
151
147
159
163
171
160
150
146
158
162
170
159
149
145
157
161
169
158
148
144
156
160
168
157
147
143
155
159
167
156
146
142
154
158
166
155
143
144
145
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
156
155
154
153
165
154
142
136
140
152
148
152
164
153
141
135
139
151
147
151
163
152
140
134
138
150
146
150
162
151
139
133
137
149
145
149
161
150
138
132
136
148
144
148
160
149
137
131
135
147
143
147
159
148
136
130
134
146
142
146
158
147
146
145
144
143
142
141
140
139
138
137
136
135
129
133
145
141
145
146
147
148
149
150
151
152
153
154
155
156
157
134
128
132
144
140
144
133
127
131
143
139
143
132
126
130
142
138
142
131
125
129
141
137
141
130
124
128
140
136
140
129
123
127
139
135
139
128
122
126
138
134
138
127
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
137
126
112
124
136
125
111
123
135
124
110
122
134
121
120
119
118
117
118
119
120
121
122
123
124
125
126
125
124
123
109
121
133
134
135
135
134
133
132
131
130
129
128
127
126
125
124
123
122
116
122
108
120
132
127
115
121
107
119
131
127
114
120
106
118
130
126
113
119
105
117
129
125
112
118
104
116
128
124
111
117
103
115
127
123
110
116
102
114
126
122
109
115
114
113
112
111
110
109
108
107
106
107
108
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
120
119
118
117
118
119
120
121
122
123
124
125
121
108
105
100
112
116
120
107
104
99
111
115
119
106
103
98
110
114
118
105
102
97
109
113
117
104
101
96
108
112
116
103
100
95
107
111
115
102
99
94
106
110
114
101
98
93
105
109
113
100
97
92
104
108
112
99
96
91
103
107
111
98
95
90
102
106
110
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
89
101
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
96
84
88
100
96
108
95
83
87
99
95
107
94
82
86
98
94
106
93
81
85
97
93
105
92
80
84
96
92
104
91
79
83
95
91
103
90
78
82
94
90
102
89
77
81
93
89
101
88
76
80
92
88
100
87
75
79
91
87
99
86
74
78
90
86
98
85
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
97
84
64
64
76
76
96
83
63
63
75
75
95
82
62
62
74
74
94
81
61
61
73
73
93
80
60
60
72
72
92
79
59
59
71
71
91
78
58
58
70
70
90
77
57
57
69
69
89
76
56
56
68
68
88
75
55
55
67
67
87
74
54
54
66
66
86
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
41
42
43
44
45
46
47
48
49
50
51
52
53
65
64
63
62
61
60
59
58
57
56
55
54
53
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
66
52
40
52
64
78
67
51
39
51
63
79
68
50
38
50
62
80
69
49
37
49
61
81
70
48
36
48
60
82
71
47
35
47
59
83
72
46
34
46
58
84
73
45
33
45
57
85
74
44
32
44
56
86
75
43
31
43
55
87
76
42
30
42
54
88
85
84
83
82
81
80
79
78
77
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
89
90
91
92
93
94
95
96
97
84
42
16
30
54
96
83
43
15
31
55
95
82
44
14
32
56
94
81
45
13
33
57
93
80
46
12
34
58
92
79
47
11
35
59
91
78
48
10
36
60
90
77
49
9
37
61
89
76
50
8
38
62
88
75
51
7
39
63
87
74
52
6
40
64
86
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
7
6
5
4
3
2
1
0
166
167
168
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
152
153
154
155
156
157
158
159
160
161
162
163
164
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
187
186
185
184
183
182
181
180
179
178
177
176
165
155
151
163
167
175
164
154
150
162
166
174
163
153
149
161
165
173
162
152
148
160
164
172
161
151
147
159
163
171
160
150
146
158
162
170
159
149
145
157
161
169
158
148
144
156
160
168
157
147
143
155
159
167
156
146
142
154
158
166
155
145
141
153
157
165
154
142
143
144
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
155
154
153
152
164
153
141
135
139
151
147
151
163
152
140
134
138
150
146
150
162
151
139
133
137
149
145
149
161
150
138
132
136
148
144
148
160
149
137
131
135
147
143
147
159
148
136
130
134
146
142
146
158
147
135
129
133
145
141
145
157
146
145
144
143
142
141
140
139
138
137
136
135
134
128
132
144
140
144
145
146
147
148
149
150
151
152
153
154
155
156
133
127
131
143
139
143
132
126
130
142
138
142
131
125
129
141
137
141
130
124
128
140
136
140
129
123
127
139
135
139
128
122
126
138
134
138
127
121
125
137
133
137
126
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
136
125
111
123
135
124
110
122
134
123
109
121
133
120
119
118
117
116
117
118
119
120
121
122
123
124
125
124
123
122
108
120
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
115
121
107
119
131
126
114
120
106
118
130
126
113
119
105
117
129
125
112
118
104
116
128
124
111
117
103
115
127
123
110
116
102
114
126
122
109
115
101
113
125
121
108
114
113
112
111
110
109
108
107
106
105
106
107
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
119
118
117
116
117
118
119
120
121
122
123
124
120
107
104
99
111
115
119
106
103
98
110
114
118
105
102
97
109
113
117
104
101
96
108
112
116
103
100
95
107
111
115
102
99
94
106
110
114
101
98
93
105
109
113
100
97
92
104
108
112
99
96
91
103
107
111
98
95
90
102
106
110
97
94
89
101
105
109
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
88
100
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
95
83
87
99
95
107
94
82
86
98
94
106
93
81
85
97
93
105
92
80
84
96
92
104
91
79
83
95
91
103
90
78
82
94
90
102
89
77
81
93
89
101
88
76
80
92
88
100
87
75
79
91
87
99
86
74
78
90
86
98
85
73
77
89
85
97
84
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
96
83
63
63
75
75
95
82
62
62
74
74
94
81
61
61
73
73
93
80
60
60
72
72
92
79
59
59
71
71
91
78
58
58
70
70
90
77
57
57
69
69
89
76
56
56
68
68
88
75
55
55
67
67
87
74
54
54
66
66
86
73
53
53
65
65
85
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
40
41
42
43
44
45
46
47
48
49
50
51
52
64
63
62
61
60
59
58
57
56
55
54
53
52
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
65
51
39
51
63
77
66
50
38
50
62
78
67
49
37
49
61
79
68
48
36
48
60
80
69
47
35
47
59
81
70
46
34
46
58
82
71
45
33
45
57
83
72
44
32
44
56
84
73
43
31
43
55
85
74
42
30
42
54
86
75
41
29
41
53
87
84
83
82
81
80
79
78
77
76
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
88
89
90
91
92
93
94
95
96
83
41
15
29
53
95
82
42
14
30
54
94
81
43
13
31
55
93
80
44
12
32
56
92
79
45
11
33
57
91
78
46
10
34
58
90
77
47
9
35
59
89
76
48
8
36
60
88
75
49
7
37
61
87
74
50
6
38
62
86
73
51
5
39
63
85
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
8
7
6
5
4
3
2
1
0
165
166
167
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
151
152
153
154
155
156
157
158
159
160
161
162
163
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
186
185
184
183
182
181
180
179
178
177
176
175
164
154
150
162
166
174
163
153
149
161
165
173
162
152
148
160
164
172
161
151
147
159
163
171
160
150
146
158
162
170
159
149
145
157
161
169
158
148
144
156
160
168
157
147
143
155
159
167
156
146
142
154
158
166
155
145
141
153
157
165
154
144
140
152
156
164
153
141
142
143
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
154
153
152
151
163
152
140
134
138
150
146
150
162
151
139
133
137
149
145
149
161
150
138
132
136
148
144
148
160
149
137
131
135
147
143
147
159
148
136
130
134
146
142
146
158
147
135
129
133
145
141
145
157
146
134
128
132
144
140
144
156
145
144
143
142
141
140
139
138
137
136
135
134
133
127
131
143
139
143
144
145
146
147
148
149
150
151
152
153
154
155
132
126
130
142
138
142
131
125
129
141
137
141
130
124
128
140
136
140
129
123
127
139
135
139
128
122
126
138
134
138
127
121
125
137
133
137
126
120
124
136
132
136
125
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
135
124
110
122
134
123
109
121
133
122
108
120
132
119
118
117
116
115
116
117
118
119
120
121
122
123
124
123
122
121
107
119
131
132
133
133
132
131
130
129
128
127
126
125
124
123
122
121
120
114
120
106
118
130
125
113
119
105
117
129
125
112
118
104
116
128
124
111
117
103
115
127
123
110
116
102
114
126
122
109
115
101
113
125
121
108
114
100
112
124
120
107
113
112
111
110
109
108
107
106
105
104
105
106
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
118
117
116
115
116
117
118
119
120
121
122
123
119
106
103
98
110
114
118
105
102
97
109
113
117
104
101
96
108
112
116
103
100
95
107
111
115
102
99
94
106
110
114
101
98
93
105
109
113
100
97
92
104
108
112
99
96
91
103
107
111
98
95
90
102
106
110
97
94
89
101
105
109
96
93
88
100
104
108
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
87
99
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
94
82
86
98
94
106
93
81
85
97
93
105
92
80
84
96
92
104
91
79
83
95
91
103
90
78
82
94
90
102
89
77
81
93
89
101
88
76
80
92
88
100
87
75
79
91
87
99
86
74
78
90
86
98
85
73
77
89
85
97
84
72
76
88
84
96
83
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
95
82
62
62
74
74
94
81
61
61
73
73
93
80
60
60
72
72
92
79
59
59
71
71
91
78
58
58
70
70
90
77
57
57
69
69
89
76
56
56
68
68
88
75
55
55
67
67
87
74
54
54
66
66
86
73
53
53
65
65
85
72
52
52
64
64
84
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
39
40
41
42
43
44
45
46
47
48
49
50
51
63
62
61
60
59
58
57
56
55
54
53
52
51
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
64
50
38
50
62
76
65
49
37
49
61
77
66
48
36
48
60
78
67
47
35
47
59
79
68
46
34
46
58
80
69
45
33
45
57
81
70
44
32
44
56
82
71
43
31
43
55
83
72
42
30
42
54
84
73
41
29
41
53
85
74
40
28
40
52
86
83
82
81
80
79
78
77
76
75
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
87
88
89
90
91
92
93
94
95
82
40
14
28
52
94
81
41
13
29
53
93
80
42
12
30
54
92
79
43
11
31
55
91
78
44
10
32
56
90
77
45
9
33
57
89
76
46
8
34
58
88
75
47
7
35
59
87
74
48
6
36
60
86
73
49
5
37
61
85
72
50
4
38
62
84
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
9
8
7
6
5
4
3
2
1
0
164
165
166
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
150
151
152
153
154
155
156
157
158
159
160
161
162
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
177
176
175
174
163
153
149
161
165
173
162
152
148
160
164
172
161
151
147
159
163
171
160
150
146
158
162
170
159
149
145
157
161
169
158
148
144
156
160
168
157
147
143
155
159
167
156
146
142
154
158
166
155
145
141
153
157
165
154
144
140
152
156
164
153
143
139
151
155
163
152
140
141
142
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
153
152
151
150
162
151
139
133
137
149
145
149
161
150
138
132
136
148
144
148
160
149
137
131
135
147
143
147
159
148
136
130
134
146
142
146
158
147
135
129
133
145
141
145
157
146
134
128
132
144
140
144
156
145
133
127
131
143
139
143
155
144
143
142
141
140
139
138
137
136
135
134
133
132
126
130
142
138
142
143
144
145
146
147
148
149
150
151
152
153
154
131
125
129
141
137
141
130
124
128
140
136
140
129
123
127
139
135
139
128
122
126
138
134
138
127
121
125
137
133
137
126
120
124
136
132
136
125
119
123
135
131
135
124
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
134
123
109
121
133
122
108
120
132
121
107
119
131
118
117
116
115
114
115
116
117
118
119
120
121
122
123
122
121
120
106
118
130
131
132
132
131
130
129
128
127
126
125
124
123
122
121
120
119
113
119
105
117
129
124
112
118
104
116
128
124
111
117
103
115
127
123
110
116
102
114
126
122
109
115
101
113
125
121
108
114
100
112
124
120
107
113
99
111
123
119
106
112
111
110
109
108
107
106
105
104
103
104
105
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
117
116
115
114
115
116
117
118
119
120
121
122
118
105
102
97
109
113
117
104
101
96
108
112
116
103
100
95
107
111
115
102
99
94
106
110
114
101
98
93
105
109
113
100
97
92
104
108
112
99
96
91
103
107
111
98
95
90
102
106
110
97
94
89
101
105
109
96
93
88
100
104
108
95
92
87
99
103
107
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
86
98
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
93
81
85
97
93
105
92
80
84
96
92
104
91
79
83
95
91
103
90
78
82
94
90
102
89
77
81
93
89
101
88
76
80
92
88
100
87
75
79
91
87
99
86
74
78
90
86
98
85
73
77
89
85
97
84
72
76
88
84
96
83
71
75
87
83
95
82
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
94
81
61
61
73
73
93
80
60
60
72
72
92
79
59
59
71
71
91
78
58
58
70
70
90
77
57
57
69
69
89
76
56
56
68
68
88
75
55
55
67
67
87
74
54
54
66
66
86
73
53
53
65
65
85
72
52
52
64
64
84
71
51
51
63
63
83
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
38
39
40
41
42
43
44
45
46
47
48
49
50
62
61
60
59
58
57
56
55
54
53
52
51
50
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
63
49
37
49
61
75
64
48
36
48
60
76
65
47
35
47
59
77
66
46
34
46
58
78
67
45
33
45
57
79
68
44
32
44
56
80
69
43
31
43
55
81
70
42
30
42
54
82
71
41
29
41
53
83
72
40
28
40
52
84
73
39
27
39
51
85
82
81
80
79
78
77
76
75
74
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
86
87
88
89
90
91
92
93
94
81
39
13
27
51
93
80
40
12
28
52
92
79
41
11
29
53
91
78
42
10
30
54
90
77
43
9
31
55
89
76
44
8
32
56
88
75
45
7
33
57
87
74
46
6
34
58
86
73
47
5
35
59
85
72
48
4
36
60
84
71
49
3
37
61
83
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
10
9
8
7
6
5
4
3
2
1
0
163
164
165
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
149
150
151
152
153
154
155
156
157
158
159
160
161
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
176
175
174
173
162
152
148
160
164
172
161
151
147
159
163
171
160
150
146
158
162
170
159
149
145
157
161
169
158
148
144
156
160
168
157
147
143
155
159
167
156
146
142
154
158
166
155
145
141
153
157
165
154
144
140
152
156
164
153
143
139
151
155
163
152
142
138
150
154
162
151
139
140
141
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
152
151
150
149
161
150
138
132
136
148
144
148
160
149
137
131
135
147
143
147
159
148
136
130
134
146
142
146
158
147
135
129
133
145
141
145
157
146
134
128
132
144
140
144
156
145
133
127
131
143
139
143
155
144
132
126
130
142
138
142
154
143
142
141
140
139
138
137
136
135
134
133
132
131
125
129
141
137
141
142
143
144
145
146
147
148
149
150
151
152
153
130
124
128
140
136
140
129
123
127
139
135
139
128
122
126
138
134
138
127
121
125
137
133
137
126
120
124
136
132
136
125
119
123
135
131
135
124
118
122
134
130
134
123
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
133
122
108
120
132
121
107
119
131
120
106
118
130
117
116
115
114
113
114
115
116
117
118
119
120
121
122
121
120
119
105
117
129
130
131
131
130
129
128
127
126
125
124
123
122
121
120
119
118
112
118
104
116
128
123
111
117
103
115
127
123
110
116
102
114
126
122
109
115
101
113
125
121
108
114
100
112
124
120
107
113
99
111
123
119
106
112
98
110
122
118
105
111
110
109
108
107
106
105
104
103
102
103
104
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
116
115
114
113
114
115
116
117
118
119
120
121
117
104
101
96
108
112
116
103
100
95
107
111
115
102
99
94
106
110
114
101
98
93
105
109
113
100
97
92
104
108
112
99
96
91
103
107
111
98
95
90
102
106
110
97
94
89
101
105
109
96
93
88
100
104
108
95
92
87
99
103
107
94
91
86
98
102
106
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
85
97
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
92
80
84
96
92
104
91
79
83
95
91
103
90
78
82
94
90
102
89
77
81
93
89
101
88
76
80
92
88
100
87
75
79
91
87
99
86
74
78
90
86
98
85
73
77
89
85
97
84
72
76
88
84
96
83
71
75
87
83
95
82
70
74
86
82
94
81
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
93
80
60
60
72
72
92
79
59
59
71
71
91
78
58
58
70
70
90
77
57
57
69
69
89
76
56
56
68
68
88
75
55
55
67
67
87
74
54
54
66
66
86
73
53
53
65
65
85
72
52
52
64
64
84
71
51
51
63
63
83
70
50
50
62
62
82
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
37
38
39
40
41
42
43
44
45
46
47
48
49
61
60
59
58
57
56
55
54
53
52
51
50
49
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
62
48
36
48
60
74
63
47
35
47
59
75
64
46
34
46
58
76
65
45
33
45
57
77
66
44
32
44
56
78
67
43
31
43
55
79
68
42
30
42
54
80
69
41
29
41
53
81
70
40
28
40
52
82
71
39
27
39
51
83
72
38
26
38
50
84
81
80
79
78
77
76
75
74
73
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
85
86
87
88
89
90
91
92
93
80
38
12
26
50
92
79
39
11
27
51
91
78
40
10
28
52
90
77
41
9
29
53
89
76
42
8
30
54
88
75
43
7
31
55
87
74
44
6
32
56
86
73
45
5
33
57
85
72
46
4
34
58
84
71
47
3
35
59
83
70
48
2
36
60
82
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
11
10
9
8
7
6
5
4
3
2
1
0
162
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
148
149
150
151
152
153
154
155
156
157
158
159
160
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
161
151
147
159
163
171
160
150
146
158
162
170
159
149
145
157
161
169
158
148
144
156
160
168
157
147
143
155
159
167
156
146
142
154
158
166
155
145
141
153
157
165
154
144
140
152
156
164
153
143
139
151
155
163
152
142
138
150
154
162
151
141
137
149
153
161
150
138
139
140
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
151
150
149
148
160
149
137
131
135
147
143
147
159
148
136
130
134
146
142
146
158
147
135
129
133
145
141
145
157
146
134
128
132
144
140
144
156
145
133
127
131
143
139
143
155
144
132
126
130
142
138
142
154
143
131
125
129
141
137
141
153
142
141
140
139
138
137
136
135
134
133
132
131
130
124
128
140
136
140
141
142
143
144
145
146
147
148
149
150
151
152
129
123
127
139
135
139
128
122
126
138
134
138
127
121
125
137
133
137
126
120
124
136
132
136
125
119
123
135
131
135
124
118
122
134
130
134
123
117
121
133
129
133
122
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
132
121
107
119
131
120
106
118
130
119
105
117
129
116
115
114
113
112
113
114
115
116
117
118
119
120
121
120
119
118
104
116
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
111
117
103
115
127
122
110
116
102
114
126
122
109
115
101
113
125
121
108
114
100
112
124
120
107
113
99
111
123
119
106
112
98
110
122
118
105
111
97
109
121
117
104
110
109
108
107
106
105
104
103
102
101
102
103
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
115
114
113
112
113
114
115
116
117
118
119
120
116
103
100
95
107
111
115
102
99
94
106
110
114
101
98
93
105
109
113
100
97
92
104
108
112
99
96
91
103
107
111
98
95
90
102
106
110
97
94
89
101
105
109
96
93
88
100
104
108
95
92
87
99
103
107
94
91
86
98
102
106
93
90
85
97
101
105
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
84
96
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
91
79
83
95
91
103
90
78
82
94
90
102
89
77
81
93
89
101
88
76
80
92
88
100
87
75
79
91
87
99
86
74
78
90
86
98
85
73
77
89
85
97
84
72
76
88
84
96
83
71
75
87
83
95
82
70
74
86
82
94
81
69
73
85
81
93
80
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
92
79
59
59
71
71
91
78
58
58
70
70
90
77
57
57
69
69
89
76
56
56
68
68
88
75
55
55
67
67
87
74
54
54
66
66
86
73
53
53
65
65
85
72
52
52
64
64
84
71
51
51
63
63
83
70
50
50
62
62
82
69
49
49
61
61
81
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
36
37
38
39
40
41
42
43
44
45
46
47
48
60
59
58
57
56
55
54
53
52
51
50
49
48
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
61
47
35
47
59
73
62
46
34
46
58
74
63
45
33
45
57
75
64
44
32
44
56
76
65
43
31
43
55
77
66
42
30
42
54
78
67
41
29
41
53
79
68
40
28
40
52
80
69
39
27
39
51
81
70
38
26
38
50
82
71
37
25
37
49
83
80
79
78
77
76
75
74
73
72
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
84
85
86
87
88
89
90
91
92
79
37
11
25
49
91
78
38
10
26
50
90
77
39
9
27
51
89
76
40
8
28
52
88
75
41
7
29
53
87
74
42
6
30
54
86
73
43
5
31
55
85
72
44
4
32
56
84
71
45
3
33
57
83
70
46
2
34
58
82
69
47
1
35
59
81
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
12
11
10
9
8
7
6
5
4
3
2
1
0
174
175
176
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
160
159
158
157
156
155
154
153
152
151
150
149
148
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
173
163
159
147
151
159
172
162
158
146
150
158
171
161
157
145
149
157
170
160
156
144
148
156
169
159
155
143
147
155
168
158
154
142
146
154
167
157
153
141
145
153
166
156
152
140
144
152
165
155
151
139
143
151
164
154
150
138
142
150
163
153
149
137
141
149
162
150
151
152
153
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
139
138
137
136
148
161
149
143
147
135
131
135
147
160
148
142
146
134
130
134
146
159
147
141
145
133
129
133
145
158
146
140
144
132
128
132
144
157
145
139
143
131
127
131
143
156
144
138
142
130
126
130
142
155
143
137
141
129
125
129
141
154
153
152
151
150
149
148
147
146
145
144
143
142
136
140
128
124
128
129
130
131
132
133
134
135
136
137
138
139
140
141
135
139
127
123
127
140
134
138
126
122
126
139
133
137
125
121
125
138
132
136
124
120
124
137
131
135
123
119
123
136
130
134
122
118
122
135
129
133
121
117
121
134
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
120
133
119
107
119
132
118
106
118
131
117
105
117
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
131
130
116
104
116
117
118
119
120
119
118
117
116
115
114
113
112
113
114
115
116
122
129
115
103
115
111
122
128
114
102
114
110
121
127
113
101
113
109
120
126
112
100
112
108
119
125
111
99
111
107
118
124
110
98
110
106
117
123
109
97
109
105
116
122
121
120
119
118
117
116
115
114
113
114
115
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
103
102
101
100
101
102
103
104
105
106
107
108
104
115
112
107
95
99
103
114
111
106
94
98
102
113
110
105
93
97
101
112
109
104
92
96
100
111
108
103
91
95
99
110
107
102
90
94
98
109
106
101
89
93
97
108
105
100
88
92
96
107
104
99
87
91
95
106
103
98
86
90
94
105
102
97
85
89
93
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
96
84
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
103
91
95
83
79
91
102
90
94
82
78
90
101
89
93
81
77
89
100
88
92
80
76
88
99
87
91
79
75
87
98
86
90
78
74
86
97
85
89
77
73
85
96
84
88
76
72
84
95
83
87
75
71
83
94
82
86
74
70
82
93
81
85
73
69
81
92
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
80
91
71
71
59
59
79
90
70
70
58
58
78
89
69
69
57
57
77
88
68
68
56
56
76
87
67
67
55
55
75
86
66
66
54
54
74
85
65
65
53
53
73
84
64
64
52
52
72
83
63
63
51
51
71
82
62
62
50
50
70
81
61
61
49
49
69
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
48
49
50
51
52
53
54
55
56
57
58
59
60
48
47
46
45
44
43
42
41
40
39
38
37
36
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
73
59
47
35
47
61
74
58
46
34
46
62
75
57
45
33
45
63
76
56
44
32
44
64
77
55
43
31
43
65
78
54
42
30
42
66
79
53
41
29
41
67
80
52
40
28
40
68
81
51
39
27
39
69
82
50
38
26
38
70
83
49
37
25
37
71
92
91
90
89
88
87
86
85
84
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
72
73
74
75
76
77
78
79
80
91
49
25
11
37
79
90
50
26
10
38
78
89
51
27
9
39
77
88
52
28
8
40
76
87
53
29
7
41
75
86
54
30
6
42
74
85
55
31
5
43
73
84
56
32
4
44
72
83
57
33
3
45
71
82
58
34
2
46
70
81
59
35
1
47
69
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
48
47
46
45
44
43
42
41
40
39
38
37
36
0
175
176
177
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
161
160
159
158
157
156
155
154
153
152
151
150
149
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
174
164
160
148
152
160
173
163
159
147
151
159
172
162
158
146
150
158
171
161
157
145
149
157
170
160
156
144
148
156
169
159
155
143
147
155
168
158
154
142
146
154
167
157
153
141
145
153
166
156
152
140
144
152
165
155
151
139
143
151
164
154
150
138
142
150
163
151
152
153
154
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
140
139
138
137
149
162
150
144
148
136
132
136
148
161
149
143
147
135
131
135
147
160
148
142
146
134
130
134
146
159
147
141
145
133
129
133
145
158
146
140
144
132
128
132
144
157
145
139
143
131
127
131
143
156
144
138
142
130
126
130
142
155
154
153
152
151
150
149
148
147
146
145
144
143
137
141
129
125
129
130
131
132
133
134
135
136
137
138
139
140
141
142
136
140
128
124
128
141
135
139
127
123
127
140
134
138
126
122
126
139
133
137
125
121
125
138
132
136
124
120
124
137
131
135
123
119
123
136
130
134
122
118
122
135
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
121
134
120
108
120
133
119
107
119
132
118
106
118
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
132
131
117
105
117
118
119
120
121
120
119
118
117
116
115
114
113
114
115
116
117
123
130
116
104
116
112
123
129
115
103
115
111
122
128
114
102
114
110
121
127
113
101
113
109
120
126
112
100
112
108
119
125
111
99
111
107
118
124
110
98
110
106
117
123
122
121
120
119
118
117
116
115
114
115
116
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
104
103
102
101
102
103
104
105
106
107
108
109
105
116
113
108
96
100
104
115
112
107
95
99
103
114
111
106
94
98
102
113
110
105
93
97
101
112
109
104
92
96
100
111
108
103
91
95
99
110
107
102
90
94
98
109
106
101
89
93
97
108
105
100
88
92
96
107
104
99
87
91
95
106
103
98
86
90
94
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
97
85
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
104
92
96
84
80
92
103
91
95
83
79
91
102
90
94
82
78
90
101
89
93
81
77
89
100
88
92
80
76
88
99
87
91
79
75
87
98
86
90
78
74
86
97
85
89
77
73
85
96
84
88
76
72
84
95
83
87
75
71
83
94
82
86
74
70
82
93
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
81
92
72
72
60
60
80
91
71
71
59
59
79
90
70
70
58
58
78
89
69
69
57
57
77
88
68
68
56
56
76
87
67
67
55
55
75
86
66
66
54
54
74
85
65
65
53
53
73
84
64
64
52
52
72
83
63
63
51
51
71
82
62
62
50
50
70
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
49
50
51
52
53
54
55
56
57
58
59
60
61
49
48
47
46
45
44
43
42
41
40
39
38
37
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
74
60
48
36
48
62
75
59
47
35
47
63
76
58
46
34
46
64
77
57
45
33
45
65
78
56
44
32
44
66
79
55
43
31
43
67
80
54
42
30
42
68
81
53
41
29
41
69
82
52
40
28
40
70
83
51
39
27
39
71
84
50
38
26
38
72
93
92
91
90
89
88
87
86
85
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
73
74
75
76
77
78
79
80
81
92
50
26
12
38
80
91
51
27
11
39
79
90
52
28
10
40
78
89
53
29
9
41
77
88
54
30
8
42
76
87
55
31
7
43
75
86
56
32
6
44
74
85
57
33
5
45
73
84
58
34
4
46
72
83
59
35
3
47
71
82
60
36
2
48
70
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
49
48
47
46
45
44
43
42
41
40
39
38
37
1
0
176
177
178
179
180
181
182
183
184
185
186
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
162
161
160
159
158
157
156
155
154
153
152
151
150
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
165
164
163
162
175
165
161
149
153
161
174
164
160
148
152
160
173
163
159
147
151
159
172
162
158
146
150
158
171
161
157
145
149
157
170
160
156
144
148
156
169
159
155
143
147
155
168
158
154
142
146
154
167
157
153
141
145
153
166
156
152
140
144
152
165
155
151
139
143
151
164
152
153
154
155
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
141
140
139
138
150
163
151
145
149
137
133
137
149
162
150
144
148
136
132
136
148
161
149
143
147
135
131
135
147
160
148
142
146
134
130
134
146
159
147
141
145
133
129
133
145
158
146
140
144
132
128
132
144
157
145
139
143
131
127
131
143
156
155
154
153
152
151
150
149
148
147
146
145
144
138
142
130
126
130
131
132
133
134
135
136
137
138
139
140
141
142
143
137
141
129
125
129
142
136
140
128
124
128
141
135
139
127
123
127
140
134
138
126
122
126
139
133
137
125
121
125
138
132
136
124
120
124
137
131
135
123
119
123
136
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
122
135
121
109
121
134
120
108
120
133
119
107
119
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
133
132
118
106
118
119
120
121
122
121
120
119
118
117
116
115
114
115
116
117
118
124
131
117
105
117
113
124
130
116
104
116
112
123
129
115
103
115
111
122
128
114
102
114
110
121
127
113
101
113
109
120
126
112
100
112
108
119
125
111
99
111
107
118
124
123
122
121
120
119
118
117
116
115
116
117
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
105
104
103
102
103
104
105
106
107
108
109
110
106
117
114
109
97
101
105
116
113
108
96
100
104
115
112
107
95
99
103
114
111
106
94
98
102
113
110
105
93
97
101
112
109
104
92
96
100
111
108
103
91
95
99
110
107
102
90
94
98
109
106
101
89
93
97
108
105
100
88
92
96
107
104
99
87
91
95
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
98
86
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
105
93
97
85
81
93
104
92
96
84
80
92
103
91
95
83
79
91
102
90
94
82
78
90
101
89
93
81
77
89
100
88
92
80
76
88
99
87
91
79
75
87
98
86
90
78
74
86
97
85
89
77
73
85
96
84
88
76
72
84
95
83
87
75
71
83
94
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
82
93
73
73
61
61
81
92
72
72
60
60
80
91
71
71
59
59
79
90
70
70
58
58
78
89
69
69
57
57
77
88
68
68
56
56
76
87
67
67
55
55
75
86
66
66
54
54
74
85
65
65
53
53
73
84
64
64
52
52
72
83
63
63
51
51
71
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
50
51
52
53
54
55
56
57
58
59
60
61
62
50
49
48
47
46
45
44
43
42
41
40
39
38
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
75
61
49
37
49
63
76
60
48
36
48
64
77
59
47
35
47
65
78
58
46
34
46
66
79
57
45
33
45
67
80
56
44
32
44
68
81
55
43
31
43
69
82
54
42
30
42
70
83
53
41
29
41
71
84
52
40
28
40
72
85
51
39
27
39
73
94
93
92
91
90
89
88
87
86
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
74
75
76
77
78
79
80
81
82
93
51
27
13
39
81
92
52
28
12
40
80
91
53
29
11
41
79
90
54
30
10
42
78
89
55
31
9
43
77
88
56
32
8
44
76
87
57
33
7
45
75
86
58
34
6
46
74
85
59
35
5
47
73
84
60
36
4
48
72
83
61
37
3
49
71
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
50
49
48
47
46
45
44
43
42
41
40
39
38
2
1
0
177
178
179
180
181
182
183
184
185
186
187
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
163
162
161
160
159
158
157
156
155
154
153
152
151
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
166
165
164
163
176
166
162
150
154
162
175
165
161
149
153
161
174
164
160
148
152
160
173
163
159
147
151
159
172
162
158
146
150
158
171
161
157
145
149
157
170
160
156
144
148
156
169
159
155
143
147
155
168
158
154
142
146
154
167
157
153
141
145
153
166
156
152
140
144
152
165
153
154
155
156
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
142
141
140
139
151
164
152
146
150
138
134
138
150
163
151
145
149
137
133
137
149
162
150
144
148
136
132
136
148
161
149
143
147
135
131
135
147
160
148
142
146
134
130
134
146
159
147
141
145
133
129
133
145
158
146
140
144
132
128
132
144
157
156
155
154
153
152
151
150
149
148
147
146
145
139
143
131
127
131
132
133
134
135
136
137
138
139
140
141
142
143
144
138
142
130
126
130
143
137
141
129
125
129
142
136
140
128
124
128
141
135
139
127
123
127
140
134
138
126
122
126
139
133
137
125
121
125
138
132
136
124
120
124
137
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
123
136
122
110
122
135
121
109
121
134
120
108
120
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
134
133
119
107
119
120
121
122
123
122
121
120
119
118
117
116
115
116
117
118
119
125
132
118
106
118
114
125
131
117
105
117
113
124
130
116
104
116
112
123
129
115
103
115
111
122
128
114
102
114
110
121
127
113
101
113
109
120
126
112
100
112
108
119
125
124
123
122
121
120
119
118
117
116
117
118
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
106
105
104
103
104
105
106
107
108
109
110
111
107
118
115
110
98
102
106
117
114
109
97
101
105
116
113
108
96
100
104
115
112
107
95
99
103
114
111
106
94
98
102
113
110
105
93
97
101
112
109
104
92
96
100
111
108
103
91
95
99
110
107
102
90
94
98
109
106
101
89
93
97
108
105
100
88
92
96
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
99
87
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
106
94
98
86
82
94
105
93
97
85
81
93
104
92
96
84
80
92
103
91
95
83
79
91
102
90
94
82
78
90
101
89
93
81
77
89
100
88
92
80
76
88
99
87
91
79
75
87
98
86
90
78
74
86
97
85
89
77
73
85
96
84
88
76
72
84
95
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
83
94
74
74
62
62
82
93
73
73
61
61
81
92
72
72
60
60
80
91
71
71
59
59
79
90
70
70
58
58
78
89
69
69
57
57
77
88
68
68
56
56
76
87
67
67
55
55
75
86
66
66
54
54
74
85
65
65
53
53
73
84
64
64
52
52
72
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
51
52
53
54
55
56
57
58
59
60
61
62
63
51
50
49
48
47
46
45
44
43
42
41
40
39
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
76
62
50
38
50
64
77
61
49
37
49
65
78
60
48
36
48
66
79
59
47
35
47
67
80
58
46
34
46
68
81
57
45
33
45
69
82
56
44
32
44
70
83
55
43
31
43
71
84
54
42
30
42
72
85
53
41
29
41
73
86
52
40
28
40
74
95
94
93
92
91
90
89
88
87
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
75
76
77
78
79
80
81
82
83
94
52
28
14
40
82
93
53
29
13
41
81
92
54
30
12
42
80
91
55
31
11
43
79
90
56
32
10
44
78
89
57
33
9
45
77
88
58
34
8
46
76
87
59
35
7
47
75
86
60
36
6
48
74
85
61
37
5
49
73
84
62
38
4
50
72
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
51
50
49
48
47
46
45
44
43
42
41
40
39
3
2
1
0
178
179
180
181
182
183
184
185
186
187
188
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
164
163
162
161
160
159
158
157
156
155
154
153
152
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
167
166
165
164
177
167
163
151
155
163
176
166
162
150
154
162
175
165
161
149
153
161
174
164
160
148
152
160
173
163
159
147
151
159
172
162
158
146
150
158
171
161
157
145
149
157
170
160
156
144
148
156
169
159
155
143
147
155
168
158
154
142
146
154
167
157
153
141
145
153
166
154
155
156
157
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
143
142
141
140
152
165
153
147
151
139
135
139
151
164
152
146
150
138
134
138
150
163
151
145
149
137
133
137
149
162
150
144
148
136
132
136
148
161
149
143
147
135
131
135
147
160
148
142
146
134
130
134
146
159
147
141
145
133
129
133
145
158
157
156
155
154
153
152
151
150
149
148
147
146
140
144
132
128
132
133
134
135
136
137
138
139
140
141
142
143
144
145
139
143
131
127
131
144
138
142
130
126
130
143
137
141
129
125
129
142
136
140
128
124
128
141
135
139
127
123
127
140
134
138
126
122
126
139
133
137
125
121
125
138
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
124
137
123
111
123
136
122
110
122
135
121
109
121
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
135
134
120
108
120
121
122
123
124
123
122
121
120
119
118
117
116
117
118
119
120
126
133
119
107
119
115
126
132
118
106
118
114
125
131
117
105
117
113
124
130
116
104
116
112
123
129
115
103
115
111
122
128
114
102
114
110
121
127
113
101
113
109
120
126
125
124
123
122
121
120
119
118
117
118
119
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
107
106
105
104
105
106
107
108
109
110
111
112
108
119
116
111
99
103
107
118
115
110
98
102
106
117
114
109
97
101
105
116
113
108
96
100
104
115
112
107
95
99
103
114
111
106
94
98
102
113
110
105
93
97
101
112
109
104
92
96
100
111
108
103
91
95
99
110
107
102
90
94
98
109
106
101
89
93
97
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
100
88
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
107
95
99
87
83
95
106
94
98
86
82
94
105
93
97
85
81
93
104
92
96
84
80
92
103
91
95
83
79
91
102
90
94
82
78
90
101
89
93
81
77
89
100
88
92
80
76
88
99
87
91
79
75
87
98
86
90
78
74
86
97
85
89
77
73
85
96
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
84
95
75
75
63
63
83
94
74
74
62
62
82
93
73
73
61
61
81
92
72
72
60
60
80
91
71
71
59
59
79
90
70
70
58
58
78
89
69
69
57
57
77
88
68
68
56
56
76
87
67
67
55
55
75
86
66
66
54
54
74
85
65
65
53
53
73
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
52
53
54
55
56
57
58
59
60
61
62
63
64
52
51
50
49
48
47
46
45
44
43
42
41
40
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
77
63
51
39
51
65
78
62
50
38
50
66
79
61
49
37
49
67
80
60
48
36
48
68
81
59
47
35
47
69
82
58
46
34
46
70
83
57
45
33
45
71
84
56
44
32
44
72
85
55
43
31
43
73
86
54
42
30
42
74
87
53
41
29
41
75
96
95
94
93
92
91
90
89
88
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
76
77
78
79
80
81
82
83
84
95
53
29
15
41
83
94
54
30
14
42
82
93
55
31
13
43
81
92
56
32
12
44
80
91
57
33
11
45
79
90
58
34
10
46
78
89
59
35
9
47
77
88
60
36
8
48
76
87
61
37
7
49
75
86
62
38
6
50
74
85
63
39
5
51
73
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
52
51
50
49
48
47
46
45
44
43
42
41
40
4
3
2
1
0
179
180
181
182
183
184
185
186
187
188
189
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
165
164
163
162
161
160
159
158
157
156
155
154
153
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
168
167
166
165
178
168
164
152
156
164
177
167
163
151
155
163
176
166
162
150
154
162
175
165
161
149
153
161
174
164
160
148
152
160
173
163
159
147
151
159
172
162
158
146
150
158
171
161
157
145
149
157
170
160
156
144
148
156
169
159
155
143
147
155
168
158
154
142
146
154
167
155
156
157
158
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
144
143
142
141
153
166
154
148
152
140
136
140
152
165
153
147
151
139
135
139
151
164
152
146
150
138
134
138
150
163
151
145
149
137
133
137
149
162
150
144
148
136
132
136
148
161
149
143
147
135
131
135
147
160
148
142
146
134
130
134
146
159
158
157
156
155
154
153
152
151
150
149
148
147
141
145
133
129
133
134
135
136
137
138
139
140
141
142
143
144
145
146
140
144
132
128
132
145
139
143
131
127
131
144
138
142
130
126
130
143
137
141
129
125
129
142
136
140
128
124
128
141
135
139
127
123
127
140
134
138
126
122
126
139
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
125
138
124
112
124
137
123
111
123
136
122
110
122
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
136
135
121
109
121
122
123
124
125
124
123
122
121
120
119
118
117
118
119
120
121
127
134
120
108
120
116
127
133
119
107
119
115
126
132
118
106
118
114
125
131
117
105
117
113
124
130
116
104
116
112
123
129
115
103
115
111
122
128
114
102
114
110
121
127
126
125
124
123
122
121
120
119
118
119
120
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
108
107
106
105
106
107
108
109
110
111
112
113
109
120
117
112
100
104
108
119
116
111
99
103
107
118
115
110
98
102
106
117
114
109
97
101
105
116
113
108
96
100
104
115
112
107
95
99
103
114
111
106
94
98
102
113
110
105
93
97
101
112
109
104
92
96
100
111
108
103
91
95
99
110
107
102
90
94
98
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
101
89
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
108
96
100
88
84
96
107
95
99
87
83
95
106
94
98
86
82
94
105
93
97
85
81
93
104
92
96
84
80
92
103
91
95
83
79
91
102
90
94
82
78
90
101
89
93
81
77
89
100
88
92
80
76
88
99
87
91
79
75
87
98
86
90
78
74
86
97
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
85
96
76
76
64
64
84
95
75
75
63
63
83
94
74
74
62
62
82
93
73
73
61
61
81
92
72
72
60
60
80
91
71
71
59
59
79
90
70
70
58
58
78
89
69
69
57
57
77
88
68
68
56
56
76
87
67
67
55
55
75
86
66
66
54
54
74
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
53
54
55
56
57
58
59
60
61
62
63
64
65
53
52
51
50
49
48
47
46
45
44
43
42
41
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
78
64
52
40
52
66
79
63
51
39
51
67
80
62
50
38
50
68
81
61
49
37
49
69
82
60
48
36
48
70
83
59
47
35
47
71
84
58
46
34
46
72
85
57
45
33
45
73
86
56
44
32
44
74
87
55
43
31
43
75
88
54
42
30
42
76
97
96
95
94
93
92
91
90
89
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
77
78
79
80
81
82
83
84
85
96
54
30
16
42
84
95
55
31
15
43
83
94
56
32
14
44
82
93
57
33
13
45
81
92
58
34
12
46
80
91
59
35
11
47
79
90
60
36
10
48
78
89
61
37
9
49
77
88
62
38
8
50
76
87
63
39
7
51
75
86
64
40
6
52
74
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
53
52
51
50
49
48
47
46
45
44
43
42
41
5
4
3
2
1
0
180
181
182
183
184
185
186
187
188
189
190
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
166
165
164
163
162
161
160
159
158
157
156
155
154
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
169
168
167
166
179
169
165
153
157
165
178
168
164
152
156
164
177
167
163
151
155
163
176
166
162
150
154
162
175
165
161
149
153
161
174
164
160
148
152
160
173
163
159
147
151
159
172
162
158
146
150
158
171
161
157
145
149
157
170
160
156
144
148
156
169
159
155
143
147
155
168
156
157
158
159
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
145
144
143
142
154
167
155
149
153
141
137
141
153
166
154
148
152
140
136
140
152
165
153
147
151
139
135
139
151
164
152
146
150
138
134
138
150
163
151
145
149
137
133
137
149
162
150
144
148
136
132
136
148
161
149
143
147
135
131
135
147
160
159
158
157
156
155
154
153
152
151
150
149
148
142
146
134
130
134
135
136
137
138
139
140
141
142
143
144
145
146
147
141
145
133
129
133
146
140
144
132
128
132
145
139
143
131
127
131
144
138
142
130
126
130
143
137
141
129
125
129
142
136
140
128
124
128
141
135
139
127
123
127
140
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
126
139
125
113
125
138
124
112
124
137
123
111
123
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
137
136
122
110
122
123
124
125
126
125
124
123
122
121
120
119
118
119
120
121
122
128
135
121
109
121
117
128
134
120
108
120
116
127
133
119
107
119
115
126
132
118
106
118
114
125
131
117
105
117
113
124
130
116
104
116
112
123
129
115
103
115
111
122
128
127
126
125
124
123
122
121
120
119
120
121
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
109
108
107
106
107
108
109
110
111
112
113
114
110
121
118
113
101
105
109
120
117
112
100
104
108
119
116
111
99
103
107
118
115
110
98
102
106
117
114
109
97
101
105
116
113
108
96
100
104
115
112
107
95
99
103
114
111
106
94
98
102
113
110
105
93
97
101
112
109
104
92
96
100
111
108
103
91
95
99
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
102
90
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
109
97
101
89
85
97
108
96
100
88
84
96
107
95
99
87
83
95
106
94
98
86
82
94
105
93
97
85
81
93
104
92
96
84
80
92
103
91
95
83
79
91
102
90
94
82
78
90
101
89
93
81
77
89
100
88
92
80
76
88
99
87
91
79
75
87
98
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
86
97
77
77
65
65
85
96
76
76
64
64
84
95
75
75
63
63
83
94
74
74
62
62
82
93
73
73
61
61
81
92
72
72
60
60
80
91
71
71
59
59
79
90
70
70
58
58
78
89
69
69
57
57
77
88
68
68
56
56
76
87
67
67
55
55
75
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
54
55
56
57
58
59
60
61
62
63
64
65
66
54
53
52
51
50
49
48
47
46
45
44
43
42
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
79
65
53
41
53
67
80
64
52
40
52
68
81
63
51
39
51
69
82
62
50
38
50
70
83
61
49
37
49
71
84
60
48
36
48
72
85
59
47
35
47
73
86
58
46
34
46
74
87
57
45
33
45
75
88
56
44
32
44
76
89
55
43
31
43
77
98
97
96
95
94
93
92
91
90
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
78
79
80
81
82
83
84
85
86
97
55
31
17
43
85
96
56
32
16
44
84
95
57
33
15
45
83
94
58
34
14
46
82
93
59
35
13
47
81
92
60
36
12
48
80
91
61
37
11
49
79
90
62
38
10
50
78
89
63
39
9
51
77
88
64
40
8
52
76
87
65
41
7
53
75
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
54
53
52
51
50
49
48
47
46
45
44
43
42
6
5
4
3
2
1
0
181
182
183
184
185
186
187
188
189
190
191
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
167
166
165
164
163
162
161
160
159
158
157
156
155
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
170
169
168
167
180
170
166
154
158
166
179
169
165
153
157
165
178
168
164
152
156
164
177
167
163
151
155
163
176
166
162
150
154
162
175
165
161
149
153
161
174
164
160
148
152
160
173
163
159
147
151
159
172
162
158
146
150
158
171
161
157
145
149
157
170
160
156
144
148
156
169
157
158
159
160
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
146
145
144
143
155
168
156
150
154
142
138
142
154
167
155
149
153
141
137
141
153
166
154
148
152
140
136
140
152
165
153
147
151
139
135
139
151
164
152
146
150
138
134
138
150
163
151
145
149
137
133
137
149
162
150
144
148
136
132
136
148
161
160
159
158
157
156
155
154
153
152
151
150
149
143
147
135
131
135
136
137
138
139
140
141
142
143
144
145
146
147
148
142
146
134
130
134
147
141
145
133
129
133
146
140
144
132
128
132
145
139
143
131
127
131
144
138
142
130
126
130
143
137
141
129
125
129
142
136
140
128
124
128
141
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
127
140
126
114
126
139
125
113
125
138
124
112
124
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
138
137
123
111
123
124
125
126
127
126
125
124
123
122
121
120
119
120
121
122
123
129
136
122
110
122
118
129
135
121
109
121
117
128
134
120
108
120
116
127
133
119
107
119
115
126
132
118
106
118
114
125
131
117
105
117
113
124
130
116
104
116
112
123
129
128
127
126
125
124
123
122
121
120
121
122
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
110
109
108
107
108
109
110
111
112
113
114
115
111
122
119
114
102
106
110
121
118
113
101
105
109
120
117
112
100
104
108
119
116
111
99
103
107
118
115
110
98
102
106
117
114
109
97
101
105
116
113
108
96
100
104
115
112
107
95
99
103
114
111
106
94
98
102
113
110
105
93
97
101
112
109
104
92
96
100
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
103
91
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
110
98
102
90
86
98
109
97
101
89
85
97
108
96
100
88
84
96
107
95
99
87
83
95
106
94
98
86
82
94
105
93
97
85
81
93
104
92
96
84
80
92
103
91
95
83
79
91
102
90
94
82
78
90
101
89
93
81
77
89
100
88
92
80
76
88
99
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
87
98
78
78
66
66
86
97
77
77
65
65
85
96
76
76
64
64
84
95
75
75
63
63
83
94
74
74
62
62
82
93
73
73
61
61
81
92
72
72
60
60
80
91
71
71
59
59
79
90
70
70
58
58
78
89
69
69
57
57
77
88
68
68
56
56
76
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
55
56
57
58
59
60
61
62
63
64
65
66
67
55
54
53
52
51
50
49
48
47
46
45
44
43
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
80
66
54
42
54
68
81
65
53
41
53
69
82
64
52
40
52
70
83
63
51
39
51
71
84
62
50
38
50
72
85
61
49
37
49
73
86
60
48
36
48
74
87
59
47
35
47
75
88
58
46
34
46
76
89
57
45
33
45
77
90
56
44
32
44
78
99
98
97
96
95
94
93
92
91
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
79
80
81
82
83
84
85
86
87
98
56
32
18
44
86
97
57
33
17
45
85
96
58
34
16
46
84
95
59
35
15
47
83
94
60
36
14
48
82
93
61
37
13
49
81
92
62
38
12
50
80
91
63
39
11
51
79
90
64
40
10
52
78
89
65
41
9
53
77
88
66
42
8
54
76
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
55
54
53
52
51
50
49
48
47
46
45
44
43
7
6
5
4
3
2
1
0
182
183
184
185
186
187
188
189
190
191
192
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
168
167
166
165
164
163
162
161
160
159
158
157
156
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
181
171
167
155
159
167
180
170
166
154
158
166
179
169
165
153
157
165
178
168
164
152
156
164
177
167
163
151
155
163
176
166
162
150
154
162
175
165
161
149
153
161
174
164
160
148
152
160
173
163
159
147
151
159
172
162
158
146
150
158
171
161
157
145
149
157
170
158
159
160
161
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
147
146
145
144
156
169
157
151
155
143
139
143
155
168
156
150
154
142
138
142
154
167
155
149
153
141
137
141
153
166
154
148
152
140
136
140
152
165
153
147
151
139
135
139
151
164
152
146
150
138
134
138
150
163
151
145
149
137
133
137
149
162
161
160
159
158
157
156
155
154
153
152
151
150
144
148
136
132
136
137
138
139
140
141
142
143
144
145
146
147
148
149
143
147
135
131
135
148
142
146
134
130
134
147
141
145
133
129
133
146
140
144
132
128
132
145
139
143
131
127
131
144
138
142
130
126
130
143
137
141
129
125
129
142
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
128
141
127
115
127
140
126
114
126
139
125
113
125
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
139
138
124
112
124
125
126
127
128
127
126
125
124
123
122
121
120
121
122
123
124
130
137
123
111
123
119
130
136
122
110
122
118
129
135
121
109
121
117
128
134
120
108
120
116
127
133
119
107
119
115
126
132
118
106
118
114
125
131
117
105
117
113
124
130
129
128
127
126
125
124
123
122
121
122
123
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
111
110
109
108
109
110
111
112
113
114
115
116
112
123
120
115
103
107
111
122
119
114
102
106
110
121
118
113
101
105
109
120
117
112
100
104
108
119
116
111
99
103
107
118
115
110
98
102
106
117
114
109
97
101
105
116
113
108
96
100
104
115
112
107
95
99
103
114
111
106
94
98
102
113
110
105
93
97
101
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
104
92
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
111
99
103
91
87
99
110
98
102
90
86
98
109
97
101
89
85
97
108
96
100
88
84
96
107
95
99
87
83
95
106
94
98
86
82
94
105
93
97
85
81
93
104
92
96
84
80
92
103
91
95
83
79
91
102
90
94
82
78
90
101
89
93
81
77
89
100
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
88
99
79
79
67
67
87
98
78
78
66
66
86
97
77
77
65
65
85
96
76
76
64
64
84
95
75
75
63
63
83
94
74
74
62
62
82
93
73
73
61
61
81
92
72
72
60
60
80
91
71
71
59
59
79
90
70
70
58
58
78
89
69
69
57
57
77
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
56
57
58
59
60
61
62
63
64
65
66
67
68
56
55
54
53
52
51
50
49
48
47
46
45
44
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
81
67
55
43
55
69
82
66
54
42
54
70
83
65
53
41
53
71
84
64
52
40
52
72
85
63
51
39
51
73
86
62
50
38
50
74
87
61
49
37
49
75
88
60
48
36
48
76
89
59
47
35
47
77
90
58
46
34
46
78
91
57
45
33
45
79
100
99
98
97
96
95
94
93
92
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
80
81
82
83
84
85
86
87
88
99
57
33
19
45
87
98
58
34
18
46
86
97
59
35
17
47
85
96
60
36
16
48
84
95
61
37
15
49
83
94
62
38
14
50
82
93
63
39
13
51
81
92
64
40
12
52
80
91
65
41
11
53
79
90
66
42
10
54
78
89
67
43
9
55
77
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
56
55
54
53
52
51
50
49
48
47
46
45
44
8
7
6
5
4
3
2
1
0
183
184
185
186
187
188
189
190
191
192
193
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
169
168
167
166
165
164
163
162
161
160
159
158
157
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
172
171
170
169
182
172
168
156
160
168
181
171
167
155
159
167
180
170
166
154
158
166
179
169
165
153
157
165
178
168
164
152
156
164
177
167
163
151
155
163
176
166
162
150
154
162
175
165
161
149
153
161
174
164
160
148
152
160
173
163
159
147
151
159
172
162
158
146
150
158
171
159
160
161
162
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
148
147
146
145
157
170
158
152
156
144
140
144
156
169
157
151
155
143
139
143
155
168
156
150
154
142
138
142
154
167
155
149
153
141
137
141
153
166
154
148
152
140
136
140
152
165
153
147
151
139
135
139
151
164
152
146
150
138
134
138
150
163
162
161
160
159
158
157
156
155
154
153
152
151
145
149
137
133
137
138
139
140
141
142
143
144
145
146
147
148
149
150
144
148
136
132
136
149
143
147
135
131
135
148
142
146
134
130
134
147
141
145
133
129
133
146
140
144
132
128
132
145
139
143
131
127
131
144
138
142
130
126
130
143
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
129
142
128
116
128
141
127
115
127
140
126
114
126
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
140
139
125
113
125
126
127
128
129
128
127
126
125
124
123
122
121
122
123
124
125
131
138
124
112
124
120
131
137
123
111
123
119
130
136
122
110
122
118
129
135
121
109
121
117
128
134
120
108
120
116
127
133
119
107
119
115
126
132
118
106
118
114
125
131
130
129
128
127
126
125
124
123
122
123
124
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
112
111
110
109
110
111
112
113
114
115
116
117
113
124
121
116
104
108
112
123
120
115
103
107
111
122
119
114
102
106
110
121
118
113
101
105
109
120
117
112
100
104
108
119
116
111
99
103
107
118
115
110
98
102
106
117
114
109
97
101
105
116
113
108
96
100
104
115
112
107
95
99
103
114
111
106
94
98
102
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
105
93
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
112
100
104
92
88
100
111
99
103
91
87
99
110
98
102
90
86
98
109
97
101
89
85
97
108
96
100
88
84
96
107
95
99
87
83
95
106
94
98
86
82
94
105
93
97
85
81
93
104
92
96
84
80
92
103
91
95
83
79
91
102
90
94
82
78
90
101
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
89
100
80
80
68
68
88
99
79
79
67
67
87
98
78
78
66
66
86
97
77
77
65
65
85
96
76
76
64
64
84
95
75
75
63
63
83
94
74
74
62
62
82
93
73
73
61
61
81
92
72
72
60
60
80
91
71
71
59
59
79
90
70
70
58
58
78
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
57
58
59
60
61
62
63
64
65
66
67
68
69
57
56
55
54
53
52
51
50
49
48
47
46
45
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
82
68
56
44
56
70
83
67
55
43
55
71
84
66
54
42
54
72
85
65
53
41
53
73
86
64
52
40
52
74
87
63
51
39
51
75
88
62
50
38
50
76
89
61
49
37
49
77
90
60
48
36
48
78
91
59
47
35
47
79
92
58
46
34
46
80
101
100
99
98
97
96
95
94
93
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
81
82
83
84
85
86
87
88
89
100
58
34
20
46
88
99
59
35
19
47
87
98
60
36
18
48
86
97
61
37
17
49
85
96
62
38
16
50
84
95
63
39
15
51
83
94
64
40
14
52
82
93
65
41
13
53
81
92
66
42
12
54
80
91
67
43
11
55
79
90
68
44
10
56
78
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
57
56
55
54
53
52
51
50
49
48
47
46
45
9
8
7
6
5
4
3
2
1
0
184
185
186
187
188
189
190
191
192
193
194
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
170
169
168
167
166
165
164
163
162
161
160
159
158
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
173
172
171
170
183
173
169
157
161
169
182
172
168
156
160
168
181
171
167
155
159
167
180
170
166
154
158
166
179
169
165
153
157
165
178
168
164
152
156
164
177
167
163
151
155
163
176
166
162
150
154
162
175
165
161
149
153
161
174
164
160
148
152
160
173
163
159
147
151
159
172
160
161
162
163
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
149
148
147
146
158
171
159
153
157
145
141
145
157
170
158
152
156
144
140
144
156
169
157
151
155
143
139
143
155
168
156
150
154
142
138
142
154
167
155
149
153
141
137
141
153
166
154
148
152
140
136
140
152
165
153
147
151
139
135
139
151
164
163
162
161
160
159
158
157
156
155
154
153
152
146
150
138
134
138
139
140
141
142
143
144
145
146
147
148
149
150
151
145
149
137
133
137
150
144
148
136
132
136
149
143
147
135
131
135
148
142
146
134
130
134
147
141
145
133
129
133
146
140
144
132
128
132
145
139
143
131
127
131
144
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
130
143
129
117
129
142
128
116
128
141
127
115
127
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
141
140
126
114
126
127
128
129
130
129
128
127
126
125
124
123
122
123
124
125
126
132
139
125
113
125
121
132
138
124
112
124
120
131
137
123
111
123
119
130
136
122
110
122
118
129
135
121
109
121
117
128
134
120
108
120
116
127
133
119
107
119
115
126
132
131
130
129
128
127
126
125
124
123
124
125
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
113
112
111
110
111
112
113
114
115
116
117
118
114
125
122
117
105
109
113
124
121
116
104
108
112
123
120
115
103
107
111
122
119
114
102
106
110
121
118
113
101
105
109
120
117
112
100
104
108
119
116
111
99
103
107
118
115
110
98
102
106
117
114
109
97
101
105
116
113
108
96
100
104
115
112
107
95
99
103
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
106
94
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
113
101
105
93
89
101
112
100
104
92
88
100
111
99
103
91
87
99
110
98
102
90
86
98
109
97
101
89
85
97
108
96
100
88
84
96
107
95
99
87
83
95
106
94
98
86
82
94
105
93
97
85
81
93
104
92
96
84
80
92
103
91
95
83
79
91
102
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
90
101
81
81
69
69
89
100
80
80
68
68
88
99
79
79
67
67
87
98
78
78
66
66
86
97
77
77
65
65
85
96
76
76
64
64
84
95
75
75
63
63
83
94
74
74
62
62
82
93
73
73
61
61
81
92
72
72
60
60
80
91
71
71
59
59
79
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
58
59
60
61
62
63
64
65
66
67
68
69
70
58
57
56
55
54
53
52
51
50
49
48
47
46
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
83
69
57
45
57
71
84
68
56
44
56
72
85
67
55
43
55
73
86
66
54
42
54
74
87
65
53
41
53
75
88
64
52
40
52
76
89
63
51
39
51
77
90
62
50
38
50
78
91
61
49
37
49
79
92
60
48
36
48
80
93
59
47
35
47
81
102
101
100
99
98
97
96
95
94
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
82
83
84
85
86
87
88
89
90
101
59
35
21
47
89
100
60
36
20
48
88
99
61
37
19
49
87
98
62
38
18
50
86
97
63
39
17
51
85
96
64
40
16
52
84
95
65
41
15
53
83
94
66
42
14
54
82
93
67
43
13
55
81
92
68
44
12
56
80
91
69
45
11
57
79
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
58
57
56
55
54
53
52
51
50
49
48
47
46
10
9
8
7
6
5
4
3
2
1
0
185
186
187
188
189
190
191
192
193
194
195
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
171
170
169
168
167
166
165
164
163
162
161
160
159
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
174
173
172
171
184
174
170
158
162
170
183
173
169
157
161
169
182
172
168
156
160
168
181
171
167
155
159
167
180
170
166
154
158
166
179
169
165
153
157
165
178
168
164
152
156
164
177
167
163
151
155
163
176
166
162
150
154
162
175
165
161
149
153
161
174
164
160
148
152
160
173
161
162
163
164
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
150
149
148
147
159
172
160
154
158
146
142
146
158
171
159
153
157
145
141
145
157
170
158
152
156
144
140
144
156
169
157
151
155
143
139
143
155
168
156
150
154
142
138
142
154
167
155
149
153
141
137
141
153
166
154
148
152
140
136
140
152
165
164
163
162
161
160
159
158
157
156
155
154
153
147
151
139
135
139
140
141
142
143
144
145
146
147
148
149
150
151
152
146
150
138
134
138
151
145
149
137
133
137
150
144
148
136
132
136
149
143
147
135
131
135
148
142
146
134
130
134
147
141
145
133
129
133
146
140
144
132
128
132
145
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
131
144
130
118
130
143
129
117
129
142
128
116
128
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
127
115
127
128
129
130
131
130
129
128
127
126
125
124
123
124
125
126
127
133
140
126
114
126
122
133
139
125
113
125
121
132
138
124
112
124
120
131
137
123
111
123
119
130
136
122
110
122
118
129
135
121
109
121
117
128
134
120
108
120
116
127
133
132
131
130
129
128
127
126
125
124
125
126
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
114
113
112
111
112
113
114
115
116
117
118
119
115
126
123
118
106
110
114
125
122
117
105
109
113
124
121
116
104
108
112
123
120
115
103
107
111
122
119
114
102
106
110
121
118
113
101
105
109
120
117
112
100
104
108
119
116
111
99
103
107
118
115
110
98
102
106
117
114
109
97
101
105
116
113
108
96
100
104
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
107
95
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
114
102
106
94
90
102
113
101
105
93
89
101
112
100
104
92
88
100
111
99
103
91
87
99
110
98
102
90
86
98
109
97
101
89
85
97
108
96
100
88
84
96
107
95
99
87
83
95
106
94
98
86
82
94
105
93
97
85
81
93
104
92
96
84
80
92
103
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
91
102
82
82
70
70
90
101
81
81
69
69
89
100
80
80
68
68
88
99
79
79
67
67
87
98
78
78
66
66
86
97
77
77
65
65
85
96
76
76
64
64
84
95
75
75
63
63
83
94
74
74
62
62
82
93
73
73
61
61
81
92
72
72
60
60
80
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
59
60
61
62
63
64
65
66
67
68
69
70
71
59
58
57
56
55
54
53
52
51
50
49
48
47
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
84
70
58
46
58
72
85
69
57
45
57
73
86
68
56
44
56
74
87
67
55
43
55
75
88
66
54
42
54
76
89
65
53
41
53
77
90
64
52
40
52
78
91
63
51
39
51
79
92
62
50
38
50
80
93
61
49
37
49
81
94
60
48
36
48
82
103
102
101
100
99
98
97
96
95
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
83
84
85
86
87
88
89
90
91
102
60
36
22
48
90
101
61
37
21
49
89
100
62
38
20
50
88
99
63
39
19
51
87
98
64
40
18
52
86
97
65
41
17
53
85
96
66
42
16
54
84
95
67
43
15
55
83
94
68
44
14
56
82
93
69
45
13
57
81
92
70
46
12
58
80
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
59
58
57
56
55
54
53
52
51
50
49
48
47
11
10
9
8
7
6
5
4
3
2
1
0
186
187
188
189
190
191
192
193
194
195
196
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
172
171
170
169
168
167
166
165
164
163
162
161
160
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
185
175
171
159
163
171
184
174
170
158
162
170
183
173
169
157
161
169
182
172
168
156
160
168
181
171
167
155
159
167
180
170
166
154
158
166
179
169
165
153
157
165
178
168
164
152
156
164
177
167
163
151
155
163
176
166
162
150
154
162
175
165
161
149
153
161
174
162
163
164
165
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
151
150
149
148
160
173
161
155
159
147
143
147
159
172
160
154
158
146
142
146
158
171
159
153
157
145
141
145
157
170
158
152
156
144
140
144
156
169
157
151
155
143
139
143
155
168
156
150
154
142
138
142
154
167
155
149
153
141
137
141
153
166
165
164
163
162
161
160
159
158
157
156
155
154
148
152
140
136
140
141
142
143
144
145
146
147
148
149
150
151
152
153
147
151
139
135
139
152
146
150
138
134
138
151
145
149
137
133
137
150
144
148
136
132
136
149
143
147
135
131
135
148
142
146
134
130
134
147
141
145
133
129
133
146
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
132
145
131
119
131
144
130
118
130
143
129
117
129
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
143
142
128
116
128
129
130
131
132
131
130
129
128
127
126
125
124
125
126
127
128
134
141
127
115
127
123
134
140
126
114
126
122
133
139
125
113
125
121
132
138
124
112
124
120
131
137
123
111
123
119
130
136
122
110
122
118
129
135
121
109
121
117
128
134
133
132
131
130
129
128
127
126
125
126
127
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
115
114
113
112
113
114
115
116
117
118
119
120
116
127
124
119
107
111
115
126
123
118
106
110
114
125
122
117
105
109
113
124
121
116
104
108
112
123
120
115
103
107
111
122
119
114
102
106
110
121
118
113
101
105
109
120
117
112
100
104
108
119
116
111
99
103
107
118
115
110
98
102
106
117
114
109
97
101
105
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
108
96
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
115
103
107
95
91
103
114
102
106
94
90
102
113
101
105
93
89
101
112
100
104
92
88
100
111
99
103
91
87
99
110
98
102
90
86
98
109
97
101
89
85
97
108
96
100
88
84
96
107
95
99
87
83
95
106
94
98
86
82
94
105
93
97
85
81
93
104
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
92
103
83
83
71
71
91
102
82
82
70
70
90
101
81
81
69
69
89
100
80
80
68
68
88
99
79
79
67
67
87
98
78
78
66
66
86
97
77
77
65
65
85
96
76
76
64
64
84
95
75
75
63
63
83
94
74
74
62
62
82
93
73
73
61
61
81
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
60
61
62
63
64
65
66
67
68
69
70
71
72
60
59
58
57
56
55
54
53
52
51
50
49
48
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
85
71
59
47
59
73
86
70
58
46
58
74
87
69
57
45
57
75
88
68
56
44
56
76
89
67
55
43
55
77
90
66
54
42
54
78
91
65
53
41
53
79
92
64
52
40
52
80
93
63
51
39
51
81
94
62
50
38
50
82
95
61
49
37
49
83
104
103
102
101
100
99
98
97
96
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
84
85
86
87
88
89
90
91
92
103
61
37
23
49
91
102
62
38
22
50
90
101
63
39
21
51
89
100
64
40
20
52
88
99
65
41
19
53
87
98
66
42
18
54
86
97
67
43
17
55
85
96
68
44
16
56
84
95
69
45
15
57
83
94
70
46
14
58
82
93
71
47
13
59
81
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
60
59
58
57
56
55
54
53
52
51
50
49
48
12
11
10
9
8
7
6
5
4
3
2
1
0
153
154
155
156
157
158
159
160
161
162
163
164
165
166
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
136
135
134
133
132
131
130
129
128
127
126
125
124
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
152
147
135
123
127
135
151
146
134
122
126
134
150
145
133
121
125
133
149
144
132
120
124
132
148
143
131
119
123
131
147
142
130
118
122
130
146
141
129
117
121
129
145
140
128
116
120
128
144
139
127
115
119
127
143
138
126
114
118
126
142
137
125
113
117
125
141
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
115
114
113
112
124
140
128
142
123
111
107
111
123
139
127
142
122
110
106
110
122
138
126
141
121
109
105
109
121
137
125
140
120
108
104
108
120
136
124
139
119
107
103
107
119
135
123
138
118
106
102
106
118
134
122
137
117
105
101
105
117
133
132
131
130
129
128
127
126
125
124
123
122
121
136
116
104
100
104
105
106
107
108
109
110
111
112
113
114
115
116
120
135
115
103
99
103
119
134
114
102
98
102
118
133
113
101
97
101
117
132
112
100
96
100
116
131
111
99
95
99
115
130
110
98
94
98
114
129
109
97
93
97
113
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
96
112
119
83
95
111
118
82
94
110
117
81
93
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
116
80
92
93
94
95
96
95
94
93
92
91
90
89
88
89
90
91
92
98
110
115
79
91
87
99
111
114
78
90
86
100
112
113
77
89
85
101
113
112
76
88
84
102
114
111
75
87
83
103
115
110
74
86
82
104
116
109
73
85
81
105
117
118
119
120
121
122
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
79
78
77
76
77
78
79
80
81
82
83
84
80
106
120
107
71
75
79
107
121
106
70
74
78
108
122
105
69
73
77
109
123
104
68
72
76
110
124
103
67
71
75
111
125
102
66
70
74
112
126
101
65
69
73
113
127
100
64
68
72
114
128
99
63
67
71
115
127
98
62
66
70
116
126
97
61
65
69
117
118
119
120
121
122
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
96
60
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
118
115
95
59
55
67
119
114
94
58
54
66
120
113
93
57
53
65
121
112
92
56
52
64
122
111
91
55
51
63
122
110
90
54
50
62
121
109
89
53
49
61
120
108
88
52
48
60
119
107
87
51
47
59
118
106
86
50
46
58
117
105
85
49
45
57
116
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
56
115
95
73
59
35
55
114
94
74
58
34
54
113
93
75
57
33
53
112
92
76
56
32
52
111
91
77
55
31
51
110
90
78
54
30
50
109
89
79
53
29
49
108
88
80
52
28
48
107
87
81
51
27
47
106
86
82
50
26
46
105
85
83
49
25
45
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
72
73
74
75
76
77
78
79
80
81
82
83
84
48
47
46
45
44
43
42
41
40
39
38
37
36
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
97
83
71
35
23
37
98
82
70
34
22
38
99
81
69
33
21
39
100
80
68
32
20
40
101
79
67
31
19
41
102
78
66
30
18
42
103
77
65
29
17
43
104
76
64
28
16
44
105
75
63
27
15
43
106
74
62
26
14
42
107
73
61
25
13
41
116
115
114
113
112
111
110
109
108
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
40
39
38
37
36
35
34
33
32
115
73
49
37
11
31
114
74
50
38
10
30
113
75
51
39
9
29
112
76
52
40
8
28
111
77
53
41
7
27
110
78
54
42
6
26
109
79
55
43
5
25
108
80
56
44
4
24
107
81
57
45
3
23
106
82
58
46
2
22
105
83
59
47
1
21
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
72
71
70
69
68
67
66
65
64
63
62
61
60
48
49
50
51
52
53
54
55
56
57
58
59
60
0
154
155
156
157
158
159
160
161
162
163
164
165
166
167
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
137
136
135
134
133
132
131
130
129
128
127
126
125
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
153
148
136
124
128
136
152
147
135
123
127
135
151
146
134
122
126
134
150
145
133
121
125
133
149
144
132
120
124
132
148
143
131
119
123
131
147
142
130
118
122
130
146
141
129
117
121
129
145
140
128
116
120
128
144
139
127
115
119
127
143
138
126
114
118
126
142
130
131
132
133
134
135
136
137
138
139
140
141
142
143
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
116
115
114
113
125
141
129
143
124
112
108
112
124
140
128
143
123
111
107
111
123
139
127
142
122
110
106
110
122
138
126
141
121
109
105
109
121
137
125
140
120
108
104
108
120
136
124
139
119
107
103
107
119
135
123
138
118
106
102
106
118
134
133
132
131
130
129
128
127
126
125
124
123
122
137
117
105
101
105
106
107
108
109
110
111
112
113
114
115
116
117
121
136
116
104
100
104
120
135
115
103
99
103
119
134
114
102
98
102
118
133
113
101
97
101
117
132
112
100
96
100
116
131
111
99
95
99
115
130
110
98
94
98
114
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
97
113
120
84
96
112
119
83
95
111
118
82
94
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
117
81
93
94
95
96
97
96
95
94
93
92
91
90
89
90
91
92
93
99
111
116
80
92
88
100
112
115
79
91
87
101
113
114
78
90
86
102
114
113
77
89
85
103
115
112
76
88
84
104
116
111
75
87
83
105
117
110
74
86
82
106
118
119
120
121
122
123
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
80
79
78
77
78
79
80
81
82
83
84
85
81
107
121
108
72
76
80
108
122
107
71
75
79
109
123
106
70
74
78
110
124
105
69
73
77
111
125
104
68
72
76
112
126
103
67
71
75
113
127
102
66
70
74
114
128
101
65
69
73
115
129
100
64
68
72
116
128
99
63
67
71
117
127
98
62
66
70
118
119
120
121
122
123
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
97
61
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
119
116
96
60
56
68
120
115
95
59
55
67
121
114
94
58
54
66
122
113
93
57
53
65
123
112
92
56
52
64
123
111
91
55
51
63
122
110
90
54
50
62
121
109
89
53
49
61
120
108
88
52
48
60
119
107
87
51
47
59
118
106
86
50
46
58
117
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
57
116
96
74
60
36
56
115
95
75
59
35
55
114
94
76
58
34
54
113
93
77
57
33
53
112
92
78
56
32
52
111
91
79
55
31
51
110
90
80
54
30
50
109
89
81
53
29
49
108
88
82
52
28
48
107
87
83
51
27
47
106
86
84
50
26
46
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
73
74
75
76
77
78
79
80
81
82
83
84
85
49
48
47
46
45
44
43
42
41
40
39
38
37
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
98
84
72
36
24
38
99
83
71
35
23
39
100
82
70
34
22
40
101
81
69
33
21
41
102
80
68
32
20
42
103
79
67
31
19
43
104
78
66
30
18
44
105
77
65
29
17
43
106
76
64
28
16
42
107
75
63
27
15
41
108
74
62
26
14
40
117
116
115
114
113
112
111
110
109
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
39
38
37
36
35
34
33
32
31
116
74
50
38
12
30
115
75
51
39
11
29
114
76
52
40
10
28
113
77
53
41
9
27
112
78
54
42
8
26
111
79
55
43
7
25
110
80
56
44
6
24
109
81
57
45
5
23
108
82
58
46
4
22
107
83
59
47
3
21
106
84
60
48
2
20
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
73
72
71
70
69
68
67
66
65
64
63
62
61
49
50
51
52
53
54
55
56
57
58
59
60
61
1
0
155
156
157
158
159
160
161
162
163
164
165
166
167
168
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
138
137
136
135
134
133
132
131
130
129
128
127
126
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
154
149
137
125
129
137
153
148
136
124
128
136
152
147
135
123
127
135
151
146
134
122
126
134
150
145
133
121
125
133
149
144
132
120
124
132
148
143
131
119
123
131
147
142
130
118
122
130
146
141
129
117
121
129
145
140
128
116
120
128
144
139
127
115
119
127
143
131
132
133
134
135
136
137
138
139
140
141
142
143
144
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
117
116
115
114
126
142
130
144
125
113
109
113
125
141
129
144
124
112
108
112
124
140
128
143
123
111
107
111
123
139
127
142
122
110
106
110
122
138
126
141
121
109
105
109
121
137
125
140
120
108
104
108
120
136
124
139
119
107
103
107
119
135
134
133
132
131
130
129
128
127
126
125
124
123
138
118
106
102
106
107
108
109
110
111
112
113
114
115
116
117
118
122
137
117
105
101
105
121
136
116
104
100
104
120
135
115
103
99
103
119
134
114
102
98
102
118
133
113
101
97
101
117
132
112
100
96
100
116
131
111
99
95
99
115
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
98
114
121
85
97
113
120
84
96
112
119
83
95
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
118
82
94
95
96
97
98
97
96
95
94
93
92
91
90
91
92
93
94
100
112
117
81
93
89
101
113
116
80
92
88
102
114
115
79
91
87
103
115
114
78
90
86
104
116
113
77
89
85
105
117
112
76
88
84
106
118
111
75
87
83
107
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
81
80
79
78
79
80
81
82
83
84
85
86
82
108
122
109
73
77
81
109
123
108
72
76
80
110
124
107
71
75
79
111
125
106
70
74
78
112
126
105
69
73
77
113
127
104
68
72
76
114
128
103
67
71
75
115
129
102
66
70
74
116
130
101
65
69
73
117
129
100
64
68
72
118
128
99
63
67
71
119
120
121
122
123
124
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
98
62
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
120
117
97
61
57
69
121
116
96
60
56
68
122
115
95
59
55
67
123
114
94
58
54
66
124
113
93
57
53
65
124
112
92
56
52
64
123
111
91
55
51
63
122
110
90
54
50
62
121
109
89
53
49
61
120
108
88
52
48
60
119
107
87
51
47
59
118
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
58
117
97
75
61
37
57
116
96
76
60
36
56
115
95
77
59
35
55
114
94
78
58
34
54
113
93
79
57
33
53
112
92
80
56
32
52
111
91
81
55
31
51
110
90
82
54
30
50
109
89
83
53
29
49
108
88
84
52
28
48
107
87
85
51
27
47
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
74
75
76
77
78
79
80
81
82
83
84
85
86
50
49
48
47
46
45
44
43
42
41
40
39
38
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
99
85
73
37
25
39
100
84
72
36
24
40
101
83
71
35
23
41
102
82
70
34
22
42
103
81
69
33
21
43
104
80
68
32
20
44
105
79
67
31
19
43
106
78
66
30
18
42
107
77
65
29
17
41
108
76
64
28
16
40
109
75
63
27
15
39
118
117
116
115
114
113
112
111
110
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
38
37
36
35
34
33
32
31
30
117
75
51
39
13
29
116
76
52
40
12
28
115
77
53
41
11
27
114
78
54
42
10
26
113
79
55
43
9
25
112
80
56
44
8
24
111
81
57
45
7
23
110
82
58
46
6
22
109
83
59
47
5
21
108
84
60
48
4
20
107
85
61
49
3
19
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
74
73
72
71
70
69
68
67
66
65
64
63
62
50
51
52
53
54
55
56
57
58
59
60
61
62
2
1
0
156
157
158
159
160
161
162
163
164
165
166
167
168
169
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
139
138
137
136
135
134
133
132
131
130
129
128
127
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
155
150
138
126
130
138
154
149
137
125
129
137
153
148
136
124
128
136
152
147
135
123
127
135
151
146
134
122
126
134
150
145
133
121
125
133
149
144
132
120
124
132
148
143
131
119
123
131
147
142
130
118
122
130
146
141
129
117
121
129
145
140
128
116
120
128
144
132
133
134
135
136
137
138
139
140
141
142
143
144
145
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
118
117
116
115
127
143
131
145
126
114
110
114
126
142
130
145
125
113
109
113
125
141
129
144
124
112
108
112
124
140
128
143
123
111
107
111
123
139
127
142
122
110
106
110
122
138
126
141
121
109
105
109
121
137
125
140
120
108
104
108
120
136
135
134
133
132
131
130
129
128
127
126
125
124
139
119
107
103
107
108
109
110
111
112
113
114
115
116
117
118
119
123
138
118
106
102
106
122
137
117
105
101
105
121
136
116
104
100
104
120
135
115
103
99
103
119
134
114
102
98
102
118
133
113
101
97
101
117
132
112
100
96
100
116
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
99
115
122
86
98
114
121
85
97
113
120
84
96
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
119
83
95
96
97
98
99
98
97
96
95
94
93
92
91
92
93
94
95
101
113
118
82
94
90
102
114
117
81
93
89
103
115
116
80
92
88
104
116
115
79
91
87
105
117
114
78
90
86
106
118
113
77
89
85
107
119
112
76
88
84
108
120
121
122
123
124
125
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
82
81
80
79
80
81
82
83
84
85
86
87
83
109
123
110
74
78
82
110
124
109
73
77
81
111
125
108
72
76
80
112
126
107
71
75
79
113
127
106
70
74
78
114
128
105
69
73
77
115
129
104
68
72
76
116
130
103
67
71
75
117
131
102
66
70
74
118
130
101
65
69
73
119
129
100
64
68
72
120
121
122
123
124
125
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
99
63
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
121
118
98
62
58
70
122
117
97
61
57
69
123
116
96
60
56
68
124
115
95
59
55
67
125
114
94
58
54
66
125
113
93
57
53
65
124
112
92
56
52
64
123
111
91
55
51
63
122
110
90
54
50
62
121
109
89
53
49
61
120
108
88
52
48
60
119
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
59
118
98
76
62
38
58
117
97
77
61
37
57
116
96
78
60
36
56
115
95
79
59
35
55
114
94
80
58
34
54
113
93
81
57
33
53
112
92
82
56
32
52
111
91
83
55
31
51
110
90
84
54
30
50
109
89
85
53
29
49
108
88
86
52
28
48
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
75
76
77
78
79
80
81
82
83
84
85
86
87
51
50
49
48
47
46
45
44
43
42
41
40
39
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
100
86
74
38
26
40
101
85
73
37
25
41
102
84
72
36
24
42
103
83
71
35
23
43
104
82
70
34
22
44
105
81
69
33
21
43
106
80
68
32
20
42
107
79
67
31
19
41
108
78
66
30
18
40
109
77
65
29
17
39
110
76
64
28
16
38
119
118
117
116
115
114
113
112
111
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
37
36
35
34
33
32
31
30
29
118
76
52
40
14
28
117
77
53
41
13
27
116
78
54
42
12
26
115
79
55
43
11
25
114
80
56
44
10
24
113
81
57
45
9
23
112
82
58
46
8
22
111
83
59
47
7
21
110
84
60
48
6
20
109
85
61
49
5
19
108
86
62
50
4
18
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
75
74
73
72
71
70
69
68
67
66
65
64
63
51
52
53
54
55
56
57
58
59
60
61
62
63
3
2
1
0
157
158
159
160
161
162
163
164
165
166
167
168
169
170
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
140
139
138
137
136
135
134
133
132
131
130
129
128
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
156
151
139
127
131
139
155
150
138
126
130
138
154
149
137
125
129
137
153
148
136
124
128
136
152
147
135
123
127
135
151
146
134
122
126
134
150
145
133
121
125
133
149
144
132
120
124
132
148
143
131
119
123
131
147
142
130
118
122
130
146
141
129
117
121
129
145
133
134
135
136
137
138
139
140
141
142
143
144
145
146
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
119
118
117
116
128
144
132
146
127
115
111
115
127
143
131
146
126
114
110
114
126
142
130
145
125
113
109
113
125
141
129
144
124
112
108
112
124
140
128
143
123
111
107
111
123
139
127
142
122
110
106
110
122
138
126
141
121
109
105
109
121
137
136
135
134
133
132
131
130
129
128
127
126
125
140
120
108
104
108
109
110
111
112
113
114
115
116
117
118
119
120
124
139
119
107
103
107
123
138
118
106
102
106
122
137
117
105
101
105
121
136
116
104
100
104
120
135
115
103
99
103
119
134
114
102
98
102
118
133
113
101
97
101
117
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
100
116
123
87
99
115
122
86
98
114
121
85
97
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
120
84
96
97
98
99
100
99
98
97
96
95
94
93
92
93
94
95
96
102
114
119
83
95
91
103
115
118
82
94
90
104
116
117
81
93
89
105
117
116
80
92
88
106
118
115
79
91
87
107
119
114
78
90
86
108
120
113
77
89
85
109
121
122
123
124
125
126
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
83
82
81
80
81
82
83
84
85
86
87
88
84
110
124
111
75
79
83
111
125
110
74
78
82
112
126
109
73
77
81
113
127
108
72
76
80
114
128
107
71
75
79
115
129
106
70
74
78
116
130
105
69
73
77
117
131
104
68
72
76
118
132
103
67
71
75
119
131
102
66
70
74
120
130
101
65
69
73
121
122
123
124
125
126
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
100
64
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
122
119
99
63
59
71
123
118
98
62
58
70
124
117
97
61
57
69
125
116
96
60
56
68
126
115
95
59
55
67
126
114
94
58
54
66
125
113
93
57
53
65
124
112
92
56
52
64
123
111
91
55
51
63
122
110
90
54
50
62
121
109
89
53
49
61
120
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
60
119
99
77
63
39
59
118
98
78
62
38
58
117
97
79
61
37
57
116
96
80
60
36
56
115
95
81
59
35
55
114
94
82
58
34
54
113
93
83
57
33
53
112
92
84
56
32
52
111
91
85
55
31
51
110
90
86
54
30
50
109
89
87
53
29
49
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
76
77
78
79
80
81
82
83
84
85
86
87
88
52
51
50
49
48
47
46
45
44
43
42
41
40
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
101
87
75
39
27
41
102
86
74
38
26
42
103
85
73
37
25
43
104
84
72
36
24
44
105
83
71
35
23
43
106
82
70
34
22
42
107
81
69
33
21
41
108
80
68
32
20
40
109
79
67
31
19
39
110
78
66
30
18
38
111
77
65
29
17
37
120
119
118
117
116
115
114
113
112
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
36
35
34
33
32
31
30
29
28
119
77
53
41
15
27
118
78
54
42
14
26
117
79
55
43
13
25
116
80
56
44
12
24
115
81
57
45
11
23
114
82
58
46
10
22
113
83
59
47
9
21
112
84
60
48
8
20
111
85
61
49
7
19
110
86
62
50
6
18
109
87
63
51
5
17
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
76
75
74
73
72
71
70
69
68
67
66
65
64
52
53
54
55
56
57
58
59
60
61
62
63
64
4
3
2
1
0
158
159
160
161
162
163
164
165
166
167
168
169
170
171
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
141
140
139
138
137
136
135
134
133
132
131
130
129
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
157
152
140
128
132
140
156
151
139
127
131
139
155
150
138
126
130
138
154
149
137
125
129
137
153
148
136
124
128
136
152
147
135
123
127
135
151
146
134
122
126
134
150
145
133
121
125
133
149
144
132
120
124
132
148
143
131
119
123
131
147
142
130
118
122
130
146
134
135
136
137
138
139
140
141
142
143
144
145
146
147
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
120
119
118
117
129
145
133
147
128
116
112
116
128
144
132
147
127
115
111
115
127
143
131
146
126
114
110
114
126
142
130
145
125
113
109
113
125
141
129
144
124
112
108
112
124
140
128
143
123
111
107
111
123
139
127
142
122
110
106
110
122
138
137
136
135
134
133
132
131
130
129
128
127
126
141
121
109
105
109
110
111
112
113
114
115
116
117
118
119
120
121
125
140
120
108
104
108
124
139
119
107
103
107
123
138
118
106
102
106
122
137
117
105
101
105
121
136
116
104
100
104
120
135
115
103
99
103
119
134
114
102
98
102
118
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
101
117
124
88
100
116
123
87
99
115
122
86
98
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
121
85
97
98
99
100
101
100
99
98
97
96
95
94
93
94
95
96
97
103
115
120
84
96
92
104
116
119
83
95
91
105
117
118
82
94
90
106
118
117
81
93
89
107
119
116
80
92
88
108
120
115
79
91
87
109
121
114
78
90
86
110
122
123
124
125
126
127
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
84
83
82
81
82
83
84
85
86
87
88
89
85
111
125
112
76
80
84
112
126
111
75
79
83
113
127
110
74
78
82
114
128
109
73
77
81
115
129
108
72
76
80
116
130
107
71
75
79
117
131
106
70
74
78
118
132
105
69
73
77
119
133
104
68
72
76
120
132
103
67
71
75
121
131
102
66
70
74
122
123
124
125
126
127
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
101
65
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
123
120
100
64
60
72
124
119
99
63
59
71
125
118
98
62
58
70
126
117
97
61
57
69
127
116
96
60
56
68
127
115
95
59
55
67
126
114
94
58
54
66
125
113
93
57
53
65
124
112
92
56
52
64
123
111
91
55
51
63
122
110
90
54
50
62
121
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
61
120
100
78
64
40
60
119
99
79
63
39
59
118
98
80
62
38
58
117
97
81
61
37
57
116
96
82
60
36
56
115
95
83
59
35
55
114
94
84
58
34
54
113
93
85
57
33
53
112
92
86
56
32
52
111
91
87
55
31
51
110
90
88
54
30
50
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
77
78
79
80
81
82
83
84
85
86
87
88
89
53
52
51
50
49
48
47
46
45
44
43
42
41
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
102
88
76
40
28
42
103
87
75
39
27
43
104
86
74
38
26
44
105
85
73
37
25
43
106
84
72
36
24
42
107
83
71
35
23
41
108
82
70
34
22
40
109
81
69
33
21
39
110
80
68
32
20
38
111
79
67
31
19
37
112
78
66
30
18
36
121
120
119
118
117
116
115
114
113
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
35
34
33
32
31
30
29
28
27
120
78
54
42
16
26
119
79
55
43
15
25
118
80
56
44
14
24
117
81
57
45
13
23
116
82
58
46
12
22
115
83
59
47
11
21
114
84
60
48
10
20
113
85
61
49
9
19
112
86
62
50
8
18
111
87
63
51
7
17
110
88
64
52
6
16
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
77
76
75
74
73
72
71
70
69
68
67
66
65
53
54
55
56
57
58
59
60
61
62
63
64
65
5
4
3
2
1
0
159
160
161
162
163
164
165
166
167
168
169
170
171
172
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
142
141
140
139
138
137
136
135
134
133
132
131
130
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
158
153
141
129
133
141
157
152
140
128
132
140
156
151
139
127
131
139
155
150
138
126
130
138
154
149
137
125
129
137
153
148
136
124
128
136
152
147
135
123
127
135
151
146
134
122
126
134
150
145
133
121
125
133
149
144
132
120
124
132
148
143
131
119
123
131
147
135
136
137
138
139
140
141
142
143
144
145
146
147
148
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
121
120
119
118
130
146
134
148
129
117
113
117
129
145
133
148
128
116
112
116
128
144
132
147
127
115
111
115
127
143
131
146
126
114
110
114
126
142
130
145
125
113
109
113
125
141
129
144
124
112
108
112
124
140
128
143
123
111
107
111
123
139
138
137
136
135
134
133
132
131
130
129
128
127
142
122
110
106
110
111
112
113
114
115
116
117
118
119
120
121
122
126
141
121
109
105
109
125
140
120
108
104
108
124
139
119
107
103
107
123
138
118
106
102
106
122
137
117
105
101
105
121
136
116
104
100
104
120
135
115
103
99
103
119
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
102
118
125
89
101
117
124
88
100
116
123
87
99
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
122
86
98
99
100
101
102
101
100
99
98
97
96
95
94
95
96
97
98
104
116
121
85
97
93
105
117
120
84
96
92
106
118
119
83
95
91
107
119
118
82
94
90
108
120
117
81
93
89
109
121
116
80
92
88
110
122
115
79
91
87
111
123
124
125
126
127
128
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
85
84
83
82
83
84
85
86
87
88
89
90
86
112
126
113
77
81
85
113
127
112
76
80
84
114
128
111
75
79
83
115
129
110
74
78
82
116
130
109
73
77
81
117
131
108
72
76
80
118
132
107
71
75
79
119
133
106
70
74
78
120
134
105
69
73
77
121
133
104
68
72
76
122
132
103
67
71
75
123
124
125
126
127
128
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
102
66
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
124
121
101
65
61
73
125
120
100
64
60
72
126
119
99
63
59
71
127
118
98
62
58
70
128
117
97
61
57
69
128
116
96
60
56
68
127
115
95
59
55
67
126
114
94
58
54
66
125
113
93
57
53
65
124
112
92
56
52
64
123
111
91
55
51
63
122
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
62
121
101
79
65
41
61
120
100
80
64
40
60
119
99
81
63
39
59
118
98
82
62
38
58
117
97
83
61
37
57
116
96
84
60
36
56
115
95
85
59
35
55
114
94
86
58
34
54
113
93
87
57
33
53
112
92
88
56
32
52
111
91
89
55
31
51
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
78
79
80
81
82
83
84
85
86
87
88
89
90
54
53
52
51
50
49
48
47
46
45
44
43
42
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
103
89
77
41
29
43
104
88
76
40
28
44
105
87
75
39
27
43
106
86
74
38
26
42
107
85
73
37
25
41
108
84
72
36
24
40
109
83
71
35
23
39
110
82
70
34
22
38
111
81
69
33
21
37
112
80
68
32
20
36
113
79
67
31
19
35
122
121
120
119
118
117
116
115
114
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
34
33
32
31
30
29
28
27
26
121
79
55
43
17
25
120
80
56
44
16
24
119
81
57
45
15
23
118
82
58
46
14
22
117
83
59
47
13
21
116
84
60
48
12
20
115
85
61
49
11
19
114
86
62
50
10
18
113
87
63
51
9
17
112
88
64
52
8
16
111
89
65
53
7
15
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
78
77
76
75
74
73
72
71
70
69
68
67
66
54
55
56
57
58
59
60
61
62
63
64
65
66
6
5
4
3
2
1
0
160
161
162
163
164
165
166
167
168
169
170
171
172
173
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
143
142
141
140
139
138
137
136
135
134
133
132
131
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
159
154
142
130
134
142
158
153
141
129
133
141
157
152
140
128
132
140
156
151
139
127
131
139
155
150
138
126
130
138
154
149
137
125
129
137
153
148
136
124
128
136
152
147
135
123
127
135
151
146
134
122
126
134
150
145
133
121
125
133
149
144
132
120
124
132
148
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
122
121
120
119
131
147
135
149
130
118
114
118
130
146
134
149
129
117
113
117
129
145
133
148
128
116
112
116
128
144
132
147
127
115
111
115
127
143
131
146
126
114
110
114
126
142
130
145
125
113
109
113
125
141
129
144
124
112
108
112
124
140
139
138
137
136
135
134
133
132
131
130
129
128
143
123
111
107
111
112
113
114
115
116
117
118
119
120
121
122
123
127
142
122
110
106
110
126
141
121
109
105
109
125
140
120
108
104
108
124
139
119
107
103
107
123
138
118
106
102
106
122
137
117
105
101
105
121
136
116
104
100
104
120
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
103
119
126
90
102
118
125
89
101
117
124
88
100
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
123
87
99
100
101
102
103
102
101
100
99
98
97
96
95
96
97
98
99
105
117
122
86
98
94
106
118
121
85
97
93
107
119
120
84
96
92
108
120
119
83
95
91
109
121
118
82
94
90
110
122
117
81
93
89
111
123
116
80
92
88
112
124
125
126
127
128
129
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
86
85
84
83
84
85
86
87
88
89
90
91
87
113
127
114
78
82
86
114
128
113
77
81
85
115
129
112
76
80
84
116
130
111
75
79
83
117
131
110
74
78
82
118
132
109
73
77
81
119
133
108
72
76
80
120
134
107
71
75
79
121
135
106
70
74
78
122
134
105
69
73
77
123
133
104
68
72
76
124
125
126
127
128
129
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
103
67
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
125
122
102
66
62
74
126
121
101
65
61
73
127
120
100
64
60
72
128
119
99
63
59
71
129
118
98
62
58
70
129
117
97
61
57
69
128
116
96
60
56
68
127
115
95
59
55
67
126
114
94
58
54
66
125
113
93
57
53
65
124
112
92
56
52
64
123
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
63
122
102
80
66
42
62
121
101
81
65
41
61
120
100
82
64
40
60
119
99
83
63
39
59
118
98
84
62
38
58
117
97
85
61
37
57
116
96
86
60
36
56
115
95
87
59
35
55
114
94
88
58
34
54
113
93
89
57
33
53
112
92
90
56
32
52
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
79
80
81
82
83
84
85
86
87
88
89
90
91
55
54
53
52
51
50
49
48
47
46
45
44
43
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
104
90
78
42
30
44
105
89
77
41
29
43
106
88
76
40
28
42
107
87
75
39
27
41
108
86
74
38
26
40
109
85
73
37
25
39
110
84
72
36
24
38
111
83
71
35
23
37
112
82
70
34
22
36
113
81
69
33
21
35
114
80
68
32
20
34
123
122
121
120
119
118
117
116
115
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
33
32
31
30
29
28
27
26
25
122
80
56
44
18
24
121
81
57
45
17
23
120
82
58
46
16
22
119
83
59
47
15
21
118
84
60
48
14
20
117
85
61
49
13
19
116
86
62
50
12
18
115
87
63
51
11
17
114
88
64
52
10
16
113
89
65
53
9
15
112
90
66
54
8
14
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
79
78
77
76
75
74
73
72
71
70
69
68
67
55
56
57
58
59
60
61
62
63
64
65
66
67
7
6
5
4
3
2
1
0
161
162
163
164
165
166
167
168
169
170
171
172
173
174
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
144
143
142
141
140
139
138
137
136
135
134
133
132
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
160
155
143
131
135
143
159
154
142
130
134
142
158
153
141
129
133
141
157
152
140
128
132
140
156
151
139
127
131
139
155
150
138
126
130
138
154
149
137
125
129
137
153
148
136
124
128
136
152
147
135
123
127
135
151
146
134
122
126
134
150
145
133
121
125
133
149
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
123
122
121
120
132
148
136
150
131
119
115
119
131
147
135
150
130
118
114
118
130
146
134
149
129
117
113
117
129
145
133
148
128
116
112
116
128
144
132
147
127
115
111
115
127
143
131
146
126
114
110
114
126
142
130
145
125
113
109
113
125
141
140
139
138
137
136
135
134
133
132
131
130
129
144
124
112
108
112
113
114
115
116
117
118
119
120
121
122
123
124
128
143
123
111
107
111
127
142
122
110
106
110
126
141
121
109
105
109
125
140
120
108
104
108
124
139
119
107
103
107
123
138
118
106
102
106
122
137
117
105
101
105
121
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
104
120
127
91
103
119
126
90
102
118
125
89
101
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
124
88
100
101
102
103
104
103
102
101
100
99
98
97
96
97
98
99
100
106
118
123
87
99
95
107
119
122
86
98
94
108
120
121
85
97
93
109
121
120
84
96
92
110
122
119
83
95
91
111
123
118
82
94
90
112
124
117
81
93
89
113
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
87
86
85
84
85
86
87
88
89
90
91
92
88
114
128
115
79
83
87
115
129
114
78
82
86
116
130
113
77
81
85
117
131
112
76
80
84
118
132
111
75
79
83
119
133
110
74
78
82
120
134
109
73
77
81
121
135
108
72
76
80
122
136
107
71
75
79
123
135
106
70
74
78
124
134
105
69
73
77
125
126
127
128
129
130
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
104
68
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
126
123
103
67
63
75
127
122
102
66
62
74
128
121
101
65
61
73
129
120
100
64
60
72
130
119
99
63
59
71
130
118
98
62
58
70
129
117
97
61
57
69
128
116
96
60
56
68
127
115
95
59
55
67
126
114
94
58
54
66
125
113
93
57
53
65
124
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
64
123
103
81
67
43
63
122
102
82
66
42
62
121
101
83
65
41
61
120
100
84
64
40
60
119
99
85
63
39
59
118
98
86
62
38
58
117
97
87
61
37
57
116
96
88
60
36
56
115
95
89
59
35
55
114
94
90
58
34
54
113
93
91
57
33
53
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
80
81
82
83
84
85
86
87
88
89
90
91
92
56
55
54
53
52
51
50
49
48
47
46
45
44
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
105
91
79
43
31
43
106
90
78
42
30
42
107
89
77
41
29
41
108
88
76
40
28
40
109
87
75
39
27
39
110
86
74
38
26
38
111
85
73
37
25
37
112
84
72
36
24
36
113
83
71
35
23
35
114
82
70
34
22
34
115
81
69
33
21
33
124
123
122
121
120
119
118
117
116
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
32
31
30
29
28
27
26
25
24
123
81
57
45
19
23
122
82
58
46
18
22
121
83
59
47
17
21
120
84
60
48
16
20
119
85
61
49
15
19
118
86
62
50
14
18
117
87
63
51
13
17
116
88
64
52
12
16
115
89
65
53
11
15
114
90
66
54
10
14
113
91
67
55
9
13
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
80
79
78
77
76
75
74
73
72
71
70
69
68
56
57
58
59
60
61
62
63
64
65
66
67
68
8
7
6
5
4
3
2
1
0
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
145
144
143
142
141
140
139
138
137
136
135
134
133
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
148
147
146
145
159
156
144
132
136
144
158
155
143
131
135
143
157
154
142
130
134
142
156
153
141
129
133
141
155
152
140
128
132
140
154
151
139
127
131
139
153
150
138
126
130
138
152
149
137
125
129
137
151
148
136
124
128
136
150
147
135
123
127
135
149
146
134
122
126
134
148
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
124
123
122
121
133
147
135
149
132
120
116
120
132
146
134
150
131
119
115
119
131
145
133
150
130
118
114
118
130
144
132
149
129
117
113
117
129
143
131
148
128
116
112
116
128
142
130
147
127
115
111
115
127
141
129
146
126
114
110
114
126
140
139
138
137
136
135
134
133
132
131
130
129
128
145
125
113
109
113
114
115
116
117
118
119
120
121
122
123
124
125
127
144
124
112
108
112
126
143
123
111
107
111
125
142
122
110
106
110
124
141
121
109
105
109
123
140
120
108
104
108
122
139
119
107
103
107
121
138
118
106
102
106
120
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
105
119
128
92
104
118
127
91
103
117
126
90
102
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
125
89
101
102
103
104
103
102
101
100
99
98
97
96
95
96
97
98
99
105
117
124
88
100
94
106
118
123
87
99
93
107
119
122
86
98
92
108
120
121
85
97
91
109
121
120
84
96
90
110
122
119
83
95
89
111
123
118
82
94
88
112
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
88
87
86
85
86
87
88
89
90
91
92
93
87
113
129
116
80
84
86
114
130
115
79
83
85
115
131
114
78
82
84
116
132
113
77
81
83
117
133
112
76
80
82
118
134
111
75
79
81
119
135
110
74
78
80
120
136
109
73
77
79
121
137
108
72
76
78
122
136
107
71
75
77
123
135
106
70
74
76
124
125
126
127
128
129
130
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
105
69
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
75
125
124
104
68
64
74
126
123
103
67
63
73
127
122
102
66
62
72
128
121
101
65
61
71
129
120
100
64
60
70
130
119
99
63
59
69
130
118
98
62
58
68
129
117
97
61
57
67
128
116
96
60
56
66
127
115
95
59
55
65
126
114
94
58
54
64
125
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
63
124
104
82
68
44
62
123
103
83
67
43
61
122
102
84
66
42
60
121
101
85
65
41
59
120
100
86
64
40
58
119
99
87
63
39
57
118
98
88
62
38
56
117
97
89
61
37
55
116
96
90
60
36
54
115
95
91
59
35
53
114
94
92
58
34
52
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
81
82
83
84
85
86
87
88
89
90
91
92
93
57
56
55
54
53
52
51
50
49
48
47
46
45
33
34
35
36
37
38
39
40
41
42
43
44
43
44
45
46
47
48
49
50
51
106
92
80
44
32
42
107
91
79
43
31
41
108
90
78
42
30
40
109
89
77
41
29
39
110
88
76
40
28
38
111
87
75
39
27
37
112
86
74
38
26
36
113
85
73
37
25
35
114
84
72
36
24
34
115
83
71
35
23
33
116
82
70
34
22
32
125
124
123
122
121
120
119
118
117
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
31
30
29
28
27
26
25
24
23
124
82
58
46
20
22
123
83
59
47
19
21
122
84
60
48
18
20
121
85
61
49
17
19
120
86
62
50
16
18
119
87
63
51
15
17
118
88
64
52
14
16
117
89
65
53
13
15
116
90
66
54
12
14
115
91
67
55
11
13
114
92
68
56
10
12
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
81
80
79
78
77
76
75
74
73
72
71
70
69
57
58
59
60
61
62
63
64
65
66
67
68
69
9
8
7
6
5
4
3
2
1
0
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
146
145
144
143
142
141
140
139
138
137
136
135
134
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
149
148
147
146
158
157
145
133
137
145
157
156
144
132
136
144
156
155
143
131
135
143
155
154
142
130
134
142
154
153
141
129
133
141
153
152
140
128
132
140
152
151
139
127
131
139
151
150
138
126
130
138
150
149
137
125
129
137
149
148
136
124
128
136
148
147
135
123
127
135
147
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
125
124
123
122
134
146
134
148
133
121
117
121
133
145
133
149
132
120
116
120
132
144
132
150
131
119
115
119
131
143
131
150
130
118
114
118
130
142
130
149
129
117
113
117
129
141
129
148
128
116
112
116
128
140
128
147
127
115
111
115
127
139
138
137
136
135
134
133
132
131
130
129
128
127
146
126
114
110
114
115
116
117
118
119
120
121
122
123
124
125
126
126
145
125
113
109
113
125
144
124
112
108
112
124
143
123
111
107
111
123
142
122
110
106
110
122
141
121
109
105
109
121
140
120
108
104
108
120
139
119
107
103
107
119
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
106
118
129
93
105
117
128
92
104
116
127
91
103
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
126
90
102
103
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
104
116
125
89
101
93
105
117
124
88
100
92
106
118
123
87
99
91
107
119
122
86
98
90
108
120
121
85
97
89
109
121
120
84
96
88
110
122
119
83
95
87
111
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
89
88
87
86
87
88
89
90
91
92
93
94
86
112
130
117
81
85
85
113
131
116
80
84
84
114
132
115
79
83
83
115
133
114
78
82
82
116
134
113
77
81
81
117
135
112
76
80
80
118
136
111
75
79
79
119
137
110
74
78
78
120
138
109
73
77
77
121
137
108
72
76
76
122
136
107
71
75
75
123
124
125
126
127
128
129
130
130
129
128
127
126
127
128
129
130
131
132
133
134
135
106
70
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
75
74
124
125
105
69
65
73
125
124
104
68
64
72
126
123
103
67
63
71
127
122
102
66
62
70
128
121
101
65
61
69
129
120
100
64
60
68
130
119
99
63
59
67
130
118
98
62
58
66
129
117
97
61
57
65
128
116
96
60
56
64
127
115
95
59
55
63
126
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
62
125
105
83
69
45
61
124
104
84
68
44
60
123
103
85
67
43
59
122
102
86
66
42
58
121
101
87
65
41
57
120
100
88
64
40
56
119
99
89
63
39
55
118
98
90
62
38
54
117
97
91
61
37
53
116
96
92
60
36
52
115
95
93
59
35
51
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
82
83
84
85
86
87
88
89
90
91
92
93
94
58
57
56
55
54
53
52
51
50
49
48
47
46
34
35
36
37
38
39
40
41
42
43
44
43
42
43
44
45
46
47
48
49
50
107
93
81
45
33
41
108
92
80
44
32
40
109
91
79
43
31
39
110
90
78
42
30
38
111
89
77
41
29
37
112
88
76
40
28
36
113
87
75
39
27
35
114
86
74
38
26
34
115
85
73
37
25
33
116
84
72
36
24
32
117
83
71
35
23
31
126
125
124
123
122
121
120
119
118
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
30
29
28
27
26
25
24
23
22
125
83
59
47
21
21
124
84
60
48
20
20
123
85
61
49
19
19
122
86
62
50
18
18
121
87
63
51
17
17
120
88
64
52
16
16
119
89
65
53
15
15
118
90
66
54
14
14
117
91
67
55
13
13
116
92
68
56
12
12
115
93
69
57
11
11
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
82
81
80
79
78
77
76
75
74
73
72
71
70
58
59
60
61
62
63
64
65
66
67
68
69
70
10
9
8
7
6
5
4
3
2
1
0
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
147
146
145
144
143
142
141
140
139
138
137
136
135
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
150
149
148
147
157
158
146
134
138
146
156
157
145
133
137
145
155
156
144
132
136
144
154
155
143
131
135
143
153
154
142
130
134
142
152
153
141
129
133
141
151
152
140
128
132
140
150
151
139
127
131
139
149
150
138
126
130
138
148
149
137
125
129
137
147
148
136
124
128
136
146
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
126
125
124
123
135
145
133
147
134
122
118
122
134
144
132
148
133
121
117
121
133
143
131
149
132
120
116
120
132
142
130
150
131
119
115
119
131
141
129
150
130
118
114
118
130
140
128
149
129
117
113
117
129
139
127
148
128
116
112
116
128
138
137
136
135
134
133
132
131
130
129
128
127
126
147
127
115
111
115
116
117
118
119
120
121
122
123
124
125
126
127
125
146
126
114
110
114
124
145
125
113
109
113
123
144
124
112
108
112
122
143
123
111
107
111
121
142
122
110
106
110
120
141
121
109
105
109
119
140
120
108
104
108
118
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
107
117
130
94
106
116
129
93
105
115
128
92
104
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
127
91
103
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
103
115
126
90
102
92
104
116
125
89
101
91
105
117
124
88
100
90
106
118
123
87
99
89
107
119
122
86
98
88
108
120
121
85
97
87
109
121
120
84
96
86
110
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
90
89
88
87
88
89
90
91
92
93
94
95
85
111
131
118
82
86
84
112
132
117
81
85
83
113
133
116
80
84
82
114
134
115
79
83
81
115
135
114
78
82
80
116
136
113
77
81
79
117
137
112
76
80
78
118
138
111
75
79
77
119
139
110
74
78
76
120
138
109
73
77
75
121
137
108
72
76
74
122
123
124
125
126
127
128
129
130
130
129
128
127
128
129
130
131
132
133
134
135
136
107
71
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
75
74
73
123
126
106
70
66
72
124
125
105
69
65
71
125
124
104
68
64
70
126
123
103
67
63
69
127
122
102
66
62
68
128
121
101
65
61
67
129
120
100
64
60
66
130
119
99
63
59
65
130
118
98
62
58
64
129
117
97
61
57
63
128
116
96
60
56
62
127
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
61
126
106
84
70
46
60
125
105
85
69
45
59
124
104
86
68
44
58
123
103
87
67
43
57
122
102
88
66
42
56
121
101
89
65
41
55
120
100
90
64
40
54
119
99
91
63
39
53
118
98
92
62
38
52
117
97
93
61
37
51
116
96
94
60
36
50
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
83
84
85
86
87
88
89
90
91
92
93
94
95
59
58
57
56
55
54
53
52
51
50
49
48
47
35
36
37
38
39
40
41
42
43
44
43
42
41
42
43
44
45
46
47
48
49
108
94
82
46
34
40
109
93
81
45
33
39
110
92
80
44
32
38
111
91
79
43
31
37
112
90
78
42
30
36
113
89
77
41
29
35
114
88
76
40
28
34
115
87
75
39
27
33
116
86
74
38
26
32
117
85
73
37
25
31
118
84
72
36
24
30
127
126
125
124
123
122
121
120
119
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
29
28
27
26
25
24
23
22
21
126
84
60
48
22
20
125
85
61
49
21
19
124
86
62
50
20
18
123
87
63
51
19
17
122
88
64
52
18
16
121
89
65
53
17
15
120
90
66
54
16
14
119
91
67
55
15
13
118
92
68
56
14
12
117
93
69
57
13
11
116
94
70
58
12
10
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
83
82
81
80
79
78
77
76
75
74
73
72
71
59
60
61
62
63
64
65
66
67
68
69
70
71
11
10
9
8
7
6
5
4
3
2
1
0
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
148
147
146
145
144
143
142
141
140
139
138
137
136
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
156
159
147
135
139
147
155
158
146
134
138
146
154
157
145
133
137
145
153
156
144
132
136
144
152
155
143
131
135
143
151
154
142
130
134
142
150
153
141
129
133
141
149
152
140
128
132
140
148
151
139
127
131
139
147
150
138
126
130
138
146
149
137
125
129
137
145
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
127
126
125
124
136
144
132
146
135
123
119
123
135
143
131
147
134
122
118
122
134
142
130
148
133
121
117
121
133
141
129
149
132
120
116
120
132
140
128
150
131
119
115
119
131
139
127
150
130
118
114
118
130
138
126
149
129
117
113
117
129
137
136
135
134
133
132
131
130
129
128
127
126
125
148
128
116
112
116
117
118
119
120
121
122
123
124
125
126
127
128
124
147
127
115
111
115
123
146
126
114
110
114
122
145
125
113
109
113
121
144
124
112
108
112
120
143
123
111
107
111
119
142
122
110
106
110
118
141
121
109
105
109
117
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
108
116
131
95
107
115
130
94
106
114
129
93
105
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
128
92
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
102
114
127
91
103
91
103
115
126
90
102
90
104
116
125
89
101
89
105
117
124
88
100
88
106
118
123
87
99
87
107
119
122
86
98
86
108
120
121
85
97
85
109
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
91
90
89
88
89
90
91
92
93
94
95
96
84
110
131
119
83
87
83
111
132
118
82
86
82
112
133
117
81
85
81
113
134
116
80
84
80
114
135
115
79
83
79
115
136
114
78
82
78
116
137
113
77
81
77
117
138
112
76
80
76
118
139
111
75
79
75
119
139
110
74
78
74
120
138
109
73
77
73
121
122
123
124
125
126
127
128
129
130
130
129
128
129
130
131
132
133
134
135
136
137
108
72
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
75
74
73
72
122
127
107
71
67
71
123
126
106
70
66
70
124
125
105
69
65
69
125
124
104
68
64
68
126
123
103
67
63
67
127
122
102
66
62
66
128
121
101
65
61
65
129
120
100
64
60
64
130
119
99
63
59
63
130
118
98
62
58
62
129
117
97
61
57
61
128
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
60
127
107
85
71
47
59
126
106
86
70
46
58
125
105
87
69
45
57
124
104
88
68
44
56
123
103
89
67
43
55
122
102
90
66
42
54
121
101
91
65
41
53
120
100
92
64
40
52
119
99
93
63
39
51
118
98
94
62
38
50
117
97
95
61
37
49
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
84
85
86
87
88
89
90
91
92
93
94
95
96
60
59
58
57
56
55
54
53
52
51
50
49
48
36
37
38
39
40
41
42
43
44
43
42
41
40
41
42
43
44
45
46
47
48
109
95
83
47
35
39
110
94
82
46
34
38
111
93
81
45
33
37
112
92
80
44
32
36
113
91
79
43
31
35
114
90
78
42
30
34
115
89
77
41
29
33
116
88
76
40
28
32
117
87
75
39
27
31
118
86
74
38
26
30
119
85
73
37
25
29
128
127
126
125
124
123
122
121
120
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
28
27
26
25
24
23
22
21
20
127
85
61
49
23
19
126
86
62
50
22
18
125
87
63
51
21
17
124
88
64
52
20
16
123
89
65
53
19
15
122
90
66
54
18
14
121
91
67
55
17
13
120
92
68
56
16
12
119
93
69
57
15
11
118
94
70
58
14
10
117
95
71
59
13
9
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
84
83
82
81
80
79
78
77
76
75
74
73
72
60
61
62
63
64
65
66
67
68
69
70
71
72
12
11
10
9
8
7
6
5
4
3
2
1
0
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
174
173
172
171
170
169
168
167
166
165
164
163
162
161
149
148
147
146
145
144
143
142
141
140
139
138
137
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
155
160
148
136
140
146
154
159
147
135
139
145
153
158
146
134
138
144
152
157
145
133
137
143
151
156
144
132
136
142
150
155
143
131
135
141
149
154
142
130
134
140
148
153
141
129
133
139
147
152
140
128
132
138
146
151
139
127
131
137
145
150
138
126
130
136
144
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
127
126
125
124
123
135
143
131
145
136
124
120
122
134
142
130
146
135
123
119
121
133
141
129
147
134
122
118
120
132
140
128
148
133
121
117
119
131
139
127
149
132
120
116
118
130
138
126
150
131
119
115
117
129
137
125
150
130
118
114
116
128
136
135
134
133
132
131
130
129
128
127
126
125
124
149
129
117
113
115
116
117
118
119
120
121
122
123
124
125
126
127
123
148
128
116
112
114
122
147
127
115
111
113
121
146
126
114
110
112
120
145
125
113
109
111
119
144
124
112
108
110
118
143
123
111
107
109
117
142
122
110
106
108
116
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
107
115
132
96
106
114
131
95
105
113
130
94
104
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
129
93
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
101
113
128
92
104
90
102
114
127
91
103
89
103
115
126
90
102
88
104
116
125
89
101
87
105
117
124
88
100
86
106
118
123
87
99
85
107
119
122
86
98
84
108
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
92
91
90
89
90
91
92
93
94
95
96
97
83
109
130
120
84
88
82
110
131
119
83
87
81
111
132
118
82
86
80
112
133
117
81
85
79
113
134
116
80
84
78
114
135
115
79
83
77
115
136
114
78
82
76
116
137
113
77
81
75
117
138
112
76
80
74
118
139
111
75
79
73
119
139
110
74
78
72
120
121
122
123
124
125
126
127
128
129
130
130
129
130
131
132
133
134
135
136
137
138
109
73
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
75
74
73
72
71
121
128
108
72
68
70
122
127
107
71
67
69
123
126
106
70
66
68
124
125
105
69
65
67
125
124
104
68
64
66
126
123
103
67
63
65
127
122
102
66
62
64
128
121
101
65
61
63
129
120
100
64
60
62
130
119
99
63
59
61
130
118
98
62
58
60
129
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
59
128
108
86
72
48
58
127
107
87
71
47
57
126
106
88
70
46
56
125
105
89
69
45
55
124
104
90
68
44
54
123
103
91
67
43
53
122
102
92
66
42
52
121
101
93
65
41
51
120
100
94
64
40
50
119
99
95
63
39
49
118
98
96
62
38
48
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
85
86
87
88
89
90
91
92
93
94
95
96
97
61
60
59
58
57
56
55
54
53
52
51
50
49
37
38
39
40
41
42
43
44
43
42
41
40
39
40
41
42
43
44
45
46
47
110
96
84
48
36
38
111
95
83
47
35
37
112
94
82
46
34
36
113
93
81
45
33
35
114
92
80
44
32
34
115
91
79
43
31
33
116
90
78
42
30
32
117
89
77
41
29
31
118
88
76
40
28
30
119
87
75
39
27
29
120
86
74
38
26
28
129
128
127
126
125
124
123
122
121
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
27
26
25
24
23
22
21
20
19
128
86
62
50
24
18
127
87
63
51
23
17
126
88
64
52
22
16
125
89
65
53
21
15
124
90
66
54
20
14
123
91
67
55
19
13
122
92
68
56
18
12
121
93
69
57
17
11
120
94
70
58
16
10
119
95
71
59
15
9
118
96
72
60
14
8
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
85
84
83
82
81
80
79
78
77
76
75
74
73
61
62
63
64
65
66
67
68
69
70
71
72
73
13
12
11
10
9
8
7
6
5
4
3
2
1
0
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
174
173
172
171
170
169
168
167
166
165
164
163
162
150
149
148
147
146
145
144
143
142
141
140
139
138
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
154
161
149
137
141
145
153
160
148
136
140
144
152
159
147
135
139
143
151
158
146
134
138
142
150
157
145
133
137
141
149
156
144
132
136
140
148
155
143
131
135
139
147
154
142
130
134
138
146
153
141
129
133
137
145
152
140
128
132
136
144
151
139
127
131
135
143
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
127
126
125
124
123
122
134
142
130
144
137
125
121
121
133
141
129
145
136
124
120
120
132
140
128
146
135
123
119
119
131
139
127
147
134
122
118
118
130
138
126
148
133
121
117
117
129
137
125
149
132
120
116
116
128
136
124
150
131
119
115
115
127
135
134
133
132
131
130
129
128
127
126
125
124
123
150
130
118
114
114
115
116
117
118
119
120
121
122
123
124
125
126
122
149
129
117
113
113
121
148
128
116
112
112
120
147
127
115
111
111
119
146
126
114
110
110
118
145
125
113
109
109
117
144
124
112
108
108
116
143
123
111
107
107
115
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
106
114
133
97
105
113
132
96
104
112
131
95
103
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
130
94
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
100
112
129
93
103
89
101
113
128
92
104
88
102
114
127
91
103
87
103
115
126
90
102
86
104
116
125
89
101
85
105
117
124
88
100
84
106
118
123
87
99
83
107
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
93
92
91
90
91
92
93
94
95
96
97
98
82
108
129
121
85
89
81
109
130
120
84
88
80
110
131
119
83
87
79
111
132
118
82
86
78
112
133
117
81
85
77
113
134
116
80
84
76
114
135
115
79
83
75
115
136
114
78
82
74
116
137
113
77
81
73
117
138
112
76
80
72
118
139
111
75
79
71
119
120
121
122
123
124
125
126
127
128
129
130
130
131
132
133
134
135
136
137
138
139
110
74
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
75
74
73
72
71
70
120
129
109
73
69
69
121
128
108
72
68
68
122
127
107
71
67
67
123
126
106
70
66
66
124
125
105
69
65
65
125
124
104
68
64
64
126
123
103
67
63
63
127
122
102
66
62
62
128
121
101
65
61
61
129
120
100
64
60
60
130
119
99
63
59
59
130
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
58
129
109
87
73
49
57
128
108
88
72
48
56
127
107
89
71
47
55
126
106
90
70
46
54
125
105
91
69
45
53
124
104
92
68
44
52
123
103
93
67
43
51
122
102
94
66
42
50
121
101
95
65
41
49
120
100
96
64
40
48
119
99
97
63
39
47
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
86
87
88
89
90
91
92
93
94
95
96
97
98
62
61
60
59
58
57
56
55
54
53
52
51
50
38
39
40
41
42
43
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
111
97
85
49
37
37
112
96
84
48
36
36
113
95
83
47
35
35
114
94
82
46
34
34
115
93
81
45
33
33
116
92
80
44
32
32
117
91
79
43
31
31
118
90
78
42
30
30
119
89
77
41
29
29
120
88
76
40
28
28
121
87
75
39
27
27
130
129
128
127
126
125
124
123
122
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
26
25
24
23
22
21
20
19
18
129
87
63
51
25
17
128
88
64
52
24
16
127
89
65
53
23
15
126
90
66
54
22
14
125
91
67
55
21
13
124
92
68
56
20
12
123
93
69
57
19
11
122
94
70
58
18
10
121
95
71
59
17
9
120
96
72
60
16
8
119
97
73
61
15
7
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
86
85
84
83
82
81
80
79
78
77
76
75
74
62
63
64
65
66
67
68
69
70
71
72
73
74
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
165
164
163
162
151
150
149
148
147
146
145
144
143
142
141
140
139
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
153
161
150
138
142
144
152
160
149
137
141
143
151
159
148
136
140
142
150
158
147
135
139
141
149
157
146
134
138
140
148
156
145
133
137
139
147
155
144
132
136
138
146
154
143
131
135
137
145
153
142
130
134
136
144
152
141
129
133
135
143
151
140
128
132
134
142
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
127
126
125
124
123
122
121
133
141
129
143
138
126
122
120
132
140
128
144
137
125
121
119
131
139
127
145
136
124
120
118
130
138
126
146
135
123
119
117
129
137
125
147
134
122
118
116
128
136
124
148
133
121
117
115
127
135
123
149
132
120
116
114
126
134
133
132
131
130
129
128
127
126
125
124
123
122
150
131
119
115
113
114
115
116
117
118
119
120
121
122
123
124
125
121
150
130
118
114
112
120
149
129
117
113
111
119
148
128
116
112
110
118
147
127
115
111
109
117
146
126
114
110
108
116
145
125
113
109
107
115
144
124
112
108
106
114
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
105
113
134
98
104
112
133
97
103
111
132
96
102
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
131
95
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
99
111
130
94
102
88
100
112
129
93
103
87
101
113
128
92
104
86
102
114
127
91
103
85
103
115
126
90
102
84
104
116
125
89
101
83
105
117
124
88
100
82
106
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
94
93
92
91
92
93
94
95
96
97
98
99
81
107
128
122
86
90
80
108
129
121
85
89
79
109
130
120
84
88
78
110
131
119
83
87
77
111
132
118
82
86
76
112
133
117
81
85
75
113
134
116
80
84
74
114
135
115
79
83
73
115
136
114
78
82
72
116
137
113
77
81
71
117
138
112
76
80
70
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
111
75
79
78
77
76
75
74
73
72
71
72
73
74
75
76
75
74
73
72
71
70
69
119
130
110
74
70
68
120
129
109
73
69
67
121
128
108
72
68
66
122
127
107
71
67
65
123
126
106
70
66
64
124
125
105
69
65
63
125
124
104
68
64
62
126
123
103
67
63
61
127
122
102
66
62
60
128
121
101
65
61
59
129
120
100
64
60
58
130
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
57
130
110
88
74
50
56
129
109
89
73
49
55
128
108
90
72
48
54
127
107
91
71
47
53
126
106
92
70
46
52
125
105
93
69
45
51
124
104
94
68
44
50
123
103
95
67
43
49
122
102
96
66
42
48
121
101
97
65
41
47
120
100
98
64
40
46
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
87
88
89
90
91
92
93
94
95
96
97
98
99
63
62
61
60
59
58
57
56
55
54
53
52
51
39
40
41
42
43
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
112
98
86
50
38
36
113
97
85
49
37
35
114
96
84
48
36
34
115
95
83
47
35
33
116
94
82
46
34
32
117
93
81
45
33
31
118
92
80
44
32
30
119
91
79
43
31
29
120
90
78
42
30
28
121
89
77
41
29
27
122
88
76
40
28
26
131
130
129
128
127
126
125
124
123
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
25
24
23
22
21
20
19
18
17
130
88
64
52
26
16
129
89
65
53
25
15
128
90
66
54
24
14
127
91
67
55
23
13
126
92
68
56
22
12
125
93
69
57
21
11
124
94
70
58
20
10
123
95
71
59
19
9
122
96
72
60
18
8
121
97
73
61
17
7
120
98
74
62
16
6
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
87
86
85
84
83
82
81
80
79
78
77
76
75
63
64
65
66
67
68
69
70
71
72
73
74
75
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
152
151
150
149
148
147
146
145
144
143
142
141
140
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
152
160
151
139
143
143
151
159
150
138
142
142
150
158
149
137
141
141
149
157
148
136
140
140
148
156
147
135
139
139
147
155
146
134
138
138
146
154
145
133
137
137
145
153
144
132
136
136
144
152
143
131
135
135
143
151
142
130
134
134
142
150
141
129
133
133
141
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
127
126
125
124
123
122
121
120
132
140
128
142
139
127
123
119
131
139
127
143
138
126
122
118
130
138
126
144
137
125
121
117
129
137
125
145
136
124
120
116
128
136
124
146
135
123
119
115
127
135
123
147
134
122
118
114
126
134
122
148
133
121
117
113
125
133
132
131
130
129
128
127
126
125
124
123
122
121
149
132
120
116
112
113
114
115
116
117
118
119
120
121
122
123
124
120
150
131
119
115
111
119
150
130
118
114
110
118
149
129
117
113
109
117
148
128
116
112
108
116
147
127
115
111
107
115
146
126
114
110
106
114
145
125
113
109
105
113
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
104
112
135
99
103
111
134
98
102
110
133
97
101
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
132
96
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
98
110
131
95
101
87
99
111
130
94
102
86
100
112
129
93
103
85
101
113
128
92
104
84
102
114
127
91
103
83
103
115
126
90
102
82
104
116
125
89
101
81
105
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
95
94
93
92
93
94
95
96
97
98
99
100
80
106
127
123
87
91
79
107
128
122
86
90
78
108
129
121
85
89
77
109
130
120
84
88
76
110
131
119
83
87
75
111
132
118
82
86
74
112
133
117
81
85
73
113
134
116
80
84
72
114
135
115
79
83
71
115
136
114
78
82
70
116
137
113
77
81
69
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
112
76
80
79
78
77
76
75
74
73
72
73
74
75
76
75
74
73
72
71
70
69
68
118
130
111
75
71
67
119
130
110
74
70
66
120
129
109
73
69
65
121
128
108
72
68
64
122
127
107
71
67
63
123
126
106
70
66
62
124
125
105
69
65
61
125
124
104
68
64
60
126
123
103
67
63
59
127
122
102
66
62
58
128
121
101
65
61
57
129
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
56
130
111
89
75
51
55
130
110
90
74
50
54
129
109
91
73
49
53
128
108
92
72
48
52
127
107
93
71
47
51
126
106
94
70
46
50
125
105
95
69
45
49
124
104
96
68
44
48
123
103
97
67
43
47
122
102
98
66
42
46
121
101
99
65
41
45
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
88
89
90
91
92
93
94
95
96
97
98
99
100
64
63
62
61
60
59
58
57
56
55
54
53
52
40
41
42
43
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
113
99
87
51
39
35
114
98
86
50
38
34
115
97
85
49
37
33
116
96
84
48
36
32
117
95
83
47
35
31
118
94
82
46
34
30
119
93
81
45
33
29
120
92
80
44
32
28
121
91
79
43
31
27
122
90
78
42
30
26
123
89
77
41
29
25
132
131
130
129
128
127
126
125
124
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
24
23
22
21
20
19
18
17
16
131
89
65
53
27
15
130
90
66
54
26
14
129
91
67
55
25
13
128
92
68
56
24
12
127
93
69
57
23
11
126
94
70
58
22
10
125
95
71
59
21
9
124
96
72
60
20
8
123
97
73
61
19
7
122
98
74
62
18
6
121
99
75
63
17
5
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
88
87
86
85
84
83
82
81
80
79
78
77
76
64
65
66
67
68
69
70
71
72
73
74
75
76
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
153
152
151
150
149
148
147
146
145
144
143
142
141
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
151
159
152
140
144
142
150
158
151
139
143
141
149
157
150
138
142
140
148
156
149
137
141
139
147
155
148
136
140
138
146
154
147
135
139
137
145
153
146
134
138
136
144
152
145
133
137
135
143
151
144
132
136
134
142
150
143
131
135
133
141
149
142
130
134
132
140
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
127
126
125
124
123
122
121
120
119
131
139
127
141
140
128
124
118
130
138
126
142
139
127
123
117
129
137
125
143
138
126
122
116
128
136
124
144
137
125
121
115
127
135
123
145
136
124
120
114
126
134
122
146
135
123
119
113
125
133
121
147
134
122
118
112
124
132
131
130
129
128
127
126
125
124
123
122
121
120
148
133
121
117
111
112
113
114
115
116
117
118
119
120
121
122
123
119
149
132
120
116
110
118
150
131
119
115
109
117
150
130
118
114
108
116
149
129
117
113
107
115
148
128
116
112
106
114
147
127
115
111
105
113
146
126
114
110
104
112
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
103
111
136
100
102
110
135
99
101
109
134
98
100
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
133
97
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
97
109
132
96
100
86
98
110
131
95
101
85
99
111
130
94
102
84
100
112
129
93
103
83
101
113
128
92
104
82
102
114
127
91
103
81
103
115
126
90
102
80
104
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
96
95
94
93
94
95
96
97
98
99
100
101
79
105
126
124
88
92
78
106
127
123
87
91
77
107
128
122
86
90
76
108
129
121
85
89
75
109
130
120
84
88
74
110
131
119
83
87
73
111
132
118
82
86
72
112
133
117
81
85
71
113
134
116
80
84
70
114
135
115
79
83
69
115
136
114
78
82
68
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
113
77
81
80
79
78
77
76
75
74
73
74
75
76
75
74
73
72
71
70
69
68
67
117
129
112
76
72
66
118
130
111
75
71
65
119
130
110
74
70
64
120
129
109
73
69
63
121
128
108
72
68
62
122
127
107
71
67
61
123
126
106
70
66
60
124
125
105
69
65
59
125
124
104
68
64
58
126
123
103
67
63
57
127
122
102
66
62
56
128
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
55
129
112
90
76
52
54
130
111
91
75
51
53
130
110
92
74
50
52
129
109
93
73
49
51
128
108
94
72
48
50
127
107
95
71
47
49
126
106
96
70
46
48
125
105
97
69
45
47
124
104
98
68
44
46
123
103
99
67
43
45
122
102
100
66
42
44
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
89
90
91
92
93
94
95
96
97
98
99
100
101
65
64
63
62
61
60
59
58
57
56
55
54
53
41
42
43
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
114
100
88
52
40
34
115
99
87
51
39
33
116
98
86
50
38
32
117
97
85
49
37
31
118
96
84
48
36
30
119
95
83
47
35
29
120
94
82
46
34
28
121
93
81
45
33
27
122
92
80
44
32
26
123
91
79
43
31
25
124
90
78
42
30
24
133
132
131
130
129
128
127
126
125
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
23
22
21
20
19
18
17
16
15
132
90
66
54
28
14
131
91
67
55
27
13
130
92
68
56
26
12
129
93
69
57
25
11
128
94
70
58
24
10
127
95
71
59
23
9
126
96
72
60
22
8
125
97
73
61
21
7
124
98
74
62
20
6
123
99
75
63
19
5
122
100
76
64
18
4
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
89
88
87
86
85
84
83
82
81
80
79
78
77
65
66
67
68
69
70
71
72
73
74
75
76
77
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
154
153
152
151
150
149
148
147
146
145
144
143
142
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
150
158
153
141
145
141
149
157
152
140
144
140
148
156
151
139
143
139
147
155
150
138
142
138
146
154
149
137
141
137
145
153
148
136
140
136
144
152
147
135
139
135
143
151
146
134
138
134
142
150
145
133
137
133
141
149
144
132
136
132
140
148
143
131
135
131
139
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
127
126
125
124
123
122
121
120
119
118
130
138
126
140
141
129
125
117
129
137
125
141
140
128
124
116
128
136
124
142
139
127
123
115
127
135
123
143
138
126
122
114
126
134
122
144
137
125
121
113
125
133
121
145
136
124
120
112
124
132
120
146
135
123
119
111
123
131
130
129
128
127
126
125
124
123
122
121
120
119
147
134
122
118
110
111
112
113
114
115
116
117
118
119
120
121
122
118
148
133
121
117
109
117
149
132
120
116
108
116
150
131
119
115
107
115
150
130
118
114
106
114
149
129
117
113
105
113
148
128
116
112
104
112
147
127
115
111
103
111
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
102
110
137
101
101
109
136
100
100
108
135
99
99
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
134
98
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
96
108
133
97
99
85
97
109
132
96
100
84
98
110
131
95
101
83
99
111
130
94
102
82
100
112
129
93
103
81
101
113
128
92
104
80
102
114
127
91
103
79
103
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
97
96
95
94
95
96
97
98
99
100
101
102
78
104
125
125
89
93
77
105
126
124
88
92
76
106
127
123
87
91
75
107
128
122
86
90
74
108
129
121
85
89
73
109
130
120
84
88
72
110
131
119
83
87
71
111
132
118
82
86
70
112
133
117
81
85
69
113
134
116
80
84
68
114
135
115
79
83
67
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
114
78
82
81
80
79
78
77
76
75
74
75
76
75
74
73
72
71
70
69
68
67
66
116
128
113
77
73
65
117
129
112
76
72
64
118
130
111
75
71
63
119
130
110
74
70
62
120
129
109
73
69
61
121
128
108
72
68
60
122
127
107
71
67
59
123
126
106
70
66
58
124
125
105
69
65
57
125
124
104
68
64
56
126
123
103
67
63
55
127
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
54
128
113
91
77
53
53
129
112
92
76
52
52
130
111
93
75
51
51
130
110
94
74
50
50
129
109
95
73
49
49
128
108
96
72
48
48
127
107
97
71
47
47
126
106
98
70
46
46
125
105
99
69
45
45
124
104
100
68
44
44
123
103
101
67
43
43
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
90
91
92
93
94
95
96
97
98
99
100
101
102
66
65
64
63
62
61
60
59
58
57
56
55
54
42
43
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
115
101
89
53
41
33
116
100
88
52
40
32
117
99
87
51
39
31
118
98
86
50
38
30
119
97
85
49
37
29
120
96
84
48
36
28
121
95
83
47
35
27
122
94
82
46
34
26
123
93
81
45
33
25
124
92
80
44
32
24
125
91
79
43
31
23
134
133
132
131
130
129
128
127
126
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
22
21
20
19
18
17
16
15
14
133
91
67
55
29
13
132
92
68
56
28
12
131
93
69
57
27
11
130
94
70
58
26
10
129
95
71
59
25
9
128
96
72
60
24
8
127
97
73
61
23
7
126
98
74
62
22
6
125
99
75
63
21
5
124
100
76
64
20
4
123
101
77
65
19
3
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
90
89
88
87
86
85
84
83
82
81
80
79
78
66
67
68
69
70
71
72
73
74
75
76
77
78
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
155
154
153
152
151
150
149
148
147
146
145
144
143
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
149
157
154
142
146
140
148
156
153
141
145
139
147
155
152
140
144
138
146
154
151
139
143
137
145
153
150
138
142
136
144
152
149
137
141
135
143
151
148
136
140
134
142
150
147
135
139
133
141
149
146
134
138
132
140
148
145
133
137
131
139
147
144
132
136
130
138
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
128
127
126
125
124
123
122
121
120
119
118
117
129
137
125
139
142
130
126
116
128
136
124
140
141
129
125
115
127
135
123
141
140
128
124
114
126
134
122
142
139
127
123
113
125
133
121
143
138
126
122
112
124
132
120
144
137
125
121
111
123
131
119
145
136
124
120
110
122
130
129
128
127
126
125
124
123
122
121
120
119
118
146
135
123
119
109
110
111
112
113
114
115
116
117
118
119
120
121
117
147
134
122
118
108
116
148
133
121
117
107
115
149
132
120
116
106
114
150
131
119
115
105
113
150
130
118
114
104
112
149
129
117
113
103
111
148
128
116
112
102
110
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
101
109
138
102
100
108
137
101
99
107
136
100
98
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
135
99
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
95
107
134
98
98
84
96
108
133
97
99
83
97
109
132
96
100
82
98
110
131
95
101
81
99
111
130
94
102
80
100
112
129
93
103
79
101
113
128
92
104
78
102
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
98
97
96
95
96
97
98
99
100
101
102
103
77
103
124
126
90
94
76
104
125
125
89
93
75
105
126
124
88
92
74
106
127
123
87
91
73
107
128
122
86
90
72
108
129
121
85
89
71
109
130
120
84
88
70
110
131
119
83
87
69
111
132
118
82
86
68
112
133
117
81
85
67
113
134
116
80
84
66
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
115
79
83
82
81
80
79
78
77
76
75
76
75
74
73
72
71
70
69
68
67
66
65
115
127
114
78
74
64
116
128
113
77
73
63
117
129
112
76
72
62
118
130
111
75
71
61
119
130
110
74
70
60
120
129
109
73
69
59
121
128
108
72
68
58
122
127
107
71
67
57
123
126
106
70
66
56
124
125
105
69
65
55
125
124
104
68
64
54
126
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
53
127
114
92
78
54
52
128
113
93
77
53
51
129
112
94
76
52
50
130
111
95
75
51
49
130
110
96
74
50
48
129
109
97
73
49
47
128
108
98
72
48
46
127
107
99
71
47
45
126
106
100
70
46
44
125
105
101
69
45
43
124
104
102
68
44
42
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
91
92
93
94
95
96
97
98
99
100
101
102
103
67
66
65
64
63
62
61
60
59
58
57
56
55
43
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
116
102
90
54
42
32
117
101
89
53
41
31
118
100
88
52
40
30
119
99
87
51
39
29
120
98
86
50
38
28
121
97
85
49
37
27
122
96
84
48
36
26
123
95
83
47
35
25
124
94
82
46
34
24
125
93
81
45
33
23
126
92
80
44
32
22
135
134
133
132
131
130
129
128
127
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
21
20
19
18
17
16
15
14
13
134
92
68
56
30
12
133
93
69
57
29
11
132
94
70
58
28
10
131
95
71
59
27
9
130
96
72
60
26
8
129
97
73
61
25
7
128
98
74
62
24
6
127
99
75
63
23
5
126
100
76
64
22
4
125
101
77
65
21
3
124
102
78
66
20
2
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
91
90
89
88
87
86
85
84
83
82
81
80
79
67
68
69
70
71
72
73
74
75
76
77
78
79
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
148
156
155
143
147
139
147
155
154
142
146
138
146
154
153
141
145
137
145
153
152
140
144
136
144
152
151
139
143
135
143
151
150
138
142
134
142
150
149
137
141
133
141
149
148
136
140
132
140
148
147
135
139
131
139
147
146
134
138
130
138
146
145
133
137
129
137
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
128
136
124
138
143
131
127
115
127
135
123
139
142
130
126
114
126
134
122
140
141
129
125
113
125
133
121
141
140
128
124
112
124
132
120
142
139
127
123
111
123
131
119
143
138
126
122
110
122
130
118
144
137
125
121
109
121
129
128
127
126
125
124
123
122
121
120
119
118
117
145
136
124
120
108
109
110
111
112
113
114
115
116
117
118
119
120
116
146
135
123
119
107
115
147
134
122
118
106
114
148
133
121
117
105
113
149
132
120
116
104
112
150
131
119
115
103
111
150
130
118
114
102
110
149
129
117
113
101
109
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
100
108
139
103
99
107
138
102
98
106
137
101
97
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
136
100
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
94
106
135
99
97
83
95
107
134
98
98
82
96
108
133
97
99
81
97
109
132
96
100
80
98
110
131
95
101
79
99
111
130
94
102
78
100
112
129
93
103
77
101
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
99
98
97
96
97
98
99
100
101
102
103
104
76
102
123
127
91
95
75
103
124
126
90
94
74
104
125
125
89
93
73
105
126
124
88
92
72
106
127
123
87
91
71
107
128
122
86
90
70
108
129
121
85
89
69
109
130
120
84
88
68
110
131
119
83
87
67
111
132
118
82
86
66
112
133
117
81
85
65
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
116
80
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
114
126
115
79
75
63
115
127
114
78
74
62
116
128
113
77
73
61
117
129
112
76
72
60
118
130
111
75
71
59
119
130
110
74
70
58
120
129
109
73
69
57
121
128
108
72
68
56
122
127
107
71
67
55
123
126
106
70
66
54
124
125
105
69
65
53
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
52
126
115
93
79
55
51
127
114
94
78
54
50
128
113
95
77
53
49
129
112
96
76
52
48
130
111
97
75
51
47
130
110
98
74
50
46
129
109
99
73
49
45
128
108
100
72
48
44
127
107
101
71
47
43
126
106
102
70
46
42
125
105
103
69
45
41
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
92
93
94
95
96
97
98
99
100
101
102
103
104
68
67
66
65
64
63
62
61
60
59
58
57
56
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
117
103
91
55
43
31
118
102
90
54
42
30
119
101
89
53
41
29
120
100
88
52
40
28
121
99
87
51
39
27
122
98
86
50
38
26
123
97
85
49
37
25
124
96
84
48
36
24
125
95
83
47
35
23
126
94
82
46
34
22
127
93
81
45
33
21
136
135
134
133
132
131
130
129
128
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
20
19
18
17
16
15
14
13
12
135
93
69
57
31
11
134
94
70
58
30
10
133
95
71
59
29
9
132
96
72
60
28
8
131
97
73
61
27
7
130
98
74
62
26
6
129
99
75
63
25
5
128
100
76
64
24
4
127
101
77
65
23
3
126
102
78
66
22
2
125
103
79
67
21
1
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
92
91
90
89
88
87
86
85
84
83
82
81
80
68
69
70
71
72
73
74
75
76
77
78
79
80
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
140
148
144
156
157
149
139
147
143
155
156
148
138
146
142
154
155
147
137
145
141
153
154
146
136
144
140
152
153
145
135
143
139
151
152
144
134
142
138
150
151
143
133
141
137
149
150
142
132
140
136
148
149
141
131
139
135
147
148
140
130
138
134
146
147
139
129
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
145
146
147
148
149
150
151
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
138
128
116
128
132
144
139
125
137
127
115
127
131
143
140
124
136
126
114
126
130
142
141
123
135
125
113
125
129
141
142
122
134
124
112
124
128
140
143
121
133
123
111
123
127
139
144
120
132
122
110
122
126
138
145
119
131
121
120
119
118
117
116
115
114
113
112
111
110
109
121
125
137
146
118
119
120
121
122
123
124
125
126
127
128
129
130
108
120
124
136
147
117
107
119
123
135
148
116
106
118
122
134
149
115
105
117
121
133
150
114
104
116
120
132
151
113
103
115
119
131
151
112
102
114
118
130
150
111
101
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
110
100
104
140
109
99
103
139
108
98
102
138
107
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
101
137
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
84
98
100
136
107
95
83
99
99
135
108
96
82
100
98
134
109
97
81
101
97
133
110
98
80
102
96
132
111
99
79
103
95
131
112
100
78
104
94
130
113
101
77
105
106
105
104
103
102
101
100
99
98
99
100
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
102
76
97
92
128
123
103
75
96
91
127
124
104
74
95
90
126
125
105
73
94
89
125
126
106
72
93
88
124
127
107
71
92
87
123
128
108
70
91
86
122
129
109
69
90
85
121
130
110
68
89
84
120
131
111
67
88
83
119
132
112
66
87
82
118
133
113
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
81
117
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
64
76
80
116
127
115
63
75
79
115
128
116
62
74
78
114
129
117
61
73
77
113
130
118
60
72
76
112
131
119
59
71
75
111
131
120
58
70
74
110
130
121
57
69
73
109
129
122
56
68
72
108
128
123
55
67
71
107
127
124
54
66
70
106
126
125
53
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
52
56
80
94
116
127
51
55
79
95
115
128
50
54
78
96
114
129
49
53
77
97
113
130
48
52
76
98
112
131
47
51
75
99
111
131
46
50
74
100
110
130
45
49
73
101
109
129
44
48
72
102
108
128
43
47
71
103
107
127
42
46
70
104
106
126
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
57
58
59
60
61
62
63
64
65
66
67
68
69
105
104
103
102
101
100
99
98
97
96
95
94
93
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
32
44
56
92
104
118
31
43
55
91
103
119
30
42
54
90
102
120
29
41
53
89
101
121
28
40
52
88
100
122
27
39
51
87
99
123
26
38
50
86
98
124
25
37
49
85
97
125
24
36
48
84
96
126
23
35
47
83
95
127
22
34
46
82
94
128
13
14
15
16
17
18
19
20
21
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
129
130
131
132
133
134
135
136
137
12
32
58
70
94
136
11
31
59
71
95
135
10
30
60
72
96
134
9
29
61
73
97
133
8
28
62
74
98
132
7
27
63
75
99
131
6
26
64
76
100
130
5
25
65
77
101
129
4
24
66
78
102
128
3
23
67
79
103
127
2
22
68
80
104
126
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
81
80
79
78
77
76
75
74
73
72
71
70
69
81
82
83
84
85
86
87
88
89
90
91
92
93
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
0
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
125
126
127
128
129
130
131
132
133
134
135
136
137
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
167
166
165
164
163
162
161
160
159
158
157
156
155
154
138
128
124
136
148
153
137
127
123
135
147
152
136
126
122
134
146
151
135
125
121
133
145
150
134
124
120
132
144
149
133
123
119
131
143
148
132
122
118
130
142
147
131
121
117
129
141
146
130
120
116
128
140
145
129
119
115
127
139
144
128
118
114
126
138
143
127
115
116
117
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
143
142
141
140
139
138
137
136
135
134
133
132
131
130
142
126
114
108
112
124
143
129
141
125
113
107
111
123
143
128
140
124
112
106
110
122
142
127
139
123
111
105
109
121
141
126
138
122
110
104
108
120
140
125
137
121
109
103
107
119
139
124
136
120
108
102
106
118
138
123
135
119
118
117
116
115
114
113
112
111
110
109
108
107
101
105
117
137
122
123
124
125
126
127
128
129
130
131
132
133
134
106
100
104
116
136
121
105
99
103
115
135
120
104
98
102
114
134
119
103
97
101
113
133
118
102
96
100
112
132
117
101
95
99
111
131
116
100
94
98
110
130
115
99
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
114
98
84
120
113
97
83
119
112
96
82
118
111
93
92
91
90
89
90
91
92
93
94
95
96
97
98
97
96
95
81
117
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
88
94
80
116
111
99
87
93
79
115
112
100
86
92
78
114
113
101
85
91
77
113
114
102
84
90
76
112
115
103
83
89
75
111
116
104
82
88
74
110
117
105
81
87
86
85
84
83
82
81
80
79
78
79
80
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
123
122
121
120
119
118
106
80
77
72
108
122
107
79
76
71
107
123
108
78
75
70
106
124
109
77
74
69
105
125
110
76
73
68
104
126
111
75
72
67
103
127
112
74
71
66
102
128
113
73
70
65
101
129
114
72
69
64
100
128
115
71
68
63
99
127
116
70
67
62
98
126
117
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
61
97
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
123
122
121
120
119
118
68
56
60
96
116
119
67
55
59
95
115
120
66
54
58
94
114
121
65
53
57
93
113
122
64
52
56
92
112
123
63
51
55
91
111
123
62
50
54
90
110
122
61
49
53
89
109
121
60
48
52
88
108
120
59
47
51
87
107
119
58
46
50
86
106
118
57
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
117
56
36
60
74
96
116
55
35
59
75
95
115
54
34
58
76
94
114
53
33
57
77
93
113
52
32
56
78
92
112
51
31
55
79
91
111
50
30
54
80
90
110
49
29
53
81
89
109
48
28
52
82
88
108
47
27
51
83
87
107
46
26
50
84
86
106
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
37
38
39
40
41
42
43
44
45
46
47
48
49
85
84
83
82
81
80
79
78
77
76
75
74
73
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
38
24
36
72
84
98
39
23
35
71
83
99
40
22
34
70
82
100
41
21
33
69
81
101
42
20
32
68
80
102
43
19
31
67
79
103
44
18
30
66
78
104
45
17
29
65
77
105
44
16
28
64
76
106
43
15
27
63
75
107
42
14
26
62
74
108
33
34
35
36
37
38
39
40
41
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
109
110
111
112
113
114
115
116
117
32
12
38
50
74
116
31
11
39
51
75
115
30
10
40
52
76
114
29
9
41
53
77
113
28
8
42
54
78
112
27
7
43
55
79
111
26
6
44
56
80
110
25
5
45
57
81
109
24
4
46
58
82
108
23
3
47
59
83
107
22
2
48
60
84
106
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
61
60
59
58
57
56
55
54
53
52
51
50
49
61
62
63
64
65
66
67
68
69
70
71
72
73
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
22
0
175
176
177
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
161
162
163
164
165
166
167
168
169
170
171
172
173
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
196
195
194
193
192
191
190
189
188
187
186
185
174
164
160
172
176
184
173
163
159
171
175
183
172
162
158
170
174
182
171
161
157
169
173
181
170
160
156
168
172
180
169
159
155
167
171
179
168
158
154
166
170
178
167
157
153
165
169
177
166
156
152
164
168
176
165
155
151
163
167
175
164
154
150
162
166
174
163
151
152
153
154
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
164
163
162
161
173
162
150
144
148
160
156
160
172
161
149
143
147
159
155
159
171
160
148
142
146
158
154
158
170
159
147
141
145
157
153
157
169
158
146
140
144
156
152
156
168
157
145
139
143
155
151
155
167
156
144
138
142
154
150
154
166
155
154
153
152
151
150
149
148
147
146
145
144
143
137
141
153
149
153
154
155
156
157
158
159
160
161
162
163
164
165
142
136
140
152
148
152
141
135
139
151
147
151
140
134
138
150
146
150
139
133
137
149
145
149
138
132
136
148
144
148
137
131
135
147
143
147
136
130
134
146
142
146
135
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
145
134
120
132
144
133
119
131
143
132
118
130
142
129
128
127
126
125
126
127
128
129
130
131
132
133
134
133
132
131
117
129
141
142
143
143
142
141
140
139
138
137
136
135
134
133
132
131
130
124
130
116
128
140
135
123
129
115
127
139
135
122
128
114
126
138
134
121
127
113
125
137
133
120
126
112
124
136
132
119
125
111
123
135
131
118
124
110
122
134
130
117
123
122
121
120
119
118
117
116
115
114
115
116
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
128
127
126
125
126
127
128
129
130
131
132
133
129
116
113
108
120
124
128
115
112
107
119
123
127
114
111
106
118
122
126
113
110
105
117
121
125
112
109
104
116
120
124
111
108
103
115
119
123
110
107
102
114
118
122
109
106
101
113
117
121
108
105
100
112
116
120
107
104
99
111
115
119
106
103
98
110
114
118
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
97
109
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
104
92
96
108
104
116
103
91
95
107
103
115
102
90
94
106
102
114
101
89
93
105
101
113
100
88
92
104
100
112
99
87
91
103
99
111
98
86
90
102
98
110
97
85
89
101
97
109
96
84
88
100
96
108
95
83
87
99
95
107
94
82
86
98
94
106
93
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
105
92
72
72
84
84
104
91
71
71
83
83
103
90
70
70
82
82
102
89
69
69
81
81
101
88
68
68
80
80
100
87
67
67
79
79
99
86
66
66
78
78
98
85
65
65
77
77
97
84
64
64
76
76
96
83
63
63
75
75
95
82
62
62
74
74
94
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
49
50
51
52
53
54
55
56
57
58
59
60
61
73
72
71
70
69
68
67
66
65
64
63
62
61
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
74
60
48
60
72
86
75
59
47
59
71
87
76
58
46
58
70
88
77
57
45
57
69
89
78
56
44
56
68
90
79
55
43
55
67
91
80
54
42
54
66
92
81
53
41
53
65
93
82
52
40
52
64
94
83
51
39
51
63
95
84
50
38
50
62
96
93
92
91
90
89
88
87
86
85
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
97
98
99
100
101
102
103
104
105
92
50
24
38
62
104
91
51
23
39
63
103
90
52
22
40
64
102
89
53
21
41
65
101
88
54
20
42
66
100
87
55
19
43
67
99
86
56
18
44
68
98
85
57
17
45
69
97
84
58
16
46
70
96
83
59
15
47
71
95
82
60
14
48
72
94
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
1
2
3
4
5
6
7
8
9
10
11
12
13
49
50
51
52
53
54
55
56
57
58
59
60
59
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
82
62
0
187
188
189
190
191
192
193
194
195
196
197
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
173
172
171
170
169
168
167
166
165
164
163
162
161
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
176
175
174
173
186
176
172
160
164
172
185
175
171
159
163
171
184
174
170
158
162
170
183
173
169
157
161
169
182
172
168
156
160
168
181
171
167
155
159
167
180
170
166
154
158
166
179
169
165
153
157
165
178
168
164
152
156
164
177
167
163
151
155
163
176
166
162
150
154
162
175
163
164
165
166
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
152
151
150
149
161
174
162
156
160
148
144
148
160
173
161
155
159
147
143
147
159
172
160
154
158
146
142
146
158
171
159
153
157
145
141
145
157
170
158
152
156
144
140
144
156
169
157
151
155
143
139
143
155
168
156
150
154
142
138
142
154
167
166
165
164
163
162
161
160
159
158
157
156
155
149
153
141
137
141
142
143
144
145
146
147
148
149
150
151
152
153
154
148
152
140
136
140
153
147
151
139
135
139
152
146
150
138
134
138
151
145
149
137
133
137
150
144
148
136
132
136
149
143
147
135
131
135
148
142
146
134
130
134
147
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
133
146
132
120
132
145
131
119
131
144
130
118
130
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
144
143
129
117
129
130
131
132
133
132
131
130
129
128
127
126
125
126
127
128
129
135
142
128
116
128
124
135
141
127
115
127
123
134
140
126
114
126
122
133
139
125
113
125
121
132
138
124
112
124
120
131
137
123
111
123
119
130
136
122
110
122
118
129
135
134
133
132
131
130
129
128
127
126
127
128
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
116
115
114
113
114
115
116
117
118
119
120
121
117
128
125
120
108
112
116
127
124
119
107
111
115
126
123
118
106
110
114
125
122
117
105
109
113
124
121
116
104
108
112
123
120
115
103
107
111
122
119
114
102
106
110
121
118
113
101
105
109
120
117
112
100
104
108
119
116
111
99
103
107
118
115
110
98
102
106
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
109
97
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
116
104
108
96
92
104
115
103
107
95
91
103
114
102
106
94
90
102
113
101
105
93
89
101
112
100
104
92
88
100
111
99
103
91
87
99
110
98
102
90
86
98
109
97
101
89
85
97
108
96
100
88
84
96
107
95
99
87
83
95
106
94
98
86
82
94
105
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
93
104
84
84
72
72
92
103
83
83
71
71
91
102
82
82
70
70
90
101
81
81
69
69
89
100
80
80
68
68
88
99
79
79
67
67
87
98
78
78
66
66
86
97
77
77
65
65
85
96
76
76
64
64
84
95
75
75
63
63
83
94
74
74
62
62
82
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
61
62
63
64
65
66
67
68
69
70
71
72
73
61
60
59
58
57
56
55
54
53
52
51
50
49
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
86
72
60
48
60
74
87
71
59
47
59
75
88
70
58
46
58
76
89
69
57
45
57
77
90
68
56
44
56
78
91
67
55
43
55
79
92
66
54
42
54
80
93
65
53
41
53
81
94
64
52
40
52
82
95
63
51
39
51
83
96
62
50
38
50
84
105
104
103
102
101
100
99
98
97
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
85
86
87
88
89
90
91
92
93
104
62
38
24
50
92
103
63
39
23
51
91
102
64
40
22
52
90
101
65
41
21
53
89
100
66
42
20
54
88
99
67
43
19
55
87
98
68
44
18
56
86
97
69
45
17
57
85
96
70
46
16
58
84
95
71
47
15
59
83
94
72
48
14
60
82
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
59
60
59
58
57
56
55
54
53
52
51
50
49
13
12
11
10
9
8
7
6
5
4
3
2
1
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
94
74
58
0
154
155
156
157
158
159
160
161
162
163
164
165
166
167
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
137
136
135
134
133
132
131
130
129
128
127
126
125
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
153
148
136
124
128
136
152
147
135
123
127
135
151
146
134
122
126
134
150
145
133
121
125
133
149
144
132
120
124
132
148
143
131
119
123
131
147
142
130
118
122
130
146
141
129
117
121
129
145
140
128
116
120
128
144
139
127
115
119
127
143
138
126
114
118
126
142
130
131
132
133
134
135
136
137
138
139
140
141
142
143
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
116
115
114
113
125
141
129
143
124
112
108
112
124
140
128
143
123
111
107
111
123
139
127
142
122
110
106
110
122
138
126
141
121
109
105
109
121
137
125
140
120
108
104
108
120
136
124
139
119
107
103
107
119
135
123
138
118
106
102
106
118
134
133
132
131
130
129
128
127
126
125
124
123
122
137
117
105
101
105
106
107
108
109
110
111
112
113
114
115
116
117
121
136
116
104
100
104
120
135
115
103
99
103
119
134
114
102
98
102
118
133
113
101
97
101
117
132
112
100
96
100
116
131
111
99
95
99
115
130
110
98
94
98
114
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
97
113
120
84
96
112
119
83
95
111
118
82
94
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
117
81
93
94
95
96
97
96
95
94
93
92
91
90
89
90
91
92
93
99
111
116
80
92
88
100
112
115
79
91
87
101
113
114
78
90
86
102
114
113
77
89
85
103
115
112
76
88
84
104
116
111
75
87
83
105
117
110
74
86
82
106
118
119
120
121
122
123
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
80
79
78
77
78
79
80
81
82
83
84
85
81
107
121
108
72
76
80
108
122
107
71
75
79
109
123
106
70
74
78
110
124
105
69
73
77
111
125
104
68
72
76
112
126
103
67
71
75
113
127
102
66
70
74
114
128
101
65
69
73
115
129
100
64
68
72
116
128
99
63
67
71
117
127
98
62
66
70
118
119
120
121
122
123
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
97
61
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
119
116
96
60
56
68
120
115
95
59
55
67
121
114
94
58
54
66
122
113
93
57
53
65
123
112
92
56
52
64
123
111
91
55
51
63
122
110
90
54
50
62
121
109
89
53
49
61
120
108
88
52
48
60
119
107
87
51
47
59
118
106
86
50
46
58
117
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
57
116
96
74
60
36
56
115
95
75
59
35
55
114
94
76
58
34
54
113
93
77
57
33
53
112
92
78
56
32
52
111
91
79
55
31
51
110
90
80
54
30
50
109
89
81
53
29
49
108
88
82
52
28
48
107
87
83
51
27
47
106
86
84
50
26
46
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
73
74
75
76
77
78
79
80
81
82
83
84
85
49
48
47
46
45
44
43
42
41
40
39
38
37
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
98
84
72
36
24
38
99
83
71
35
23
39
100
82
70
34
22
40
101
81
69
33
21
41
102
80
68
32
20
42
103
79
67
31
19
43
104
78
66
30
18
44
105
77
65
29
17
45
106
76
64
28
16
44
107
75
63
27
15
43
108
74
62
26
14
42
117
116
115
114
113
112
111
110
109
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
41
40
39
38
37
36
35
34
33
116
74
50
38
12
32
115
75
51
39
11
31
114
76
52
40
10
30
113
77
53
41
9
29
112
78
54
42
8
28
111
79
55
43
7
27
110
80
56
44
6
26
109
81
57
45
5
25
108
82
58
46
4
24
107
83
59
47
3
23
106
84
60
48
2
22
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
73
72
71
70
69
68
67
66
65
64
63
62
61
49
50
51
52
53
54
55
56
57
58
59
60
61
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
106
86
74
62
0
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
149
157
156
144
148
140
148
156
155
143
147
139
147
155
154
142
146
138
146
154
153
141
145
137
145
153
152
140
144
136
144
152
151
139
143
135
143
151
150
138
142
134
142
150
149
137
141
133
141
149
148
136
140
132
140
148
147
135
139
131
139
147
146
134
138
130
138
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
151
150
149
148
147
146
145
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
129
137
125
139
144
132
128
116
128
136
124
140
143
131
127
115
127
135
123
141
142
130
126
114
126
134
122
142
141
129
125
113
125
133
121
143
140
128
124
112
124
132
120
144
139
127
123
111
123
131
119
145
138
126
122
110
122
130
129
128
127
126
125
124
123
122
121
120
119
118
146
137
125
121
109
110
111
112
113
114
115
116
117
118
119
120
121
117
147
136
124
120
108
116
148
135
123
119
107
115
149
134
122
118
106
114
150
133
121
117
105
113
151
132
120
116
104
112
151
131
119
115
103
111
150
130
118
114
102
110
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
101
109
140
104
100
108
139
103
99
107
138
102
98
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
137
101
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
95
107
136
100
98
84
96
108
135
99
99
83
97
109
134
98
100
82
98
110
133
97
101
81
99
111
132
96
102
80
100
112
131
95
103
79
101
113
130
94
104
78
102
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
100
99
98
97
98
99
100
101
102
103
104
105
77
103
124
128
92
96
76
104
125
127
91
95
75
105
126
126
90
94
74
106
127
125
89
93
73
107
128
124
88
92
72
108
129
123
87
91
71
109
130
122
86
90
70
110
131
121
85
89
69
111
132
120
84
88
68
112
133
119
83
87
67
113
134
118
82
86
66
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
117
81
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
115
127
116
80
76
64
116
128
115
79
75
63
117
129
114
78
74
62
118
130
113
77
73
61
119
131
112
76
72
60
120
131
111
75
71
59
121
130
110
74
70
58
122
129
109
73
69
57
123
128
108
72
68
56
124
127
107
71
67
55
125
126
106
70
66
54
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
53
127
116
94
80
56
52
128
115
95
79
55
51
129
114
96
78
54
50
130
113
97
77
53
49
131
112
98
76
52
48
131
111
99
75
51
47
130
110
100
74
50
46
129
109
101
73
49
45
128
108
102
72
48
44
127
107
103
71
47
43
126
106
104
70
46
42
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
93
94
95
96
97
98
99
100
101
102
103
104
105
69
68
67
66
65
64
63
62
61
60
59
58
57
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
118
104
92
56
44
32
119
103
91
55
43
31
120
102
90
54
42
30
121
101
89
53
41
29
122
100
88
52
40
28
123
99
87
51
39
27
124
98
86
50
38
26
125
97
85
49
37
25
126
96
84
48
36
24
127
95
83
47
35
23
128
94
82
46
34
22
137
136
135
134
133
132
131
130
129
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
21
20
19
18
17
16
15
14
13
136
94
70
58
32
12
135
95
71
59
31
11
134
96
72
60
30
10
133
97
73
61
29
9
132
98
74
62
28
8
131
99
75
63
27
7
130
100
76
64
26
6
129
101
77
65
25
5
128
102
78
66
24
4
127
103
79
67
23
3
126
104
80
68
22
2
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
93
92
91
90
89
88
87
86
85
84
83
82
81
69
70
71
72
73
74
75
76
77
78
79
80
81
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
126
106
94
82
22
0
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
141
149
145
157
158
150
140
148
144
156
157
149
139
147
143
155
156
148
138
146
142
154
155
147
137
145
141
153
154
146
136
144
140
152
153
145
135
143
139
151
152
144
134
142
138
150
151
143
133
141
137
149
150
142
132
140
136
148
149
141
131
139
135
147
148
140
130
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
146
147
148
149
150
151
152
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
139
129
117
129
133
145
140
126
138
128
116
128
132
144
141
125
137
127
115
127
131
143
142
124
136
126
114
126
130
142
143
123
135
125
113
125
129
141
144
122
134
124
112
124
128
140
145
121
133
123
111
123
127
139
146
120
132
122
121
120
119
118
117
116
115
114
113
112
111
110
122
126
138
147
119
120
121
122
123
124
125
126
127
128
129
130
131
109
121
125
137
148
118
108
120
124
136
149
117
107
119
123
135
150
116
106
118
122
134
151
115
105
117
121
133
152
114
104
116
120
132
152
113
103
115
119
131
151
112
102
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
111
101
105
141
110
100
104
140
109
99
103
139
108
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
102
138
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
85
99
101
137
108
96
84
100
100
136
109
97
83
101
99
135
110
98
82
102
98
134
111
99
81
103
97
133
112
100
80
104
96
132
113
101
79
105
95
131
114
102
78
106
107
106
105
104
103
102
101
100
99
100
101
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
103
77
98
93
129
124
104
76
97
92
128
125
105
75
96
91
127
126
106
74
95
90
126
127
107
73
94
89
125
128
108
72
93
88
124
129
109
71
92
87
123
130
110
70
91
86
122
131
111
69
90
85
121
132
112
68
89
84
120
133
113
67
88
83
119
134
114
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
82
118
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
65
77
81
117
128
116
64
76
80
116
129
117
63
75
79
115
130
118
62
74
78
114
131
119
61
73
77
113
132
120
60
72
76
112
132
121
59
71
75
111
131
122
58
70
74
110
130
123
57
69
73
109
129
124
56
68
72
108
128
125
55
67
71
107
127
126
54
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
53
57
81
95
117
128
52
56
80
96
116
129
51
55
79
97
115
130
50
54
78
98
114
131
49
53
77
99
113
132
48
52
76
100
112
132
47
51
75
101
111
131
46
50
74
102
110
130
45
49
73
103
109
129
44
48
72
104
108
128
43
47
71
105
107
127
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
58
59
60
61
62
63
64
65
66
67
68
69
70
106
105
104
103
102
101
100
99
98
97
96
95
94
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
33
45
57
93
105
119
32
44
56
92
104
120
31
43
55
91
103
121
30
42
54
90
102
122
29
41
53
89
101
123
28
40
52
88
100
124
27
39
51
87
99
125
26
38
50
86
98
126
25
37
49
85
97
127
24
36
48
84
96
128
23
35
47
83
95
129
14
15
16
17
18
19
20
21
22
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
130
131
132
133
134
135
136
137
138
13
33
59
71
95
137
12
32
60
72
96
136
11
31
61
73
97
135
10
30
62
74
98
134
9
29
63
75
99
133
8
28
64
76
100
132
7
27
65
77
101
131
6
26
66
78
102
130
5
25
67
79
103
129
4
24
68
80
104
128
3
23
69
81
105
127
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
82
81
80
79
78
77
76
75
74
73
72
71
70
82
83
84
85
86
87
88
89
90
91
92
93
94
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
1
23
83
95
107
127
0
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
126
127
128
129
130
131
132
133
134
135
136
137
138
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
168
167
166
165
164
163
162
161
160
159
158
157
156
155
139
129
125
137
149
154
138
128
124
136
148
153
137
127
123
135
147
152
136
126
122
134
146
151
135
125
121
133
145
150
134
124
120
132
144
149
133
123
119
131
143
148
132
122
118
130
142
147
131
121
117
129
141
146
130
120
116
128
140
145
129
119
115
127
139
144
128
116
117
118
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
144
143
142
141
140
139
138
137
136
135
134
133
132
131
143
127
115
109
113
125
144
130
142
126
114
108
112
124
144
129
141
125
113
107
111
123
143
128
140
124
112
106
110
122
142
127
139
123
111
105
109
121
141
126
138
122
110
104
108
120
140
125
137
121
109
103
107
119
139
124
136
120
119
118
117
116
115
114
113
112
111
110
109
108
102
106
118
138
123
124
125
126
127
128
129
130
131
132
133
134
135
107
101
105
117
137
122
106
100
104
116
136
121
105
99
103
115
135
120
104
98
102
114
134
119
103
97
101
113
133
118
102
96
100
112
132
117
101
95
99
111
131
116
100
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
115
99
85
121
114
98
84
120
113
97
83
119
112
94
93
92
91
90
91
92
93
94
95
96
97
98
99
98
97
96
82
118
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
89
95
81
117
112
100
88
94
80
116
113
101
87
93
79
115
114
102
86
92
78
114
115
103
85
91
77
113
116
104
84
90
76
112
117
105
83
89
75
111
118
106
82
88
87
86
85
84
83
82
81
80
79
80
81
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
107
81
78
73
109
123
108
80
77
72
108
124
109
79
76
71
107
125
110
78
75
70
106
126
111
77
74
69
105
127
112
76
73
68
104
128
113
75
72
67
103
129
114
74
71
66
102
130
115
73
70
65
101
129
116
72
69
64
100
128
117
71
68
63
99
127
118
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
62
98
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
124
123
122
121
120
119
69
57
61
97
117
120
68
56
60
96
116
121
67
55
59
95
115
122
66
54
58
94
114
123
65
53
57
93
113
124
64
52
56
92
112
124
63
51
55
91
111
123
62
50
54
90
110
122
61
49
53
89
109
121
60
48
52
88
108
120
59
47
51
87
107
119
58
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
118
57
37
61
75
97
117
56
36
60
76
96
116
55
35
59
77
95
115
54
34
58
78
94
114
53
33
57
79
93
113
52
32
56
80
92
112
51
31
55
81
91
111
50
30
54
82
90
110
49
29
53
83
89
109
48
28
52
84
88
108
47
27
51
85
87
107
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
38
39
40
41
42
43
44
45
46
47
48
49
50
86
85
84
83
82
81
80
79
78
77
76
75
74
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
39
25
37
73
85
99
40
24
36
72
84
100
41
23
35
71
83
101
42
22
34
70
82
102
43
21
33
69
81
103
44
20
32
68
80
104
45
19
31
67
79
105
46
18
30
66
78
106
45
17
29
65
77
107
44
16
28
64
76
108
43
15
27
63
75
109
34
35
36
37
38
39
40
41
42
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
110
111
112
113
114
115
116
117
118
33
13
39
51
75
117
32
12
40
52
76
116
31
11
41
53
77
115
30
10
42
54
78
114
29
9
43
55
79
113
28
8
44
56
80
112
27
7
45
57
81
111
26
6
46
58
82
110
25
5
47
59
83
109
24
4
48
60
84
108
23
3
49
61
85
107
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
62
61
60
59
58
57
56
55
54
53
52
51
50
62
63
64
65
66
67
68
69
70
71
72
73
74
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
23
1
63
75
87
107
24
0
176
177
178
179
180
181
182
183
184
185
186
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
162
163
164
165
166
167
168
169
170
171
172
173
174
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
197
196
195
194
193
192
191
190
189
188
187
186
175
165
161
173
177
185
174
164
160
172
176
184
173
163
159
171
175
183
172
162
158
170
174
182
171
161
157
169
173
181
170
160
156
168
172
180
169
159
155
167
171
179
168
158
154
166
170
178
167
157
153
165
169
177
166
156
152
164
168
176
165
155
151
163
167
175
164
152
153
154
155
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
165
164
163
162
174
163
151
145
149
161
157
161
173
162
150
144
148
160
156
160
172
161
149
143
147
159
155
159
171
160
148
142
146
158
154
158
170
159
147
141
145
157
153
157
169
158
146
140
144
156
152
156
168
157
145
139
143
155
151
155
167
156
155
154
153
152
151
150
149
148
147
146
145
144
138
142
154
150
154
155
156
157
158
159
160
161
162
163
164
165
166
143
137
141
153
149
153
142
136
140
152
148
152
141
135
139
151
147
151
140
134
138
150
146
150
139
133
137
149
145
149
138
132
136
148
144
148
137
131
135
147
143
147
136
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
146
135
121
133
145
134
120
132
144
133
119
131
143
130
129
128
127
126
127
128
129
130
131
132
133
134
135
134
133
132
118
130
142
143
144
144
143
142
141
140
139
138
137
136
135
134
133
132
131
125
131
117
129
141
136
124
130
116
128
140
136
123
129
115
127
139
135
122
128
114
126
138
134
121
127
113
125
137
133
120
126
112
124
136
132
119
125
111
123
135
131
118
124
123
122
121
120
119
118
117
116
115
116
117
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
129
128
127
126
127
128
129
130
131
132
133
134
130
117
114
109
121
125
129
116
113
108
120
124
128
115
112
107
119
123
127
114
111
106
118
122
126
113
110
105
117
121
125
112
109
104
116
120
124
111
108
103
115
119
123
110
107
102
114
118
122
109
106
101
113
117
121
108
105
100
112
116
120
107
104
99
111
115
119
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
98
110
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
105
93
97
109
105
117
104
92
96
108
104
116
103
91
95
107
103
115
102
90
94
106
102
114
101
89
93
105
101
113
100
88
92
104
100
112
99
87
91
103
99
111
98
86
90
102
98
110
97
85
89
101
97
109
96
84
88
100
96
108
95
83
87
99
95
107
94
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
106
93
73
73
85
85
105
92
72
72
84
84
104
91
71
71
83
83
103
90
70
70
82
82
102
89
69
69
81
81
101
88
68
68
80
80
100
87
67
67
79
79
99
86
66
66
78
78
98
85
65
65
77
77
97
84
64
64
76
76
96
83
63
63
75
75
95
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
50
51
52
53
54
55
56
57
58
59
60
61
62
74
73
72
71
70
69
68
67
66
65
64
63
62
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
75
61
49
61
73
87
76
60
48
60
72
88
77
59
47
59
71
89
78
58
46
58
70
90
79
57
45
57
69
91
80
56
44
56
68
92
81
55
43
55
67
93
82
54
42
54
66
94
83
53
41
53
65
95
84
52
40
52
64
96
85
51
39
51
63
97
94
93
92
91
90
89
88
87
86
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
98
99
100
101
102
103
104
105
106
93
51
25
39
63
105
92
52
24
40
64
104
91
53
23
41
65
103
90
54
22
42
66
102
89
55
21
43
67
101
88
56
20
44
68
100
87
57
19
45
69
99
86
58
18
46
70
98
85
59
17
47
71
97
84
60
16
48
72
96
83
61
15
49
73
95
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
2
3
4
5
6
7
8
9
10
11
12
13
14
50
51
52
53
54
55
56
57
58
59
60
59
58
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
83
63
1
57
75
95
84
64
0
188
189
190
191
192
193
194
195
196
197
198
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
174
173
172
171
170
169
168
167
166
165
164
163
162
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
177
176
175
174
187
177
173
161
165
173
186
176
172
160
164
172
185
175
171
159
163
171
184
174
170
158
162
170
183
173
169
157
161
169
182
172
168
156
160
168
181
171
167
155
159
167
180
170
166
154
158
166
179
169
165
153
157
165
178
168
164
152
156
164
177
167
163
151
155
163
176
164
165
166
167
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
153
152
151
150
162
175
163
157
161
149
145
149
161
174
162
156
160
148
144
148
160
173
161
155
159
147
143
147
159
172
160
154
158
146
142
146
158
171
159
153
157
145
141
145
157
170
158
152
156
144
140
144
156
169
157
151
155
143
139
143
155
168
167
166
165
164
163
162
161
160
159
158
157
156
150
154
142
138
142
143
144
145
146
147
148
149
150
151
152
153
154
155
149
153
141
137
141
154
148
152
140
136
140
153
147
151
139
135
139
152
146
150
138
134
138
151
145
149
137
133
137
150
144
148
136
132
136
149
143
147
135
131
135
148
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
134
147
133
121
133
146
132
120
132
145
131
119
131
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
145
144
130
118
130
131
132
133
134
133
132
131
130
129
128
127
126
127
128
129
130
136
143
129
117
129
125
136
142
128
116
128
124
135
141
127
115
127
123
134
140
126
114
126
122
133
139
125
113
125
121
132
138
124
112
124
120
131
137
123
111
123
119
130
136
135
134
133
132
131
130
129
128
127
128
129
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
117
116
115
114
115
116
117
118
119
120
121
122
118
129
126
121
109
113
117
128
125
120
108
112
116
127
124
119
107
111
115
126
123
118
106
110
114
125
122
117
105
109
113
124
121
116
104
108
112
123
120
115
103
107
111
122
119
114
102
106
110
121
118
113
101
105
109
120
117
112
100
104
108
119
116
111
99
103
107
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
110
98
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
117
105
109
97
93
105
116
104
108
96
92
104
115
103
107
95
91
103
114
102
106
94
90
102
113
101
105
93
89
101
112
100
104
92
88
100
111
99
103
91
87
99
110
98
102
90
86
98
109
97
101
89
85
97
108
96
100
88
84
96
107
95
99
87
83
95
106
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
94
105
85
85
73
73
93
104
84
84
72
72
92
103
83
83
71
71
91
102
82
82
70
70
90
101
81
81
69
69
89
100
80
80
68
68
88
99
79
79
67
67
87
98
78
78
66
66
86
97
77
77
65
65
85
96
76
76
64
64
84
95
75
75
63
63
83
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
62
63
64
65
66
67
68
69
70
71
72
73
74
62
61
60
59
58
57
56
55
54
53
52
51
50
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
87
73
61
49
61
75
88
72
60
48
60
76
89
71
59
47
59
77
90
70
58
46
58
78
91
69
57
45
57
79
92
68
56
44
56
80
93
67
55
43
55
81
94
66
54
42
54
82
95
65
53
41
53
83
96
64
52
40
52
84
97
63
51
39
51
85
106
105
104
103
102
101
100
99
98
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
86
87
88
89
90
91
92
93
94
105
63
39
25
51
93
104
64
40
24
52
92
103
65
41
23
53
91
102
66
42
22
54
90
101
67
43
21
55
89
100
68
44
20
56
88
99
69
45
19
57
87
98
70
46
18
58
86
97
71
47
17
59
85
96
72
48
16
60
84
95
73
49
15
61
83
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
58
59
60
59
58
57
56
55
54
53
52
51
50
14
13
12
11
10
9
8
7
6
5
4
3
2
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
95
75
57
1
63
83
96
76
56
0
155
156
157
158
159
160
161
162
163
164
165
166
167
168
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
138
137
136
135
134
133
132
131
130
129
128
127
126
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
154
149
137
125
129
137
153
148
136
124
128
136
152
147
135
123
127
135
151
146
134
122
126
134
150
145
133
121
125
133
149
144
132
120
124
132
148
143
131
119
123
131
147
142
130
118
122
130
146
141
129
117
121
129
145
140
128
116
120
128
144
139
127
115
119
127
143
131
132
133
134
135
136
137
138
139
140
141
142
143
144
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
117
116
115
114
126
142
130
144
125
113
109
113
125
141
129
144
124
112
108
112
124
140
128
143
123
111
107
111
123
139
127
142
122
110
106
110
122
138
126
141
121
109
105
109
121
137
125
140
120
108
104
108
120
136
124
139
119
107
103
107
119
135
134
133
132
131
130
129
128
127
126
125
124
123
138
118
106
102
106
107
108
109
110
111
112
113
114
115
116
117
118
122
137
117
105
101
105
121
136
116
104
100
104
120
135
115
103
99
103
119
134
114
102
98
102
118
133
113
101
97
101
117
132
112
100
96
100
116
131
111
99
95
99
115
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
98
114
121
85
97
113
120
84
96
112
119
83
95
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
118
82
94
95
96
97
98
97
96
95
94
93
92
91
90
91
92
93
94
100
112
117
81
93
89
101
113
116
80
92
88
102
114
115
79
91
87
103
115
114
78
90
86
104
116
113
77
89
85
105
117
112
76
88
84
106
118
111
75
87
83
107
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
81
80
79
78
79
80
81
82
83
84
85
86
82
108
122
109
73
77
81
109
123
108
72
76
80
110
124
107
71
75
79
111
125
106
70
74
78
112
126
105
69
73
77
113
127
104
68
72
76
114
128
103
67
71
75
115
129
102
66
70
74
116
130
101
65
69
73
117
129
100
64
68
72
118
128
99
63
67
71
119
120
121
122
123
124
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
98
62
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
120
117
97
61
57
69
121
116
96
60
56
68
122
115
95
59
55
67
123
114
94
58
54
66
124
113
93
57
53
65
124
112
92
56
52
64
123
111
91
55
51
63
122
110
90
54
50
62
121
109
89
53
49
61
120
108
88
52
48
60
119
107
87
51
47
59
118
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
58
117
97
75
61
37
57
116
96
76
60
36
56
115
95
77
59
35
55
114
94
78
58
34
54
113
93
79
57
33
53
112
92
80
56
32
52
111
91
81
55
31
51
110
90
82
54
30
50
109
89
83
53
29
49
108
88
84
52
28
48
107
87
85
51
27
47
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
74
75
76
77
78
79
80
81
82
83
84
85
86
50
49
48
47
46
45
44
43
42
41
40
39
38
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
99
85
73
37
25
39
100
84
72
36
24
40
101
83
71
35
23
41
102
82
70
34
22
42
103
81
69
33
21
43
104
80
68
32
20
44
105
79
67
31
19
45
106
78
66
30
18
46
107
77
65
29
17
45
108
76
64
28
16
44
109
75
63
27
15
43
118
117
116
115
114
113
112
111
110
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
42
41
40
39
38
37
36
35
34
117
75
51
39
13
33
116
76
52
40
12
32
115
77
53
41
11
31
114
78
54
42
10
30
113
79
55
43
9
29
112
80
56
44
8
28
111
81
57
45
7
27
110
82
58
46
6
26
109
83
59
47
5
25
108
84
60
48
4
24
107
85
61
49
3
23
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
74
73
72
71
70
69
68
67
66
65
64
63
62
50
51
52
53
54
55
56
57
58
59
60
61
62
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
107
87
75
63
1
23
108
88
76
64
0
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
150
158
157
145
149
141
149
157
156
144
148
140
148
156
155
143
147
139
147
155
154
142
146
138
146
154
153
141
145
137
145
153
152
140
144
136
144
152
151
139
143
135
143
151
150
138
142
134
142
150
149
137
141
133
141
149
148
136
140
132
140
148
147
135
139
131
139
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
152
151
150
149
148
147
146
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
130
138
126
140
145
133
129
117
129
137
125
141
144
132
128
116
128
136
124
142
143
131
127
115
127
135
123
143
142
130
126
114
126
134
122
144
141
129
125
113
125
133
121
145
140
128
124
112
124
132
120
146
139
127
123
111
123
131
130
129
128
127
126
125
124
123
122
121
120
119
147
138
126
122
110
111
112
113
114
115
116
117
118
119
120
121
122
118
148
137
125
121
109
117
149
136
124
120
108
116
150
135
123
119
107
115
151
134
122
118
106
114
152
133
121
117
105
113
152
132
120
116
104
112
151
131
119
115
103
111
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
102
110
141
105
101
109
140
104
100
108
139
103
99
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
138
102
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
96
108
137
101
99
85
97
109
136
100
100
84
98
110
135
99
101
83
99
111
134
98
102
82
100
112
133
97
103
81
101
113
132
96
104
80
102
114
131
95
105
79
103
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
101
100
99
98
99
100
101
102
103
104
105
106
78
104
125
129
93
97
77
105
126
128
92
96
76
106
127
127
91
95
75
107
128
126
90
94
74
108
129
125
89
93
73
109
130
124
88
92
72
110
131
123
87
91
71
111
132
122
86
90
70
112
133
121
85
89
69
113
134
120
84
88
68
114
135
119
83
87
67
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
118
82
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
116
128
117
81
77
65
117
129
116
80
76
64
118
130
115
79
75
63
119
131
114
78
74
62
120
132
113
77
73
61
121
132
112
76
72
60
122
131
111
75
71
59
123
130
110
74
70
58
124
129
109
73
69
57
125
128
108
72
68
56
126
127
107
71
67
55
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
54
128
117
95
81
57
53
129
116
96
80
56
52
130
115
97
79
55
51
131
114
98
78
54
50
132
113
99
77
53
49
132
112
100
76
52
48
131
111
101
75
51
47
130
110
102
74
50
46
129
109
103
73
49
45
128
108
104
72
48
44
127
107
105
71
47
43
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
94
95
96
97
98
99
100
101
102
103
104
105
106
70
69
68
67
66
65
64
63
62
61
60
59
58
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
119
105
93
57
45
33
120
104
92
56
44
32
121
103
91
55
43
31
122
102
90
54
42
30
123
101
89
53
41
29
124
100
88
52
40
28
125
99
87
51
39
27
126
98
86
50
38
26
127
97
85
49
37
25
128
96
84
48
36
24
129
95
83
47
35
23
138
137
136
135
134
133
132
131
130
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
22
21
20
19
18
17
16
15
14
137
95
71
59
33
13
136
96
72
60
32
12
135
97
73
61
31
11
134
98
74
62
30
10
133
99
75
63
29
9
132
100
76
64
28
8
131
101
77
65
27
7
130
102
78
66
26
6
129
103
79
67
25
5
128
104
80
68
24
4
127
105
81
69
23
3
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
94
93
92
91
90
89
88
87
86
85
84
83
82
70
71
72
73
74
75
76
77
78
79
80
81
82
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
127
107
95
83
23
1
128
108
96
84
24
0
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
142
150
146
158
159
151
141
149
145
157
158
150
140
148
144
156
157
149
139
147
143
155
156
148
138
146
142
154
155
147
137
145
141
153
154
146
136
144
140
152
153
145
135
143
139
151
152
144
134
142
138
150
151
143
133
141
137
149
150
142
132
140
136
148
149
141
131
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
147
148
149
150
151
152
153
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
140
130
118
130
134
146
141
127
139
129
117
129
133
145
142
126
138
128
116
128
132
144
143
125
137
127
115
127
131
143
144
124
136
126
114
126
130
142
145
123
135
125
113
125
129
141
146
122
134
124
112
124
128
140
147
121
133
123
122
121
120
119
118
117
116
115
114
113
112
111
123
127
139
148
120
121
122
123
124
125
126
127
128
129
130
131
132
110
122
126
138
149
119
109
121
125
137
150
118
108
120
124
136
151
117
107
119
123
135
152
116
106
118
122
134
153
115
105
117
121
133
153
114
104
116
120
132
152
113
103
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
112
102
106
142
111
101
105
141
110
100
104
140
109
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
103
139
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
86
100
102
138
109
97
85
101
101
137
110
98
84
102
100
136
111
99
83
103
99
135
112
100
82
104
98
134
113
101
81
105
97
133
114
102
80
106
96
132
115
103
79
107
108
107
106
105
104
103
102
101
100
101
102
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
104
78
99
94
130
125
105
77
98
93
129
126
106
76
97
92
128
127
107
75
96
91
127
128
108
74
95
90
126
129
109
73
94
89
125
130
110
72
93
88
124
131
111
71
92
87
123
132
112
70
91
86
122
133
113
69
90
85
121
134
114
68
89
84
120
135
115
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
83
119
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
66
78
82
118
129
117
65
77
81
117
130
118
64
76
80
116
131
119
63
75
79
115
132
120
62
74
78
114
133
121
61
73
77
113
133
122
60
72
76
112
132
123
59
71
75
111
131
124
58
70
74
110
130
125
57
69
73
109
129
126
56
68
72
108
128
127
55
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
54
58
82
96
118
129
53
57
81
97
117
130
52
56
80
98
116
131
51
55
79
99
115
132
50
54
78
100
114
133
49
53
77
101
113
133
48
52
76
102
112
132
47
51
75
103
111
131
46
50
74
104
110
130
45
49
73
105
109
129
44
48
72
106
108
128
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
59
60
61
62
63
64
65
66
67
68
69
70
71
107
106
105
104
103
102
101
100
99
98
97
96
95
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
34
46
58
94
106
120
33
45
57
93
105
121
32
44
56
92
104
122
31
43
55
91
103
123
30
42
54
90
102
124
29
41
53
89
101
125
28
40
52
88
100
126
27
39
51
87
99
127
26
38
50
86
98
128
25
37
49
85
97
129
24
36
48
84
96
130
15
16
17
18
19
20
21
22
23
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
131
132
133
134
135
136
137
138
139
14
34
60
72
96
138
13
33
61
73
97
137
12
32
62
74
98
136
11
31
63
75
99
135
10
30
64
76
100
134
9
29
65
77
101
133
8
28
66
78
102
132
7
27
67
79
103
131
6
26
68
80
104
130
5
25
69
81
105
129
4
24
70
82
106
128
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
83
82
81
80
79
78
77
76
75
74
73
72
71
83
84
85
86
87
88
89
90
91
92
93
94
95
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
2
24
84
96
108
128
1
25
85
97
109
129
0
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
127
128
129
130
131
132
133
134
135
136
137
138
139
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
169
168
167
166
165
164
163
162
161
160
159
158
157
156
140
130
126
138
150
155
139
129
125
137
149
154
138
128
124
136
148
153
137
127
123
135
147
152
136
126
122
134
146
151
135
125
121
133
145
150
134
124
120
132
144
149
133
123
119
131
143
148
132
122
118
130
142
147
131
121
117
129
141
146
130
120
116
128
140
145
129
117
118
119
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
145
144
143
142
141
140
139
138
137
136
135
134
133
132
144
128
116
110
114
126
145
131
143
127
115
109
113
125
145
130
142
126
114
108
112
124
144
129
141
125
113
107
111
123
143
128
140
124
112
106
110
122
142
127
139
123
111
105
109
121
141
126
138
122
110
104
108
120
140
125
137
121
120
119
118
117
116
115
114
113
112
111
110
109
103
107
119
139
124
125
126
127
128
129
130
131
132
133
134
135
136
108
102
106
118
138
123
107
101
105
117
137
122
106
100
104
116
136
121
105
99
103
115
135
120
104
98
102
114
134
119
103
97
101
113
133
118
102
96
100
112
132
117
101
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
116
100
86
122
115
99
85
121
114
98
84
120
113
95
94
93
92
91
92
93
94
95
96
97
98
99
100
99
98
97
83
119
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
90
96
82
118
113
101
89
95
81
117
114
102
88
94
80
116
115
103
87
93
79
115
116
104
86
92
78
114
117
105
85
91
77
113
118
106
84
90
76
112
119
107
83
89
88
87
86
85
84
83
82
81
80
81
82
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
125
124
123
122
121
120
108
82
79
74
110
124
109
81
78
73
109
125
110
80
77
72
108
126
111
79
76
71
107
127
112
78
75
70
106
128
113
77
74
69
105
129
114
76
73
68
104
130
115
75
72
67
103
131
116
74
71
66
102
130
117
73
70
65
101
129
118
72
69
64
100
128
119
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
63
99
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
125
124
123
122
121
120
70
58
62
98
118
121
69
57
61
97
117
122
68
56
60
96
116
123
67
55
59
95
115
124
66
54
58
94
114
125
65
53
57
93
113
125
64
52
56
92
112
124
63
51
55
91
111
123
62
50
54
90
110
122
61
49
53
89
109
121
60
48
52
88
108
120
59
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
119
58
38
62
76
98
118
57
37
61
77
97
117
56
36
60
78
96
116
55
35
59
79
95
115
54
34
58
80
94
114
53
33
57
81
93
113
52
32
56
82
92
112
51
31
55
83
91
111
50
30
54
84
90
110
49
29
53
85
89
109
48
28
52
86
88
108
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
39
40
41
42
43
44
45
46
47
48
49
50
51
87
86
85
84
83
82
81
80
79
78
77
76
75
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
40
26
38
74
86
100
41
25
37
73
85
101
42
24
36
72
84
102
43
23
35
71
83
103
44
22
34
70
82
104
45
21
33
69
81
105
46
20
32
68
80
106
47
19
31
67
79
107
46
18
30
66
78
108
45
17
29
65
77
109
44
16
28
64
76
110
35
36
37
38
39
40
41
42
43
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
111
112
113
114
115
116
117
118
119
34
14
40
52
76
118
33
13
41
53
77
117
32
12
42
54
78
116
31
11
43
55
79
115
30
10
44
56
80
114
29
9
45
57
81
113
28
8
46
58
82
112
27
7
47
59
83
111
26
6
48
60
84
110
25
5
49
61
85
109
24
4
50
62
86
108
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
63
62
61
60
59
58
57
56
55
54
53
52
51
63
64
65
66
67
68
69
70
71
72
73
74
75
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
24
2
64
76
88
108
25
1
65
77
89
109
26
0
177
178
179
180
181
182
183
184
185
186
187
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
163
164
165
166
167
168
169
170
171
172
173
174
175
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
198
197
196
195
194
193
192
191
190
189
188
187
176
166
162
174
178
186
175
165
161
173
177
185
174
164
160
172
176
184
173
163
159
171
175
183
172
162
158
170
174
182
171
161
157
169
173
181
170
160
156
168
172
180
169
159
155
167
171
179
168
158
154
166
170
178
167
157
153
165
169
177
166
156
152
164
168
176
165
153
154
155
156
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
166
165
164
163
175
164
152
146
150
162
158
162
174
163
151
145
149
161
157
161
173
162
150
144
148
160
156
160
172
161
149
143
147
159
155
159
171
160
148
142
146
158
154
158
170
159
147
141
145
157
153
157
169
158
146
140
144
156
152
156
168
157
156
155
154
153
152
151
150
149
148
147
146
145
139
143
155
151
155
156
157
158
159
160
161
162
163
164
165
166
167
144
138
142
154
150
154
143
137
141
153
149
153
142
136
140
152
148
152
141
135
139
151
147
151
140
134
138
150
146
150
139
133
137
149
145
149
138
132
136
148
144
148
137
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
147
136
122
134
146
135
121
133
145
134
120
132
144
131
130
129
128
127
128
129
130
131
132
133
134
135
136
135
134
133
119
131
143
144
145
145
144
143
142
141
140
139
138
137
136
135
134
133
132
126
132
118
130
142
137
125
131
117
129
141
137
124
130
116
128
140
136
123
129
115
127
139
135
122
128
114
126
138
134
121
127
113
125
137
133
120
126
112
124
136
132
119
125
124
123
122
121
120
119
118
117
116
117
118
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
130
129
128
127
128
129
130
131
132
133
134
135
131
118
115
110
122
126
130
117
114
109
121
125
129
116
113
108
120
124
128
115
112
107
119
123
127
114
111
106
118
122
126
113
110
105
117
121
125
112
109
104
116
120
124
111
108
103
115
119
123
110
107
102
114
118
122
109
106
101
113
117
121
108
105
100
112
116
120
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
99
111
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
106
94
98
110
106
118
105
93
97
109
105
117
104
92
96
108
104
116
103
91
95
107
103
115
102
90
94
106
102
114
101
89
93
105
101
113
100
88
92
104
100
112
99
87
91
103
99
111
98
86
90
102
98
110
97
85
89
101
97
109
96
84
88
100
96
108
95
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
107
94
74
74
86
86
106
93
73
73
85
85
105
92
72
72
84
84
104
91
71
71
83
83
103
90
70
70
82
82
102
89
69
69
81
81
101
88
68
68
80
80
100
87
67
67
79
79
99
86
66
66
78
78
98
85
65
65
77
77
97
84
64
64
76
76
96
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
51
52
53
54
55
56
57
58
59
60
61
62
63
75
74
73
72
71
70
69
68
67
66
65
64
63
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
76
62
50
62
74
88
77
61
49
61
73
89
78
60
48
60
72
90
79
59
47
59
71
91
80
58
46
58
70
92
81
57
45
57
69
93
82
56
44
56
68
94
83
55
43
55
67
95
84
54
42
54
66
96
85
53
41
53
65
97
86
52
40
52
64
98
95
94
93
92
91
90
89
88
87
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
99
100
101
102
103
104
105
106
107
94
52
26
40
64
106
93
53
25
41
65
105
92
54
24
42
66
104
91
55
23
43
67
103
90
56
22
44
68
102
89
57
21
45
69
101
88
58
20
46
70
100
87
59
19
47
71
99
86
60
18
48
72
98
85
61
17
49
73
97
84
62
16
50
74
96
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
3
4
5
6
7
8
9
10
11
12
13
14
15
51
52
53
54
55
56
57
58
59
60
59
58
57
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
84
64
2
56
76
96
85
65
1
55
77
97
86
66
0
189
190
191
192
193
194
195
196
197
198
199
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
175
174
173
172
171
170
169
168
167
166
165
164
163
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
186
185
184
183
182
181
180
179
178
177
176
175
188
178
174
162
166
174
187
177
173
161
165
173
186
176
172
160
164
172
185
175
171
159
163
171
184
174
170
158
162
170
183
173
169
157
161
169
182
172
168
156
160
168
181
171
167
155
159
167
180
170
166
154
158
166
179
169
165
153
157
165
178
168
164
152
156
164
177
165
166
167
168
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
154
153
152
151
163
176
164
158
162
150
146
150
162
175
163
157
161
149
145
149
161
174
162
156
160
148
144
148
160
173
161
155
159
147
143
147
159
172
160
154
158
146
142
146
158
171
159
153
157
145
141
145
157
170
158
152
156
144
140
144
156
169
168
167
166
165
164
163
162
161
160
159
158
157
151
155
143
139
143
144
145
146
147
148
149
150
151
152
153
154
155
156
150
154
142
138
142
155
149
153
141
137
141
154
148
152
140
136
140
153
147
151
139
135
139
152
146
150
138
134
138
151
145
149
137
133
137
150
144
148
136
132
136
149
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
135
148
134
122
134
147
133
121
133
146
132
120
132
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
146
145
131
119
131
132
133
134
135
134
133
132
131
130
129
128
127
128
129
130
131
137
144
130
118
130
126
137
143
129
117
129
125
136
142
128
116
128
124
135
141
127
115
127
123
134
140
126
114
126
122
133
139
125
113
125
121
132
138
124
112
124
120
131
137
136
135
134
133
132
131
130
129
128
129
130
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
118
117
116
115
116
117
118
119
120
121
122
123
119
130
127
122
110
114
118
129
126
121
109
113
117
128
125
120
108
112
116
127
124
119
107
111
115
126
123
118
106
110
114
125
122
117
105
109
113
124
121
116
104
108
112
123
120
115
103
107
111
122
119
114
102
106
110
121
118
113
101
105
109
120
117
112
100
104
108
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
111
99
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
118
106
110
98
94
106
117
105
109
97
93
105
116
104
108
96
92
104
115
103
107
95
91
103
114
102
106
94
90
102
113
101
105
93
89
101
112
100
104
92
88
100
111
99
103
91
87
99
110
98
102
90
86
98
109
97
101
89
85
97
108
96
100
88
84
96
107
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
95
106
86
86
74
74
94
105
85
85
73
73
93
104
84
84
72
72
92
103
83
83
71
71
91
102
82
82
70
70
90
101
81
81
69
69
89
100
80
80
68
68
88
99
79
79
67
67
87
98
78
78
66
66
86
97
77
77
65
65
85
96
76
76
64
64
84
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
63
64
65
66
67
68
69
70
71
72
73
74
75
63
62
61
60
59
58
57
56
55
54
53
52
51
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
88
74
62
50
62
76
89
73
61
49
61
77
90
72
60
48
60
78
91
71
59
47
59
79
92
70
58
46
58
80
93
69
57
45
57
81
94
68
56
44
56
82
95
67
55
43
55
83
96
66
54
42
54
84
97
65
53
41
53
85
98
64
52
40
52
86
107
106
105
104
103
102
101
100
99
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
87
88
89
90
91
92
93
94
95
106
64
40
26
52
94
105
65
41
25
53
93
104
66
42
24
54
92
103
67
43
23
55
91
102
68
44
22
56
90
101
69
45
21
57
89
100
70
46
20
58
88
99
71
47
19
59
87
98
72
48
18
60
86
97
73
49
17
61
85
96
74
50
16
62
84
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
57
58
59
60
59
58
57
56
55
54
53
52
51
15
14
13
12
11
10
9
8
7
6
5
4
3
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
96
76
56
2
64
84
97
77
55
1
65
85
98
78
54
0
156
157
158
159
160
161
162
163
164
165
166
167
168
169
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
139
138
137
136
135
134
133
132
131
130
129
128
127
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
155
150
138
126
130
138
154
149
137
125
129
137
153
148
136
124
128
136
152
147
135
123
127
135
151
146
134
122
126
134
150
145
133
121
125
133
149
144
132
120
124
132
148
143
131
119
123
131
147
142
130
118
122
130
146
141
129
117
121
129
145
140
128
116
120
128
144
132
133
134
135
136
137
138
139
140
141
142
143
144
145
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
118
117
116
115
127
143
131
145
126
114
110
114
126
142
130
145
125
113
109
113
125
141
129
144
124
112
108
112
124
140
128
143
123
111
107
111
123
139
127
142
122
110
106
110
122
138
126
141
121
109
105
109
121
137
125
140
120
108
104
108
120
136
135
134
133
132
131
130
129
128
127
126
125
124
139
119
107
103
107
108
109
110
111
112
113
114
115
116
117
118
119
123
138
118
106
102
106
122
137
117
105
101
105
121
136
116
104
100
104
120
135
115
103
99
103
119
134
114
102
98
102
118
133
113
101
97
101
117
132
112
100
96
100
116
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
99
115
122
86
98
114
121
85
97
113
120
84
96
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
119
83
95
96
97
98
99
98
97
96
95
94
93
92
91
92
93
94
95
101
113
118
82
94
90
102
114
117
81
93
89
103
115
116
80
92
88
104
116
115
79
91
87
105
117
114
78
90
86
106
118
113
77
89
85
107
119
112
76
88
84
108
120
121
122
123
124
125
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
82
81
80
79
80
81
82
83
84
85
86
87
83
109
123
110
74
78
82
110
124
109
73
77
81
111
125
108
72
76
80
112
126
107
71
75
79
113
127
106
70
74
78
114
128
105
69
73
77
115
129
104
68
72
76
116
130
103
67
71
75
117
131
102
66
70
74
118
130
101
65
69
73
119
129
100
64
68
72
120
121
122
123
124
125
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
99
63
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
121
118
98
62
58
70
122
117
97
61
57
69
123
116
96
60
56
68
124
115
95
59
55
67
125
114
94
58
54
66
125
113
93
57
53
65
124
112
92
56
52
64
123
111
91
55
51
63
122
110
90
54
50
62
121
109
89
53
49
61
120
108
88
52
48
60
119
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
59
118
98
76
62
38
58
117
97
77
61
37
57
116
96
78
60
36
56
115
95
79
59
35
55
114
94
80
58
34
54
113
93
81
57
33
53
112
92
82
56
32
52
111
91
83
55
31
51
110
90
84
54
30
50
109
89
85
53
29
49
108
88
86
52
28
48
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
75
76
77
78
79
80
81
82
83
84
85
86
87
51
50
49
48
47
46
45
44
43
42
41
40
39
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
100
86
74
38
26
40
101
85
73
37
25
41
102
84
72
36
24
42
103
83
71
35
23
43
104
82
70
34
22
44
105
81
69
33
21
45
106
80
68
32
20
46
107
79
67
31
19
47
108
78
66
30
18
46
109
77
65
29
17
45
110
76
64
28
16
44
119
118
117
116
115
114
113
112
111
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
43
42
41
40
39
38
37
36
35
118
76
52
40
14
34
117
77
53
41
13
33
116
78
54
42
12
32
115
79
55
43
11
31
114
80
56
44
10
30
113
81
57
45
9
29
112
82
58
46
8
28
111
83
59
47
7
27
110
84
60
48
6
26
109
85
61
49
5
25
108
86
62
50
4
24
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
75
74
73
72
71
70
69
68
67
66
65
64
63
51
52
53
54
55
56
57
58
59
60
61
62
63
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
108
88
76
64
2
24
109
89
77
65
1
25
110
90
78
66
0
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
151
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
151
159
158
146
150
142
150
158
157
145
149
141
149
157
156
144
148
140
148
156
155
143
147
139
147
155
154
142
146
138
146
154
153
141
145
137
145
153
152
140
144
136
144
152
151
139
143
135
143
151
150
138
142
134
142
150
149
137
141
133
141
149
148
136
140
132
140
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
153
152
151
150
149
148
147
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
131
139
127
141
146
134
130
118
130
138
126
142
145
133
129
117
129
137
125
143
144
132
128
116
128
136
124
144
143
131
127
115
127
135
123
145
142
130
126
114
126
134
122
146
141
129
125
113
125
133
121
147
140
128
124
112
124
132
131
130
129
128
127
126
125
124
123
122
121
120
148
139
127
123
111
112
113
114
115
116
117
118
119
120
121
122
123
119
149
138
126
122
110
118
150
137
125
121
109
117
151
136
124
120
108
116
152
135
123
119
107
115
153
134
122
118
106
114
153
133
121
117
105
113
152
132
120
116
104
112
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
103
111
142
106
102
110
141
105
101
109
140
104
100
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
139
103
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
97
109
138
102
100
86
98
110
137
101
101
85
99
111
136
100
102
84
100
112
135
99
103
83
101
113
134
98
104
82
102
114
133
97
105
81
103
115
132
96
106
80
104
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
102
101
100
99
100
101
102
103
104
105
106
107
79
105
126
130
94
98
78
106
127
129
93
97
77
107
128
128
92
96
76
108
129
127
91
95
75
109
130
126
90
94
74
110
131
125
89
93
73
111
132
124
88
92
72
112
133
123
87
91
71
113
134
122
86
90
70
114
135
121
85
89
69
115
136
120
84
88
68
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
119
83
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
117
129
118
82
78
66
118
130
117
81
77
65
119
131
116
80
76
64
120
132
115
79
75
63
121
133
114
78
74
62
122
133
113
77
73
61
123
132
112
76
72
60
124
131
111
75
71
59
125
130
110
74
70
58
126
129
109
73
69
57
127
128
108
72
68
56
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
55
129
118
96
82
58
54
130
117
97
81
57
53
131
116
98
80
56
52
132
115
99
79
55
51
133
114
100
78
54
50
133
113
101
77
53
49
132
112
102
76
52
48
131
111
103
75
51
47
130
110
104
74
50
46
129
109
105
73
49
45
128
108
106
72
48
44
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
95
96
97
98
99
100
101
102
103
104
105
106
107
71
70
69
68
67
66
65
64
63
62
61
60
59
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
120
106
94
58
46
34
121
105
93
57
45
33
122
104
92
56
44
32
123
103
91
55
43
31
124
102
90
54
42
30
125
101
89
53
41
29
126
100
88
52
40
28
127
99
87
51
39
27
128
98
86
50
38
26
129
97
85
49
37
25
130
96
84
48
36
24
139
138
137
136
135
134
133
132
131
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
23
22
21
20
19
18
17
16
15
138
96
72
60
34
14
137
97
73
61
33
13
136
98
74
62
32
12
135
99
75
63
31
11
134
100
76
64
30
10
133
101
77
65
29
9
132
102
78
66
28
8
131
103
79
67
27
7
130
104
80
68
26
6
129
105
81
69
25
5
128
106
82
70
24
4
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
95
94
93
92
91
90
89
88
87
86
85
84
83
71
72
73
74
75
76
77
78
79
80
81
82
83
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
128
108
96
84
24
2
129
109
97
85
25
1
130
110
98
86
26
0
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
143
151
147
159
160
152
142
150
146
158
159
151
141
149
145
157
158
150
140
148
144
156
157
149
139
147
143
155
156
148
138
146
142
154
155
147
137
145
141
153
154
146
136
144
140
152
153
145
135
143
139
151
152
144
134
142
138
150
151
143
133
141
137
149
150
142
132
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
148
149
150
151
152
153
154
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
141
131
119
131
135
147
142
128
140
130
118
130
134
146
143
127
139
129
117
129
133
145
144
126
138
128
116
128
132
144
145
125
137
127
115
127
131
143
146
124
136
126
114
126
130
142
147
123
135
125
113
125
129
141
148
122
134
124
123
122
121
120
119
118
117
116
115
114
113
112
124
128
140
149
121
122
123
124
125
126
127
128
129
130
131
132
133
111
123
127
139
150
120
110
122
126
138
151
119
109
121
125
137
152
118
108
120
124
136
153
117
107
119
123
135
154
116
106
118
122
134
154
115
105
117
121
133
153
114
104
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
113
103
107
143
112
102
106
142
111
101
105
141
110
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
104
140
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
87
101
103
139
110
98
86
102
102
138
111
99
85
103
101
137
112
100
84
104
100
136
113
101
83
105
99
135
114
102
82
106
98
134
115
103
81
107
97
133
116
104
80
108
109
108
107
106
105
104
103
102
101
102
103
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
105
79
100
95
131
126
106
78
99
94
130
127
107
77
98
93
129
128
108
76
97
92
128
129
109
75
96
91
127
130
110
74
95
90
126
131
111
73
94
89
125
132
112
72
93
88
124
133
113
71
92
87
123
134
114
70
91
86
122
135
115
69
90
85
121
136
116
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
84
120
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
67
79
83
119
130
118
66
78
82
118
131
119
65
77
81
117
132
120
64
76
80
116
133
121
63
75
79
115
134
122
62
74
78
114
134
123
61
73
77
113
133
124
60
72
76
112
132
125
59
71
75
111
131
126
58
70
74
110
130
127
57
69
73
109
129
128
56
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
55
59
83
97
119
130
54
58
82
98
118
131
53
57
81
99
117
132
52
56
80
100
116
133
51
55
79
101
115
134
50
54
78
102
114
134
49
53
77
103
113
133
48
52
76
104
112
132
47
51
75
105
111
131
46
50
74
106
110
130
45
49
73
107
109
129
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
60
61
62
63
64
65
66
67
68
69
70
71
72
108
107
106
105
104
103
102
101
100
99
98
97
96
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
35
47
59
95
107
121
34
46
58
94
106
122
33
45
57
93
105
123
32
44
56
92
104
124
31
43
55
91
103
125
30
42
54
90
102
126
29
41
53
89
101
127
28
40
52
88
100
128
27
39
51
87
99
129
26
38
50
86
98
130
25
37
49
85
97
131
16
17
18
19
20
21
22
23
24
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
132
133
134
135
136
137
138
139
140
15
35
61
73
97
139
14
34
62
74
98
138
13
33
63
75
99
137
12
32
64
76
100
136
11
31
65
77
101
135
10
30
66
78
102
134
9
29
67
79
103
133
8
28
68
80
104
132
7
27
69
81
105
131
6
26
70
82
106
130
5
25
71
83
107
129
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
84
83
82
81
80
79
78
77
76
75
74
73
72
84
85
86
87
88
89
90
91
92
93
94
95
96
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
3
25
85
97
109
129
2
26
86
98
110
130
1
27
87
99
111
131
0
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
128
129
130
131
132
133
134
135
136
137
138
139
140
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
170
169
168
167
166
165
164
163
162
161
160
159
158
157
141
131
127
139
151
156
140
130
126
138
150
155
139
129
125
137
149
154
138
128
124
136
148
153
137
127
123
135
147
152
136
126
122
134
146
151
135
125
121
133
145
150
134
124
120
132
144
149
133
123
119
131
143
148
132
122
118
130
142
147
131
121
117
129
141
146
130
118
119
120
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
146
145
144
143
142
141
140
139
138
137
136
135
134
133
145
129
117
111
115
127
146
132
144
128
116
110
114
126
146
131
143
127
115
109
113
125
145
130
142
126
114
108
112
124
144
129
141
125
113
107
111
123
143
128
140
124
112
106
110
122
142
127
139
123
111
105
109
121
141
126
138
122
121
120
119
118
117
116
115
114
113
112
111
110
104
108
120
140
125
126
127
128
129
130
131
132
133
134
135
136
137
109
103
107
119
139
124
108
102
106
118
138
123
107
101
105
117
137
122
106
100
104
116
136
121
105
99
103
115
135
120
104
98
102
114
134
119
103
97
101
113
133
118
102
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
117
101
87
123
116
100
86
122
115
99
85
121
114
96
95
94
93
92
93
94
95
96
97
98
99
100
101
100
99
98
84
120
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
91
97
83
119
114
102
90
96
82
118
115
103
89
95
81
117
116
104
88
94
80
116
117
105
87
93
79
115
118
106
86
92
78
114
119
107
85
91
77
113
120
108
84
90
89
88
87
86
85
84
83
82
81
82
83
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
126
125
124
123
122
121
109
83
80
75
111
125
110
82
79
74
110
126
111
81
78
73
109
127
112
80
77
72
108
128
113
79
76
71
107
129
114
78
75
70
106
130
115
77
74
69
105
131
116
76
73
68
104
132
117
75
72
67
103
131
118
74
71
66
102
130
119
73
70
65
101
129
120
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
64
100
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
126
125
124
123
122
121
71
59
63
99
119
122
70
58
62
98
118
123
69
57
61
97
117
124
68
56
60
96
116
125
67
55
59
95
115
126
66
54
58
94
114
126
65
53
57
93
113
125
64
52
56
92
112
124
63
51
55
91
111
123
62
50
54
90
110
122
61
49
53
89
109
121
60
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
120
59
39
63
77
99
119
58
38
62
78
98
118
57
37
61
79
97
117
56
36
60
80
96
116
55
35
59
81
95
115
54
34
58
82
94
114
53
33
57
83
93
113
52
32
56
84
92
112
51
31
55
85
91
111
50
30
54
86
90
110
49
29
53
87
89
109
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
40
41
42
43
44
45
46
47
48
49
50
51
52
88
87
86
85
84
83
82
81
80
79
78
77
76
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
41
27
39
75
87
101
42
26
38
74
86
102
43
25
37
73
85
103
44
24
36
72
84
104
45
23
35
71
83
105
46
22
34
70
82
106
47
21
33
69
81
107
48
20
32
68
80
108
47
19
31
67
79
109
46
18
30
66
78
110
45
17
29
65
77
111
36
37
38
39
40
41
42
43
44
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
112
113
114
115
116
117
118
119
120
35
15
41
53
77
119
34
14
42
54
78
118
33
13
43
55
79
117
32
12
44
56
80
116
31
11
45
57
81
115
30
10
46
58
82
114
29
9
47
59
83
113
28
8
48
60
84
112
27
7
49
61
85
111
26
6
50
62
86
110
25
5
51
63
87
109
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
64
63
62
61
60
59
58
57
56
55
54
53
52
64
65
66
67
68
69
70
71
72
73
74
75
76
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
25
3
65
77
89
109
26
2
66
78
90
110
27
1
67
79
91
111
28
0
178
179
180
181
182
183
184
185
186
187
188
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
164
165
166
167
168
169
170
171
172
173
174
175
176
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
199
198
197
196
195
194
193
192
191
190
189
188
177
167
163
175
179
187
176
166
162
174
178
186
175
165
161
173
177
185
174
164
160
172
176
184
173
163
159
171
175
183
172
162
158
170
174
182
171
161
157
169
173
181
170
160
156
168
172
180
169
159
155
167
171
179
168
158
154
166
170
178
167
157
153
165
169
177
166
154
155
156
157
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
167
166
165
164
176
165
153
147
151
163
159
163
175
164
152
146
150
162
158
162
174
163
151
145
149
161
157
161
173
162
150
144
148
160
156
160
172
161
149
143
147
159
155
159
171
160
148
142
146
158
154
158
170
159
147
141
145
157
153
157
169
158
157
156
155
154
153
152
151
150
149
148
147
146
140
144
156
152
156
157
158
159
160
161
162
163
164
165
166
167
168
145
139
143
155
151
155
144
138
142
154
150
154
143
137
141
153
149
153
142
136
140
152
148
152
141
135
139
151
147
151
140
134
138
150
146
150
139
133
137
149
145
149
138
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
148
137
123
135
147
136
122
134
146
135
121
133
145
132
131
130
129
128
129
130
131
132
133
134
135
136
137
136
135
134
120
132
144
145
146
146
145
144
143
142
141
140
139
138
137
136
135
134
133
127
133
119
131
143
138
126
132
118
130
142
138
125
131
117
129
141
137
124
130
116
128
140
136
123
129
115
127
139
135
122
128
114
126
138
134
121
127
113
125
137
133
120
126
125
124
123
122
121
120
119
118
117
118
119
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
131
130
129
128
129
130
131
132
133
134
135
136
132
119
116
111
123
127
131
118
115
110
122
126
130
117
114
109
121
125
129
116
113
108
120
124
128
115
112
107
119
123
127
114
111
106
118
122
126
113
110
105
117
121
125
112
109
104
116
120
124
111
108
103
115
119
123
110
107
102
114
118
122
109
106
101
113
117
121
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
100
112
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
107
95
99
111
107
119
106
94
98
110
106
118
105
93
97
109
105
117
104
92
96
108
104
116
103
91
95
107
103
115
102
90
94
106
102
114
101
89
93
105
101
113
100
88
92
104
100
112
99
87
91
103
99
111
98
86
90
102
98
110
97
85
89
101
97
109
96
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
108
95
75
75
87
87
107
94
74
74
86
86
106
93
73
73
85
85
105
92
72
72
84
84
104
91
71
71
83
83
103
90
70
70
82
82
102
89
69
69
81
81
101
88
68
68
80
80
100
87
67
67
79
79
99
86
66
66
78
78
98
85
65
65
77
77
97
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
52
53
54
55
56
57
58
59
60
61
62
63
64
76
75
74
73
72
71
70
69
68
67
66
65
64
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
77
63
51
63
75
89
78
62
50
62
74
90
79
61
49
61
73
91
80
60
48
60
72
92
81
59
47
59
71
93
82
58
46
58
70
94
83
57
45
57
69
95
84
56
44
56
68
96
85
55
43
55
67
97
86
54
42
54
66
98
87
53
41
53
65
99
96
95
94
93
92
91
90
89
88
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
100
101
102
103
104
105
106
107
108
95
53
27
41
65
107
94
54
26
42
66
106
93
55
25
43
67
105
92
56
24
44
68
104
91
57
23
45
69
103
90
58
22
46
70
102
89
59
21
47
71
101
88
60
20
48
72
100
87
61
19
49
73
99
86
62
18
50
74
98
85
63
17
51
75
97
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
4
5
6
7
8
9
10
11
12
13
14
15
16
52
53
54
55
56
57
58
59
60
59
58
57
56
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
85
65
3
55
77
97
86
66
2
54
78
98
87
67
1
53
79
99
88
68
0
190
191
192
193
194
195
196
197
198
199
200
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
176
175
174
173
172
171
170
169
168
167
166
165
164
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
187
186
185
184
183
182
181
180
179
178
177
176
189
179
175
163
167
175
188
178
174
162
166
174
187
177
173
161
165
173
186
176
172
160
164
172
185
175
171
159
163
171
184
174
170
158
162
170
183
173
169
157
161
169
182
172
168
156
160
168
181
171
167
155
159
167
180
170
166
154
158
166
179
169
165
153
157
165
178
166
167
168
169
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
155
154
153
152
164
177
165
159
163
151
147
151
163
176
164
158
162
150
146
150
162
175
163
157
161
149
145
149
161
174
162
156
160
148
144
148
160
173
161
155
159
147
143
147
159
172
160
154
158
146
142
146
158
171
159
153
157
145
141
145
157
170
169
168
167
166
165
164
163
162
161
160
159
158
152
156
144
140
144
145
146
147
148
149
150
151
152
153
154
155
156
157
151
155
143
139
143
156
150
154
142
138
142
155
149
153
141
137
141
154
148
152
140
136
140
153
147
151
139
135
139
152
146
150
138
134
138
151
145
149
137
133
137
150
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
136
149
135
123
135
148
134
122
134
147
133
121
133
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
147
146
132
120
132
133
134
135
136
135
134
133
132
131
130
129
128
129
130
131
132
138
145
131
119
131
127
138
144
130
118
130
126
137
143
129
117
129
125
136
142
128
116
128
124
135
141
127
115
127
123
134
140
126
114
126
122
133
139
125
113
125
121
132
138
137
136
135
134
133
132
131
130
129
130
131
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
119
118
117
116
117
118
119
120
121
122
123
124
120
131
128
123
111
115
119
130
127
122
110
114
118
129
126
121
109
113
117
128
125
120
108
112
116
127
124
119
107
111
115
126
123
118
106
110
114
125
122
117
105
109
113
124
121
116
104
108
112
123
120
115
103
107
111
122
119
114
102
106
110
121
118
113
101
105
109
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
112
100
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
119
107
111
99
95
107
118
106
110
98
94
106
117
105
109
97
93
105
116
104
108
96
92
104
115
103
107
95
91
103
114
102
106
94
90
102
113
101
105
93
89
101
112
100
104
92
88
100
111
99
103
91
87
99
110
98
102
90
86
98
109
97
101
89
85
97
108
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
96
107
87
87
75
75
95
106
86
86
74
74
94
105
85
85
73
73
93
104
84
84
72
72
92
103
83
83
71
71
91
102
82
82
70
70
90
101
81
81
69
69
89
100
80
80
68
68
88
99
79
79
67
67
87
98
78
78
66
66
86
97
77
77
65
65
85
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
64
65
66
67
68
69
70
71
72
73
74
75
76
64
63
62
61
60
59
58
57
56
55
54
53
52
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
89
75
63
51
63
77
90
74
62
50
62
78
91
73
61
49
61
79
92
72
60
48
60
80
93
71
59
47
59
81
94
70
58
46
58
82
95
69
57
45
57
83
96
68
56
44
56
84
97
67
55
43
55
85
98
66
54
42
54
86
99
65
53
41
53
87
108
107
106
105
104
103
102
101
100
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
88
89
90
91
92
93
94
95
96
107
65
41
27
53
95
106
66
42
26
54
94
105
67
43
25
55
93
104
68
44
24
56
92
103
69
45
23
57
91
102
70
46
22
58
90
101
71
47
21
59
89
100
72
48
20
60
88
99
73
49
19
61
87
98
74
50
18
62
86
97
75
51
17
63
85
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
56
57
58
59
60
59
58
57
56
55
54
53
52
16
15
14
13
12
11
10
9
8
7
6
5
4
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
97
77
55
3
65
85
98
78
54
2
66
86
99
79
53
1
67
87
100
80
52
0
157
158
159
160
161
162
163
164
165
166
167
168
169
170
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
140
139
138
137
136
135
134
133
132
131
130
129
128
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
156
151
139
127
131
139
155
150
138
126
130
138
154
149
137
125
129
137
153
148
136
124
128
136
152
147
135
123
127
135
151
146
134
122
126
134
150
145
133
121
125
133
149
144
132
120
124
132
148
143
131
119
123
131
147
142
130
118
122
130
146
141
129
117
121
129
145
133
134
135
136
137
138
139
140
141
142
143
144
145
146
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
119
118
117
116
128
144
132
146
127
115
111
115
127
143
131
146
126
114
110
114
126
142
130
145
125
113
109
113
125
141
129
144
124
112
108
112
124
140
128
143
123
111
107
111
123
139
127
142
122
110
106
110
122
138
126
141
121
109
105
109
121
137
136
135
134
133
132
131
130
129
128
127
126
125
140
120
108
104
108
109
110
111
112
113
114
115
116
117
118
119
120
124
139
119
107
103
107
123
138
118
106
102
106
122
137
117
105
101
105
121
136
116
104
100
104
120
135
115
103
99
103
119
134
114
102
98
102
118
133
113
101
97
101
117
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
100
116
123
87
99
115
122
86
98
114
121
85
97
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
120
84
96
97
98
99
100
99
98
97
96
95
94
93
92
93
94
95
96
102
114
119
83
95
91
103
115
118
82
94
90
104
116
117
81
93
89
105
117
116
80
92
88
106
118
115
79
91
87
107
119
114
78
90
86
108
120
113
77
89
85
109
121
122
123
124
125
126
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
83
82
81
80
81
82
83
84
85
86
87
88
84
110
124
111
75
79
83
111
125
110
74
78
82
112
126
109
73
77
81
113
127
108
72
76
80
114
128
107
71
75
79
115
129
106
70
74
78
116
130
105
69
73
77
117
131
104
68
72
76
118
132
103
67
71
75
119
131
102
66
70
74
120
130
101
65
69
73
121
122
123
124
125
126
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
100
64
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
122
119
99
63
59
71
123
118
98
62
58
70
124
117
97
61
57
69
125
116
96
60
56
68
126
115
95
59
55
67
126
114
94
58
54
66
125
113
93
57
53
65
124
112
92
56
52
64
123
111
91
55
51
63
122
110
90
54
50
62
121
109
89
53
49
61
120
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
60
119
99
77
63
39
59
118
98
78
62
38
58
117
97
79
61
37
57
116
96
80
60
36
56
115
95
81
59
35
55
114
94
82
58
34
54
113
93
83
57
33
53
112
92
84
56
32
52
111
91
85
55
31
51
110
90
86
54
30
50
109
89
87
53
29
49
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
76
77
78
79
80
81
82
83
84
85
86
87
88
52
51
50
49
48
47
46
45
44
43
42
41
40
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
101
87
75
39
27
41
102
86
74
38
26
42
103
85
73
37
25
43
104
84
72
36
24
44
105
83
71
35
23
45
106
82
70
34
22
46
107
81
69
33
21
47
108
80
68
32
20
48
109
79
67
31
19
47
110
78
66
30
18
46
111
77
65
29
17
45
120
119
118
117
116
115
114
113
112
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
44
43
42
41
40
39
38
37
36
119
77
53
41
15
35
118
78
54
42
14
34
117
79
55
43
13
33
116
80
56
44
12
32
115
81
57
45
11
31
114
82
58
46
10
30
113
83
59
47
9
29
112
84
60
48
8
28
111
85
61
49
7
27
110
86
62
50
6
26
109
87
63
51
5
25
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
76
75
74
73
72
71
70
69
68
67
66
65
64
52
53
54
55
56
57
58
59
60
61
62
63
64
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
109
89
77
65
3
25
110
90
78
66
2
26
111
91
79
67
1
27
112
92
80
68
0
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
152
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
152
160
159
147
151
143
151
159
158
146
150
142
150
158
157
145
149
141
149
157
156
144
148
140
148
156
155
143
147
139
147
155
154
142
146
138
146
154
153
141
145
137
145
153
152
140
144
136
144
152
151
139
143
135
143
151
150
138
142
134
142
150
149
137
141
133
141
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
154
153
152
151
150
149
148
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
132
140
128
142
147
135
131
119
131
139
127
143
146
134
130
118
130
138
126
144
145
133
129
117
129
137
125
145
144
132
128
116
128
136
124
146
143
131
127
115
127
135
123
147
142
130
126
114
126
134
122
148
141
129
125
113
125
133
132
131
130
129
128
127
126
125
124
123
122
121
149
140
128
124
112
113
114
115
116
117
118
119
120
121
122
123
124
120
150
139
127
123
111
119
151
138
126
122
110
118
152
137
125
121
109
117
153
136
124
120
108
116
154
135
123
119
107
115
154
134
122
118
106
114
153
133
121
117
105
113
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
104
112
143
107
103
111
142
106
102
110
141
105
101
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
140
104
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
98
110
139
103
101
87
99
111
138
102
102
86
100
112
137
101
103
85
101
113
136
100
104
84
102
114
135
99
105
83
103
115
134
98
106
82
104
116
133
97
107
81
105
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
103
102
101
100
101
102
103
104
105
106
107
108
80
106
127
131
95
99
79
107
128
130
94
98
78
108
129
129
93
97
77
109
130
128
92
96
76
110
131
127
91
95
75
111
132
126
90
94
74
112
133
125
89
93
73
113
134
124
88
92
72
114
135
123
87
91
71
115
136
122
86
90
70
116
137
121
85
89
69
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
120
84
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
118
130
119
83
79
67
119
131
118
82
78
66
120
132
117
81
77
65
121
133
116
80
76
64
122
134
115
79
75
63
123
134
114
78
74
62
124
133
113
77
73
61
125
132
112
76
72
60
126
131
111
75
71
59
127
130
110
74
70
58
128
129
109
73
69
57
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
56
130
119
97
83
59
55
131
118
98
82
58
54
132
117
99
81
57
53
133
116
100
80
56
52
134
115
101
79
55
51
134
114
102
78
54
50
133
113
103
77
53
49
132
112
104
76
52
48
131
111
105
75
51
47
130
110
106
74
50
46
129
109
107
73
49
45
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
96
97
98
99
100
101
102
103
104
105
106
107
108
72
71
70
69
68
67
66
65
64
63
62
61
60
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
121
107
95
59
47
35
122
106
94
58
46
34
123
105
93
57
45
33
124
104
92
56
44
32
125
103
91
55
43
31
126
102
90
54
42
30
127
101
89
53
41
29
128
100
88
52
40
28
129
99
87
51
39
27
130
98
86
50
38
26
131
97
85
49
37
25
140
139
138
137
136
135
134
133
132
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
24
23
22
21
20
19
18
17
16
139
97
73
61
35
15
138
98
74
62
34
14
137
99
75
63
33
13
136
100
76
64
32
12
135
101
77
65
31
11
134
102
78
66
30
10
133
103
79
67
29
9
132
104
80
68
28
8
131
105
81
69
27
7
130
106
82
70
26
6
129
107
83
71
25
5
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
96
95
94
93
92
91
90
89
88
87
86
85
84
72
73
74
75
76
77
78
79
80
81
82
83
84
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
129
109
97
85
25
3
130
110
98
86
26
2
131
111
99
87
27
1
132
112
100
88
28
0
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
144
152
148
160
161
153
143
151
147
159
160
152
142
150
146
158
159
151
141
149
145
157
158
150
140
148
144
156
157
149
139
147
143
155
156
148
138
146
142
154
155
147
137
145
141
153
154
146
136
144
140
152
153
145
135
143
139
151
152
144
134
142
138
150
151
143
133
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
149
150
151
152
153
154
155
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
142
132
120
132
136
148
143
129
141
131
119
131
135
147
144
128
140
130
118
130
134
146
145
127
139
129
117
129
133
145
146
126
138
128
116
128
132
144
147
125
137
127
115
127
131
143
148
124
136
126
114
126
130
142
149
123
135
125
124
123
122
121
120
119
118
117
116
115
114
113
125
129
141
150
122
123
124
125
126
127
128
129
130
131
132
133
134
112
124
128
140
151
121
111
123
127
139
152
120
110
122
126
138
153
119
109
121
125
137
154
118
108
120
124
136
155
117
107
119
123
135
155
116
106
118
122
134
154
115
105
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
114
104
108
144
113
103
107
143
112
102
106
142
111
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
105
141
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
88
102
104
140
111
99
87
103
103
139
112
100
86
104
102
138
113
101
85
105
101
137
114
102
84
106
100
136
115
103
83
107
99
135
116
104
82
108
98
134
117
105
81
109
110
109
108
107
106
105
104
103
102
103
104
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
106
80
101
96
132
127
107
79
100
95
131
128
108
78
99
94
130
129
109
77
98
93
129
130
110
76
97
92
128
131
111
75
96
91
127
132
112
74
95
90
126
133
113
73
94
89
125
134
114
72
93
88
124
135
115
71
92
87
123
136
116
70
91
86
122
137
117
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
85
121
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
68
80
84
120
131
119
67
79
83
119
132
120
66
78
82
118
133
121
65
77
81
117
134
122
64
76
80
116
135
123
63
75
79
115
135
124
62
74
78
114
134
125
61
73
77
113
133
126
60
72
76
112
132
127
59
71
75
111
131
128
58
70
74
110
130
129
57
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
56
60
84
98
120
131
55
59
83
99
119
132
54
58
82
100
118
133
53
57
81
101
117
134
52
56
80
102
116
135
51
55
79
103
115
135
50
54
78
104
114
134
49
53
77
105
113
133
48
52
76
106
112
132
47
51
75
107
111
131
46
50
74
108
110
130
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
61
62
63
64
65
66
67
68
69
70
71
72
73
109
108
107
106
105
104
103
102
101
100
99
98
97
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
36
48
60
96
108
122
35
47
59
95
107
123
34
46
58
94
106
124
33
45
57
93
105
125
32
44
56
92
104
126
31
43
55
91
103
127
30
42
54
90
102
128
29
41
53
89
101
129
28
40
52
88
100
130
27
39
51
87
99
131
26
38
50
86
98
132
17
18
19
20
21
22
23
24
25
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
133
134
135
136
137
138
139
140
141
16
36
62
74
98
140
15
35
63
75
99
139
14
34
64
76
100
138
13
33
65
77
101
137
12
32
66
78
102
136
11
31
67
79
103
135
10
30
68
80
104
134
9
29
69
81
105
133
8
28
70
82
106
132
7
27
71
83
107
131
6
26
72
84
108
130
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
85
84
83
82
81
80
79
78
77
76
75
74
73
85
86
87
88
89
90
91
92
93
94
95
96
97
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
4
26
86
98
110
130
3
27
87
99
111
131
2
28
88
100
112
132
1
29
89
101
113
133
0
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
129
130
131
132
133
134
135
136
137
138
139
140
141
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
171
170
169
168
167
166
165
164
163
162
161
160
159
158
142
132
128
140
152
157
141
131
127
139
151
156
140
130
126
138
150
155
139
129
125
137
149
154
138
128
124
136
148
153
137
127
123
135
147
152
136
126
122
134
146
151
135
125
121
133
145
150
134
124
120
132
144
149
133
123
119
131
143
148
132
122
118
130
142
147
131
119
120
121
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
147
146
145
144
143
142
141
140
139
138
137
136
135
134
146
130
118
112
116
128
147
133
145
129
117
111
115
127
147
132
144
128
116
110
114
126
146
131
143
127
115
109
113
125
145
130
142
126
114
108
112
124
144
129
141
125
113
107
111
123
143
128
140
124
112
106
110
122
142
127
139
123
122
121
120
119
118
117
116
115
114
113
112
111
105
109
121
141
126
127
128
129
130
131
132
133
134
135
136
137
138
110
104
108
120
140
125
109
103
107
119
139
124
108
102
106
118
138
123
107
101
105
117
137
122
106
100
104
116
136
121
105
99
103
115
135
120
104
98
102
114
134
119
103
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
118
102
88
124
117
101
87
123
116
100
86
122
115
97
96
95
94
93
94
95
96
97
98
99
100
101
102
101
100
99
85
121
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
92
98
84
120
115
103
91
97
83
119
116
104
90
96
82
118
117
105
89
95
81
117
118
106
88
94
80
116
119
107
87
93
79
115
120
108
86
92
78
114
121
109
85
91
90
89
88
87
86
85
84
83
82
83
84
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
127
126
125
124
123
122
110
84
81
76
112
126
111
83
80
75
111
127
112
82
79
74
110
128
113
81
78
73
109
129
114
80
77
72
108
130
115
79
76
71
107
131
116
78
75
70
106
132
117
77
74
69
105
133
118
76
73
68
104
132
119
75
72
67
103
131
120
74
71
66
102
130
121
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
65
101
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
127
126
125
124
123
122
72
60
64
100
120
123
71
59
63
99
119
124
70
58
62
98
118
125
69
57
61
97
117
126
68
56
60
96
116
127
67
55
59
95
115
127
66
54
58
94
114
126
65
53
57
93
113
125
64
52
56
92
112
124
63
51
55
91
111
123
62
50
54
90
110
122
61
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
121
60
40
64
78
100
120
59
39
63
79
99
119
58
38
62
80
98
118
57
37
61
81
97
117
56
36
60
82
96
116
55
35
59
83
95
115
54
34
58
84
94
114
53
33
57
85
93
113
52
32
56
86
92
112
51
31
55
87
91
111
50
30
54
88
90
110
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
41
42
43
44
45
46
47
48
49
50
51
52
53
89
88
87
86
85
84
83
82
81
80
79
78
77
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
42
28
40
76
88
102
43
27
39
75
87
103
44
26
38
74
86
104
45
25
37
73
85
105
46
24
36
72
84
106
47
23
35
71
83
107
48
22
34
70
82
108
49
21
33
69
81
109
48
20
32
68
80
110
47
19
31
67
79
111
46
18
30
66
78
112
37
38
39
40
41
42
43
44
45
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
113
114
115
116
117
118
119
120
121
36
16
42
54
78
120
35
15
43
55
79
119
34
14
44
56
80
118
33
13
45
57
81
117
32
12
46
58
82
116
31
11
47
59
83
115
30
10
48
60
84
114
29
9
49
61
85
113
28
8
50
62
86
112
27
7
51
63
87
111
26
6
52
64
88
110
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
65
64
63
62
61
60
59
58
57
56
55
54
53
65
66
67
68
69
70
71
72
73
74
75
76
77
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
26
4
66
78
90
110
27
3
67
79
91
111
28
2
68
80
92
112
29
1
69
81
93
113
30
0
179
180
181
182
183
184
185
186
187
188
189
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
165
166
167
168
169
170
171
172
173
174
175
176
177
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
200
199
198
197
196
195
194
193
192
191
190
189
178
168
164
176
180
188
177
167
163
175
179
187
176
166
162
174
178
186
175
165
161
173
177
185
174
164
160
172
176
184
173
163
159
171
175
183
172
162
158
170
174
182
171
161
157
169
173
181
170
160
156
168
172
180
169
159
155
167
171
179
168
158
154
166
170
178
167
155
156
157
158
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
168
167
166
165
177
166
154
148
152
164
160
164
176
165
153
147
151
163
159
163
175
164
152
146
150
162
158
162
174
163
151
145
149
161
157
161
173
162
150
144
148
160
156
160
172
161
149
143
147
159
155
159
171
160
148
142
146
158
154
158
170
159
158
157
156
155
154
153
152
151
150
149
148
147
141
145
157
153
157
158
159
160
161
162
163
164
165
166
167
168
169
146
140
144
156
152
156
145
139
143
155
151
155
144
138
142
154
150
154
143
137
141
153
149
153
142
136
140
152
148
152
141
135
139
151
147
151
140
134
138
150
146
150
139
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
149
138
124
136
148
137
123
135
147
136
122
134
146
133
132
131
130
129
130
131
132
133
134
135
136
137
138
137
136
135
121
133
145
146
147
147
146
145
144
143
142
141
140
139
138
137
136
135
134
128
134
120
132
144
139
127
133
119
131
143
139
126
132
118
130
142
138
125
131
117
129
141
137
124
130
116
128
140
136
123
129
115
127
139
135
122
128
114
126
138
134
121
127
126
125
124
123
122
121
120
119
118
119
120
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
132
131
130
129
130
131
132
133
134
135
136
137
133
120
117
112
124
128
132
119
116
111
123
127
131
118
115
110
122
126
130
117
114
109
121
125
129
116
113
108
120
124
128
115
112
107
119
123
127
114
111
106
118
122
126
113
110
105
117
121
125
112
109
104
116
120
124
111
108
103
115
119
123
110
107
102
114
118
122
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
101
113
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
108
96
100
112
108
120
107
95
99
111
107
119
106
94
98
110
106
118
105
93
97
109
105
117
104
92
96
108
104
116
103
91
95
107
103
115
102
90
94
106
102
114
101
89
93
105
101
113
100
88
92
104
100
112
99
87
91
103
99
111
98
86
90
102
98
110
97
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
109
96
76
76
88
88
108
95
75
75
87
87
107
94
74
74
86
86
106
93
73
73
85
85
105
92
72
72
84
84
104
91
71
71
83
83
103
90
70
70
82
82
102
89
69
69
81
81
101
88
68
68
80
80
100
87
67
67
79
79
99
86
66
66
78
78
98
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
53
54
55
56
57
58
59
60
61
62
63
64
65
77
76
75
74
73
72
71
70
69
68
67
66
65
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
78
64
52
64
76
90
79
63
51
63
75
91
80
62
50
62
74
92
81
61
49
61
73
93
82
60
48
60
72
94
83
59
47
59
71
95
84
58
46
58
70
96
85
57
45
57
69
97
86
56
44
56
68
98
87
55
43
55
67
99
88
54
42
54
66
100
97
96
95
94
93
92
91
90
89
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
101
102
103
104
105
106
107
108
109
96
54
28
42
66
108
95
55
27
43
67
107
94
56
26
44
68
106
93
57
25
45
69
105
92
58
24
46
70
104
91
59
23
47
71
103
90
60
22
48
72
102
89
61
21
49
73
101
88
62
20
50
74
100
87
63
19
51
75
99
86
64
18
52
76
98
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
5
6
7
8
9
10
11
12
13
14
15
16
17
53
54
55
56
57
58
59
60
59
58
57
56
55
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
86
66
4
54
78
98
87
67
3
53
79
99
88
68
2
52
80
100
89
69
1
51
81
101
90
70
0
191
192
193
194
195
196
197
198
199
200
201
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
177
176
175
174
173
172
171
170
169
168
167
166
165
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
188
187
186
185
184
183
182
181
180
179
178
177
190
180
176
164
168
176
189
179
175
163
167
175
188
178
174
162
166
174
187
177
173
161
165
173
186
176
172
160
164
172
185
175
171
159
163
171
184
174
170
158
162
170
183
173
169
157
161
169
182
172
168
156
160
168
181
171
167
155
159
167
180
170
166
154
158
166
179
167
168
169
170
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
156
155
154
153
165
178
166
160
164
152
148
152
164
177
165
159
163
151
147
151
163
176
164
158
162
150
146
150
162
175
163
157
161
149
145
149
161
174
162
156
160
148
144
148
160
173
161
155
159
147
143
147
159
172
160
154
158
146
142
146
158
171
170
169
168
167
166
165
164
163
162
161
160
159
153
157
145
141
145
146
147
148
149
150
151
152
153
154
155
156
157
158
152
156
144
140
144
157
151
155
143
139
143
156
150
154
142
138
142
155
149
153
141
137
141
154
148
152
140
136
140
153
147
151
139
135
139
152
146
150
138
134
138
151
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
137
150
136
124
136
149
135
123
135
148
134
122
134
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
148
147
133
121
133
134
135
136
137
136
135
134
133
132
131
130
129
130
131
132
133
139
146
132
120
132
128
139
145
131
119
131
127
138
144
130
118
130
126
137
143
129
117
129
125
136
142
128
116
128
124
135
141
127
115
127
123
134
140
126
114
126
122
133
139
138
137
136
135
134
133
132
131
130
131
132
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
120
119
118
117
118
119
120
121
122
123
124
125
121
132
129
124
112
116
120
131
128
123
111
115
119
130
127
122
110
114
118
129
126
121
109
113
117
128
125
120
108
112
116
127
124
119
107
111
115
126
123
118
106
110
114
125
122
117
105
109
113
124
121
116
104
108
112
123
120
115
103
107
111
122
119
114
102
106
110
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
113
101
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
120
108
112
100
96
108
119
107
111
99
95
107
118
106
110
98
94
106
117
105
109
97
93
105
116
104
108
96
92
104
115
103
107
95
91
103
114
102
106
94
90
102
113
101
105
93
89
101
112
100
104
92
88
100
111
99
103
91
87
99
110
98
102
90
86
98
109
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
97
108
88
88
76
76
96
107
87
87
75
75
95
106
86
86
74
74
94
105
85
85
73
73
93
104
84
84
72
72
92
103
83
83
71
71
91
102
82
82
70
70
90
101
81
81
69
69
89
100
80
80
68
68
88
99
79
79
67
67
87
98
78
78
66
66
86
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
65
66
67
68
69
70
71
72
73
74
75
76
77
65
64
63
62
61
60
59
58
57
56
55
54
53
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
90
76
64
52
64
78
91
75
63
51
63
79
92
74
62
50
62
80
93
73
61
49
61
81
94
72
60
48
60
82
95
71
59
47
59
83
96
70
58
46
58
84
97
69
57
45
57
85
98
68
56
44
56
86
99
67
55
43
55
87
100
66
54
42
54
88
109
108
107
106
105
104
103
102
101
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
89
90
91
92
93
94
95
96
97
108
66
42
28
54
96
107
67
43
27
55
95
106
68
44
26
56
94
105
69
45
25
57
93
104
70
46
24
58
92
103
71
47
23
59
91
102
72
48
22
60
90
101
73
49
21
61
89
100
74
50
20
62
88
99
75
51
19
63
87
98
76
52
18
64
86
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
55
56
57
58
59
60
59
58
57
56
55
54
53
17
16
15
14
13
12
11
10
9
8
7
6
5
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
98
78
54
4
66
86
99
79
53
3
67
87
100
80
52
2
68
88
101
81
51
1
69
89
102
82
50
0
158
159
160
161
162
163
164
165
166
167
168
169
170
171
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
141
140
139
138
137
136
135
134
133
132
131
130
129
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
157
152
140
128
132
140
156
151
139
127
131
139
155
150
138
126
130
138
154
149
137
125
129
137
153
148
136
124
128
136
152
147
135
123
127
135
151
146
134
122
126
134
150
145
133
121
125
133
149
144
132
120
124
132
148
143
131
119
123
131
147
142
130
118
122
130
146
134
135
136
137
138
139
140
141
142
143
144
145
146
147
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
120
119
118
117
129
145
133
147
128
116
112
116
128
144
132
147
127
115
111
115
127
143
131
146
126
114
110
114
126
142
130
145
125
113
109
113
125
141
129
144
124
112
108
112
124
140
128
143
123
111
107
111
123
139
127
142
122
110
106
110
122
138
137
136
135
134
133
132
131
130
129
128
127
126
141
121
109
105
109
110
111
112
113
114
115
116
117
118
119
120
121
125
140
120
108
104
108
124
139
119
107
103
107
123
138
118
106
102
106
122
137
117
105
101
105
121
136
116
104
100
104
120
135
115
103
99
103
119
134
114
102
98
102
118
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
101
117
124
88
100
116
123
87
99
115
122
86
98
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
121
85
97
98
99
100
101
100
99
98
97
96
95
94
93
94
95
96
97
103
115
120
84
96
92
104
116
119
83
95
91
105
117
118
82
94
90
106
118
117
81
93
89
107
119
116
80
92
88
108
120
115
79
91
87
109
121
114
78
90
86
110
122
123
124
125
126
127
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
84
83
82
81
82
83
84
85
86
87
88
89
85
111
125
112
76
80
84
112
126
111
75
79
83
113
127
110
74
78
82
114
128
109
73
77
81
115
129
108
72
76
80
116
130
107
71
75
79
117
131
106
70
74
78
118
132
105
69
73
77
119
133
104
68
72
76
120
132
103
67
71
75
121
131
102
66
70
74
122
123
124
125
126
127
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
101
65
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
123
120
100
64
60
72
124
119
99
63
59
71
125
118
98
62
58
70
126
117
97
61
57
69
127
116
96
60
56
68
127
115
95
59
55
67
126
114
94
58
54
66
125
113
93
57
53
65
124
112
92
56
52
64
123
111
91
55
51
63
122
110
90
54
50
62
121
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
61
120
100
78
64
40
60
119
99
79
63
39
59
118
98
80
62
38
58
117
97
81
61
37
57
116
96
82
60
36
56
115
95
83
59
35
55
114
94
84
58
34
54
113
93
85
57
33
53
112
92
86
56
32
52
111
91
87
55
31
51
110
90
88
54
30
50
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
77
78
79
80
81
82
83
84
85
86
87
88
89
53
52
51
50
49
48
47
46
45
44
43
42
41
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
102
88
76
40
28
42
103
87
75
39
27
43
104
86
74
38
26
44
105
85
73
37
25
45
106
84
72
36
24
46
107
83
71
35
23
47
108
82
70
34
22
48
109
81
69
33
21
49
110
80
68
32
20
48
111
79
67
31
19
47
112
78
66
30
18
46
121
120
119
118
117
116
115
114
113
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
45
44
43
42
41
40
39
38
37
120
78
54
42
16
36
119
79
55
43
15
35
118
80
56
44
14
34
117
81
57
45
13
33
116
82
58
46
12
32
115
83
59
47
11
31
114
84
60
48
10
30
113
85
61
49
9
29
112
86
62
50
8
28
111
87
63
51
7
27
110
88
64
52
6
26
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
77
76
75
74
73
72
71
70
69
68
67
66
65
53
54
55
56
57
58
59
60
61
62
63
64
65
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
110
90
78
66
4
26
111
91
79
67
3
27
112
92
80
68
2
28
113
93
81
69
1
29
114
94
82
70
0
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
153
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
153
161
160
148
152
144
152
160
159
147
151
143
151
159
158
146
150
142
150
158
157
145
149
141
149
157
156
144
148
140
148
156
155
143
147
139
147
155
154
142
146
138
146
154
153
141
145
137
145
153
152
140
144
136
144
152
151
139
143
135
143
151
150
138
142
134
142
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
155
154
153
152
151
150
149
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
133
141
129
143
148
136
132
120
132
140
128
144
147
135
131
119
131
139
127
145
146
134
130
118
130
138
126
146
145
133
129
117
129
137
125
147
144
132
128
116
128
136
124
148
143
131
127
115
127
135
123
149
142
130
126
114
126
134
133
132
131
130
129
128
127
126
125
124
123
122
150
141
129
125
113
114
115
116
117
118
119
120
121
122
123
124
125
121
151
140
128
124
112
120
152
139
127
123
111
119
153
138
126
122
110
118
154
137
125
121
109
117
155
136
124
120
108
116
155
135
123
119
107
115
154
134
122
118
106
114
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
105
113
144
108
104
112
143
107
103
111
142
106
102
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
141
105
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
99
111
140
104
102
88
100
112
139
103
103
87
101
113
138
102
104
86
102
114
137
101
105
85
103
115
136
100
106
84
104
116
135
99
107
83
105
117
134
98
108
82
106
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
104
103
102
101
102
103
104
105
106
107
108
109
81
107
128
132
96
100
80
108
129
131
95
99
79
109
130
130
94
98
78
110
131
129
93
97
77
111
132
128
92
96
76
112
133
127
91
95
75
113
134
126
90
94
74
114
135
125
89
93
73
115
136
124
88
92
72
116
137
123
87
91
71
117
138
122
86
90
70
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
121
85
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
119
131
120
84
80
68
120
132
119
83
79
67
121
133
118
82
78
66
122
134
117
81
77
65
123
135
116
80
76
64
124
135
115
79
75
63
125
134
114
78
74
62
126
133
113
77
73
61
127
132
112
76
72
60
128
131
111
75
71
59
129
130
110
74
70
58
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
57
131
120
98
84
60
56
132
119
99
83
59
55
133
118
100
82
58
54
134
117
101
81
57
53
135
116
102
80
56
52
135
115
103
79
55
51
134
114
104
78
54
50
133
113
105
77
53
49
132
112
106
76
52
48
131
111
107
75
51
47
130
110
108
74
50
46
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
97
98
99
100
101
102
103
104
105
106
107
108
109
73
72
71
70
69
68
67
66
65
64
63
62
61
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
122
108
96
60
48
36
123
107
95
59
47
35
124
106
94
58
46
34
125
105
93
57
45
33
126
104
92
56
44
32
127
103
91
55
43
31
128
102
90
54
42
30
129
101
89
53
41
29
130
100
88
52
40
28
131
99
87
51
39
27
132
98
86
50
38
26
141
140
139
138
137
136
135
134
133
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
25
24
23
22
21
20
19
18
17
140
98
74
62
36
16
139
99
75
63
35
15
138
100
76
64
34
14
137
101
77
65
33
13
136
102
78
66
32
12
135
103
79
67
31
11
134
104
80
68
30
10
133
105
81
69
29
9
132
106
82
70
28
8
131
107
83
71
27
7
130
108
84
72
26
6
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
97
96
95
94
93
92
91
90
89
88
87
86
85
73
74
75
76
77
78
79
80
81
82
83
84
85
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
130
110
98
86
26
4
131
111
99
87
27
3
132
112
100
88
28
2
133
113
101
89
29
1
134
114
102
90
30
0
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
145
153
149
161
162
154
144
152
148
160
161
153
143
151
147
159
160
152
142
150
146
158
159
151
141
149
145
157
158
150
140
148
144
156
157
149
139
147
143
155
156
148
138
146
142
154
155
147
137
145
141
153
154
146
136
144
140
152
153
145
135
143
139
151
152
144
134
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
150
151
152
153
154
155
156
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
143
133
121
133
137
149
144
130
142
132
120
132
136
148
145
129
141
131
119
131
135
147
146
128
140
130
118
130
134
146
147
127
139
129
117
129
133
145
148
126
138
128
116
128
132
144
149
125
137
127
115
127
131
143
150
124
136
126
125
124
123
122
121
120
119
118
117
116
115
114
126
130
142
151
123
124
125
126
127
128
129
130
131
132
133
134
135
113
125
129
141
152
122
112
124
128
140
153
121
111
123
127
139
154
120
110
122
126
138
155
119
109
121
125
137
156
118
108
120
124
136
156
117
107
119
123
135
155
116
106
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
115
105
109
145
114
104
108
144
113
103
107
143
112
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
106
142
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
89
103
105
141
112
100
88
104
104
140
113
101
87
105
103
139
114
102
86
106
102
138
115
103
85
107
101
137
116
104
84
108
100
136
117
105
83
109
99
135
118
106
82
110
111
110
109
108
107
106
105
104
103
104
105
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
107
81
102
97
133
128
108
80
101
96
132
129
109
79
100
95
131
130
110
78
99
94
130
131
111
77
98
93
129
132
112
76
97
92
128
133
113
75
96
91
127
134
114
74
95
90
126
135
115
73
94
89
125
136
116
72
93
88
124
137
117
71
92
87
123
138
118
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
86
122
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
69
81
85
121
132
120
68
80
84
120
133
121
67
79
83
119
134
122
66
78
82
118
135
123
65
77
81
117
136
124
64
76
80
116
136
125
63
75
79
115
135
126
62
74
78
114
134
127
61
73
77
113
133
128
60
72
76
112
132
129
59
71
75
111
131
130
58
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
57
61
85
99
121
132
56
60
84
100
120
133
55
59
83
101
119
134
54
58
82
102
118
135
53
57
81
103
117
136
52
56
80
104
116
136
51
55
79
105
115
135
50
54
78
106
114
134
49
53
77
107
113
133
48
52
76
108
112
132
47
51
75
109
111
131
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
62
63
64
65
66
67
68
69
70
71
72
73
74
110
109
108
107
106
105
104
103
102
101
100
99
98
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
37
49
61
97
109
123
36
48
60
96
108
124
35
47
59
95
107
125
34
46
58
94
106
126
33
45
57
93
105
127
32
44
56
92
104
128
31
43
55
91
103
129
30
42
54
90
102
130
29
41
53
89
101
131
28
40
52
88
100
132
27
39
51
87
99
133
18
19
20
21
22
23
24
25
26
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
134
135
136
137
138
139
140
141
142
17
37
63
75
99
141
16
36
64
76
100
140
15
35
65
77
101
139
14
34
66
78
102
138
13
33
67
79
103
137
12
32
68
80
104
136
11
31
69
81
105
135
10
30
70
82
106
134
9
29
71
83
107
133
8
28
72
84
108
132
7
27
73
85
109
131
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
86
85
84
83
82
81
80
79
78
77
76
75
74
86
87
88
89
90
91
92
93
94
95
96
97
98
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
5
27
87
99
111
131
4
28
88
100
112
132
3
29
89
101
113
133
2
30
90
102
114
134
1
31
91
103
115
135
0
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
130
131
132
133
134
135
136
137
138
139
140
141
142
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
172
171
170
169
168
167
166
165
164
163
162
161
160
159
143
133
129
141
153
158
142
132
128
140
152
157
141
131
127
139
151
156
140
130
126
138
150
155
139
129
125
137
149
154
138
128
124
136
148
153
137
127
123
135
147
152
136
126
122
134
146
151
135
125
121
133
145
150
134
124
120
132
144
149
133
123
119
131
143
148
132
120
121
122
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
148
147
146
145
144
143
142
141
140
139
138
137
136
135
147
131
119
113
117
129
148
134
146
130
118
112
116
128
148
133
145
129
117
111
115
127
147
132
144
128
116
110
114
126
146
131
143
127
115
109
113
125
145
130
142
126
114
108
112
124
144
129
141
125
113
107
111
123
143
128
140
124
123
122
121
120
119
118
117
116
115
114
113
112
106
110
122
142
127
128
129
130
131
132
133
134
135
136
137
138
139
111
105
109
121
141
126
110
104
108
120
140
125
109
103
107
119
139
124
108
102
106
118
138
123
107
101
105
117
137
122
106
100
104
116
136
121
105
99
103
115
135
120
104
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
119
103
89
125
118
102
88
124
117
101
87
123
116
98
97
96
95
94
95
96
97
98
99
100
101
102
103
102
101
100
86
122
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
93
99
85
121
116
104
92
98
84
120
117
105
91
97
83
119
118
106
90
96
82
118
119
107
89
95
81
117
120
108
88
94
80
116
121
109
87
93
79
115
122
110
86
92
91
90
89
88
87
86
85
84
83
84
85
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
128
127
126
125
124
123
111
85
82
77
113
127
112
84
81
76
112
128
113
83
80
75
111
129
114
82
79
74
110
130
115
81
78
73
109
131
116
80
77
72
108
132
117
79
76
71
107
133
118
78
75
70
106
134
119
77
74
69
105
133
120
76
73
68
104
132
121
75
72
67
103
131
122
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
66
102
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
128
127
126
125
124
123
73
61
65
101
121
124
72
60
64
100
120
125
71
59
63
99
119
126
70
58
62
98
118
127
69
57
61
97
117
128
68
56
60
96
116
128
67
55
59
95
115
127
66
54
58
94
114
126
65
53
57
93
113
125
64
52
56
92
112
124
63
51
55
91
111
123
62
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
122
61
41
65
79
101
121
60
40
64
80
100
120
59
39
63
81
99
119
58
38
62
82
98
118
57
37
61
83
97
117
56
36
60
84
96
116
55
35
59
85
95
115
54
34
58
86
94
114
53
33
57
87
93
113
52
32
56
88
92
112
51
31
55
89
91
111
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
42
43
44
45
46
47
48
49
50
51
52
53
54
90
89
88
87
86
85
84
83
82
81
80
79
78
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
43
29
41
77
89
103
44
28
40
76
88
104
45
27
39
75
87
105
46
26
38
74
86
106
47
25
37
73
85
107
48
24
36
72
84
108
49
23
35
71
83
109
50
22
34
70
82
110
49
21
33
69
81
111
48
20
32
68
80
112
47
19
31
67
79
113
38
39
40
41
42
43
44
45
46
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
114
115
116
117
118
119
120
121
122
37
17
43
55
79
121
36
16
44
56
80
120
35
15
45
57
81
119
34
14
46
58
82
118
33
13
47
59
83
117
32
12
48
60
84
116
31
11
49
61
85
115
30
10
50
62
86
114
29
9
51
63
87
113
28
8
52
64
88
112
27
7
53
65
89
111
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
66
65
64
63
62
61
60
59
58
57
56
55
54
66
67
68
69
70
71
72
73
74
75
76
77
78
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
27
5
67
79
91
111
28
4
68
80
92
112
29
3
69
81
93
113
30
2
70
82
94
114
31
1
71
83
95
115
32
0
180
181
182
183
184
185
186
187
188
189
190
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
166
167
168
169
170
171
172
173
174
175
176
177
178
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
201
200
199
198
197
196
195
194
193
192
191
190
179
169
165
177
181
189
178
168
164
176
180
188
177
167
163
175
179
187
176
166
162
174
178
186
175
165
161
173
177
185
174
164
160
172
176
184
173
163
159
171
175
183
172
162
158
170
174
182
171
161
157
169
173
181
170
160
156
168
172
180
169
159
155
167
171
179
168
156
157
158
159
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
169
168
167
166
178
167
155
149
153
165
161
165
177
166
154
148
152
164
160
164
176
165
153
147
151
163
159
163
175
164
152
146
150
162
158
162
174
163
151
145
149
161
157
161
173
162
150
144
148
160
156
160
172
161
149
143
147
159
155
159
171
160
159
158
157
156
155
154
153
152
151
150
149
148
142
146
158
154
158
159
160
161
162
163
164
165
166
167
168
169
170
147
141
145
157
153
157
146
140
144
156
152
156
145
139
143
155
151
155
144
138
142
154
150
154
143
137
141
153
149
153
142
136
140
152
148
152
141
135
139
151
147
151
140
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
150
139
125
137
149
138
124
136
148
137
123
135
147
134
133
132
131
130
131
132
133
134
135
136
137
138
139
138
137
136
122
134
146
147
148
148
147
146
145
144
143
142
141
140
139
138
137
136
135
129
135
121
133
145
140
128
134
120
132
144
140
127
133
119
131
143
139
126
132
118
130
142
138
125
131
117
129
141
137
124
130
116
128
140
136
123
129
115
127
139
135
122
128
127
126
125
124
123
122
121
120
119
120
121
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
133
132
131
130
131
132
133
134
135
136
137
138
134
121
118
113
125
129
133
120
117
112
124
128
132
119
116
111
123
127
131
118
115
110
122
126
130
117
114
109
121
125
129
116
113
108
120
124
128
115
112
107
119
123
127
114
111
106
118
122
126
113
110
105
117
121
125
112
109
104
116
120
124
111
108
103
115
119
123
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
102
114
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
109
97
101
113
109
121
108
96
100
112
108
120
107
95
99
111
107
119
106
94
98
110
106
118
105
93
97
109
105
117
104
92
96
108
104
116
103
91
95
107
103
115
102
90
94
106
102
114
101
89
93
105
101
113
100
88
92
104
100
112
99
87
91
103
99
111
98
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
110
97
77
77
89
89
109
96
76
76
88
88
108
95
75
75
87
87
107
94
74
74
86
86
106
93
73
73
85
85
105
92
72
72
84
84
104
91
71
71
83
83
103
90
70
70
82
82
102
89
69
69
81
81
101
88
68
68
80
80
100
87
67
67
79
79
99
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
54
55
56
57
58
59
60
61
62
63
64
65
66
78
77
76
75
74
73
72
71
70
69
68
67
66
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
79
65
53
65
77
91
80
64
52
64
76
92
81
63
51
63
75
93
82
62
50
62
74
94
83
61
49
61
73
95
84
60
48
60
72
96
85
59
47
59
71
97
86
58
46
58
70
98
87
57
45
57
69
99
88
56
44
56
68
100
89
55
43
55
67
101
98
97
96
95
94
93
92
91
90
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
102
103
104
105
106
107
108
109
110
97
55
29
43
67
109
96
56
28
44
68
108
95
57
27
45
69
107
94
58
26
46
70
106
93
59
25
47
71
105
92
60
24
48
72
104
91
61
23
49
73
103
90
62
22
50
74
102
89
63
21
51
75
101
88
64
20
52
76
100
87
65
19
53
77
99
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
6
7
8
9
10
11
12
13
14
15
16
17
18
54
55
56
57
58
59
60
59
58
57
56
55
54
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
87
67
5
53
79
99
88
68
4
52
80
100
89
69
3
51
81
101
90
70
2
50
82
102
91
71
1
49
83
103
92
72
0
192
193
194
195
196
197
198
199
200
201
202
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
178
177
176
175
174
173
172
171
170
169
168
167
166
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
189
188
187
186
185
184
183
182
181
180
179
178
191
181
177
165
169
177
190
180
176
164
168
176
189
179
175
163
167
175
188
178
174
162
166
174
187
177
173
161
165
173
186
176
172
160
164
172
185
175
171
159
163
171
184
174
170
158
162
170
183
173
169
157
161
169
182
172
168
156
160
168
181
171
167
155
159
167
180
168
169
170
171
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
157
156
155
154
166
179
167
161
165
153
149
153
165
178
166
160
164
152
148
152
164
177
165
159
163
151
147
151
163
176
164
158
162
150
146
150
162
175
163
157
161
149
145
149
161
174
162
156
160
148
144
148
160
173
161
155
159
147
143
147
159
172
171
170
169
168
167
166
165
164
163
162
161
160
154
158
146
142
146
147
148
149
150
151
152
153
154
155
156
157
158
159
153
157
145
141
145
158
152
156
144
140
144
157
151
155
143
139
143
156
150
154
142
138
142
155
149
153
141
137
141
154
148
152
140
136
140
153
147
151
139
135
139
152
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
138
151
137
125
137
150
136
124
136
149
135
123
135
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
134
122
134
135
136
137
138
137
136
135
134
133
132
131
130
131
132
133
134
140
147
133
121
133
129
140
146
132
120
132
128
139
145
131
119
131
127
138
144
130
118
130
126
137
143
129
117
129
125
136
142
128
116
128
124
135
141
127
115
127
123
134
140
139
138
137
136
135
134
133
132
131
132
133
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
121
120
119
118
119
120
121
122
123
124
125
126
122
133
130
125
113
117
121
132
129
124
112
116
120
131
128
123
111
115
119
130
127
122
110
114
118
129
126
121
109
113
117
128
125
120
108
112
116
127
124
119
107
111
115
126
123
118
106
110
114
125
122
117
105
109
113
124
121
116
104
108
112
123
120
115
103
107
111
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
114
102
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
121
109
113
101
97
109
120
108
112
100
96
108
119
107
111
99
95
107
118
106
110
98
94
106
117
105
109
97
93
105
116
104
108
96
92
104
115
103
107
95
91
103
114
102
106
94
90
102
113
101
105
93
89
101
112
100
104
92
88
100
111
99
103
91
87
99
110
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
98
109
89
89
77
77
97
108
88
88
76
76
96
107
87
87
75
75
95
106
86
86
74
74
94
105
85
85
73
73
93
104
84
84
72
72
92
103
83
83
71
71
91
102
82
82
70
70
90
101
81
81
69
69
89
100
80
80
68
68
88
99
79
79
67
67
87
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
66
67
68
69
70
71
72
73
74
75
76
77
78
66
65
64
63
62
61
60
59
58
57
56
55
54
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
91
77
65
53
65
79
92
76
64
52
64
80
93
75
63
51
63
81
94
74
62
50
62
82
95
73
61
49
61
83
96
72
60
48
60
84
97
71
59
47
59
85
98
70
58
46
58
86
99
69
57
45
57
87
100
68
56
44
56
88
101
67
55
43
55
89
110
109
108
107
106
105
104
103
102
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
90
91
92
93
94
95
96
97
98
109
67
43
29
55
97
108
68
44
28
56
96
107
69
45
27
57
95
106
70
46
26
58
94
105
71
47
25
59
93
104
72
48
24
60
92
103
73
49
23
61
91
102
74
50
22
62
90
101
75
51
21
63
89
100
76
52
20
64
88
99
77
53
19
65
87
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
54
55
56
57
58
59
60
59
58
57
56
55
54
18
17
16
15
14
13
12
11
10
9
8
7
6
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
99
79
53
5
67
87
100
80
52
4
68
88
101
81
51
3
69
89
102
82
50
2
70
90
103
83
49
1
71
91
104
84
48
0
159
160
161
162
163
164
165
166
167
168
169
170
171
172
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
142
141
140
139
138
137
136
135
134
133
132
131
130
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
158
153
141
129
133
141
157
152
140
128
132
140
156
151
139
127
131
139
155
150
138
126
130
138
154
149
137
125
129
137
153
148
136
124
128
136
152
147
135
123
127
135
151
146
134
122
126
134
150
145
133
121
125
133
149
144
132
120
124
132
148
143
131
119
123
131
147
135
136
137
138
139
140
141
142
143
144
145
146
147
148
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
121
120
119
118
130
146
134
148
129
117
113
117
129
145
133
148
128
116
112
116
128
144
132
147
127
115
111
115
127
143
131
146
126
114
110
114
126
142
130
145
125
113
109
113
125
141
129
144
124
112
108
112
124
140
128
143
123
111
107
111
123
139
138
137
136
135
134
133
132
131
130
129
128
127
142
122
110
106
110
111
112
113
114
115
116
117
118
119
120
121
122
126
141
121
109
105
109
125
140
120
108
104
108
124
139
119
107
103
107
123
138
118
106
102
106
122
137
117
105
101
105
121
136
116
104
100
104
120
135
115
103
99
103
119
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
102
118
125
89
101
117
124
88
100
116
123
87
99
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
122
86
98
99
100
101
102
101
100
99
98
97
96
95
94
95
96
97
98
104
116
121
85
97
93
105
117
120
84
96
92
106
118
119
83
95
91
107
119
118
82
94
90
108
120
117
81
93
89
109
121
116
80
92
88
110
122
115
79
91
87
111
123
124
125
126
127
128
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
85
84
83
82
83
84
85
86
87
88
89
90
86
112
126
113
77
81
85
113
127
112
76
80
84
114
128
111
75
79
83
115
129
110
74
78
82
116
130
109
73
77
81
117
131
108
72
76
80
118
132
107
71
75
79
119
133
106
70
74
78
120
134
105
69
73
77
121
133
104
68
72
76
122
132
103
67
71
75
123
124
125
126
127
128
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
102
66
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
124
121
101
65
61
73
125
120
100
64
60
72
126
119
99
63
59
71
127
118
98
62
58
70
128
117
97
61
57
69
128
116
96
60
56
68
127
115
95
59
55
67
126
114
94
58
54
66
125
113
93
57
53
65
124
112
92
56
52
64
123
111
91
55
51
63
122
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
62
121
101
79
65
41
61
120
100
80
64
40
60
119
99
81
63
39
59
118
98
82
62
38
58
117
97
83
61
37
57
116
96
84
60
36
56
115
95
85
59
35
55
114
94
86
58
34
54
113
93
87
57
33
53
112
92
88
56
32
52
111
91
89
55
31
51
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
78
79
80
81
82
83
84
85
86
87
88
89
90
54
53
52
51
50
49
48
47
46
45
44
43
42
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
103
89
77
41
29
43
104
88
76
40
28
44
105
87
75
39
27
45
106
86
74
38
26
46
107
85
73
37
25
47
108
84
72
36
24
48
109
83
71
35
23
49
110
82
70
34
22
50
111
81
69
33
21
49
112
80
68
32
20
48
113
79
67
31
19
47
122
121
120
119
118
117
116
115
114
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
46
45
44
43
42
41
40
39
38
121
79
55
43
17
37
120
80
56
44
16
36
119
81
57
45
15
35
118
82
58
46
14
34
117
83
59
47
13
33
116
84
60
48
12
32
115
85
61
49
11
31
114
86
62
50
10
30
113
87
63
51
9
29
112
88
64
52
8
28
111
89
65
53
7
27
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
78
77
76
75
74
73
72
71
70
69
68
67
66
54
55
56
57
58
59
60
61
62
63
64
65
66
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
111
91
79
67
5
27
112
92
80
68
4
28
113
93
81
69
3
29
114
94
82
70
2
30
115
95
83
71
1
31
116
96
84
72
0
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
154
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
154
162
161
149
153
145
153
161
160
148
152
144
152
160
159
147
151
143
151
159
158
146
150
142
150
158
157
145
149
141
149
157
156
144
148
140
148
156
155
143
147
139
147
155
154
142
146
138
146
154
153
141
145
137
145
153
152
140
144
136
144
152
151
139
143
135
143
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
156
155
154
153
152
151
150
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
134
142
130
144
149
137
133
121
133
141
129
145
148
136
132
120
132
140
128
146
147
135
131
119
131
139
127
147
146
134
130
118
130
138
126
148
145
133
129
117
129
137
125
149
144
132
128
116
128
136
124
150
143
131
127
115
127
135
134
133
132
131
130
129
128
127
126
125
124
123
151
142
130
126
114
115
116
117
118
119
120
121
122
123
124
125
126
122
152
141
129
125
113
121
153
140
128
124
112
120
154
139
127
123
111
119
155
138
126
122
110
118
156
137
125
121
109
117
156
136
124
120
108
116
155
135
123
119
107
115
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
106
114
145
109
105
113
144
108
104
112
143
107
103
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
142
106
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
100
112
141
105
103
89
101
113
140
104
104
88
102
114
139
103
105
87
103
115
138
102
106
86
104
116
137
101
107
85
105
117
136
100
108
84
106
118
135
99
109
83
107
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
105
104
103
102
103
104
105
106
107
108
109
110
82
108
129
133
97
101
81
109
130
132
96
100
80
110
131
131
95
99
79
111
132
130
94
98
78
112
133
129
93
97
77
113
134
128
92
96
76
114
135
127
91
95
75
115
136
126
90
94
74
116
137
125
89
93
73
117
138
124
88
92
72
118
139
123
87
91
71
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
122
86
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
120
132
121
85
81
69
121
133
120
84
80
68
122
134
119
83
79
67
123
135
118
82
78
66
124
136
117
81
77
65
125
136
116
80
76
64
126
135
115
79
75
63
127
134
114
78
74
62
128
133
113
77
73
61
129
132
112
76
72
60
130
131
111
75
71
59
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
58
132
121
99
85
61
57
133
120
100
84
60
56
134
119
101
83
59
55
135
118
102
82
58
54
136
117
103
81
57
53
136
116
104
80
56
52
135
115
105
79
55
51
134
114
106
78
54
50
133
113
107
77
53
49
132
112
108
76
52
48
131
111
109
75
51
47
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
98
99
100
101
102
103
104
105
106
107
108
109
110
74
73
72
71
70
69
68
67
66
65
64
63
62
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
123
109
97
61
49
37
124
108
96
60
48
36
125
107
95
59
47
35
126
106
94
58
46
34
127
105
93
57
45
33
128
104
92
56
44
32
129
103
91
55
43
31
130
102
90
54
42
30
131
101
89
53
41
29
132
100
88
52
40
28
133
99
87
51
39
27
142
141
140
139
138
137
136
135
134
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
26
25
24
23
22
21
20
19
18
141
99
75
63
37
17
140
100
76
64
36
16
139
101
77
65
35
15
138
102
78
66
34
14
137
103
79
67
33
13
136
104
80
68
32
12
135
105
81
69
31
11
134
106
82
70
30
10
133
107
83
71
29
9
132
108
84
72
28
8
131
109
85
73
27
7
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
98
97
96
95
94
93
92
91
90
89
88
87
86
74
75
76
77
78
79
80
81
82
83
84
85
86
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
131
111
99
87
27
5
132
112
100
88
28
4
133
113
101
89
29
3
134
114
102
90
30
2
135
115
103
91
31
1
136
116
104
92
32
0
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
146
154
150
162
163
155
145
153
149
161
162
154
144
152
148
160
161
153
143
151
147
159
160
152
142
150
146
158
159
151
141
149
145
157
158
150
140
148
144
156
157
149
139
147
143
155
156
148
138
146
142
154
155
147
137
145
141
153
154
146
136
144
140
152
153
145
135
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
151
152
153
154
155
156
157
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
144
134
122
134
138
150
145
131
143
133
121
133
137
149
146
130
142
132
120
132
136
148
147
129
141
131
119
131
135
147
148
128
140
130
118
130
134
146
149
127
139
129
117
129
133
145
150
126
138
128
116
128
132
144
151
125
137
127
126
125
124
123
122
121
120
119
118
117
116
115
127
131
143
152
124
125
126
127
128
129
130
131
132
133
134
135
136
114
126
130
142
153
123
113
125
129
141
154
122
112
124
128
140
155
121
111
123
127
139
156
120
110
122
126
138
157
119
109
121
125
137
157
118
108
120
124
136
156
117
107
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
116
106
110
146
115
105
109
145
114
104
108
144
113
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
107
143
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
90
104
106
142
113
101
89
105
105
141
114
102
88
106
104
140
115
103
87
107
103
139
116
104
86
108
102
138
117
105
85
109
101
137
118
106
84
110
100
136
119
107
83
111
112
111
110
109
108
107
106
105
104
105
106
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
108
82
103
98
134
129
109
81
102
97
133
130
110
80
101
96
132
131
111
79
100
95
131
132
112
78
99
94
130
133
113
77
98
93
129
134
114
76
97
92
128
135
115
75
96
91
127
136
116
74
95
90
126
137
117
73
94
89
125
138
118
72
93
88
124
139
119
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
87
123
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
70
82
86
122
133
121
69
81
85
121
134
122
68
80
84
120
135
123
67
79
83
119
136
124
66
78
82
118
137
125
65
77
81
117
137
126
64
76
80
116
136
127
63
75
79
115
135
128
62
74
78
114
134
129
61
73
77
113
133
130
60
72
76
112
132
131
59
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
58
62
86
100
122
133
57
61
85
101
121
134
56
60
84
102
120
135
55
59
83
103
119
136
54
58
82
104
118
137
53
57
81
105
117
137
52
56
80
106
116
136
51
55
79
107
115
135
50
54
78
108
114
134
49
53
77
109
113
133
48
52
76
110
112
132
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
63
64
65
66
67
68
69
70
71
72
73
74
75
111
110
109
108
107
106
105
104
103
102
101
100
99
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
38
50
62
98
110
124
37
49
61
97
109
125
36
48
60
96
108
126
35
47
59
95
107
127
34
46
58
94
106
128
33
45
57
93
105
129
32
44
56
92
104
130
31
43
55
91
103
131
30
42
54
90
102
132
29
41
53
89
101
133
28
40
52
88
100
134
19
20
21
22
23
24
25
26
27
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
135
136
137
138
139
140
141
142
143
18
38
64
76
100
142
17
37
65
77
101
141
16
36
66
78
102
140
15
35
67
79
103
139
14
34
68
80
104
138
13
33
69
81
105
137
12
32
70
82
106
136
11
31
71
83
107
135
10
30
72
84
108
134
9
29
73
85
109
133
8
28
74
86
110
132
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
87
86
85
84
83
82
81
80
79
78
77
76
75
87
88
89
90
91
92
93
94
95
96
97
98
99
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
6
28
88
100
112
132
5
29
89
101
113
133
4
30
90
102
114
134
3
31
91
103
115
135
2
32
92
104
116
136
1
31
93
105
117
137
0
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
131
132
133
134
135
136
137
138
139
140
141
142
143
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
173
172
171
170
169
168
167
166
165
164
163
162
161
160
144
134
130
142
154
159
143
133
129
141
153
158
142
132
128
140
152
157
141
131
127
139
151
156
140
130
126
138
150
155
139
129
125
137
149
154
138
128
124
136
148
153
137
127
123
135
147
152
136
126
122
134
146
151
135
125
121
133
145
150
134
124
120
132
144
149
133
121
122
123
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
148
132
120
114
118
130
149
135
147
131
119
113
117
129
149
134
146
130
118
112
116
128
148
133
145
129
117
111
115
127
147
132
144
128
116
110
114
126
146
131
143
127
115
109
113
125
145
130
142
126
114
108
112
124
144
129
141
125
124
123
122
121
120
119
118
117
116
115
114
113
107
111
123
143
128
129
130
131
132
133
134
135
136
137
138
139
140
112
106
110
122
142
127
111
105
109
121
141
126
110
104
108
120
140
125
109
103
107
119
139
124
108
102
106
118
138
123
107
101
105
117
137
122
106
100
104
116
136
121
105
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
120
104
90
126
119
103
89
125
118
102
88
124
117
99
98
97
96
95
96
97
98
99
100
101
102
103
104
103
102
101
87
123
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
94
100
86
122
117
105
93
99
85
121
118
106
92
98
84
120
119
107
91
97
83
119
120
108
90
96
82
118
121
109
89
95
81
117
122
110
88
94
80
116
123
111
87
93
92
91
90
89
88
87
86
85
84
85
86
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
129
128
127
126
125
124
112
86
83
78
114
128
113
85
82
77
113
129
114
84
81
76
112
130
115
83
80
75
111
131
116
82
79
74
110
132
117
81
78
73
109
133
118
80
77
72
108
134
119
79
76
71
107
135
120
78
75
70
106
134
121
77
74
69
105
133
122
76
73
68
104
132
123
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
67
103
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
129
128
127
126
125
124
74
62
66
102
122
125
73
61
65
101
121
126
72
60
64
100
120
127
71
59
63
99
119
128
70
58
62
98
118
129
69
57
61
97
117
129
68
56
60
96
116
128
67
55
59
95
115
127
66
54
58
94
114
126
65
53
57
93
113
125
64
52
56
92
112
124
63
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
123
62
42
66
80
102
122
61
41
65
81
101
121
60
40
64
82
100
120
59
39
63
83
99
119
58
38
62
84
98
118
57
37
61
85
97
117
56
36
60
86
96
116
55
35
59
87
95
115
54
34
58
88
94
114
53
33
57
89
93
113
52
32
56
90
92
112
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
43
44
45
46
47
48
49
50
51
52
53
54
55
91
90
89
88
87
86
85
84
83
82
81
80
79
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
44
30
42
78
90
104
45
29
41
77
89
105
46
28
40
76
88
106
47
27
39
75
87
107
48
26
38
74
86
108
49
25
37
73
85
109
50
24
36
72
84
110
51
23
35
71
83
111
50
22
34
70
82
112
49
21
33
69
81
113
48
20
32
68
80
114
39
40
41
42
43
44
45
46
47
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
115
116
117
118
119
120
121
122
123
38
18
44
56
80
122
37
17
45
57
81
121
36
16
46
58
82
120
35
15
47
59
83
119
34
14
48
60
84
118
33
13
49
61
85
117
32
12
50
62
86
116
31
11
51
63
87
115
30
10
52
64
88
114
29
9
53
65
89
113
28
8
54
66
90
112
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
67
66
65
64
63
62
61
60
59
58
57
56
55
67
68
69
70
71
72
73
74
75
76
77
78
79
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
28
6
68
80
92
112
29
5
69
81
93
113
30
4
70
82
94
114
31
3
71
83
95
115
32
2
72
84
96
116
31
1
73
85
97
117
30
0
181
182
183
184
185
186
187
188
189
190
191
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
167
168
169
170
171
172
173
174
175
176
177
178
179
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
202
201
200
199
198
197
196
195
194
193
192
191
180
170
166
178
182
190
179
169
165
177
181
189
178
168
164
176
180
188
177
167
163
175
179
187
176
166
162
174
178
186
175
165
161
173
177
185
174
164
160
172
176
184
173
163
159
171
175
183
172
162
158
170
174
182
171
161
157
169
173
181
170
160
156
168
172
180
169
157
158
159
160
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
170
169
168
167
179
168
156
150
154
166
162
166
178
167
155
149
153
165
161
165
177
166
154
148
152
164
160
164
176
165
153
147
151
163
159
163
175
164
152
146
150
162
158
162
174
163
151
145
149
161
157
161
173
162
150
144
148
160
156
160
172
161
160
159
158
157
156
155
154
153
152
151
150
149
143
147
159
155
159
160
161
162
163
164
165
166
167
168
169
170
171
148
142
146
158
154
158
147
141
145
157
153
157
146
140
144
156
152
156
145
139
143
155
151
155
144
138
142
154
150
154
143
137
141
153
149
153
142
136
140
152
148
152
141
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
151
140
126
138
150
139
125
137
149
138
124
136
148
135
134
133
132
131
132
133
134
135
136
137
138
139
140
139
138
137
123
135
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
130
136
122
134
146
141
129
135
121
133
145
141
128
134
120
132
144
140
127
133
119
131
143
139
126
132
118
130
142
138
125
131
117
129
141
137
124
130
116
128
140
136
123
129
128
127
126
125
124
123
122
121
120
121
122
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
134
133
132
131
132
133
134
135
136
137
138
139
135
122
119
114
126
130
134
121
118
113
125
129
133
120
117
112
124
128
132
119
116
111
123
127
131
118
115
110
122
126
130
117
114
109
121
125
129
116
113
108
120
124
128
115
112
107
119
123
127
114
111
106
118
122
126
113
110
105
117
121
125
112
109
104
116
120
124
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
103
115
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
110
98
102
114
110
122
109
97
101
113
109
121
108
96
100
112
108
120
107
95
99
111
107
119
106
94
98
110
106
118
105
93
97
109
105
117
104
92
96
108
104
116
103
91
95
107
103
115
102
90
94
106
102
114
101
89
93
105
101
113
100
88
92
104
100
112
99
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
111
98
78
78
90
90
110
97
77
77
89
89
109
96
76
76
88
88
108
95
75
75
87
87
107
94
74
74
86
86
106
93
73
73
85
85
105
92
72
72
84
84
104
91
71
71
83
83
103
90
70
70
82
82
102
89
69
69
81
81
101
88
68
68
80
80
100
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
55
56
57
58
59
60
61
62
63
64
65
66
67
79
78
77
76
75
74
73
72
71
70
69
68
67
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
80
66
54
66
78
92
81
65
53
65
77
93
82
64
52
64
76
94
83
63
51
63
75
95
84
62
50
62
74
96
85
61
49
61
73
97
86
60
48
60
72
98
87
59
47
59
71
99
88
58
46
58
70
100
89
57
45
57
69
101
90
56
44
56
68
102
99
98
97
96
95
94
93
92
91
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
103
104
105
106
107
108
109
110
111
98
56
30
44
68
110
97
57
29
45
69
109
96
58
28
46
70
108
95
59
27
47
71
107
94
60
26
48
72
106
93
61
25
49
73
105
92
62
24
50
74
104
91
63
23
51
75
103
90
64
22
52
76
102
89
65
21
53
77
101
88
66
20
54
78
100
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
7
8
9
10
11
12
13
14
15
16
17
18
19
55
56
57
58
59
60
59
58
57
56
55
54
53
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
88
68
6
52
80
100
89
69
5
51
81
101
90
70
4
50
82
102
91
71
3
49
83
103
92
72
2
48
84
104
93
73
1
47
85
105
94
74
0
193
194
195
196
197
198
199
200
201
202
203
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
179
178
177
176
175
174
173
172
171
170
169
168
167
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
190
189
188
187
186
185
184
183
182
181
180
179
192
182
178
166
170
178
191
181
177
165
169
177
190
180
176
164
168
176
189
179
175
163
167
175
188
178
174
162
166
174
187
177
173
161
165
173
186
176
172
160
164
172
185
175
171
159
163
171
184
174
170
158
162
170
183
173
169
157
161
169
182
172
168
156
160
168
181
169
170
171
172
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
158
157
156
155
167
180
168
162
166
154
150
154
166
179
167
161
165
153
149
153
165
178
166
160
164
152
148
152
164
177
165
159
163
151
147
151
163
176
164
158
162
150
146
150
162
175
163
157
161
149
145
149
161
174
162
156
160
148
144
148
160
173
172
171
170
169
168
167
166
165
164
163
162
161
155
159
147
143
147
148
149
150
151
152
153
154
155
156
157
158
159
160
154
158
146
142
146
159
153
157
145
141
145
158
152
156
144
140
144
157
151
155
143
139
143
156
150
154
142
138
142
155
149
153
141
137
141
154
148
152
140
136
140
153
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
139
152
138
126
138
151
137
125
137
150
136
124
136
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
135
123
135
136
137
138
139
138
137
136
135
134
133
132
131
132
133
134
135
141
148
134
122
134
130
141
147
133
121
133
129
140
146
132
120
132
128
139
145
131
119
131
127
138
144
130
118
130
126
137
143
129
117
129
125
136
142
128
116
128
124
135
141
140
139
138
137
136
135
134
133
132
133
134
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
122
121
120
119
120
121
122
123
124
125
126
127
123
134
131
126
114
118
122
133
130
125
113
117
121
132
129
124
112
116
120
131
128
123
111
115
119
130
127
122
110
114
118
129
126
121
109
113
117
128
125
120
108
112
116
127
124
119
107
111
115
126
123
118
106
110
114
125
122
117
105
109
113
124
121
116
104
108
112
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
115
103
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
122
110
114
102
98
110
121
109
113
101
97
109
120
108
112
100
96
108
119
107
111
99
95
107
118
106
110
98
94
106
117
105
109
97
93
105
116
104
108
96
92
104
115
103
107
95
91
103
114
102
106
94
90
102
113
101
105
93
89
101
112
100
104
92
88
100
111
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
99
110
90
90
78
78
98
109
89
89
77
77
97
108
88
88
76
76
96
107
87
87
75
75
95
106
86
86
74
74
94
105
85
85
73
73
93
104
84
84
72
72
92
103
83
83
71
71
91
102
82
82
70
70
90
101
81
81
69
69
89
100
80
80
68
68
88
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
67
68
69
70
71
72
73
74
75
76
77
78
79
67
66
65
64
63
62
61
60
59
58
57
56
55
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
92
78
66
54
66
80
93
77
65
53
65
81
94
76
64
52
64
82
95
75
63
51
63
83
96
74
62
50
62
84
97
73
61
49
61
85
98
72
60
48
60
86
99
71
59
47
59
87
100
70
58
46
58
88
101
69
57
45
57
89
102
68
56
44
56
90
111
110
109
108
107
106
105
104
103
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
91
92
93
94
95
96
97
98
99
110
68
44
30
56
98
109
69
45
29
57
97
108
70
46
28
58
96
107
71
47
27
59
95
106
72
48
26
60
94
105
73
49
25
61
93
104
74
50
24
62
92
103
75
51
23
63
91
102
76
52
22
64
90
101
77
53
21
65
89
100
78
54
20
66
88
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
53
54
55
56
57
58
59
60
59
58
57
56
55
19
18
17
16
15
14
13
12
11
10
9
8
7
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
100
80
52
6
68
88
101
81
51
5
69
89
102
82
50
4
70
90
103
83
49
3
71
91
104
84
48
2
72
92
105
85
47
1
73
93
106
86
46
0
160
161
162
163
164
165
166
167
168
169
170
171
172
173
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
143
142
141
140
139
138
137
136
135
134
133
132
131
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
159
154
142
130
134
142
158
153
141
129
133
141
157
152
140
128
132
140
156
151
139
127
131
139
155
150
138
126
130
138
154
149
137
125
129
137
153
148
136
124
128
136
152
147
135
123
127
135
151
146
134
122
126
134
150
145
133
121
125
133
149
144
132
120
124
132
148
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
122
121
120
119
131
147
135
149
130
118
114
118
130
146
134
149
129
117
113
117
129
145
133
148
128
116
112
116
128
144
132
147
127
115
111
115
127
143
131
146
126
114
110
114
126
142
130
145
125
113
109
113
125
141
129
144
124
112
108
112
124
140
139
138
137
136
135
134
133
132
131
130
129
128
143
123
111
107
111
112
113
114
115
116
117
118
119
120
121
122
123
127
142
122
110
106
110
126
141
121
109
105
109
125
140
120
108
104
108
124
139
119
107
103
107
123
138
118
106
102
106
122
137
117
105
101
105
121
136
116
104
100
104
120
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
103
119
126
90
102
118
125
89
101
117
124
88
100
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
123
87
99
100
101
102
103
102
101
100
99
98
97
96
95
96
97
98
99
105
117
122
86
98
94
106
118
121
85
97
93
107
119
120
84
96
92
108
120
119
83
95
91
109
121
118
82
94
90
110
122
117
81
93
89
111
123
116
80
92
88
112
124
125
126
127
128
129
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
86
85
84
83
84
85
86
87
88
89
90
91
87
113
127
114
78
82
86
114
128
113
77
81
85
115
129
112
76
80
84
116
130
111
75
79
83
117
131
110
74
78
82
118
132
109
73
77
81
119
133
108
72
76
80
120
134
107
71
75
79
121
135
106
70
74
78
122
134
105
69
73
77
123
133
104
68
72
76
124
125
126
127
128
129
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
103
67
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
125
122
102
66
62
74
126
121
101
65
61
73
127
120
100
64
60
72
128
119
99
63
59
71
129
118
98
62
58
70
129
117
97
61
57
69
128
116
96
60
56
68
127
115
95
59
55
67
126
114
94
58
54
66
125
113
93
57
53
65
124
112
92
56
52
64
123
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
63
122
102
80
66
42
62
121
101
81
65
41
61
120
100
82
64
40
60
119
99
83
63
39
59
118
98
84
62
38
58
117
97
85
61
37
57
116
96
86
60
36
56
115
95
87
59
35
55
114
94
88
58
34
54
113
93
89
57
33
53
112
92
90
56
32
52
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
79
80
81
82
83
84
85
86
87
88
89
90
91
55
54
53
52
51
50
49
48
47
46
45
44
43
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
104
90
78
42
30
44
105
89
77
41
29
45
106
88
76
40
28
46
107
87
75
39
27
47
108
86
74
38
26
48
109
85
73
37
25
49
110
84
72
36
24
50
111
83
71
35
23
51
112
82
70
34
22
50
113
81
69
33
21
49
114
80
68
32
20
48
123
122
121
120
119
118
117
116
115
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
47
46
45
44
43
42
41
40
39
122
80
56
44
18
38
121
81
57
45
17
37
120
82
58
46
16
36
119
83
59
47
15
35
118
84
60
48
14
34
117
85
61
49
13
33
116
86
62
50
12
32
115
87
63
51
11
31
114
88
64
52
10
30
113
89
65
53
9
29
112
90
66
54
8
28
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
79
78
77
76
75
74
73
72
71
70
69
68
67
55
56
57
58
59
60
61
62
63
64
65
66
67
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
112
92
80
68
6
28
113
93
81
69
5
29
114
94
82
70
4
30
115
95
83
71
3
31
116
96
84
72
2
32
117
97
85
73
1
31
118
98
86
74
0
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
155
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
155
163
162
150
154
146
154
162
161
149
153
145
153
161
160
148
152
144
152
160
159
147
151
143
151
159
158
146
150
142
150
158
157
145
149
141
149
157
156
144
148
140
148
156
155
143
147
139
147
155
154
142
146
138
146
154
153
141
145
137
145
153
152
140
144
136
144
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
157
156
155
154
153
152
151
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
135
143
131
145
150
138
134
122
134
142
130
146
149
137
133
121
133
141
129
147
148
136
132
120
132
140
128
148
147
135
131
119
131
139
127
149
146
134
130
118
130
138
126
150
145
133
129
117
129
137
125
151
144
132
128
116
128
136
135
134
133
132
131
130
129
128
127
126
125
124
152
143
131
127
115
116
117
118
119
120
121
122
123
124
125
126
127
123
153
142
130
126
114
122
154
141
129
125
113
121
155
140
128
124
112
120
156
139
127
123
111
119
157
138
126
122
110
118
157
137
125
121
109
117
156
136
124
120
108
116
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
107
115
146
110
106
114
145
109
105
113
144
108
104
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
143
107
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
101
113
142
106
104
90
102
114
141
105
105
89
103
115
140
104
106
88
104
116
139
103
107
87
105
117
138
102
108
86
106
118
137
101
109
85
107
119
136
100
110
84
108
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
106
105
104
103
104
105
106
107
108
109
110
111
83
109
130
134
98
102
82
110
131
133
97
101
81
111
132
132
96
100
80
112
133
131
95
99
79
113
134
130
94
98
78
114
135
129
93
97
77
115
136
128
92
96
76
116
137
127
91
95
75
117
138
126
90
94
74
118
139
125
89
93
73
119
140
124
88
92
72
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
123
87
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
121
133
122
86
82
70
122
134
121
85
81
69
123
135
120
84
80
68
124
136
119
83
79
67
125
137
118
82
78
66
126
137
117
81
77
65
127
136
116
80
76
64
128
135
115
79
75
63
129
134
114
78
74
62
130
133
113
77
73
61
131
132
112
76
72
60
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
59
133
122
100
86
62
58
134
121
101
85
61
57
135
120
102
84
60
56
136
119
103
83
59
55
137
118
104
82
58
54
137
117
105
81
57
53
136
116
106
80
56
52
135
115
107
79
55
51
134
114
108
78
54
50
133
113
109
77
53
49
132
112
110
76
52
48
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
99
100
101
102
103
104
105
106
107
108
109
110
111
75
74
73
72
71
70
69
68
67
66
65
64
63
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
124
110
98
62
50
38
125
109
97
61
49
37
126
108
96
60
48
36
127
107
95
59
47
35
128
106
94
58
46
34
129
105
93
57
45
33
130
104
92
56
44
32
131
103
91
55
43
31
132
102
90
54
42
30
133
101
89
53
41
29
134
100
88
52
40
28
143
142
141
140
139
138
137
136
135
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
27
26
25
24
23
22
21
20
19
142
100
76
64
38
18
141
101
77
65
37
17
140
102
78
66
36
16
139
103
79
67
35
15
138
104
80
68
34
14
137
105
81
69
33
13
136
106
82
70
32
12
135
107
83
71
31
11
134
108
84
72
30
10
133
109
85
73
29
9
132
110
86
74
28
8
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
99
98
97
96
95
94
93
92
91
90
89
88
87
75
76
77
78
79
80
81
82
83
84
85
86
87
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
132
112
100
88
28
6
133
113
101
89
29
5
134
114
102
90
30
4
135
115
103
91
31
3
136
116
104
92
32
2
137
117
105
93
31
1
138
118
106
94
30
0
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
147
155
151
163
164
156
146
154
150
162
163
155
145
153
149
161
162
154
144
152
148
160
161
153
143
151
147
159
160
152
142
150
146
158
159
151
141
149
145
157
158
150
140
148
144
156
157
149
139
147
143
155
156
148
138
146
142
154
155
147
137
145
141
153
154
146
136
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
152
153
154
155
156
157
158
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
145
135
123
135
139
151
146
132
144
134
122
134
138
150
147
131
143
133
121
133
137
149
148
130
142
132
120
132
136
148
149
129
141
131
119
131
135
147
150
128
140
130
118
130
134
146
151
127
139
129
117
129
133
145
152
126
138
128
127
126
125
124
123
122
121
120
119
118
117
116
128
132
144
153
125
126
127
128
129
130
131
132
133
134
135
136
137
115
127
131
143
154
124
114
126
130
142
155
123
113
125
129
141
156
122
112
124
128
140
157
121
111
123
127
139
158
120
110
122
126
138
158
119
109
121
125
137
157
118
108
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
117
107
111
147
116
106
110
146
115
105
109
145
114
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
108
144
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
91
105
107
143
114
102
90
106
106
142
115
103
89
107
105
141
116
104
88
108
104
140
117
105
87
109
103
139
118
106
86
110
102
138
119
107
85
111
101
137
120
108
84
112
113
112
111
110
109
108
107
106
105
106
107
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
109
83
104
99
135
130
110
82
103
98
134
131
111
81
102
97
133
132
112
80
101
96
132
133
113
79
100
95
131
134
114
78
99
94
130
135
115
77
98
93
129
136
116
76
97
92
128
137
117
75
96
91
127
138
118
74
95
90
126
139
119
73
94
89
125
140
120
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
88
124
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
71
83
87
123
134
122
70
82
86
122
135
123
69
81
85
121
136
124
68
80
84
120
137
125
67
79
83
119
138
126
66
78
82
118
138
127
65
77
81
117
137
128
64
76
80
116
136
129
63
75
79
115
135
130
62
74
78
114
134
131
61
73
77
113
133
132
60
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
59
63
87
101
123
134
58
62
86
102
122
135
57
61
85
103
121
136
56
60
84
104
120
137
55
59
83
105
119
138
54
58
82
106
118
138
53
57
81
107
117
137
52
56
80
108
116
136
51
55
79
109
115
135
50
54
78
110
114
134
49
53
77
111
113
133
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
64
65
66
67
68
69
70
71
72
73
74
75
76
112
111
110
109
108
107
106
105
104
103
102
101
100
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
39
51
63
99
111
125
38
50
62
98
110
126
37
49
61
97
109
127
36
48
60
96
108
128
35
47
59
95
107
129
34
46
58
94
106
130
33
45
57
93
105
131
32
44
56
92
104
132
31
43
55
91
103
133
30
42
54
90
102
134
29
41
53
89
101
135
20
21
22
23
24
25
26
27
28
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
136
137
138
139
140
141
142
143
144
19
39
65
77
101
143
18
38
66
78
102
142
17
37
67
79
103
141
16
36
68
80
104
140
15
35
69
81
105
139
14
34
70
82
106
138
13
33
71
83
107
137
12
32
72
84
108
136
11
31
73
85
109
135
10
30
74
86
110
134
9
29
75
87
111
133
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
88
87
86
85
84
83
82
81
80
79
78
77
76
88
89
90
91
92
93
94
95
96
97
98
99
100
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
7
29
89
101
113
133
6
30
90
102
114
134
5
31
91
103
115
135
4
32
92
104
116
136
3
31
93
105
117
137
2
30
94
106
118
138
1
29
95
107
119
139
0
146
147
148
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
132
133
134
135
136
137
138
139
140
141
142
143
144
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
174
173
172
171
170
169
168
167
166
165
164
163
162
161
145
135
131
143
155
160
144
134
130
142
154
159
143
133
129
141
153
158
142
132
128
140
152
157
141
131
127
139
151
156
140
130
126
138
150
155
139
129
125
137
149
154
138
128
124
136
148
153
137
127
123
135
147
152
136
126
122
134
146
151
135
125
121
133
145
150
134
122
123
124
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
149
133
121
115
119
131
150
136
148
132
120
114
118
130
150
135
147
131
119
113
117
129
149
134
146
130
118
112
116
128
148
133
145
129
117
111
115
127
147
132
144
128
116
110
114
126
146
131
143
127
115
109
113
125
145
130
142
126
125
124
123
122
121
120
119
118
117
116
115
114
108
112
124
144
129
130
131
132
133
134
135
136
137
138
139
140
141
113
107
111
123
143
128
112
106
110
122
142
127
111
105
109
121
141
126
110
104
108
120
140
125
109
103
107
119
139
124
108
102
106
118
138
123
107
101
105
117
137
122
106
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
121
105
91
127
120
104
90
126
119
103
89
125
118
100
99
98
97
96
97
98
99
100
101
102
103
104
105
104
103
102
88
124
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
95
101
87
123
118
106
94
100
86
122
119
107
93
99
85
121
120
108
92
98
84
120
121
109
91
97
83
119
122
110
90
96
82
118
123
111
89
95
81
117
124
112
88
94
93
92
91
90
89
88
87
86
85
86
87
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
113
87
84
79
115
129
114
86
83
78
114
130
115
85
82
77
113
131
116
84
81
76
112
132
117
83
80
75
111
133
118
82
79
74
110
134
119
81
78
73
109
135
120
80
77
72
108
136
121
79
76
71
107
135
122
78
75
70
106
134
123
77
74
69
105
133
124
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
68
104
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
130
129
128
127
126
125
75
63
67
103
123
126
74
62
66
102
122
127
73
61
65
101
121
128
72
60
64
100
120
129
71
59
63
99
119
130
70
58
62
98
118
130
69
57
61
97
117
129
68
56
60
96
116
128
67
55
59
95
115
127
66
54
58
94
114
126
65
53
57
93
113
125
64
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
124
63
43
67
81
103
123
62
42
66
82
102
122
61
41
65
83
101
121
60
40
64
84
100
120
59
39
63
85
99
119
58
38
62
86
98
118
57
37
61
87
97
117
56
36
60
88
96
116
55
35
59
89
95
115
54
34
58
90
94
114
53
33
57
91
93
113
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
44
45
46
47
48
49
50
51
52
53
54
55
56
92
91
90
89
88
87
86
85
84
83
82
81
80
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
45
31
43
79
91
105
46
30
42
78
90
106
47
29
41
77
89
107
48
28
40
76
88
108
49
27
39
75
87
109
50
26
38
74
86
110
51
25
37
73
85
111
52
24
36
72
84
112
51
23
35
71
83
113
50
22
34
70
82
114
49
21
33
69
81
115
40
41
42
43
44
45
46
47
48
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
116
117
118
119
120
121
122
123
124
39
19
45
57
81
123
38
18
46
58
82
122
37
17
47
59
83
121
36
16
48
60
84
120
35
15
49
61
85
119
34
14
50
62
86
118
33
13
51
63
87
117
32
12
52
64
88
116
31
11
53
65
89
115
30
10
54
66
90
114
29
9
55
67
91
113
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
68
67
66
65
64
63
62
61
60
59
58
57
56
68
69
70
71
72
73
74
75
76
77
78
79
80
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
29
7
69
81
93
113
30
6
70
82
94
114
31
5
71
83
95
115
32
4
72
84
96
116
31
3
73
85
97
117
30
2
74
86
98
118
29
1
75
87
99
119
28
0
182
183
184
185
186
187
188
189
190
191
192
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
168
169
170
171
172
173
174
175
176
177
178
179
180
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
203
202
201
200
199
198
197
196
195
194
193
192
181
171
167
179
183
191
180
170
166
178
182
190
179
169
165
177
181
189
178
168
164
176
180
188
177
167
163
175
179
187
176
166
162
174
178
186
175
165
161
173
177
185
174
164
160
172
176
184
173
163
159
171
175
183
172
162
158
170
174
182
171
161
157
169
173
181
170
158
159
160
161
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
171
170
169
168
180
169
157
151
155
167
163
167
179
168
156
150
154
166
162
166
178
167
155
149
153
165
161
165
177
166
154
148
152
164
160
164
176
165
153
147
151
163
159
163
175
164
152
146
150
162
158
162
174
163
151
145
149
161
157
161
173
162
161
160
159
158
157
156
155
154
153
152
151
150
144
148
160
156
160
161
162
163
164
165
166
167
168
169
170
171
172
149
143
147
159
155
159
148
142
146
158
154
158
147
141
145
157
153
157
146
140
144
156
152
156
145
139
143
155
151
155
144
138
142
154
150
154
143
137
141
153
149
153
142
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
152
141
127
139
151
140
126
138
150
139
125
137
149
136
135
134
133
132
133
134
135
136
137
138
139
140
141
140
139
138
124
136
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
131
137
123
135
147
142
130
136
122
134
146
142
129
135
121
133
145
141
128
134
120
132
144
140
127
133
119
131
143
139
126
132
118
130
142
138
125
131
117
129
141
137
124
130
129
128
127
126
125
124
123
122
121
122
123
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
135
134
133
132
133
134
135
136
137
138
139
140
136
123
120
115
127
131
135
122
119
114
126
130
134
121
118
113
125
129
133
120
117
112
124
128
132
119
116
111
123
127
131
118
115
110
122
126
130
117
114
109
121
125
129
116
113
108
120
124
128
115
112
107
119
123
127
114
111
106
118
122
126
113
110
105
117
121
125
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
104
116
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
111
99
103
115
111
123
110
98
102
114
110
122
109
97
101
113
109
121
108
96
100
112
108
120
107
95
99
111
107
119
106
94
98
110
106
118
105
93
97
109
105
117
104
92
96
108
104
116
103
91
95
107
103
115
102
90
94
106
102
114
101
89
93
105
101
113
100
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
112
99
79
79
91
91
111
98
78
78
90
90
110
97
77
77
89
89
109
96
76
76
88
88
108
95
75
75
87
87
107
94
74
74
86
86
106
93
73
73
85
85
105
92
72
72
84
84
104
91
71
71
83
83
103
90
70
70
82
82
102
89
69
69
81
81
101
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
56
57
58
59
60
61
62
63
64
65
66
67
68
80
79
78
77
76
75
74
73
72
71
70
69
68
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
81
67
55
67
79
93
82
66
54
66
78
94
83
65
53
65
77
95
84
64
52
64
76
96
85
63
51
63
75
97
86
62
50
62
74
98
87
61
49
61
73
99
88
60
48
60
72
100
89
59
47
59
71
101
90
58
46
58
70
102
91
57
45
57
69
103
100
99
98
97
96
95
94
93
92
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
104
105
106
107
108
109
110
111
112
99
57
31
45
69
111
98
58
30
46
70
110
97
59
29
47
71
109
96
60
28
48
72
108
95
61
27
49
73
107
94
62
26
50
74
106
93
63
25
51
75
105
92
64
24
52
76
104
91
65
23
53
77
103
90
66
22
54
78
102
89
67
21
55
79
101
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
8
9
10
11
12
13
14
15
16
17
18
19
20
56
57
58
59
60
59
58
57
56
55
54
53
52
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
89
69
7
51
81
101
90
70
6
50
82
102
91
71
5
49
83
103
92
72
4
48
84
104
93
73
3
47
85
105
94
74
2
46
86
106
95
75
1
45
87
107
96
76
0
194
195
196
197
198
199
200
201
202
203
204
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
180
179
178
177
176
175
174
173
172
171
170
169
168
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
191
190
189
188
187
186
185
184
183
182
181
180
193
183
179
167
171
179
192
182
178
166
170
178
191
181
177
165
169
177
190
180
176
164
168
176
189
179
175
163
167
175
188
178
174
162
166
174
187
177
173
161
165
173
186
176
172
160
164
172
185
175
171
159
163
171
184
174
170
158
162
170
183
173
169
157
161
169
182
170
171
172
173
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
159
158
157
156
168
181
169
163
167
155
151
155
167
180
168
162
166
154
150
154
166
179
167
161
165
153
149
153
165
178
166
160
164
152
148
152
164
177
165
159
163
151
147
151
163
176
164
158
162
150
146
150
162
175
163
157
161
149
145
149
161
174
173
172
171
170
169
168
167
166
165
164
163
162
156
160
148
144
148
149
150
151
152
153
154
155
156
157
158
159
160
161
155
159
147
143
147
160
154
158
146
142
146
159
153
157
145
141
145
158
152
156
144
140
144
157
151
155
143
139
143
156
150
154
142
138
142
155
149
153
141
137
141
154
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
140
153
139
127
139
152
138
126
138
151
137
125
137
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
151
150
136
124
136
137
138
139
140
139
138
137
136
135
134
133
132
133
134
135
136
142
149
135
123
135
131
142
148
134
122
134
130
141
147
133
121
133
129
140
146
132
120
132
128
139
145
131
119
131
127
138
144
130
118
130
126
137
143
129
117
129
125
136
142
141
140
139
138
137
136
135
134
133
134
135
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
123
122
121
120
121
122
123
124
125
126
127
128
124
135
132
127
115
119
123
134
131
126
114
118
122
133
130
125
113
117
121
132
129
124
112
116
120
131
128
123
111
115
119
130
127
122
110
114
118
129
126
121
109
113
117
128
125
120
108
112
116
127
124
119
107
111
115
126
123
118
106
110
114
125
122
117
105
109
113
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
116
104
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
123
111
115
103
99
111
122
110
114
102
98
110
121
109
113
101
97
109
120
108
112
100
96
108
119
107
111
99
95
107
118
106
110
98
94
106
117
105
109
97
93
105
116
104
108
96
92
104
115
103
107
95
91
103
114
102
106
94
90
102
113
101
105
93
89
101
112
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
100
111
91
91
79
79
99
110
90
90
78
78
98
109
89
89
77
77
97
108
88
88
76
76
96
107
87
87
75
75
95
106
86
86
74
74
94
105
85
85
73
73
93
104
84
84
72
72
92
103
83
83
71
71
91
102
82
82
70
70
90
101
81
81
69
69
89
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
68
69
70
71
72
73
74
75
76
77
78
79
80
68
67
66
65
64
63
62
61
60
59
58
57
56
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
93
79
67
55
67
81
94
78
66
54
66
82
95
77
65
53
65
83
96
76
64
52
64
84
97
75
63
51
63
85
98
74
62
50
62
86
99
73
61
49
61
87
100
72
60
48
60
88
101
71
59
47
59
89
102
70
58
46
58
90
103
69
57
45
57
91
112
111
110
109
108
107
106
105
104
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
92
93
94
95
96
97
98
99
100
111
69
45
31
57
99
110
70
46
30
58
98
109
71
47
29
59
97
108
72
48
28
60
96
107
73
49
27
61
95
106
74
50
26
62
94
105
75
51
25
63
93
104
76
52
24
64
92
103
77
53
23
65
91
102
78
54
22
66
90
101
79
55
21
67
89
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
52
53
54
55
56
57
58
59
60
59
58
57
56
20
19
18
17
16
15
14
13
12
11
10
9
8
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
101
81
51
7
69
89
102
82
50
6
70
90
103
83
49
5
71
91
104
84
48
4
72
92
105
85
47
3
73
93
106
86
46
2
74
94
107
87
45
1
75
95
108
88
44
0
161
162
163
164
165
166
167
168
169
170
171
172
173
174
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
144
143
142
141
140
139
138
137
136
135
134
133
132
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
160
155
143
131
135
143
159
154
142
130
134
142
158
153
141
129
133
141
157
152
140
128
132
140
156
151
139
127
131
139
155
150
138
126
130
138
154
149
137
125
129
137
153
148
136
124
128
136
152
147
135
123
127
135
151
146
134
122
126
134
150
145
133
121
125
133
149
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
123
122
121
120
132
148
136
150
131
119
115
119
131
147
135
150
130
118
114
118
130
146
134
149
129
117
113
117
129
145
133
148
128
116
112
116
128
144
132
147
127
115
111
115
127
143
131
146
126
114
110
114
126
142
130
145
125
113
109
113
125
141
140
139
138
137
136
135
134
133
132
131
130
129
144
124
112
108
112
113
114
115
116
117
118
119
120
121
122
123
124
128
143
123
111
107
111
127
142
122
110
106
110
126
141
121
109
105
109
125
140
120
108
104
108
124
139
119
107
103
107
123
138
118
106
102
106
122
137
117
105
101
105
121
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
104
120
127
91
103
119
126
90
102
118
125
89
101
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
124
88
100
101
102
103
104
103
102
101
100
99
98
97
96
97
98
99
100
106
118
123
87
99
95
107
119
122
86
98
94
108
120
121
85
97
93
109
121
120
84
96
92
110
122
119
83
95
91
111
123
118
82
94
90
112
124
117
81
93
89
113
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
87
86
85
84
85
86
87
88
89
90
91
92
88
114
128
115
79
83
87
115
129
114
78
82
86
116
130
113
77
81
85
117
131
112
76
80
84
118
132
111
75
79
83
119
133
110
74
78
82
120
134
109
73
77
81
121
135
108
72
76
80
122
136
107
71
75
79
123
135
106
70
74
78
124
134
105
69
73
77
125
126
127
128
129
130
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
104
68
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
126
123
103
67
63
75
127
122
102
66
62
74
128
121
101
65
61
73
129
120
100
64
60
72
130
119
99
63
59
71
130
118
98
62
58
70
129
117
97
61
57
69
128
116
96
60
56
68
127
115
95
59
55
67
126
114
94
58
54
66
125
113
93
57
53
65
124
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
64
123
103
81
67
43
63
122
102
82
66
42
62
121
101
83
65
41
61
120
100
84
64
40
60
119
99
85
63
39
59
118
98
86
62
38
58
117
97
87
61
37
57
116
96
88
60
36
56
115
95
89
59
35
55
114
94
90
58
34
54
113
93
91
57
33
53
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
80
81
82
83
84
85
86
87
88
89
90
91
92
56
55
54
53
52
51
50
49
48
47
46
45
44
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
105
91
79
43
31
45
106
90
78
42
30
46
107
89
77
41
29
47
108
88
76
40
28
48
109
87
75
39
27
49
110
86
74
38
26
50
111
85
73
37
25
51
112
84
72
36
24
52
113
83
71
35
23
51
114
82
70
34
22
50
115
81
69
33
21
49
124
123
122
121
120
119
118
117
116
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
48
47
46
45
44
43
42
41
40
123
81
57
45
19
39
122
82
58
46
18
38
121
83
59
47
17
37
120
84
60
48
16
36
119
85
61
49
15
35
118
86
62
50
14
34
117
87
63
51
13
33
116
88
64
52
12
32
115
89
65
53
11
31
114
90
66
54
10
30
113
91
67
55
9
29
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
80
79
78
77
76
75
74
73
72
71
70
69
68
56
57
58
59
60
61
62
63
64
65
66
67
68
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
113
93
81
69
7
29
114
94
82
70
6
30
115
95
83
71
5
31
116
96
84
72
4
32
117
97
85
73
3
31
118
98
86
74
2
30
119
99
87
75
1
29
120
100
88
76
0
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
156
164
163
151
155
147
155
163
162
150
154
146
154
162
161
149
153
145
153
161
160
148
152
144
152
160
159
147
151
143
151
159
158
146
150
142
150
158
157
145
149
141
149
157
156
144
148
140
148
156
155
143
147
139
147
155
154
142
146
138
146
154
153
141
145
137
145
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
158
157
156
155
154
153
152
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
136
144
132
146
151
139
135
123
135
143
131
147
150
138
134
122
134
142
130
148
149
137
133
121
133
141
129
149
148
136
132
120
132
140
128
150
147
135
131
119
131
139
127
151
146
134
130
118
130
138
126
152
145
133
129
117
129
137
136
135
134
133
132
131
130
129
128
127
126
125
153
144
132
128
116
117
118
119
120
121
122
123
124
125
126
127
128
124
154
143
131
127
115
123
155
142
130
126
114
122
156
141
129
125
113
121
157
140
128
124
112
120
158
139
127
123
111
119
158
138
126
122
110
118
157
137
125
121
109
117
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
108
116
147
111
107
115
146
110
106
114
145
109
105
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
144
108
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
102
114
143
107
105
91
103
115
142
106
106
90
104
116
141
105
107
89
105
117
140
104
108
88
106
118
139
103
109
87
107
119
138
102
110
86
108
120
137
101
111
85
109
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
107
106
105
104
105
106
107
108
109
110
111
112
84
110
131
135
99
103
83
111
132
134
98
102
82
112
133
133
97
101
81
113
134
132
96
100
80
114
135
131
95
99
79
115
136
130
94
98
78
116
137
129
93
97
77
117
138
128
92
96
76
118
139
127
91
95
75
119
140
126
90
94
74
120
141
125
89
93
73
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
124
88
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
122
134
123
87
83
71
123
135
122
86
82
70
124
136
121
85
81
69
125
137
120
84
80
68
126
138
119
83
79
67
127
138
118
82
78
66
128
137
117
81
77
65
129
136
116
80
76
64
130
135
115
79
75
63
131
134
114
78
74
62
132
133
113
77
73
61
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
60
134
123
101
87
63
59
135
122
102
86
62
58
136
121
103
85
61
57
137
120
104
84
60
56
138
119
105
83
59
55
138
118
106
82
58
54
137
117
107
81
57
53
136
116
108
80
56
52
135
115
109
79
55
51
134
114
110
78
54
50
133
113
111
77
53
49
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
100
101
102
103
104
105
106
107
108
109
110
111
112
76
75
74
73
72
71
70
69
68
67
66
65
64
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
125
111
99
63
51
39
126
110
98
62
50
38
127
109
97
61
49
37
128
108
96
60
48
36
129
107
95
59
47
35
130
106
94
58
46
34
131
105
93
57
45
33
132
104
92
56
44
32
133
103
91
55
43
31
134
102
90
54
42
30
135
101
89
53
41
29
144
143
142
141
140
139
138
137
136
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
28
27
26
25
24
23
22
21
20
143
101
77
65
39
19
142
102
78
66
38
18
141
103
79
67
37
17
140
104
80
68
36
16
139
105
81
69
35
15
138
106
82
70
34
14
137
107
83
71
33
13
136
108
84
72
32
12
135
109
85
73
31
11
134
110
86
74
30
10
133
111
87
75
29
9
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
100
99
98
97
96
95
94
93
92
91
90
89
88
76
77
78
79
80
81
82
83
84
85
86
87
88
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
133
113
101
89
29
7
134
114
102
90
30
6
135
115
103
91
31
5
136
116
104
92
32
4
137
117
105
93
31
3
138
118
106
94
30
2
139
119
107
95
29
1
140
120
108
96
28
0
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
148
156
152
164
165
157
147
155
151
163
164
156
146
154
150
162
163
155
145
153
149
161
162
154
144
152
148
160
161
153
143
151
147
159
160
152
142
150
146
158
159
151
141
149
145
157
158
150
140
148
144
156
157
149
139
147
143
155
156
148
138
146
142
154
155
147
137
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
153
154
155
156
157
158
159
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
146
136
124
136
140
152
147
133
145
135
123
135
139
151
148
132
144
134
122
134
138
150
149
131
143
133
121
133
137
149
150
130
142
132
120
132
136
148
151
129
141
131
119
131
135
147
152
128
140
130
118
130
134
146
153
127
139
129
128
127
126
125
124
123
122
121
120
119
118
117
129
133
145
154
126
127
128
129
130
131
132
133
134
135
136
137
138
116
128
132
144
155
125
115
127
131
143
156
124
114
126
130
142
157
123
113
125
129
141
158
122
112
124
128
140
159
121
111
123
127
139
159
120
110
122
126
138
158
119
109
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
118
108
112
148
117
107
111
147
116
106
110
146
115
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
109
145
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
92
106
108
144
115
103
91
107
107
143
116
104
90
108
106
142
117
105
89
109
105
141
118
106
88
110
104
140
119
107
87
111
103
139
120
108
86
112
102
138
121
109
85
113
114
113
112
111
110
109
108
107
106
107
108
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
110
84
105
100
136
131
111
83
104
99
135
132
112
82
103
98
134
133
113
81
102
97
133
134
114
80
101
96
132
135
115
79
100
95
131
136
116
78
99
94
130
137
117
77
98
93
129
138
118
76
97
92
128
139
119
75
96
91
127
140
120
74
95
90
126
141
121
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
89
125
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
72
84
88
124
135
123
71
83
87
123
136
124
70
82
86
122
137
125
69
81
85
121
138
126
68
80
84
120
139
127
67
79
83
119
139
128
66
78
82
118
138
129
65
77
81
117
137
130
64
76
80
116
136
131
63
75
79
115
135
132
62
74
78
114
134
133
61
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
60
64
88
102
124
135
59
63
87
103
123
136
58
62
86
104
122
137
57
61
85
105
121
138
56
60
84
106
120
139
55
59
83
107
119
139
54
58
82
108
118
138
53
57
81
109
117
137
52
56
80
110
116
136
51
55
79
111
115
135
50
54
78
112
114
134
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
65
66
67
68
69
70
71
72
73
74
75
76
77
113
112
111
110
109
108
107
106
105
104
103
102
101
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
40
52
64
100
112
126
39
51
63
99
111
127
38
50
62
98
110
128
37
49
61
97
109
129
36
48
60
96
108
130
35
47
59
95
107
131
34
46
58
94
106
132
33
45
57
93
105
133
32
44
56
92
104
134
31
43
55
91
103
135
30
42
54
90
102
136
21
22
23
24
25
26
27
28
29
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
137
138
139
140
141
142
143
144
145
20
40
66
78
102
144
19
39
67
79
103
143
18
38
68
80
104
142
17
37
69
81
105
141
16
36
70
82
106
140
15
35
71
83
107
139
14
34
72
84
108
138
13
33
73
85
109
137
12
32
74
86
110
136
11
31
75
87
111
135
10
30
76
88
112
134
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
89
88
87
86
85
84
83
82
81
80
79
78
77
89
90
91
92
93
94
95
96
97
98
99
100
101
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
8
30
90
102
114
134
7
31
91
103
115
135
6
32
92
104
116
136
5
31
93
105
117
137
4
30
94
106
118
138
3
29
95
107
119
139
2
28
96
108
120
140
1
27
97
109
121
141
0
147
148
149
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
133
134
135
136
137
138
139
140
141
142
143
144
145
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
175
174
173
172
171
170
169
168
167
166
165
164
163
162
146
136
132
144
156
161
145
135
131
143
155
160
144
134
130
142
154
159
143
133
129
141
153
158
142
132
128
140
152
157
141
131
127
139
151
156
140
130
126
138
150
155
139
129
125
137
149
154
138
128
124
136
148
153
137
127
123
135
147
152
136
126
122
134
146
151
135
123
124
125
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
151
150
149
148
147
146
145
144
143
142
141
140
139
138
150
134
122
116
120
132
151
137
149
133
121
115
119
131
151
136
148
132
120
114
118
130
150
135
147
131
119
113
117
129
149
134
146
130
118
112
116
128
148
133
145
129
117
111
115
127
147
132
144
128
116
110
114
126
146
131
143
127
126
125
124
123
122
121
120
119
118
117
116
115
109
113
125
145
130
131
132
133
134
135
136
137
138
139
140
141
142
114
108
112
124
144
129
113
107
111
123
143
128
112
106
110
122
142
127
111
105
109
121
141
126
110
104
108
120
140
125
109
103
107
119
139
124
108
102
106
118
138
123
107
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
122
106
92
128
121
105
91
127
120
104
90
126
119
101
100
99
98
97
98
99
100
101
102
103
104
105
106
105
104
103
89
125
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
96
102
88
124
119
107
95
101
87
123
120
108
94
100
86
122
121
109
93
99
85
121
122
110
92
98
84
120
123
111
91
97
83
119
124
112
90
96
82
118
125
113
89
95
94
93
92
91
90
89
88
87
86
87
88
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
131
130
129
128
127
126
114
88
85
80
116
130
115
87
84
79
115
131
116
86
83
78
114
132
117
85
82
77
113
133
118
84
81
76
112
134
119
83
80
75
111
135
120
82
79
74
110
136
121
81
78
73
109
137
122
80
77
72
108
136
123
79
76
71
107
135
124
78
75
70
106
134
125
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
69
105
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
131
130
129
128
127
126
76
64
68
104
124
127
75
63
67
103
123
128
74
62
66
102
122
129
73
61
65
101
121
130
72
60
64
100
120
131
71
59
63
99
119
131
70
58
62
98
118
130
69
57
61
97
117
129
68
56
60
96
116
128
67
55
59
95
115
127
66
54
58
94
114
126
65
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
125
64
44
68
82
104
124
63
43
67
83
103
123
62
42
66
84
102
122
61
41
65
85
101
121
60
40
64
86
100
120
59
39
63
87
99
119
58
38
62
88
98
118
57
37
61
89
97
117
56
36
60
90
96
116
55
35
59
91
95
115
54
34
58
92
94
114
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
45
46
47
48
49
50
51
52
53
54
55
56
57
93
92
91
90
89
88
87
86
85
84
83
82
81
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
46
32
44
80
92
106
47
31
43
79
91
107
48
30
42
78
90
108
49
29
41
77
89
109
50
28
40
76
88
110
51
27
39
75
87
111
52
26
38
74
86
112
53
25
37
73
85
113
52
24
36
72
84
114
51
23
35
71
83
115
50
22
34
70
82
116
41
42
43
44
45
46
47
48
49
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
117
118
119
120
121
122
123
124
125
40
20
46
58
82
124
39
19
47
59
83
123
38
18
48
60
84
122
37
17
49
61
85
121
36
16
50
62
86
120
35
15
51
63
87
119
34
14
52
64
88
118
33
13
53
65
89
117
32
12
54
66
90
116
31
11
55
67
91
115
30
10
56
68
92
114
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
69
68
67
66
65
64
63
62
61
60
59
58
57
69
70
71
72
73
74
75
76
77
78
79
80
81
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
30
8
70
82
94
114
31
7
71
83
95
115
32
6
72
84
96
116
31
5
73
85
97
117
30
4
74
86
98
118
29
3
75
87
99
119
28
2
76
88
100
120
27
1
77
89
101
121
26
0
183
184
185
186
187
188
189
190
191
192
193
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
169
170
171
172
173
174
175
176
177
178
179
180
181
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
204
203
202
201
200
199
198
197
196
195
194
193
182
172
168
180
184
192
181
171
167
179
183
191
180
170
166
178
182
190
179
169
165
177
181
189
178
168
164
176
180
188
177
167
163
175
179
187
176
166
162
174
178
186
175
165
161
173
177
185
174
164
160
172
176
184
173
163
159
171
175
183
172
162
158
170
174
182
171
159
160
161
162
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
168
167
166
165
166
167
168
169
170
171
172
173
172
171
170
169
181
170
158
152
156
168
164
168
180
169
157
151
155
167
163
167
179
168
156
150
154
166
162
166
178
167
155
149
153
165
161
165
177
166
154
148
152
164
160
164
176
165
153
147
151
163
159
163
175
164
152
146
150
162
158
162
174
163
162
161
160
159
158
157
156
155
154
153
152
151
145
149
161
157
161
162
163
164
165
166
167
168
169
170
171
172
173
150
144
148
160
156
160
149
143
147
159
155
159
148
142
146
158
154
158
147
141
145
157
153
157
146
140
144
156
152
156
145
139
143
155
151
155
144
138
142
154
150
154
143
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
153
142
128
140
152
141
127
139
151
140
126
138
150
137
136
135
134
133
134
135
136
137
138
139
140
141
142
141
140
139
125
137
149
150
151
151
150
149
148
147
146
145
144
143
142
141
140
139
138
132
138
124
136
148
143
131
137
123
135
147
143
130
136
122
134
146
142
129
135
121
133
145
141
128
134
120
132
144
140
127
133
119
131
143
139
126
132
118
130
142
138
125
131
130
129
128
127
126
125
124
123
122
123
124
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
136
135
134
133
134
135
136
137
138
139
140
141
137
124
121
116
128
132
136
123
120
115
127
131
135
122
119
114
126
130
134
121
118
113
125
129
133
120
117
112
124
128
132
119
116
111
123
127
131
118
115
110
122
126
130
117
114
109
121
125
129
116
113
108
120
124
128
115
112
107
119
123
127
114
111
106
118
122
126
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
105
117
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
112
100
104
116
112
124
111
99
103
115
111
123
110
98
102
114
110
122
109
97
101
113
109
121
108
96
100
112
108
120
107
95
99
111
107
119
106
94
98
110
106
118
105
93
97
109
105
117
104
92
96
108
104
116
103
91
95
107
103
115
102
90
94
106
102
114
101
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
113
100
80
80
92
92
112
99
79
79
91
91
111
98
78
78
90
90
110
97
77
77
89
89
109
96
76
76
88
88
108
95
75
75
87
87
107
94
74
74
86
86
106
93
73
73
85
85
105
92
72
72
84
84
104
91
71
71
83
83
103
90
70
70
82
82
102
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
57
58
59
60
61
62
63
64
65
66
67
68
69
81
80
79
78
77
76
75
74
73
72
71
70
69
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
82
68
56
68
80
94
83
67
55
67
79
95
84
66
54
66
78
96
85
65
53
65
77
97
86
64
52
64
76
98
87
63
51
63
75
99
88
62
50
62
74
100
89
61
49
61
73
101
90
60
48
60
72
102
91
59
47
59
71
103
92
58
46
58
70
104
101
100
99
98
97
96
95
94
93
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
105
106
107
108
109
110
111
112
113
100
58
32
46
70
112
99
59
31
47
71
111
98
60
30
48
72
110
97
61
29
49
73
109
96
62
28
50
74
108
95
63
27
51
75
107
94
64
26
52
76
106
93
65
25
53
77
105
92
66
24
54
78
104
91
67
23
55
79
103
90
68
22
56
80
102
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
9
10
11
12
13
14
15
16
17
18
19
20
21
57
58
59
60
59
58
57
56
55
54
53
52
51
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
90
70
8
50
82
102
91
71
7
49
83
103
92
72
6
48
84
104
93
73
5
47
85
105
94
74
4
46
86
106
95
75
3
45
87
107
96
76
2
44
88
108
97
77
1
43
89
109
98
78
0
195
196
197
198
199
200
201
202
203
204
205
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
181
180
179
178
177
176
175
174
173
172
171
170
169
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
192
191
190
189
188
187
186
185
184
183
182
181
194
184
180
168
172
180
193
183
179
167
171
179
192
182
178
166
170
178
191
181
177
165
169
177
190
180
176
164
168
176
189
179
175
163
167
175
188
178
174
162
166
174
187
177
173
161
165
173
186
176
172
160
164
172
185
175
171
159
163
171
184
174
170
158
162
170
183
171
172
173
174
173
172
171
170
169
168
167
166
165
166
167
168
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
160
159
158
157
169
182
170
164
168
156
152
156
168
181
169
163
167
155
151
155
167
180
168
162
166
154
150
154
166
179
167
161
165
153
149
153
165
178
166
160
164
152
148
152
164
177
165
159
163
151
147
151
163
176
164
158
162
150
146
150
162
175
174
173
172
171
170
169
168
167
166
165
164
163
157
161
149
145
149
150
151
152
153
154
155
156
157
158
159
160
161
162
156
160
148
144
148
161
155
159
147
143
147
160
154
158
146
142
146
159
153
157
145
141
145
158
152
156
144
140
144
157
151
155
143
139
143
156
150
154
142
138
142
155
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
141
154
140
128
140
153
139
127
139
152
138
126
138
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
152
151
137
125
137
138
139
140
141
140
139
138
137
136
135
134
133
134
135
136
137
143
150
136
124
136
132
143
149
135
123
135
131
142
148
134
122
134
130
141
147
133
121
133
129
140
146
132
120
132
128
139
145
131
119
131
127
138
144
130
118
130
126
137
143
142
141
140
139
138
137
136
135
134
135
136
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
124
123
122
121
122
123
124
125
126
127
128
129
125
136
133
128
116
120
124
135
132
127
115
119
123
134
131
126
114
118
122
133
130
125
113
117
121
132
129
124
112
116
120
131
128
123
111
115
119
130
127
122
110
114
118
129
126
121
109
113
117
128
125
120
108
112
116
127
124
119
107
111
115
126
123
118
106
110
114
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
117
105
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
124
112
116
104
100
112
123
111
115
103
99
111
122
110
114
102
98
110
121
109
113
101
97
109
120
108
112
100
96
108
119
107
111
99
95
107
118
106
110
98
94
106
117
105
109
97
93
105
116
104
108
96
92
104
115
103
107
95
91
103
114
102
106
94
90
102
113
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
101
112
92
92
80
80
100
111
91
91
79
79
99
110
90
90
78
78
98
109
89
89
77
77
97
108
88
88
76
76
96
107
87
87
75
75
95
106
86
86
74
74
94
105
85
85
73
73
93
104
84
84
72
72
92
103
83
83
71
71
91
102
82
82
70
70
90
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
69
70
71
72
73
74
75
76
77
78
79
80
81
69
68
67
66
65
64
63
62
61
60
59
58
57
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
94
80
68
56
68
82
95
79
67
55
67
83
96
78
66
54
66
84
97
77
65
53
65
85
98
76
64
52
64
86
99
75
63
51
63
87
100
74
62
50
62
88
101
73
61
49
61
89
102
72
60
48
60
90
103
71
59
47
59
91
104
70
58
46
58
92
113
112
111
110
109
108
107
106
105
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
93
94
95
96
97
98
99
100
101
112
70
46
32
58
100
111
71
47
31
59
99
110
72
48
30
60
98
109
73
49
29
61
97
108
74
50
28
62
96
107
75
51
27
63
95
106
76
52
26
64
94
105
77
53
25
65
93
104
78
54
24
66
92
103
79
55
23
67
91
102
80
56
22
68
90
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
51
52
53
54
55
56
57
58
59
60
59
58
57
21
20
19
18
17
16
15
14
13
12
11
10
9
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
102
82
50
8
70
90
103
83
49
7
71
91
104
84
48
6
72
92
105
85
47
5
73
93
106
86
46
4
74
94
107
87
45
3
75
95
108
88
44
2
76
96
109
89
43
1
77
97
110
90
42
0
162
163
164
165
166
167
168
169
170
171
172
173
174
175
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
145
144
143
142
141
140
139
138
137
136
135
134
133
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
148
147
146
145
161
156
144
132
136
144
160
155
143
131
135
143
159
154
142
130
134
142
158
153
141
129
133
141
157
152
140
128
132
140
156
151
139
127
131
139
155
150
138
126
130
138
154
149
137
125
129
137
153
148
136
124
128
136
152
147
135
123
127
135
151
146
134
122
126
134
150
138
139
140
141
142
143
144
145
146
147
148
149
150
151
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
124
123
122
121
133
149
137
151
132
120
116
120
132
148
136
151
131
119
115
119
131
147
135
150
130
118
114
118
130
146
134
149
129
117
113
117
129
145
133
148
128
116
112
116
128
144
132
147
127
115
111
115
127
143
131
146
126
114
110
114
126
142
141
140
139
138
137
136
135
134
133
132
131
130
145
125
113
109
113
114
115
116
117
118
119
120
121
122
123
124
125
129
144
124
112
108
112
128
143
123
111
107
111
127
142
122
110
106
110
126
141
121
109
105
109
125
140
120
108
104
108
124
139
119
107
103
107
123
138
118
106
102
106
122
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
105
121
128
92
104
120
127
91
103
119
126
90
102
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
125
89
101
102
103
104
105
104
103
102
101
100
99
98
97
98
99
100
101
107
119
124
88
100
96
108
120
123
87
99
95
109
121
122
86
98
94
110
122
121
85
97
93
111
123
120
84
96
92
112
124
119
83
95
91
113
125
118
82
94
90
114
126
127
128
129
130
131
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
88
87
86
85
86
87
88
89
90
91
92
93
89
115
129
116
80
84
88
116
130
115
79
83
87
117
131
114
78
82
86
118
132
113
77
81
85
119
133
112
76
80
84
120
134
111
75
79
83
121
135
110
74
78
82
122
136
109
73
77
81
123
137
108
72
76
80
124
136
107
71
75
79
125
135
106
70
74
78
126
127
128
129
130
131
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
105
69
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
127
124
104
68
64
76
128
123
103
67
63
75
129
122
102
66
62
74
130
121
101
65
61
73
131
120
100
64
60
72
131
119
99
63
59
71
130
118
98
62
58
70
129
117
97
61
57
69
128
116
96
60
56
68
127
115
95
59
55
67
126
114
94
58
54
66
125
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
65
124
104
82
68
44
64
123
103
83
67
43
63
122
102
84
66
42
62
121
101
85
65
41
61
120
100
86
64
40
60
119
99
87
63
39
59
118
98
88
62
38
58
117
97
89
61
37
57
116
96
90
60
36
56
115
95
91
59
35
55
114
94
92
58
34
54
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
81
82
83
84
85
86
87
88
89
90
91
92
93
57
56
55
54
53
52
51
50
49
48
47
46
45
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
106
92
80
44
32
46
107
91
79
43
31
47
108
90
78
42
30
48
109
89
77
41
29
49
110
88
76
40
28
50
111
87
75
39
27
51
112
86
74
38
26
52
113
85
73
37
25
53
114
84
72
36
24
52
115
83
71
35
23
51
116
82
70
34
22
50
125
124
123
122
121
120
119
118
117
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
49
48
47
46
45
44
43
42
41
124
82
58
46
20
40
123
83
59
47
19
39
122
84
60
48
18
38
121
85
61
49
17
37
120
86
62
50
16
36
119
87
63
51
15
35
118
88
64
52
14
34
117
89
65
53
13
33
116
90
66
54
12
32
115
91
67
55
11
31
114
92
68
56
10
30
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
81
80
79
78
77
76
75
74
73
72
71
70
69
57
58
59
60
61
62
63
64
65
66
67
68
69
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
114
94
82
70
8
30
115
95
83
71
7
31
116
96
84
72
6
32
117
97
85
73
5
31
118
98
86
74
4
30
119
99
87
75
3
29
120
100
88
76
2
28
121
101
89
77
1
27
122
102
90
78
0
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
157
165
164
152
156
148
156
164
163
151
155
147
155
163
162
150
154
146
154
162
161
149
153
145
153
161
160
148
152
144
152
160
159
147
151
143
151
159
158
146
150
142
150
158
157
145
149
141
149
157
156
144
148
140
148
156
155
143
147
139
147
155
154
142
146
138
146
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
159
158
157
156
155
154
153
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
137
145
133
147
152
140
136
124
136
144
132
148
151
139
135
123
135
143
131
149
150
138
134
122
134
142
130
150
149
137
133
121
133
141
129
151
148
136
132
120
132
140
128
152
147
135
131
119
131
139
127
153
146
134
130
118
130
138
137
136
135
134
133
132
131
130
129
128
127
126
154
145
133
129
117
118
119
120
121
122
123
124
125
126
127
128
129
125
155
144
132
128
116
124
156
143
131
127
115
123
157
142
130
126
114
122
158
141
129
125
113
121
159
140
128
124
112
120
159
139
127
123
111
119
158
138
126
122
110
118
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
109
117
148
112
108
116
147
111
107
115
146
110
106
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
145
109
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
103
115
144
108
106
92
104
116
143
107
107
91
105
117
142
106
108
90
106
118
141
105
109
89
107
119
140
104
110
88
108
120
139
103
111
87
109
121
138
102
112
86
110
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
108
107
106
105
106
107
108
109
110
111
112
113
85
111
132
136
100
104
84
112
133
135
99
103
83
113
134
134
98
102
82
114
135
133
97
101
81
115
136
132
96
100
80
116
137
131
95
99
79
117
138
130
94
98
78
118
139
129
93
97
77
119
140
128
92
96
76
120
141
127
91
95
75
121
142
126
90
94
74
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
125
89
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
123
135
124
88
84
72
124
136
123
87
83
71
125
137
122
86
82
70
126
138
121
85
81
69
127
139
120
84
80
68
128
139
119
83
79
67
129
138
118
82
78
66
130
137
117
81
77
65
131
136
116
80
76
64
132
135
115
79
75
63
133
134
114
78
74
62
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
61
135
124
102
88
64
60
136
123
103
87
63
59
137
122
104
86
62
58
138
121
105
85
61
57
139
120
106
84
60
56
139
119
107
83
59
55
138
118
108
82
58
54
137
117
109
81
57
53
136
116
110
80
56
52
135
115
111
79
55
51
134
114
112
78
54
50
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
101
102
103
104
105
106
107
108
109
110
111
112
113
77
76
75
74
73
72
71
70
69
68
67
66
65
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
126
112
100
64
52
40
127
111
99
63
51
39
128
110
98
62
50
38
129
109
97
61
49
37
130
108
96
60
48
36
131
107
95
59
47
35
132
106
94
58
46
34
133
105
93
57
45
33
134
104
92
56
44
32
135
103
91
55
43
31
136
102
90
54
42
30
145
144
143
142
141
140
139
138
137
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
29
28
27
26
25
24
23
22
21
144
102
78
66
40
20
143
103
79
67
39
19
142
104
80
68
38
18
141
105
81
69
37
17
140
106
82
70
36
16
139
107
83
71
35
15
138
108
84
72
34
14
137
109
85
73
33
13
136
110
86
74
32
12
135
111
87
75
31
11
134
112
88
76
30
10
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
101
100
99
98
97
96
95
94
93
92
91
90
89
77
78
79
80
81
82
83
84
85
86
87
88
89
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
134
114
102
90
30
8
135
115
103
91
31
7
136
116
104
92
32
6
137
117
105
93
31
5
138
118
106
94
30
4
139
119
107
95
29
3
140
120
108
96
28
2
141
121
109
97
27
1
142
122
110
98
26
0
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
149
157
153
165
166
158
148
156
152
164
165
157
147
155
151
163
164
156
146
154
150
162
163
155
145
153
149
161
162
154
144
152
148
160
161
153
143
151
147
159
160
152
142
150
146
158
159
151
141
149
145
157
158
150
140
148
144
156
157
149
139
147
143
155
156
148
138
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
154
155
156
157
158
159
160
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
147
137
125
137
141
153
148
134
146
136
124
136
140
152
149
133
145
135
123
135
139
151
150
132
144
134
122
134
138
150
151
131
143
133
121
133
137
149
152
130
142
132
120
132
136
148
153
129
141
131
119
131
135
147
154
128
140
130
129
128
127
126
125
124
123
122
121
120
119
118
130
134
146
155
127
128
129
130
131
132
133
134
135
136
137
138
139
117
129
133
145
156
126
116
128
132
144
157
125
115
127
131
143
158
124
114
126
130
142
159
123
113
125
129
141
160
122
112
124
128
140
160
121
111
123
127
139
159
120
110
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
119
109
113
149
118
108
112
148
117
107
111
147
116
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
110
146
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
93
107
109
145
116
104
92
108
108
144
117
105
91
109
107
143
118
106
90
110
106
142
119
107
89
111
105
141
120
108
88
112
104
140
121
109
87
113
103
139
122
110
86
114
115
114
113
112
111
110
109
108
107
108
109
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
111
85
106
101
137
132
112
84
105
100
136
133
113
83
104
99
135
134
114
82
103
98
134
135
115
81
102
97
133
136
116
80
101
96
132
137
117
79
100
95
131
138
118
78
99
94
130
139
119
77
98
93
129
140
120
76
97
92
128
141
121
75
96
91
127
142
122
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
90
126
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
73
85
89
125
136
124
72
84
88
124
137
125
71
83
87
123
138
126
70
82
86
122
139
127
69
81
85
121
140
128
68
80
84
120
140
129
67
79
83
119
139
130
66
78
82
118
138
131
65
77
81
117
137
132
64
76
80
116
136
133
63
75
79
115
135
134
62
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
61
65
89
103
125
136
60
64
88
104
124
137
59
63
87
105
123
138
58
62
86
106
122
139
57
61
85
107
121
140
56
60
84
108
120
140
55
59
83
109
119
139
54
58
82
110
118
138
53
57
81
111
117
137
52
56
80
112
116
136
51
55
79
113
115
135
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
66
67
68
69
70
71
72
73
74
75
76
77
78
114
113
112
111
110
109
108
107
106
105
104
103
102
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
41
53
65
101
113
127
40
52
64
100
112
128
39
51
63
99
111
129
38
50
62
98
110
130
37
49
61
97
109
131
36
48
60
96
108
132
35
47
59
95
107
133
34
46
58
94
106
134
33
45
57
93
105
135
32
44
56
92
104
136
31
43
55
91
103
137
22
23
24
25
26
27
28
29
30
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
138
139
140
141
142
143
144
145
146
21
41
67
79
103
145
20
40
68
80
104
144
19
39
69
81
105
143
18
38
70
82
106
142
17
37
71
83
107
141
16
36
72
84
108
140
15
35
73
85
109
139
14
34
74
86
110
138
13
33
75
87
111
137
12
32
76
88
112
136
11
31
77
89
113
135
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
90
89
88
87
86
85
84
83
82
81
80
79
78
90
91
92
93
94
95
96
97
98
99
100
101
102
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
9
31
91
103
115
135
8
32
92
104
116
136
7
31
93
105
117
137
6
30
94
106
118
138
5
29
95
107
119
139
4
28
96
108
120
140
3
27
97
109
121
141
2
26
98
110
122
142
1
25
99
111
123
143
0
148
149
150
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
134
135
136
137
138
139
140
141
142
143
144
145
146
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
176
175
174
173
172
171
170
169
168
167
166
165
164
163
147
137
133
145
157
162
146
136
132
144
156
161
145
135
131
143
155
160
144
134
130
142
154
159
143
133
129
141
153
158
142
132
128
140
152
157
141
131
127
139
151
156
140
130
126
138
150
155
139
129
125
137
149
154
138
128
124
136
148
153
137
127
123
135
147
152
136
124
125
126
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
152
151
150
149
148
147
146
145
144
143
142
141
140
139
151
135
123
117
121
133
152
138
150
134
122
116
120
132
152
137
149
133
121
115
119
131
151
136
148
132
120
114
118
130
150
135
147
131
119
113
117
129
149
134
146
130
118
112
116
128
148
133
145
129
117
111
115
127
147
132
144
128
127
126
125
124
123
122
121
120
119
118
117
116
110
114
126
146
131
132
133
134
135
136
137
138
139
140
141
142
143
115
109
113
125
145
130
114
108
112
124
144
129
113
107
111
123
143
128
112
106
110
122
142
127
111
105
109
121
141
126
110
104
108
120
140
125
109
103
107
119
139
124
108
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
123
107
93
129
122
106
92
128
121
105
91
127
120
102
101
100
99
98
99
100
101
102
103
104
105
106
107
106
105
104
90
126
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
97
103
89
125
120
108
96
102
88
124
121
109
95
101
87
123
122
110
94
100
86
122
123
111
93
99
85
121
124
112
92
98
84
120
125
113
91
97
83
119
126
114
90
96
95
94
93
92
91
90
89
88
87
88
89
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
132
131
130
129
128
127
115
89
86
81
117
131
116
88
85
80
116
132
117
87
84
79
115
133
118
86
83
78
114
134
119
85
82
77
113
135
120
84
81
76
112
136
121
83
80
75
111
137
122
82
79
74
110
138
123
81
78
73
109
137
124
80
77
72
108
136
125
79
76
71
107
135
126
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
70
106
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
132
131
130
129
128
127
77
65
69
105
125
128
76
64
68
104
124
129
75
63
67
103
123
130
74
62
66
102
122
131
73
61
65
101
121
132
72
60
64
100
120
132
71
59
63
99
119
131
70
58
62
98
118
130
69
57
61
97
117
129
68
56
60
96
116
128
67
55
59
95
115
127
66
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
126
65
45
69
83
105
125
64
44
68
84
104
124
63
43
67
85
103
123
62
42
66
86
102
122
61
41
65
87
101
121
60
40
64
88
100
120
59
39
63
89
99
119
58
38
62
90
98
118
57
37
61
91
97
117
56
36
60
92
96
116
55
35
59
93
95
115
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
46
47
48
49
50
51
52
53
54
55
56
57
58
94
93
92
91
90
89
88
87
86
85
84
83
82
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
47
33
45
81
93
107
48
32
44
80
92
108
49
31
43
79
91
109
50
30
42
78
90
110
51
29
41
77
89
111
52
28
40
76
88
112
53
27
39
75
87
113
54
26
38
74
86
114
53
25
37
73
85
115
52
24
36
72
84
116
51
23
35
71
83
117
42
43
44
45
46
47
48
49
50
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
118
119
120
121
122
123
124
125
126
41
21
47
59
83
125
40
20
48
60
84
124
39
19
49
61
85
123
38
18
50
62
86
122
37
17
51
63
87
121
36
16
52
64
88
120
35
15
53
65
89
119
34
14
54
66
90
118
33
13
55
67
91
117
32
12
56
68
92
116
31
11
57
69
93
115
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
70
69
68
67
66
65
64
63
62
61
60
59
58
70
71
72
73
74
75
76
77
78
79
80
81
82
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
31
9
71
83
95
115
32
8
72
84
96
116
31
7
73
85
97
117
30
6
74
86
98
118
29
5
75
87
99
119
28
4
76
88
100
120
27
3
77
89
101
121
26
2
78
90
102
122
25
1
79
91
103
123
24
0
184
185
186
187
188
189
190
191
192
193
194
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
170
171
172
173
174
175
176
177
178
179
180
181
182
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
205
204
203
202
201
200
199
198
197
196
195
194
183
173
169
181
185
193
182
172
168
180
184
192
181
171
167
179
183
191
180
170
166
178
182
190
179
169
165
177
181
189
178
168
164
176
180
188
177
167
163
175
179
187
176
166
162
174
178
186
175
165
161
173
177
185
174
164
160
172
176
184
173
163
159
171
175
183
172
160
161
162
163
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
169
168
167
166
167
168
169
170
171
172
173
174
173
172
171
170
182
171
159
153
157
169
165
169
181
170
158
152
156
168
164
168
180
169
157
151
155
167
163
167
179
168
156
150
154
166
162
166
178
167
155
149
153
165
161
165
177
166
154
148
152
164
160
164
176
165
153
147
151
163
159
163
175
164
163
162
161
160
159
158
157
156
155
154
153
152
146
150
162
158
162
163
164
165
166
167
168
169
170
171
172
173
174
151
145
149
161
157
161
150
144
148
160
156
160
149
143
147
159
155
159
148
142
146
158
154
158
147
141
145
157
153
157
146
140
144
156
152
156
145
139
143
155
151
155
144
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
154
143
129
141
153
142
128
140
152
141
127
139
151
138
137
136
135
134
135
136
137
138
139
140
141
142
143
142
141
140
126
138
150
151
152
152
151
150
149
148
147
146
145
144
143
142
141
140
139
133
139
125
137
149
144
132
138
124
136
148
144
131
137
123
135
147
143
130
136
122
134
146
142
129
135
121
133
145
141
128
134
120
132
144
140
127
133
119
131
143
139
126
132
131
130
129
128
127
126
125
124
123
124
125
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
137
136
135
134
135
136
137
138
139
140
141
142
138
125
122
117
129
133
137
124
121
116
128
132
136
123
120
115
127
131
135
122
119
114
126
130
134
121
118
113
125
129
133
120
117
112
124
128
132
119
116
111
123
127
131
118
115
110
122
126
130
117
114
109
121
125
129
116
113
108
120
124
128
115
112
107
119
123
127
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
106
118
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
113
101
105
117
113
125
112
100
104
116
112
124
111
99
103
115
111
123
110
98
102
114
110
122
109
97
101
113
109
121
108
96
100
112
108
120
107
95
99
111
107
119
106
94
98
110
106
118
105
93
97
109
105
117
104
92
96
108
104
116
103
91
95
107
103
115
102
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
114
101
81
81
93
93
113
100
80
80
92
92
112
99
79
79
91
91
111
98
78
78
90
90
110
97
77
77
89
89
109
96
76
76
88
88
108
95
75
75
87
87
107
94
74
74
86
86
106
93
73
73
85
85
105
92
72
72
84
84
104
91
71
71
83
83
103
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
58
59
60
61
62
63
64
65
66
67
68
69
70
82
81
80
79
78
77
76
75
74
73
72
71
70
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
83
69
57
69
81
95
84
68
56
68
80
96
85
67
55
67
79
97
86
66
54
66
78
98
87
65
53
65
77
99
88
64
52
64
76
100
89
63
51
63
75
101
90
62
50
62
74
102
91
61
49
61
73
103
92
60
48
60
72
104
93
59
47
59
71
105
102
101
100
99
98
97
96
95
94
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
106
107
108
109
110
111
112
113
114
101
59
33
47
71
113
100
60
32
48
72
112
99
61
31
49
73
111
98
62
30
50
74
110
97
63
29
51
75
109
96
64
28
52
76
108
95
65
27
53
77
107
94
66
26
54
78
106
93
67
25
55
79
105
92
68
24
56
80
104
91
69
23
57
81
103
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
10
11
12
13
14
15
16
17
18
19
20
21
22
58
59
60
59
58
57
56
55
54
53
52
51
50
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
91
71
9
49
83
103
92
72
8
48
84
104
93
73
7
47
85
105
94
74
6
46
86
106
95
75
5
45
87
107
96
76
4
44
88
108
97
77
3
43
89
109
98
78
2
42
90
110
99
79
1
41
91
111
100
80
0
196
197
198
199
200
201
202
203
204
205
206
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
182
181
180
179
178
177
176
175
174
173
172
171
170
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
193
192
191
190
189
188
187
186
185
184
183
182
195
185
181
169
173
181
194
184
180
168
172
180
193
183
179
167
171
179
192
182
178
166
170
178
191
181
177
165
169
177
190
180
176
164
168
176
189
179
175
163
167
175
188
178
174
162
166
174
187
177
173
161
165
173
186
176
172
160
164
172
185
175
171
159
163
171
184
172
173
174
175
174
173
172
171
170
169
168
167
166
167
168
169
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
161
160
159
158
170
183
171
165
169
157
153
157
169
182
170
164
168
156
152
156
168
181
169
163
167
155
151
155
167
180
168
162
166
154
150
154
166
179
167
161
165
153
149
153
165
178
166
160
164
152
148
152
164
177
165
159
163
151
147
151
163
176
175
174
173
172
171
170
169
168
167
166
165
164
158
162
150
146
150
151
152
153
154
155
156
157
158
159
160
161
162
163
157
161
149
145
149
162
156
160
148
144
148
161
155
159
147
143
147
160
154
158
146
142
146
159
153
157
145
141
145
158
152
156
144
140
144
157
151
155
143
139
143
156
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
142
155
141
129
141
154
140
128
140
153
139
127
139
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
153
152
138
126
138
139
140
141
142
141
140
139
138
137
136
135
134
135
136
137
138
144
151
137
125
137
133
144
150
136
124
136
132
143
149
135
123
135
131
142
148
134
122
134
130
141
147
133
121
133
129
140
146
132
120
132
128
139
145
131
119
131
127
138
144
143
142
141
140
139
138
137
136
135
136
137
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
125
124
123
122
123
124
125
126
127
128
129
130
126
137
134
129
117
121
125
136
133
128
116
120
124
135
132
127
115
119
123
134
131
126
114
118
122
133
130
125
113
117
121
132
129
124
112
116
120
131
128
123
111
115
119
130
127
122
110
114
118
129
126
121
109
113
117
128
125
120
108
112
116
127
124
119
107
111
115
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
118
106
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
125
113
117
105
101
113
124
112
116
104
100
112
123
111
115
103
99
111
122
110
114
102
98
110
121
109
113
101
97
109
120
108
112
100
96
108
119
107
111
99
95
107
118
106
110
98
94
106
117
105
109
97
93
105
116
104
108
96
92
104
115
103
107
95
91
103
114
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
102
113
93
93
81
81
101
112
92
92
80
80
100
111
91
91
79
79
99
110
90
90
78
78
98
109
89
89
77
77
97
108
88
88
76
76
96
107
87
87
75
75
95
106
86
86
74
74
94
105
85
85
73
73
93
104
84
84
72
72
92
103
83
83
71
71
91
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
70
71
72
73
74
75
76
77
78
79
80
81
82
70
69
68
67
66
65
64
63
62
61
60
59
58
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
95
81
69
57
69
83
96
80
68
56
68
84
97
79
67
55
67
85
98
78
66
54
66
86
99
77
65
53
65
87
100
76
64
52
64
88
101
75
63
51
63
89
102
74
62
50
62
90
103
73
61
49
61
91
104
72
60
48
60
92
105
71
59
47
59
93
114
113
112
111
110
109
108
107
106
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
94
95
96
97
98
99
100
101
102
113
71
47
33
59
101
112
72
48
32
60
100
111
73
49
31
61
99
110
74
50
30
62
98
109
75
51
29
63
97
108
76
52
28
64
96
107
77
53
27
65
95
106
78
54
26
66
94
105
79
55
25
67
93
104
80
56
24
68
92
103
81
57
23
69
91
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
50
51
52
53
54
55
56
57
58
59
60
59
58
22
21
20
19
18
17
16
15
14
13
12
11
10
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
103
83
49
9
71
91
104
84
48
8
72
92
105
85
47
7
73
93
106
86
46
6
74
94
107
87
45
5
75
95
108
88
44
4
76
96
109
89
43
3
77
97
110
90
42
2
78
98
111
91
41
1
79
99
112
92
40
0
163
164
165
166
167
168
169
170
171
172
173
174
175
176
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
146
145
144
143
142
141
140
139
138
137
136
135
134
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
149
148
147
146
162
157
145
133
137
145
161
156
144
132
136
144
160
155
143
131
135
143
159
154
142
130
134
142
158
153
141
129
133
141
157
152
140
128
132
140
156
151
139
127
131
139
155
150
138
126
130
138
154
149
137
125
129
137
153
148
136
124
128
136
152
147
135
123
127
135
151
139
140
141
142
143
144
145
146
147
148
149
150
151
152
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
125
124
123
122
134
150
138
152
133
121
117
121
133
149
137
152
132
120
116
120
132
148
136
151
131
119
115
119
131
147
135
150
130
118
114
118
130
146
134
149
129
117
113
117
129
145
133
148
128
116
112
116
128
144
132
147
127
115
111
115
127
143
142
141
140
139
138
137
136
135
134
133
132
131
146
126
114
110
114
115
116
117
118
119
120
121
122
123
124
125
126
130
145
125
113
109
113
129
144
124
112
108
112
128
143
123
111
107
111
127
142
122
110
106
110
126
141
121
109
105
109
125
140
120
108
104
108
124
139
119
107
103
107
123
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
106
122
129
93
105
121
128
92
104
120
127
91
103
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
126
90
102
103
104
105
106
105
104
103
102
101
100
99
98
99
100
101
102
108
120
125
89
101
97
109
121
124
88
100
96
110
122
123
87
99
95
111
123
122
86
98
94
112
124
121
85
97
93
113
125
120
84
96
92
114
126
119
83
95
91
115
127
128
129
130
131
132
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
89
88
87
86
87
88
89
90
91
92
93
94
90
116
130
117
81
85
89
117
131
116
80
84
88
118
132
115
79
83
87
119
133
114
78
82
86
120
134
113
77
81
85
121
135
112
76
80
84
122
136
111
75
79
83
123
137
110
74
78
82
124
138
109
73
77
81
125
137
108
72
76
80
126
136
107
71
75
79
127
128
129
130
131
132
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
106
70
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
128
125
105
69
65
77
129
124
104
68
64
76
130
123
103
67
63
75
131
122
102
66
62
74
132
121
101
65
61
73
132
120
100
64
60
72
131
119
99
63
59
71
130
118
98
62
58
70
129
117
97
61
57
69
128
116
96
60
56
68
127
115
95
59
55
67
126
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
66
125
105
83
69
45
65
124
104
84
68
44
64
123
103
85
67
43
63
122
102
86
66
42
62
121
101
87
65
41
61
120
100
88
64
40
60
119
99
89
63
39
59
118
98
90
62
38
58
117
97
91
61
37
57
116
96
92
60
36
56
115
95
93
59
35
55
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
82
83
84
85
86
87
88
89
90
91
92
93
94
58
57
56
55
54
53
52
51
50
49
48
47
46
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
107
93
81
45
33
47
108
92
80
44
32
48
109
91
79
43
31
49
110
90
78
42
30
50
111
89
77
41
29
51
112
88
76
40
28
52
113
87
75
39
27
53
114
86
74
38
26
54
115
85
73
37
25
53
116
84
72
36
24
52
117
83
71
35
23
51
126
125
124
123
122
121
120
119
118
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
50
49
48
47
46
45
44
43
42
125
83
59
47
21
41
124
84
60
48
20
40
123
85
61
49
19
39
122
86
62
50
18
38
121
87
63
51
17
37
120
88
64
52
16
36
119
89
65
53
15
35
118
90
66
54
14
34
117
91
67
55
13
33
116
92
68
56
12
32
115
93
69
57
11
31
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
82
81
80
79
78
77
76
75
74
73
72
71
70
58
59
60
61
62
63
64
65
66
67
68
69
70
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
115
95
83
71
9
31
116
96
84
72
8
32
117
97
85
73
7
31
118
98
86
74
6
30
119
99
87
75
5
29
120
100
88
76
4
28
121
101
89
77
3
27
122
102
90
78
2
26
123
103
91
79
1
25
124
104
92
80
0
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
158
166
165
153
157
149
157
165
164
152
156
148
156
164
163
151
155
147
155
163
162
150
154
146
154
162
161
149
153
145
153
161
160
148
152
144
152
160
159
147
151
143
151
159
158
146
150
142
150
158
157
145
149
141
149
157
156
144
148
140
148
156
155
143
147
139
147
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
160
159
158
157
156
155
154
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
138
146
134
148
153
141
137
125
137
145
133
149
152
140
136
124
136
144
132
150
151
139
135
123
135
143
131
151
150
138
134
122
134
142
130
152
149
137
133
121
133
141
129
153
148
136
132
120
132
140
128
154
147
135
131
119
131
139
138
137
136
135
134
133
132
131
130
129
128
127
155
146
134
130
118
119
120
121
122
123
124
125
126
127
128
129
130
126
156
145
133
129
117
125
157
144
132
128
116
124
158
143
131
127
115
123
159
142
130
126
114
122
160
141
129
125
113
121
160
140
128
124
112
120
159
139
127
123
111
119
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
110
118
149
113
109
117
148
112
108
116
147
111
107
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
146
110
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
104
116
145
109
107
93
105
117
144
108
108
92
106
118
143
107
109
91
107
119
142
106
110
90
108
120
141
105
111
89
109
121
140
104
112
88
110
122
139
103
113
87
111
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
109
108
107
106
107
108
109
110
111
112
113
114
86
112
133
137
101
105
85
113
134
136
100
104
84
114
135
135
99
103
83
115
136
134
98
102
82
116
137
133
97
101
81
117
138
132
96
100
80
118
139
131
95
99
79
119
140
130
94
98
78
120
141
129
93
97
77
121
142
128
92
96
76
122
143
127
91
95
75
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
126
90
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
124
136
125
89
85
73
125
137
124
88
84
72
126
138
123
87
83
71
127
139
122
86
82
70
128
140
121
85
81
69
129
140
120
84
80
68
130
139
119
83
79
67
131
138
118
82
78
66
132
137
117
81
77
65
133
136
116
80
76
64
134
135
115
79
75
63
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
62
136
125
103
89
65
61
137
124
104
88
64
60
138
123
105
87
63
59
139
122
106
86
62
58
140
121
107
85
61
57
140
120
108
84
60
56
139
119
109
83
59
55
138
118
110
82
58
54
137
117
111
81
57
53
136
116
112
80
56
52
135
115
113
79
55
51
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
102
103
104
105
106
107
108
109
110
111
112
113
114
78
77
76
75
74
73
72
71
70
69
68
67
66
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
127
113
101
65
53
41
128
112
100
64
52
40
129
111
99
63
51
39
130
110
98
62
50
38
131
109
97
61
49
37
132
108
96
60
48
36
133
107
95
59
47
35
134
106
94
58
46
34
135
105
93
57
45
33
136
104
92
56
44
32
137
103
91
55
43
31
146
145
144
143
142
141
140
139
138
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
30
29
28
27
26
25
24
23
22
145
103
79
67
41
21
144
104
80
68
40
20
143
105
81
69
39
19
142
106
82
70
38
18
141
107
83
71
37
17
140
108
84
72
36
16
139
109
85
73
35
15
138
110
86
74
34
14
137
111
87
75
33
13
136
112
88
76
32
12
135
113
89
77
31
11
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
102
101
100
99
98
97
96
95
94
93
92
91
90
78
79
80
81
82
83
84
85
86
87
88
89
90
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
135
115
103
91
31
9
136
116
104
92
32
8
137
117
105
93
31
7
138
118
106
94
30
6
139
119
107
95
29
5
140
120
108
96
28
4
141
121
109
97
27
3
142
122
110
98
26
2
143
123
111
99
25
1
144
124
112
100
24
0
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
150
158
154
166
167
159
149
157
153
165
166
158
148
156
152
164
165
157
147
155
151
163
164
156
146
154
150
162
163
155
145
153
149
161
162
154
144
152
148
160
161
153
143
151
147
159
160
152
142
150
146
158
159
151
141
149
145
157
158
150
140
148
144
156
157
149
139
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
155
156
157
158
159
160
161
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
148
138
126
138
142
154
149
135
147
137
125
137
141
153
150
134
146
136
124
136
140
152
151
133
145
135
123
135
139
151
152
132
144
134
122
134
138
150
153
131
143
133
121
133
137
149
154
130
142
132
120
132
136
148
155
129
141
131
130
129
128
127
126
125
124
123
122
121
120
119
131
135
147
156
128
129
130
131
132
133
134
135
136
137
138
139
140
118
130
134
146
157
127
117
129
133
145
158
126
116
128
132
144
159
125
115
127
131
143
160
124
114
126
130
142
161
123
113
125
129
141
161
122
112
124
128
140
160
121
111
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
120
110
114
150
119
109
113
149
118
108
112
148
117
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
111
147
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
94
108
110
146
117
105
93
109
109
145
118
106
92
110
108
144
119
107
91
111
107
143
120
108
90
112
106
142
121
109
89
113
105
141
122
110
88
114
104
140
123
111
87
115
116
115
114
113
112
111
110
109
108
109
110
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
112
86
107
102
138
133
113
85
106
101
137
134
114
84
105
100
136
135
115
83
104
99
135
136
116
82
103
98
134
137
117
81
102
97
133
138
118
80
101
96
132
139
119
79
100
95
131
140
120
78
99
94
130
141
121
77
98
93
129
142
122
76
97
92
128
143
123
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
91
127
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
74
86
90
126
137
125
73
85
89
125
138
126
72
84
88
124
139
127
71
83
87
123
140
128
70
82
86
122
141
129
69
81
85
121
141
130
68
80
84
120
140
131
67
79
83
119
139
132
66
78
82
118
138
133
65
77
81
117
137
134
64
76
80
116
136
135
63
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
62
66
90
104
126
137
61
65
89
105
125
138
60
64
88
106
124
139
59
63
87
107
123
140
58
62
86
108
122
141
57
61
85
109
121
141
56
60
84
110
120
140
55
59
83
111
119
139
54
58
82
112
118
138
53
57
81
113
117
137
52
56
80
114
116
136
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
67
68
69
70
71
72
73
74
75
76
77
78
79
115
114
113
112
111
110
109
108
107
106
105
104
103
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
42
54
66
102
114
128
41
53
65
101
113
129
40
52
64
100
112
130
39
51
63
99
111
131
38
50
62
98
110
132
37
49
61
97
109
133
36
48
60
96
108
134
35
47
59
95
107
135
34
46
58
94
106
136
33
45
57
93
105
137
32
44
56
92
104
138
23
24
25
26
27
28
29
30
31
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
139
140
141
142
143
144
145
146
147
22
42
68
80
104
146
21
41
69
81
105
145
20
40
70
82
106
144
19
39
71
83
107
143
18
38
72
84
108
142
17
37
73
85
109
141
16
36
74
86
110
140
15
35
75
87
111
139
14
34
76
88
112
138
13
33
77
89
113
137
12
32
78
90
114
136
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
91
90
89
88
87
86
85
84
83
82
81
80
79
91
92
93
94
95
96
97
98
99
100
101
102
103
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
10
32
92
104
116
136
9
31
93
105
117
137
8
30
94
106
118
138
7
29
95
107
119
139
6
28
96
108
120
140
5
27
97
109
121
141
4
26
98
110
122
142
3
25
99
111
123
143
2
24
100
112
124
144
1
23
101
113
125
145
0
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
135
136
137
138
139
140
141
142
143
144
145
146
147
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
177
176
175
174
173
172
171
170
169
168
167
166
165
164
148
138
134
146
158
163
147
137
133
145
157
162
146
136
132
144
156
161
145
135
131
143
155
160
144
134
130
142
154
159
143
133
129
141
153
158
142
132
128
140
152
157
141
131
127
139
151
156
140
130
126
138
150
155
139
129
125
137
149
154
138
128
124
136
148
153
137
125
126
127
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
153
152
151
150
149
148
147
146
145
144
143
142
141
140
152
136
124
118
122
134
153
139
151
135
123
117
121
133
153
138
150
134
122
116
120
132
152
137
149
133
121
115
119
131
151
136
148
132
120
114
118
130
150
135
147
131
119
113
117
129
149
134
146
130
118
112
116
128
148
133
145
129
128
127
126
125
124
123
122
121
120
119
118
117
111
115
127
147
132
133
134
135
136
137
138
139
140
141
142
143
144
116
110
114
126
146
131
115
109
113
125
145
130
114
108
112
124
144
129
113
107
111
123
143
128
112
106
110
122
142
127
111
105
109
121
141
126
110
104
108
120
140
125
109
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
124
108
94
130
123
107
93
129
122
106
92
128
121
103
102
101
100
99
100
101
102
103
104
105
106
107
108
107
106
105
91
127
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
98
104
90
126
121
109
97
103
89
125
122
110
96
102
88
124
123
111
95
101
87
123
124
112
94
100
86
122
125
113
93
99
85
121
126
114
92
98
84
120
127
115
91
97
96
95
94
93
92
91
90
89
88
89
90
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
133
132
131
130
129
128
116
90
87
82
118
132
117
89
86
81
117
133
118
88
85
80
116
134
119
87
84
79
115
135
120
86
83
78
114
136
121
85
82
77
113
137
122
84
81
76
112
138
123
83
80
75
111
139
124
82
79
74
110
138
125
81
78
73
109
137
126
80
77
72
108
136
127
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
71
107
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
133
132
131
130
129
128
78
66
70
106
126
129
77
65
69
105
125
130
76
64
68
104
124
131
75
63
67
103
123
132
74
62
66
102
122
133
73
61
65
101
121
133
72
60
64
100
120
132
71
59
63
99
119
131
70
58
62
98
118
130
69
57
61
97
117
129
68
56
60
96
116
128
67
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
127
66
46
70
84
106
126
65
45
69
85
105
125
64
44
68
86
104
124
63
43
67
87
103
123
62
42
66
88
102
122
61
41
65
89
101
121
60
40
64
90
100
120
59
39
63
91
99
119
58
38
62
92
98
118
57
37
61
93
97
117
56
36
60
94
96
116
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
47
48
49
50
51
52
53
54
55
56
57
58
59
95
94
93
92
91
90
89
88
87
86
85
84
83
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
48
34
46
82
94
108
49
33
45
81
93
109
50
32
44
80
92
110
51
31
43
79
91
111
52
30
42
78
90
112
53
29
41
77
89
113
54
28
40
76
88
114
55
27
39
75
87
115
54
26
38
74
86
116
53
25
37
73
85
117
52
24
36
72
84
118
43
44
45
46
47
48
49
50
51
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
119
120
121
122
123
124
125
126
127
42
22
48
60
84
126
41
21
49
61
85
125
40
20
50
62
86
124
39
19
51
63
87
123
38
18
52
64
88
122
37
17
53
65
89
121
36
16
54
66
90
120
35
15
55
67
91
119
34
14
56
68
92
118
33
13
57
69
93
117
32
12
58
70
94
116
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
71
70
69
68
67
66
65
64
63
62
61
60
59
71
72
73
74
75
76
77
78
79
80
81
82
83
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
32
10
72
84
96
116
31
9
73
85
97
117
30
8
74
86
98
118
29
7
75
87
99
119
28
6
76
88
100
120
27
5
77
89
101
121
26
4
78
90
102
122
25
3
79
91
103
123
24
2
80
92
104
124
23
1
81
93
105
125
22
0
185
186
187
188
189
190
191
192
193
194
195
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
171
172
173
174
175
176
177
178
179
180
181
182
183
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
206
205
204
203
202
201
200
199
198
197
196
195
184
174
170
182
186
194
183
173
169
181
185
193
182
172
168
180
184
192
181
171
167
179
183
191
180
170
166
178
182
190
179
169
165
177
181
189
178
168
164
176
180
188
177
167
163
175
179
187
176
166
162
174
178
186
175
165
161
173
177
185
174
164
160
172
176
184
173
161
162
163
164
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
170
169
168
167
168
169
170
171
172
173
174
175
174
173
172
171
183
172
160
154
158
170
166
170
182
171
159
153
157
169
165
169
181
170
158
152
156
168
164
168
180
169
157
151
155
167
163
167
179
168
156
150
154
166
162
166
178
167
155
149
153
165
161
165
177
166
154
148
152
164
160
164
176
165
164
163
162
161
160
159
158
157
156
155
154
153
147
151
163
159
163
164
165
166
167
168
169
170
171
172
173
174
175
152
146
150
162
158
162
151
145
149
161
157
161
150
144
148
160
156
160
149
143
147
159
155
159
148
142
146
158
154
158
147
141
145
157
153
157
146
140
144
156
152
156
145
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
155
144
130
142
154
143
129
141
153
142
128
140
152
139
138
137
136
135
136
137
138
139
140
141
142
143
144
143
142
141
127
139
151
152
153
153
152
151
150
149
148
147
146
145
144
143
142
141
140
134
140
126
138
150
145
133
139
125
137
149
145
132
138
124
136
148
144
131
137
123
135
147
143
130
136
122
134
146
142
129
135
121
133
145
141
128
134
120
132
144
140
127
133
132
131
130
129
128
127
126
125
124
125
126
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
138
137
136
135
136
137
138
139
140
141
142
143
139
126
123
118
130
134
138
125
122
117
129
133
137
124
121
116
128
132
136
123
120
115
127
131
135
122
119
114
126
130
134
121
118
113
125
129
133
120
117
112
124
128
132
119
116
111
123
127
131
118
115
110
122
126
130
117
114
109
121
125
129
116
113
108
120
124
128
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
107
119
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
114
102
106
118
114
126
113
101
105
117
113
125
112
100
104
116
112
124
111
99
103
115
111
123
110
98
102
114
110
122
109
97
101
113
109
121
108
96
100
112
108
120
107
95
99
111
107
119
106
94
98
110
106
118
105
93
97
109
105
117
104
92
96
108
104
116
103
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
115
102
82
82
94
94
114
101
81
81
93
93
113
100
80
80
92
92
112
99
79
79
91
91
111
98
78
78
90
90
110
97
77
77
89
89
109
96
76
76
88
88
108
95
75
75
87
87
107
94
74
74
86
86
106
93
73
73
85
85
105
92
72
72
84
84
104
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
59
60
61
62
63
64
65
66
67
68
69
70
71
83
82
81
80
79
78
77
76
75
74
73
72
71
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
84
70
58
70
82
96
85
69
57
69
81
97
86
68
56
68
80
98
87
67
55
67
79
99
88
66
54
66
78
100
89
65
53
65
77
101
90
64
52
64
76
102
91
63
51
63
75
103
92
62
50
62
74
104
93
61
49
61
73
105
94
60
48
60
72
106
103
102
101
100
99
98
97
96
95
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
107
108
109
110
111
112
113
114
115
102
60
34
48
72
114
101
61
33
49
73
113
100
62
32
50
74
112
99
63
31
51
75
111
98
64
30
52
76
110
97
65
29
53
77
109
96
66
28
54
78
108
95
67
27
55
79
107
94
68
26
56
80
106
93
69
25
57
81
105
92
70
24
58
82
104
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
11
12
13
14
15
16
17
18
19
20
21
22
23
59
60
59
58
57
56
55
54
53
52
51
50
49
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
92
72
10
48
84
104
93
73
9
47
85
105
94
74
8
46
86
106
95
75
7
45
87
107
96
76
6
44
88
108
97
77
5
43
89
109
98
78
4
42
90
110
99
79
3
41
91
111
100
80
2
40
92
112
101
81
1
39
93
113
102
82
0
197
198
199
200
201
202
203
204
205
206
207
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
183
182
181
180
179
178
177
176
175
174
173
172
171
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
194
193
192
191
190
189
188
187
186
185
184
183
196
186
182
170
174
182
195
185
181
169
173
181
194
184
180
168
172
180
193
183
179
167
171
179
192
182
178
166
170
178
191
181
177
165
169
177
190
180
176
164
168
176
189
179
175
163
167
175
188
178
174
162
166
174
187
177
173
161
165
173
186
176
172
160
164
172
185
173
174
175
176
175
174
173
172
171
170
169
168
167
168
169
170
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
162
161
160
159
171
184
172
166
170
158
154
158
170
183
171
165
169
157
153
157
169
182
170
164
168
156
152
156
168
181
169
163
167
155
151
155
167
180
168
162
166
154
150
154
166
179
167
161
165
153
149
153
165
178
166
160
164
152
148
152
164
177
176
175
174
173
172
171
170
169
168
167
166
165
159
163
151
147
151
152
153
154
155
156
157
158
159
160
161
162
163
164
158
162
150
146
150
163
157
161
149
145
149
162
156
160
148
144
148
161
155
159
147
143
147
160
154
158
146
142
146
159
153
157
145
141
145
158
152
156
144
140
144
157
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
143
156
142
130
142
155
141
129
141
154
140
128
140
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
154
153
139
127
139
140
141
142
143
142
141
140
139
138
137
136
135
136
137
138
139
145
152
138
126
138
134
145
151
137
125
137
133
144
150
136
124
136
132
143
149
135
123
135
131
142
148
134
122
134
130
141
147
133
121
133
129
140
146
132
120
132
128
139
145
144
143
142
141
140
139
138
137
136
137
138
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
126
125
124
123
124
125
126
127
128
129
130
131
127
138
135
130
118
122
126
137
134
129
117
121
125
136
133
128
116
120
124
135
132
127
115
119
123
134
131
126
114
118
122
133
130
125
113
117
121
132
129
124
112
116
120
131
128
123
111
115
119
130
127
122
110
114
118
129
126
121
109
113
117
128
125
120
108
112
116
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
119
107
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
126
114
118
106
102
114
125
113
117
105
101
113
124
112
116
104
100
112
123
111
115
103
99
111
122
110
114
102
98
110
121
109
113
101
97
109
120
108
112
100
96
108
119
107
111
99
95
107
118
106
110
98
94
106
117
105
109
97
93
105
116
104
108
96
92
104
115
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
103
114
94
94
82
82
102
113
93
93
81
81
101
112
92
92
80
80
100
111
91
91
79
79
99
110
90
90
78
78
98
109
89
89
77
77
97
108
88
88
76
76
96
107
87
87
75
75
95
106
86
86
74
74
94
105
85
85
73
73
93
104
84
84
72
72
92
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
71
72
73
74
75
76
77
78
79
80
81
82
83
71
70
69
68
67
66
65
64
63
62
61
60
59
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
96
82
70
58
70
84
97
81
69
57
69
85
98
80
68
56
68
86
99
79
67
55
67
87
100
78
66
54
66
88
101
77
65
53
65
89
102
76
64
52
64
90
103
75
63
51
63
91
104
74
62
50
62
92
105
73
61
49
61
93
106
72
60
48
60
94
115
114
113
112
111
110
109
108
107
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
95
96
97
98
99
100
101
102
103
114
72
48
34
60
102
113
73
49
33
61
101
112
74
50
32
62
100
111
75
51
31
63
99
110
76
52
30
64
98
109
77
53
29
65
97
108
78
54
28
66
96
107
79
55
27
67
95
106
80
56
26
68
94
105
81
57
25
69
93
104
82
58
24
70
92
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
49
50
51
52
53
54
55
56
57
58
59
60
59
23
22
21
20
19
18
17
16
15
14
13
12
11
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
104
84
48
10
72
92
105
85
47
9
73
93
106
86
46
8
74
94
107
87
45
7
75
95
108
88
44
6
76
96
109
89
43
5
77
97
110
90
42
4
78
98
111
91
41
3
79
99
112
92
40
2
80
100
113
93
39
1
81
101
114
94
38
0
164
165
166
167
168
169
170
171
172
173
174
175
176
177
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
147
146
145
144
143
142
141
140
139
138
137
136
135
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
150
149
148
147
163
158
146
134
138
146
162
157
145
133
137
145
161
156
144
132
136
144
160
155
143
131
135
143
159
154
142
130
134
142
158
153
141
129
133
141
157
152
140
128
132
140
156
151
139
127
131
139
155
150
138
126
130
138
154
149
137
125
129
137
153
148
136
124
128
136
152
140
141
142
143
144
145
146
147
148
149
150
151
152
153
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
126
125
124
123
135
151
139
153
134
122
118
122
134
150
138
153
133
121
117
121
133
149
137
152
132
120
116
120
132
148
136
151
131
119
115
119
131
147
135
150
130
118
114
118
130
146
134
149
129
117
113
117
129
145
133
148
128
116
112
116
128
144
143
142
141
140
139
138
137
136
135
134
133
132
147
127
115
111
115
116
117
118
119
120
121
122
123
124
125
126
127
131
146
126
114
110
114
130
145
125
113
109
113
129
144
124
112
108
112
128
143
123
111
107
111
127
142
122
110
106
110
126
141
121
109
105
109
125
140
120
108
104
108
124
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
107
123
130
94
106
122
129
93
105
121
128
92
104
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
127
91
103
104
105
106
107
106
105
104
103
102
101
100
99
100
101
102
103
109
121
126
90
102
98
110
122
125
89
101
97
111
123
124
88
100
96
112
124
123
87
99
95
113
125
122
86
98
94
114
126
121
85
97
93
115
127
120
84
96
92
116
128
129
130
131
132
133
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
90
89
88
87
88
89
90
91
92
93
94
95
91
117
131
118
82
86
90
118
132
117
81
85
89
119
133
116
80
84
88
120
134
115
79
83
87
121
135
114
78
82
86
122
136
113
77
81
85
123
137
112
76
80
84
124
138
111
75
79
83
125
139
110
74
78
82
126
138
109
73
77
81
127
137
108
72
76
80
128
129
130
131
132
133
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
107
71
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
129
126
106
70
66
78
130
125
105
69
65
77
131
124
104
68
64
76
132
123
103
67
63
75
133
122
102
66
62
74
133
121
101
65
61
73
132
120
100
64
60
72
131
119
99
63
59
71
130
118
98
62
58
70
129
117
97
61
57
69
128
116
96
60
56
68
127
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
67
126
106
84
70
46
66
125
105
85
69
45
65
124
104
86
68
44
64
123
103
87
67
43
63
122
102
88
66
42
62
121
101
89
65
41
61
120
100
90
64
40
60
119
99
91
63
39
59
118
98
92
62
38
58
117
97
93
61
37
57
116
96
94
60
36
56
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
83
84
85
86
87
88
89
90
91
92
93
94
95
59
58
57
56
55
54
53
52
51
50
49
48
47
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
108
94
82
46
34
48
109
93
81
45
33
49
110
92
80
44
32
50
111
91
79
43
31
51
112
90
78
42
30
52
113
89
77
41
29
53
114
88
76
40
28
54
115
87
75
39
27
55
116
86
74
38
26
54
117
85
73
37
25
53
118
84
72
36
24
52
127
126
125
124
123
122
121
120
119
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
51
50
49
48
47
46
45
44
43
126
84
60
48
22
42
125
85
61
49
21
41
124
86
62
50
20
40
123
87
63
51
19
39
122
88
64
52
18
38
121
89
65
53
17
37
120
90
66
54
16
36
119
91
67
55
15
35
118
92
68
56
14
34
117
93
69
57
13
33
116
94
70
58
12
32
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
83
82
81
80
79
78
77
76
75
74
73
72
71
59
60
61
62
63
64
65
66
67
68
69
70
71
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
116
96
84
72
10
32
117
97
85
73
9
31
118
98
86
74
8
30
119
99
87
75
7
29
120
100
88
76
6
28
121
101
89
77
5
27
122
102
90
78
4
26
123
103
91
79
3
25
124
104
92
80
2
24
125
105
93
81
1
23
126
106
94
82
0
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
159
167
166
154
158
150
158
166
165
153
157
149
157
165
164
152
156
148
156
164
163
151
155
147
155
163
162
150
154
146
154
162
161
149
153
145
153
161
160
148
152
144
152
160
159
147
151
143
151
159
158
146
150
142
150
158
157
145
149
141
149
157
156
144
148
140
148
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
161
160
159
158
157
156
155
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
139
147
135
149
154
142
138
126
138
146
134
150
153
141
137
125
137
145
133
151
152
140
136
124
136
144
132
152
151
139
135
123
135
143
131
153
150
138
134
122
134
142
130
154
149
137
133
121
133
141
129
155
148
136
132
120
132
140
139
138
137
136
135
134
133
132
131
130
129
128
156
147
135
131
119
120
121
122
123
124
125
126
127
128
129
130
131
127
157
146
134
130
118
126
158
145
133
129
117
125
159
144
132
128
116
124
160
143
131
127
115
123
161
142
130
126
114
122
161
141
129
125
113
121
160
140
128
124
112
120
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
111
119
150
114
110
118
149
113
109
117
148
112
108
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
147
111
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
105
117
146
110
108
94
106
118
145
109
109
93
107
119
144
108
110
92
108
120
143
107
111
91
109
121
142
106
112
90
110
122
141
105
113
89
111
123
140
104
114
88
112
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
110
109
108
107
108
109
110
111
112
113
114
115
87
113
134
138
102
106
86
114
135
137
101
105
85
115
136
136
100
104
84
116
137
135
99
103
83
117
138
134
98
102
82
118
139
133
97
101
81
119
140
132
96
100
80
120
141
131
95
99
79
121
142
130
94
98
78
122
143
129
93
97
77
123
144
128
92
96
76
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
127
91
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
125
137
126
90
86
74
126
138
125
89
85
73
127
139
124
88
84
72
128
140
123
87
83
71
129
141
122
86
82
70
130
141
121
85
81
69
131
140
120
84
80
68
132
139
119
83
79
67
133
138
118
82
78
66
134
137
117
81
77
65
135
136
116
80
76
64
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
63
137
126
104
90
66
62
138
125
105
89
65
61
139
124
106
88
64
60
140
123
107
87
63
59
141
122
108
86
62
58
141
121
109
85
61
57
140
120
110
84
60
56
139
119
111
83
59
55
138
118
112
82
58
54
137
117
113
81
57
53
136
116
114
80
56
52
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
103
104
105
106
107
108
109
110
111
112
113
114
115
79
78
77
76
75
74
73
72
71
70
69
68
67
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
128
114
102
66
54
42
129
113
101
65
53
41
130
112
100
64
52
40
131
111
99
63
51
39
132
110
98
62
50
38
133
109
97
61
49
37
134
108
96
60
48
36
135
107
95
59
47
35
136
106
94
58
46
34
137
105
93
57
45
33
138
104
92
56
44
32
147
146
145
144
143
142
141
140
139
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
31
30
29
28
27
26
25
24
23
146
104
80
68
42
22
145
105
81
69
41
21
144
106
82
70
40
20
143
107
83
71
39
19
142
108
84
72
38
18
141
109
85
73
37
17
140
110
86
74
36
16
139
111
87
75
35
15
138
112
88
76
34
14
137
113
89
77
33
13
136
114
90
78
32
12
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
103
102
101
100
99
98
97
96
95
94
93
92
91
79
80
81
82
83
84
85
86
87
88
89
90
91
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
136
116
104
92
32
10
137
117
105
93
31
9
138
118
106
94
30
8
139
119
107
95
29
7
140
120
108
96
28
6
141
121
109
97
27
5
142
122
110
98
26
4
143
123
111
99
25
3
144
124
112
100
24
2
145
125
113
101
23
1
146
126
114
102
22
0
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
151
159
155
167
168
160
150
158
154
166
167
159
149
157
153
165
166
158
148
156
152
164
165
157
147
155
151
163
164
156
146
154
150
162
163
155
145
153
149
161
162
154
144
152
148
160
161
153
143
151
147
159
160
152
142
150
146
158
159
151
141
149
145
157
158
150
140
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
149
139
127
139
143
155
150
136
148
138
126
138
142
154
151
135
147
137
125
137
141
153
152
134
146
136
124
136
140
152
153
133
145
135
123
135
139
151
154
132
144
134
122
134
138
150
155
131
143
133
121
133
137
149
156
130
142
132
131
130
129
128
127
126
125
124
123
122
121
120
132
136
148
157
129
130
131
132
133
134
135
136
137
138
139
140
141
119
131
135
147
158
128
118
130
134
146
159
127
117
129
133
145
160
126
116
128
132
144
161
125
115
127
131
143
162
124
114
126
130
142
162
123
113
125
129
141
161
122
112
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
121
111
115
151
120
110
114
150
119
109
113
149
118
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
112
148
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
95
109
111
147
118
106
94
110
110
146
119
107
93
111
109
145
120
108
92
112
108
144
121
109
91
113
107
143
122
110
90
114
106
142
123
111
89
115
105
141
124
112
88
116
117
116
115
114
113
112
111
110
109
110
111
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
113
87
108
103
139
134
114
86
107
102
138
135
115
85
106
101
137
136
116
84
105
100
136
137
117
83
104
99
135
138
118
82
103
98
134
139
119
81
102
97
133
140
120
80
101
96
132
141
121
79
100
95
131
142
122
78
99
94
130
143
123
77
98
93
129
144
124
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
92
128
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
75
87
91
127
138
126
74
86
90
126
139
127
73
85
89
125
140
128
72
84
88
124
141
129
71
83
87
123
142
130
70
82
86
122
142
131
69
81
85
121
141
132
68
80
84
120
140
133
67
79
83
119
139
134
66
78
82
118
138
135
65
77
81
117
137
136
64
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
63
67
91
105
127
138
62
66
90
106
126
139
61
65
89
107
125
140
60
64
88
108
124
141
59
63
87
109
123
142
58
62
86
110
122
142
57
61
85
111
121
141
56
60
84
112
120
140
55
59
83
113
119
139
54
58
82
114
118
138
53
57
81
115
117
137
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
68
69
70
71
72
73
74
75
76
77
78
79
80
116
115
114
113
112
111
110
109
108
107
106
105
104
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
43
55
67
103
115
129
42
54
66
102
114
130
41
53
65
101
113
131
40
52
64
100
112
132
39
51
63
99
111
133
38
50
62
98
110
134
37
49
61
97
109
135
36
48
60
96
108
136
35
47
59
95
107
137
34
46
58
94
106
138
33
45
57
93
105
139
24
25
26
27
28
29
30
31
32
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
140
141
142
143
144
145
146
147
148
23
43
69
81
105
147
22
42
70
82
106
146
21
41
71
83
107
145
20
40
72
84
108
144
19
39
73
85
109
143
18
38
74
86
110
142
17
37
75
87
111
141
16
36
76
88
112
140
15
35
77
89
113
139
14
34
78
90
114
138
13
33
79
91
115
137
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
92
91
90
89
88
87
86
85
84
83
82
81
80
92
93
94
95
96
97
98
99
100
101
102
103
104
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
11
31
93
105
117
137
10
30
94
106
118
138
9
29
95
107
119
139
8
28
96
108
120
140
7
27
97
109
121
141
6
26
98
110
122
142
5
25
99
111
123
143
4
24
100
112
124
144
3
23
101
113
125
145
2
22
102
114
126
146
1
21
103
115
127
147
0
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
155
156
157
158
159
160
161
162
163
164
165
166
167
170
171
172
173
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
152
158
154
166
169
161
151
157
153
165
168
160
150
156
152
164
167
159
149
155
151
163
166
158
148
154
150
162
165
157
147
153
149
161
164
156
146
152
148
160
163
155
145
151
147
159
162
154
144
150
146
158
161
153
143
149
145
157
160
152
142
148
144
156
159
151
141
129
130
131
132
133
134
135
136
137
138
139
140
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
150
140
128
138
142
154
151
137
149
139
127
137
141
153
152
136
148
138
126
136
140
152
153
135
147
137
125
135
139
151
154
134
146
136
124
134
138
150
155
133
145
135
123
133
137
149
156
132
144
134
122
132
136
148
157
131
143
133
132
131
130
129
128
127
126
125
124
123
122
121
131
135
147
158
130
131
132
133
134
135
136
137
138
139
140
141
142
120
130
134
146
159
129
119
129
133
145
160
128
118
128
132
144
161
127
117
127
131
143
162
126
116
126
130
142
162
125
115
125
129
141
161
124
114
124
128
140
160
123
113
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
122
112
114
150
121
111
113
149
120
110
112
148
119
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
111
147
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
96
110
110
146
119
107
95
111
109
145
120
108
94
112
108
144
121
109
93
113
107
143
122
110
92
114
106
142
123
111
91
115
105
141
124
112
90
116
104
140
125
113
89
117
116
115
114
113
112
111
110
109
108
109
110
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
114
88
107
102
138
135
115
87
106
101
137
136
116
86
105
100
136
137
117
85
104
99
135
138
118
84
103
98
134
139
119
83
102
97
133
140
120
82
101
96
132
141
121
81
100
95
131
142
122
80
99
94
130
143
123
79
98
93
129
144
124
78
97
92
128
145
125
77
78
79
80
81
82
83
84
85
86
87
88
87
88
89
90
91
92
93
94
95
96
91
127
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
76
86
90
126
139
127
75
85
89
125
140
128
74
84
88
124
141
129
73
83
87
123
142
130
72
82
86
122
142
131
71
81
85
121
141
132
70
80
84
120
140
133
69
79
83
119
139
134
68
78
82
118
138
135
67
77
81
117
137
136
66
76
80
116
136
137
65
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
138
64
66
90
104
126
139
63
65
89
105
125
140
62
64
88
106
124
141
61
63
87
107
123
142
60
62
86
108
122
142
59
61
85
109
121
141
58
60
84
110
120
140
57
59
83
111
119
139
56
58
82
112
118
138
55
57
81
113
117
137
54
56
80
114
116
136
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
55
67
68
69
70
71
72
73
74
75
76
77
78
79
115
114
113
112
111
110
109
108
107
106
105
104
103
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
44
54
66
102
114
128
43
53
65
101
113
129
42
52
64
100
112
130
41
51
63
99
111
131
40
50
62
98
110
132
39
49
61
97
109
133
38
48
60
96
108
134
37
47
59
95
107
135
36
46
58
94
106
136
35
45
57
93
105
137
34
44
56
92
104
138
25
26
27
28
29
30
31
32
33
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
139
140
141
142
143
144
145
146
147
24
42
68
80
104
146
23
41
69
81
105
145
22
40
70
82
106
144
21
39
71
83
107
143
20
38
72
84
108
142
19
37
73
85
109
141
18
36
74
86
110
140
17
35
75
87
111
139
16
34
76
88
112
138
15
33
77
89
113
137
14
32
78
90
114
136
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
31
91
90
89
88
87
86
85
84
83
82
81
80
79
91
92
93
94
95
96
97
98
99
100
101
102
103
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
12
30
92
104
116
136
11
29
93
105
117
137
10
28
94
106
118
138
9
27
95
107
119
139
8
26
96
108
120
140
7
25
97
109
121
141
6
24
98
110
122
142
5
23
99
111
123
143
4
22
100
112
124
144
3
21
101
113
125
145
2
20
102
114
126
146
1
0
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
154
155
156
157
158
159
160
161
162
163
164
165
166
171
172
173
174
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
153
157
153
165
170
162
152
156
152
164
169
161
151
155
151
163
168
160
150
154
150
162
167
159
149
153
149
161
166
158
148
152
148
160
165
157
147
151
147
159
164
156
146
150
146
158
163
155
145
149
145
157
162
154
144
148
144
156
161
153
143
147
143
155
160
152
142
130
131
132
133
134
135
136
137
138
139
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
151
141
129
137
141
153
152
138
150
140
128
136
140
152
153
137
149
139
127
135
139
151
154
136
148
138
126
134
138
150
155
135
147
137
125
133
137
149
156
134
146
136
124
132
136
148
157
133
145
135
123
131
135
147
158
132
144
134
133
132
131
130
129
128
127
126
125
124
123
122
130
134
146
159
131
132
133
134
135
136
137
138
139
140
141
142
143
121
129
133
145
160
130
120
128
132
144
161
129
119
127
131
143
162
128
118
126
130
142
162
127
117
125
129
141
161
126
116
124
128
140
160
125
115
123
127
139
159
124
114
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
123
113
113
149
122
112
112
148
121
111
111
147
120
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
110
146
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
97
111
109
145
120
108
96
112
108
144
121
109
95
113
107
143
122
110
94
114
106
142
123
111
93
115
105
141
124
112
92
116
104
140
125
113
91
117
103
139
126
114
90
116
115
114
113
112
111
110
109
108
107
108
109
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
115
89
106
101
137
136
116
88
105
100
136
137
117
87
104
99
135
138
118
86
103
98
134
139
119
85
102
97
133
140
120
84
101
96
132
141
121
83
100
95
131
142
122
82
99
94
130
143
123
81
98
93
129
144
124
80
97
92
128
145
125
79
96
91
127
146
126
78
79
80
81
82
83
84
85
86
87
88
87
86
87
88
89
90
91
92
93
94
95
90
126
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
77
85
89
125
140
128
76
84
88
124
141
129
75
83
87
123
142
130
74
82
86
122
142
131
73
81
85
121
141
132
72
80
84
120
140
133
71
79
83
119
139
134
70
78
82
118
138
135
69
77
81
117
137
136
68
76
80
116
136
137
67
75
79
115
135
138
66
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
139
65
65
89
103
125
140
64
64
88
104
124
141
63
63
87
105
123
142
62
62
86
106
122
142
61
61
85
107
121
141
60
60
84
108
120
140
59
59
83
109
119
139
58
58
82
110
118
138
57
57
81
111
117
137
56
56
80
112
116
136
55
55
79
113
115
135
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
55
54
66
67
68
69
70
71
72
73
74
75
76
77
78
114
113
112
111
110
109
108
107
106
105
104
103
102
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
45
53
65
101
113
127
44
52
64
100
112
128
43
51
63
99
111
129
42
50
62
98
110
130
41
49
61
97
109
131
40
48
60
96
108
132
39
47
59
95
107
133
38
46
58
94
106
134
37
45
57
93
105
135
36
44
56
92
104
136
35
43
55
91
103
137
26
27
28
29
30
31
32
33
34
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
138
139
140
141
142
143
144
145
146
25
41
67
79
103
145
24
40
68
80
104
144
23
39
69
81
105
143
22
38
70
82
106
142
21
37
71
83
107
141
20
36
72
84
108
140
19
35
73
85
109
139
18
34
74
86
110
138
17
33
75
87
111
137
16
32
76
88
112
136
15
31
77
89
113
135
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
31
30
90
89
88
87
86
85
84
83
82
81
80
79
78
90
91
92
93
94
95
96
97
98
99
100
101
102
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
13
29
91
103
115
135
12
28
92
104
116
136
11
27
93
105
117
137
10
26
94
106
118
138
9
25
95
107
119
139
8
24
96
108
120
140
7
23
97
109
121
141
6
22
98
110
122
142
5
21
99
111
123
143
4
20
100
112
124
144
3
19
101
113
125
145
2
1
0
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
153
154
155
156
157
158
159
160
161
162
163
164
165
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
154
156
152
164
171
163
153
155
151
163
170
162
152
154
150
162
169
161
151
153
149
161
168
160
150
152
148
160
167
159
149
151
147
159
166
158
148
150
146
158
165
157
147
149
145
157
164
156
146
148
144
156
163
155
145
147
143
155
162
154
144
146
142
154
161
153
143
131
132
133
134
135
136
137
138
139
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
152
142
130
136
140
152
153
139
151
141
129
135
139
151
154
138
150
140
128
134
138
150
155
137
149
139
127
133
137
149
156
136
148
138
126
132
136
148
157
135
147
137
125
131
135
147
158
134
146
136
124
130
134
146
159
133
145
135
134
133
132
131
130
129
128
127
126
125
124
123
129
133
145
160
132
133
134
135
136
137
138
139
140
141
142
143
144
122
128
132
144
161
131
121
127
131
143
162
130
120
126
130
142
162
129
119
125
129
141
161
128
118
124
128
140
160
127
117
123
127
139
159
126
116
122
126
138
158
125
115
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
124
114
112
148
123
113
111
147
122
112
110
146
121
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
109
145
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
98
112
108
144
121
109
97
113
107
143
122
110
96
114
106
142
123
111
95
115
105
141
124
112
94
116
104
140
125
113
93
117
103
139
126
114
92
116
102
138
127
115
91
115
114
113
112
111
110
109
108
107
106
107
108
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
116
90
105
100
136
137
117
89
104
99
135
138
118
88
103
98
134
139
119
87
102
97
133
140
120
86
101
96
132
141
121
85
100
95
131
142
122
84
99
94
130
143
123
83
98
93
129
144
124
82
97
92
128
145
125
81
96
91
127
146
126
80
95
90
126
147
127
79
80
81
82
83
84
85
86
87
88
87
86
85
86
87
88
89
90
91
92
93
94
89
125
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
78
84
88
124
141
129
77
83
87
123
142
130
76
82
86
122
142
131
75
81
85
121
141
132
74
80
84
120
140
133
73
79
83
119
139
134
72
78
82
118
138
135
71
77
81
117
137
136
70
76
80
116
136
137
69
75
79
115
135
138
68
74
78
114
134
139
67
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
140
66
64
88
102
124
141
65
63
87
103
123
142
64
62
86
104
122
142
63
61
85
105
121
141
62
60
84
106
120
140
61
59
83
107
119
139
60
58
82
108
118
138
59
57
81
109
117
137
58
56
80
110
116
136
57
55
79
111
115
135
56
54
78
112
114
134
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
55
54
53
65
66
67
68
69
70
71
72
73
74
75
76
77
113
112
111
110
109
108
107
106
105
104
103
102
101
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
46
52
64
100
112
126
45
51
63
99
111
127
44
50
62
98
110
128
43
49
61
97
109
129
42
48
60
96
108
130
41
47
59
95
107
131
40
46
58
94
106
132
39
45
57
93
105
133
38
44
56
92
104
134
37
43
55
91
103
135
36
42
54
90
102
136
27
28
29
30
31
32
33
34
35
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
137
138
139
140
141
142
143
144
145
26
40
66
78
102
144
25
39
67
79
103
143
24
38
68
80
104
142
23
37
69
81
105
141
22
36
70
82
106
140
21
35
71
83
107
139
20
34
72
84
108
138
19
33
73
85
109
137
18
32
74
86
110
136
17
31
75
87
111
135
16
30
76
88
112
134
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
31
30
29
89
88
87
86
85
84
83
82
81
80
79
78
77
89
90
91
92
93
94
95
96
97
98
99
100
101
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
14
28
90
102
114
134
13
27
91
103
115
135
12
26
92
104
116
136
11
25
93
105
117
137
10
24
94
106
118
138
9
23
95
107
119
139
8
22
96
108
120
140
7
21
97
109
121
141
6
20
98
110
122
142
5
19
99
111
123
143
4
18
100
112
124
144
3
2
1
0
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
152
153
154
155
156
157
158
159
160
161
162
163
164
173
174
175
176
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
155
155
151
163
172
164
154
154
150
162
171
163
153
153
149
161
170
162
152
152
148
160
169
161
151
151
147
159
168
160
150
150
146
158
167
159
149
149
145
157
166
158
148
148
144
156
165
157
147
147
143
155
164
156
146
146
142
154
163
155
145
145
141
153
162
154
144
132
133
134
135
136
137
138
139
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
153
143
131
135
139
151
154
140
152
142
130
134
138
150
155
139
151
141
129
133
137
149
156
138
150
140
128
132
136
148
157
137
149
139
127
131
135
147
158
136
148
138
126
130
134
146
159
135
147
137
125
129
133
145
160
134
146
136
135
134
133
132
131
130
129
128
127
126
125
124
128
132
144
161
133
134
135
136
137
138
139
140
141
142
143
144
145
123
127
131
143
162
132
122
126
130
142
162
131
121
125
129
141
161
130
120
124
128
140
160
129
119
123
127
139
159
128
118
122
126
138
158
127
117
121
125
137
157
126
116
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
125
115
111
147
124
114
110
146
123
113
109
145
122
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
108
144
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
99
113
107
143
122
110
98
114
106
142
123
111
97
115
105
141
124
112
96
116
104
140
125
113
95
117
103
139
126
114
94
116
102
138
127
115
93
115
101
137
128
116
92
114
113
112
111
110
109
108
107
106
105
106
107
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
117
91
104
99
135
138
118
90
103
98
134
139
119
89
102
97
133
140
120
88
101
96
132
141
121
87
100
95
131
142
122
86
99
94
130
143
123
85
98
93
129
144
124
84
97
92
128
145
125
83
96
91
127
146
126
82
95
90
126
147
127
81
94
89
125
148
128
80
81
82
83
84
85
86
87
88
87
86
85
84
85
86
87
88
89
90
91
92
93
88
124
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
79
83
87
123
142
130
78
82
86
122
142
131
77
81
85
121
141
132
76
80
84
120
140
133
75
79
83
119
139
134
74
78
82
118
138
135
73
77
81
117
137
136
72
76
80
116
136
137
71
75
79
115
135
138
70
74
78
114
134
139
69
73
77
113
133
140
68
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
141
67
63
87
101
123
142
66
62
86
102
122
142
65
61
85
103
121
141
64
60
84
104
120
140
63
59
83
105
119
139
62
58
82
106
118
138
61
57
81
107
117
137
60
56
80
108
116
136
59
55
79
109
115
135
58
54
78
110
114
134
57
53
77
111
113
133
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
55
54
53
52
64
65
66
67
68
69
70
71
72
73
74
75
76
112
111
110
109
108
107
106
105
104
103
102
101
100
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
47
51
63
99
111
125
46
50
62
98
110
126
45
49
61
97
109
127
44
48
60
96
108
128
43
47
59
95
107
129
42
46
58
94
106
130
41
45
57
93
105
131
40
44
56
92
104
132
39
43
55
91
103
133
38
42
54
90
102
134
37
41
53
89
101
135
28
29
30
31
32
33
34
35
36
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
136
137
138
139
140
141
142
143
144
27
39
65
77
101
143
26
38
66
78
102
142
25
37
67
79
103
141
24
36
68
80
104
140
23
35
69
81
105
139
22
34
70
82
106
138
21
33
71
83
107
137
20
32
72
84
108
136
19
31
73
85
109
135
18
30
74
86
110
134
17
29
75
87
111
133
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
31
30
29
28
88
87
86
85
84
83
82
81
80
79
78
77
76
88
89
90
91
92
93
94
95
96
97
98
99
100
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
15
27
89
101
113
133
14
26
90
102
114
134
13
25
91
103
115
135
12
24
92
104
116
136
11
23
93
105
117
137
10
22
94
106
118
138
9
21
95
107
119
139
8
20
96
108
120
140
7
19
97
109
121
141
6
18
98
110
122
142
5
17
99
111
123
143
4
3
2
1
0
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
151
152
153
154
155
156
157
158
159
160
161
162
163
174
175
176
177
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
156
154
150
162
173
165
155
153
149
161
172
164
154
152
148
160
171
163
153
151
147
159
170
162
152
150
146
158
169
161
151
149
145
157
168
160
150
148
144
156
167
159
149
147
143
155
166
158
148
146
142
154
165
157
147
145
141
153
164
156
146
144
140
152
163
155
145
133
134
135
136
137
138
139
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
154
144
132
134
138
150
155
141
153
143
131
133
137
149
156
140
152
142
130
132
136
148
157
139
151
141
129
131
135
147
158
138
150
140
128
130
134
146
159
137
149
139
127
129
133
145
160
136
148
138
126
128
132
144
161
135
147
137
136
135
134
133
132
131
130
129
128
127
126
125
127
131
143
162
134
135
136
137
138
139
140
141
142
143
144
145
146
124
126
130
142
162
133
123
125
129
141
161
132
122
124
128
140
160
131
121
123
127
139
159
130
120
122
126
138
158
129
119
121
125
137
157
128
118
120
124
136
156
127
117
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
126
116
110
146
125
115
109
145
124
114
108
144
123
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
107
143
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
100
114
106
142
123
111
99
115
105
141
124
112
98
116
104
140
125
113
97
117
103
139
126
114
96
116
102
138
127
115
95
115
101
137
128
116
94
114
100
136
129
117
93
113
112
111
110
109
108
107
106
105
104
105
106
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
118
92
103
98
134
139
119
91
102
97
133
140
120
90
101
96
132
141
121
89
100
95
131
142
122
88
99
94
130
143
123
87
98
93
129
144
124
86
97
92
128
145
125
85
96
91
127
146
126
84
95
90
126
147
127
83
94
89
125
148
128
82
93
88
124
149
129
81
82
83
84
85
86
87
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
87
123
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
80
82
86
122
142
131
79
81
85
121
141
132
78
80
84
120
140
133
77
79
83
119
139
134
76
78
82
118
138
135
75
77
81
117
137
136
74
76
80
116
136
137
73
75
79
115
135
138
72
74
78
114
134
139
71
73
77
113
133
140
70
72
76
112
132
141
69
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
142
68
62
86
100
122
142
67
61
85
101
121
141
66
60
84
102
120
140
65
59
83
103
119
139
64
58
82
104
118
138
63
57
81
105
117
137
62
56
80
106
116
136
61
55
79
107
115
135
60
54
78
108
114
134
59
53
77
109
113
133
58
52
76
110
112
132
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
55
54
53
52
51
63
64
65
66
67
68
69
70
71
72
73
74
75
111
110
109
108
107
106
105
104
103
102
101
100
99
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
48
50
62
98
110
124
47
49
61
97
109
125
46
48
60
96
108
126
45
47
59
95
107
127
44
46
58
94
106
128
43
45
57
93
105
129
42
44
56
92
104
130
41
43
55
91
103
131
40
42
54
90
102
132
39
41
53
89
101
133
38
40
52
88
100
134
29
30
31
32
33
34
35
36
37
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
135
136
137
138
139
140
141
142
143
28
38
64
76
100
142
27
37
65
77
101
141
26
36
66
78
102
140
25
35
67
79
103
139
24
34
68
80
104
138
23
33
69
81
105
137
22
32
70
82
106
136
21
31
71
83
107
135
20
30
72
84
108
134
19
29
73
85
109
133
18
28
74
86
110
132
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
31
30
29
28
27
87
86
85
84
83
82
81
80
79
78
77
76
75
87
88
89
90
91
92
93
94
95
96
97
98
99
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
16
26
88
100
112
132
15
25
89
101
113
133
14
24
90
102
114
134
13
23
91
103
115
135
12
22
92
104
116
136
11
21
93
105
117
137
10
20
94
106
118
138
9
19
95
107
119
139
8
18
96
108
120
140
7
17
97
109
121
141
6
16
98
110
122
142
5
4
3
2
1
0
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
150
151
152
153
154
155
156
157
158
159
160
161
162
174
175
176
177
178
179
180
181
182
183
184
185
186
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
157
153
149
161
173
166
156
152
148
160
172
165
155
151
147
159
171
164
154
150
146
158
170
163
153
149
145
157
169
162
152
148
144
156
168
161
151
147
143
155
167
160
150
146
142
154
166
159
149
145
141
153
165
158
148
144
140
152
164
157
147
143
139
151
163
156
146
134
135
136
137
138
139
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
155
145
133
133
137
149
156
142
154
144
132
132
136
148
157
141
153
143
131
131
135
147
158
140
152
142
130
130
134
146
159
139
151
141
129
129
133
145
160
138
150
140
128
128
132
144
161
137
149
139
127
127
131
143
162
136
148
138
137
136
135
134
133
132
131
130
129
128
127
126
126
130
142
162
135
136
137
138
139
140
141
142
143
144
145
146
147
125
125
129
141
161
134
124
124
128
140
160
133
123
123
127
139
159
132
122
122
126
138
158
131
121
121
125
137
157
130
120
120
124
136
156
129
119
119
123
135
155
128
118
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
127
117
109
145
126
116
108
144
125
115
107
143
124
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
106
142
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
101
115
105
141
124
112
100
116
104
140
125
113
99
117
103
139
126
114
98
116
102
138
127
115
97
115
101
137
128
116
96
114
100
136
129
117
95
113
99
135
130
118
94
112
111
110
109
108
107
106
105
104
103
104
105
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
119
93
102
97
133
140
120
92
101
96
132
141
121
91
100
95
131
142
122
90
99
94
130
143
123
89
98
93
129
144
124
88
97
92
128
145
125
87
96
91
127
146
126
86
95
90
126
147
127
85
94
89
125
148
128
84
93
88
124
149
129
83
92
87
123
150
130
82
83
84
85
86
87
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
86
122
150
149
148
147
146
145
144
143
142
142
141
140
139
138
137
136
135
134
133
132
131
81
81
85
121
141
132
80
80
84
120
140
133
79
79
83
119
139
134
78
78
82
118
138
135
77
77
81
117
137
136
76
76
80
116
136
137
75
75
79
115
135
138
74
74
78
114
134
139
73
73
77
113
133
140
72
72
76
112
132
141
71
71
75
111
131
142
70
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
142
69
61
85
99
121
141
68
60
84
100
120
140
67
59
83
101
119
139
66
58
82
102
118
138
65
57
81
103
117
137
64
56
80
104
116
136
63
55
79
105
115
135
62
54
78
106
114
134
61
53
77
107
113
133
60
52
76
108
112
132
59
51
75
109
111
131
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
55
54
53
52
51
50
62
63
64
65
66
67
68
69
70
71
72
73
74
110
109
108
107
106
105
104
103
102
101
100
99
98
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
49
49
61
97
109
123
48
48
60
96
108
124
47
47
59
95
107
125
46
46
58
94
106
126
45
45
57
93
105
127
44
44
56
92
104
128
43
43
55
91
103
129
42
42
54
90
102
130
41
41
53
89
101
131
40
40
52
88
100
132
39
39
51
87
99
133
30
31
32
33
34
35
36
37
38
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
134
135
136
137
138
139
140
141
142
29
37
63
75
99
141
28
36
64
76
100
140
27
35
65
77
101
139
26
34
66
78
102
138
25
33
67
79
103
137
24
32
68
80
104
136
23
31
69
81
105
135
22
30
70
82
106
134
21
29
71
83
107
133
20
28
72
84
108
132
19
27
73
85
109
131
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
31
30
29
28
27
26
86
85
84
83
82
81
80
79
78
77
76
75
74
86
87
88
89
90
91
92
93
94
95
96
97
98
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
17
25
87
99
111
131
16
24
88
100
112
132
15
23
89
101
113
133
14
22
90
102
114
134
13
21
91
103
115
135
12
20
92
104
116
136
11
19
93
105
117
137
10
18
94
106
118
138
9
17
95
107
119
139
8
16
96
108
120
140
7
15
97
109
121
141
6
5
4
3
2
1
0
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
149
150
151
152
153
154
155
156
157
158
159
160
161
173
174
175
176
177
178
179
180
181
182
183
184
185
186
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
158
152
148
160
172
167
157
151
147
159
171
166
156
150
146
158
170
165
155
149
145
157
169
164
154
148
144
156
168
163
153
147
143
155
167
162
152
146
142
154
166
161
151
145
141
153
165
160
150
144
140
152
164
159
149
143
139
151
163
158
148
142
138
150
162
157
147
135
136
137
138
139
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
156
146
134
132
136
148
157
143
155
145
133
131
135
147
158
142
154
144
132
130
134
146
159
141
153
143
131
129
133
145
160
140
152
142
130
128
132
144
161
139
151
141
129
127
131
143
162
138
150
140
128
126
130
142
162
137
149
139
138
137
136
135
134
133
132
131
130
129
128
127
125
129
141
161
136
137
138
139
140
141
142
143
144
145
146
147
148
126
124
128
140
160
135
125
123
127
139
159
134
124
122
126
138
158
133
123
121
125
137
157
132
122
120
124
136
156
131
121
119
123
135
155
130
120
118
122
134
154
129
119
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
128
118
108
144
127
117
107
143
126
116
106
142
125
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
105
141
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
102
116
104
140
125
113
101
117
103
139
126
114
100
116
102
138
127
115
99
115
101
137
128
116
98
114
100
136
129
117
97
113
99
135
130
118
96
112
98
134
131
119
95
111
110
109
108
107
106
105
104
103
102
103
104
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
120
94
101
96
132
141
121
93
100
95
131
142
122
92
99
94
130
143
123
91
98
93
129
144
124
90
97
92
128
145
125
89
96
91
127
146
126
88
95
90
126
147
127
87
94
89
125
148
128
86
93
88
124
149
129
85
92
87
123
150
130
84
91
86
122
150
131
83
84
85
86
87
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
85
121
149
148
147
146
145
144
143
142
141
142
142
141
140
139
138
137
136
135
134
133
132
82
80
84
120
140
133
81
79
83
119
139
134
80
78
82
118
138
135
79
77
81
117
137
136
78
76
80
116
136
137
77
75
79
115
135
138
76
74
78
114
134
139
75
73
77
113
133
140
74
72
76
112
132
141
73
71
75
111
131
142
72
70
74
110
130
142
71
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
141
70
60
84
98
120
140
69
59
83
99
119
139
68
58
82
100
118
138
67
57
81
101
117
137
66
56
80
102
116
136
65
55
79
103
115
135
64
54
78
104
114
134
63
53
77
105
113
133
62
52
76
106
112
132
61
51
75
107
111
131
60
50
74
108
110
130
59
58
57
56
55
54
53
52
51
52
53
54
55
56
55
54
53
52
51
50
49
61
62
63
64
65
66
67
68
69
70
71
72
73
109
108
107
106
105
104
103
102
101
100
99
98
97
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
50
48
60
96
108
122
49
47
59
95
107
123
48
46
58
94
106
124
47
45
57
93
105
125
46
44
56
92
104
126
45
43
55
91
103
127
44
42
54
90
102
128
43
41
53
89
101
129
42
40
52
88
100
130
41
39
51
87
99
131
40
38
50
86
98
132
31
32
33
34
35
36
37
38
39
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
133
134
135
136
137
138
139
140
141
30
36
62
74
98
140
29
35
63
75
99
139
28
34
64
76
100
138
27
33
65
77
101
137
26
32
66
78
102
136
25
31
67
79
103
135
24
30
68
80
104
134
23
29
69
81
105
133
22
28
70
82
106
132
21
27
71
83
107
131
20
26
72
84
108
130
19
20
21
22
23
24
25
26
27
28
29
30
31
32
31
30
29
28
27
26
25
85
84
83
82
81
80
79
78
77
76
75
74
73
85
86
87
88
89
90
91
92
93
94
95
96
97
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
18
24
86
98
110
130
17
23
87
99
111
131
16
22
88
100
112
132
15
21
89
101
113
133
14
20
90
102
114
134
13
19
91
103
115
135
12
18
92
104
116
136
11
17
93
105
117
137
10
16
94
106
118
138
9
15
95
107
119
139
8
14
96
108
120
140
7
6
5
4
3
2
1
0
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
148
149
150
151
152
153
154
155
156
157
158
159
160
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
159
151
147
159
171
168
158
150
146
158
170
167
157
149
145
157
169
166
156
148
144
156
168
165
155
147
143
155
167
164
154
146
142
154
166
163
153
145
141
153
165
162
152
144
140
152
164
161
151
143
139
151
163
160
150
142
138
150
162
159
149
141
137
149
161
158
148
136
137
138
139
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
157
147
135
131
135
147
158
144
156
146
134
130
134
146
159
143
155
145
133
129
133
145
160
142
154
144
132
128
132
144
161
141
153
143
131
127
131
143
162
140
152
142
130
126
130
142
162
139
151
141
129
125
129
141
161
138
150
140
139
138
137
136
135
134
133
132
131
130
129
128
124
128
140
160
137
138
139
140
141
142
143
144
145
146
147
148
149
127
123
127
139
159
136
126
122
126
138
158
135
125
121
125
137
157
134
124
120
124
136
156
133
123
119
123
135
155
132
122
118
122
134
154
131
121
117
121
133
153
130
120
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
129
119
107
143
128
118
106
142
127
117
105
141
126
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
104
140
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
103
117
103
139
126
114
102
116
102
138
127
115
101
115
101
137
128
116
100
114
100
136
129
117
99
113
99
135
130
118
98
112
98
134
131
119
97
111
97
133
132
120
96
110
109
108
107
106
105
104
103
102
101
102
103
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
121
95
100
95
131
142
122
94
99
94
130
143
123
93
98
93
129
144
124
92
97
92
128
145
125
91
96
91
127
146
126
90
95
90
126
147
127
89
94
89
125
148
128
88
93
88
124
149
129
87
92
87
123
150
130
86
91
86
122
150
131
85
90
85
121
149
132
84
85
86
87
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
84
120
148
147
146
145
144
143
142
141
140
141
142
142
141
140
139
138
137
136
135
134
133
83
79
83
119
139
134
82
78
82
118
138
135
81
77
81
117
137
136
80
76
80
116
136
137
79
75
79
115
135
138
78
74
78
114
134
139
77
73
77
113
133
140
76
72
76
112
132
141
75
71
75
111
131
142
74
70
74
110
130
142
73
69
73
109
129
141
72
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
140
71
59
83
97
119
139
70
58
82
98
118
138
69
57
81
99
117
137
68
56
80
100
116
136
67
55
79
101
115
135
66
54
78
102
114
134
65
53
77
103
113
133
64
52
76
104
112
132
63
51
75
105
111
131
62
50
74
106
110
130
61
49
73
107
109
129
60
59
58
57
56
55
54
53
52
53
54
55
56
55
54
53
52
51
50
49
48
60
61
62
63
64
65
66
67
68
69
70
71
72
108
107
106
105
104
103
102
101
100
99
98
97
96
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
51
47
59
95
107
121
50
46
58
94
106
122
49
45
57
93
105
123
48
44
56
92
104
124
47
43
55
91
103
125
46
42
54
90
102
126
45
41
53
89
101
127
44
40
52
88
100
128
43
39
51
87
99
129
42
38
50
86
98
130
41
37
49
85
97
131
32
33
34
35
36
37
38
39
40
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
132
133
134
135
136
137
138
139
140
31
35
61
73
97
139
30
34
62
74
98
138
29
33
63
75
99
137
28
32
64
76
100
136
27
31
65
77
101
135
26
30
66
78
102
134
25
29
67
79
103
133
24
28
68
80
104
132
23
27
69
81
105
131
22
26
70
82
106
130
21
25
71
83
107
129
20
21
22
23
24
25
26
27
28
29
30
31
32
31
30
29
28
27
26
25
24
84
83
82
81
80
79
78
77
76
75
74
73
72
84
85
86
87
88
89
90
91
92
93
94
95
96
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
19
23
85
97
109
129
18
22
86
98
110
130
17
21
87
99
111
131
16
20
88
100
112
132
15
19
89
101
113
133
14
18
90
102
114
134
13
17
91
103
115
135
12
16
92
104
116
136
11
15
93
105
117
137
10
14
94
106
118
138
9
13
95
107
119
139
8
7
6
5
4
3
2
1
0
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
147
148
149
150
151
152
153
154
155
156
157
158
159
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
160
150
146
158
170
169
159
149
145
157
169
168
158
148
144
156
168
167
157
147
143
155
167
166
156
146
142
154
166
165
155
145
141
153
165
164
154
144
140
152
164
163
153
143
139
151
163
162
152
142
138
150
162
161
151
141
137
149
161
160
150
140
136
148
160
159
149
137
138
139
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
158
148
136
130
134
146
159
145
157
147
135
129
133
145
160
144
156
146
134
128
132
144
161
143
155
145
133
127
131
143
162
142
154
144
132
126
130
142
162
141
153
143
131
125
129
141
161
140
152
142
130
124
128
140
160
139
151
141
140
139
138
137
136
135
134
133
132
131
130
129
123
127
139
159
138
139
140
141
142
143
144
145
146
147
148
149
150
128
122
126
138
158
137
127
121
125
137
157
136
126
120
124
136
156
135
125
119
123
135
155
134
124
118
122
134
154
133
123
117
121
133
153
132
122
116
120
132
152
131
121
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
130
120
106
142
129
119
105
141
128
118
104
140
127
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
103
139
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
104
116
102
138
127
115
103
115
101
137
128
116
102
114
100
136
129
117
101
113
99
135
130
118
100
112
98
134
131
119
99
111
97
133
132
120
98
110
96
132
133
121
97
109
108
107
106
105
104
103
102
101
100
101
102
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
122
96
99
94
130
143
123
95
98
93
129
144
124
94
97
92
128
145
125
93
96
91
127
146
126
92
95
90
126
147
127
91
94
89
125
148
128
90
93
88
124
149
129
89
92
87
123
150
130
88
91
86
122
150
131
87
90
85
121
149
132
86
89
84
120
148
133
85
86
87
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
83
119
147
146
145
144
143
142
141
140
139
140
141
142
142
141
140
139
138
137
136
135
134
84
78
82
118
138
135
83
77
81
117
137
136
82
76
80
116
136
137
81
75
79
115
135
138
80
74
78
114
134
139
79
73
77
113
133
140
78
72
76
112
132
141
77
71
75
111
131
142
76
70
74
110
130
142
75
69
73
109
129
141
74
68
72
108
128
140
73
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
139
72
58
82
96
118
138
71
57
81
97
117
137
70
56
80
98
116
136
69
55
79
99
115
135
68
54
78
100
114
134
67
53
77
101
113
133
66
52
76
102
112
132
65
51
75
103
111
131
64
50
74
104
110
130
63
49
73
105
109
129
62
48
72
106
108
128
61
60
59
58
57
56
55
54
53
54
55
56
55
54
53
52
51
50
49
48
47
59
60
61
62
63
64
65
66
67
68
69
70
71
107
106
105
104
103
102
101
100
99
98
97
96
95
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
52
46
58
94
106
120
51
45
57
93
105
121
50
44
56
92
104
122
49
43
55
91
103
123
48
42
54
90
102
124
47
41
53
89
101
125
46
40
52
88
100
126
45
39
51
87
99
127
44
38
50
86
98
128
43
37
49
85
97
129
42
36
48
84
96
130
33
34
35
36
37
38
39
40
41
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
131
132
133
134
135
136
137
138
139
32
34
60
72
96
138
31
33
61
73
97
137
30
32
62
74
98
136
29
31
63
75
99
135
28
30
64
76
100
134
27
29
65
77
101
133
26
28
66
78
102
132
25
27
67
79
103
131
24
26
68
80
104
130
23
25
69
81
105
129
22
24
70
82
106
128
21
22
23
24
25
26
27
28
29
30
31
32
31
30
29
28
27
26
25
24
23
83
82
81
80
79
78
77
76
75
74
73
72
71
83
84
85
86
87
88
89
90
91
92
93
94
95
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
20
22
84
96
108
128
19
21
85
97
109
129
18
20
86
98
110
130
17
19
87
99
111
131
16
18
88
100
112
132
15
17
89
101
113
133
14
16
90
102
114
134
13
15
91
103
115
135
12
14
92
104
116
136
11
13
93
105
117
137
10
12
94
106
118
138
9
8
7
6
5
4
3
2
1
0
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
146
147
148
149
150
151
152
153
154
155
156
157
158
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
159
149
145
157
169
170
158
148
144
156
168
169
157
147
143
155
167
168
156
146
142
154
166
167
155
145
141
153
165
166
154
144
140
152
164
165
153
143
139
151
163
164
152
142
138
150
162
163
151
141
137
149
161
162
150
140
136
148
160
161
149
139
135
147
159
160
148
136
137
138
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
159
147
135
129
133
145
160
146
158
146
134
128
132
144
161
145
157
145
133
127
131
143
162
144
156
144
132
126
130
142
162
143
155
143
131
125
129
141
161
142
154
142
130
124
128
140
160
141
153
141
129
123
127
139
159
140
152
140
139
138
137
136
135
134
133
132
131
130
129
128
122
126
138
158
139
140
141
142
143
144
145
146
147
148
149
150
151
127
121
125
137
157
138
126
120
124
136
156
137
125
119
123
135
155
136
124
118
122
134
154
135
123
117
121
133
153
134
122
116
120
132
152
133
121
115
119
131
151
132
120
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
131
119
105
141
130
118
104
140
129
117
103
139
128
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
116
102
138
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
105
115
101
137
128
116
104
114
100
136
129
117
103
113
99
135
130
118
102
112
98
134
131
119
101
111
97
133
132
120
100
110
96
132
133
121
99
109
95
131
134
122
98
108
107
106
105
104
103
102
101
100
99
100
101
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
123
97
98
93
129
143
124
96
97
92
128
144
125
95
96
91
127
145
126
94
95
90
126
146
127
93
94
89
125
147
128
92
93
88
124
148
129
91
92
87
123
149
130
90
91
86
122
150
131
89
90
85
121
149
132
88
89
84
120
148
133
87
88
83
119
147
134
86
87
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
82
118
146
145
144
143
142
141
140
139
138
139
140
141
142
142
141
140
139
138
137
136
135
85
77
81
117
137
136
84
76
80
116
136
137
83
75
79
115
135
138
82
74
78
114
134
139
81
73
77
113
133
140
80
72
76
112
132
141
79
71
75
111
131
142
78
70
74
110
130
142
77
69
73
109
129
141
76
68
72
108
128
140
75
67
71
107
127
139
74
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
138
73
57
81
95
117
137
72
56
80
96
116
136
71
55
79
97
115
135
70
54
78
98
114
134
69
53
77
99
113
133
68
52
76
100
112
132
67
51
75
101
111
131
66
50
74
102
110
130
65
49
73
103
109
129
64
48
72
104
108
128
63
47
71
105
107
127
62
61
60
59
58
57
56
55
54
55
56
55
54
53
52
51
50
49
48
47
46
58
59
60
61
62
63
64
65
66
67
68
69
70
106
105
104
103
102
101
100
99
98
97
96
95
94
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
53
45
57
93
105
119
52
44
56
92
104
120
51
43
55
91
103
121
50
42
54
90
102
122
49
41
53
89
101
123
48
40
52
88
100
124
47
39
51
87
99
125
46
38
50
86
98
126
45
37
49
85
97
127
44
36
48
84
96
128
43
35
47
83
95
129
34
35
36
37
38
39
40
41
42
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
130
131
132
133
134
135
136
137
138
33
33
59
71
95
137
32
32
60
72
96
136
31
31
61
73
97
135
30
30
62
74
98
134
29
29
63
75
99
133
28
28
64
76
100
132
27
27
65
77
101
131
26
26
66
78
102
130
25
25
67
79
103
129
24
24
68
80
104
128
23
23
69
81
105
127
22
23
24
25
26
27
28
29
30
31
32
31
30
29
28
27
26
25
24
23
22
82
81
80
79
78
77
76
75
74
73
72
71
70
82
83
84
85
86
87
88
89
90
91
92
93
94
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
21
21
83
95
107
127
20
20
84
96
108
128
19
19
85
97
109
129
18
18
86
98
110
130
17
17
87
99
111
131
16
16
88
100
112
132
15
15
89
101
113
133
14
14
90
102
114
134
13
13
91
103
115
135
12
12
92
104
116
136
11
11
93
105
117
137
10
9
8
7
6
5
4
3
2
1
0
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
145
146
147
148
149
150
151
152
153
154
155
156
157
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
158
148
144
156
168
171
157
147
143
155
167
170
156
146
142
154
166
169
155
145
141
153
165
168
154
144
140
152
164
167
153
143
139
151
163
166
152
142
138
150
162
165
151
141
137
149
161
164
150
140
136
148
160
163
149
139
135
147
159
162
148
138
134
146
158
161
147
135
136
137
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
160
146
134
128
132
144
161
147
159
145
133
127
131
143
162
146
158
144
132
126
130
142
162
145
157
143
131
125
129
141
161
144
156
142
130
124
128
140
160
143
155
141
129
123
127
139
159
142
154
140
128
122
126
138
158
141
153
139
138
137
136
135
134
133
132
131
130
129
128
127
121
125
137
157
140
141
142
143
144
145
146
147
148
149
150
151
152
126
120
124
136
156
139
125
119
123
135
155
138
124
118
122
134
154
137
123
117
121
133
153
136
122
116
120
132
152
135
121
115
119
131
151
134
120
114
118
130
150
133
119
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
132
118
104
140
131
117
103
139
130
116
102
138
129
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
116
115
101
137
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
106
114
100
136
129
117
105
113
99
135
130
118
104
112
98
134
131
119
103
111
97
133
132
120
102
110
96
132
133
121
101
109
95
131
134
122
100
108
94
130
135
123
99
107
106
105
104
103
102
101
100
99
98
99
100
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
124
98
97
92
128
142
125
97
96
91
127
143
126
96
95
90
126
144
127
95
94
89
125
145
128
94
93
88
124
146
129
93
92
87
123
147
130
92
91
86
122
148
131
91
90
85
121
149
132
90
89
84
120
148
133
89
88
83
119
147
134
88
87
82
118
146
135
87
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
81
117
145
144
143
142
141
140
139
138
137
138
139
140
141
142
142
141
140
139
138
137
136
86
76
80
116
136
137
85
75
79
115
135
138
84
74
78
114
134
139
83
73
77
113
133
140
82
72
76
112
132
141
81
71
75
111
131
142
80
70
74
110
130
142
79
69
73
109
129
141
78
68
72
108
128
140
77
67
71
107
127
139
76
66
70
106
126
138
75
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
137
74
56
80
94
116
136
73
55
79
95
115
135
72
54
78
96
114
134
71
53
77
97
113
133
70
52
76
98
112
132
69
51
75
99
111
131
68
50
74
100
110
130
67
49
73
101
109
129
66
48
72
102
108
128
65
47
71
103
107
127
64
46
70
104
106
126
63
62
61
60
59
58
57
56
55
56
55
54
53
52
51
50
49
48
47
46
45
57
58
59
60
61
62
63
64
65
66
67
68
69
105
104
103
102
101
100
99
98
97
96
95
94
93
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
54
44
56
92
104
118
53
43
55
91
103
119
52
42
54
90
102
120
51
41
53
89
101
121
50
40
52
88
100
122
49
39
51
87
99
123
48
38
50
86
98
124
47
37
49
85
97
125
46
36
48
84
96
126
45
35
47
83
95
127
44
34
46
82
94
128
35
36
37
38
39
40
41
42
43
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
129
130
131
132
133
134
135
136
137
34
32
58
70
94
136
33
31
59
71
95
135
32
30
60
72
96
134
31
29
61
73
97
133
30
28
62
74
98
132
29
27
63
75
99
131
28
26
64
76
100
130
27
25
65
77
101
129
26
24
66
78
102
128
25
23
67
79
103
127
24
22
68
80
104
126
23
24
25
26
27
28
29
30
31
32
31
30
29
28
27
26
25
24
23
22
21
81
80
79
78
77
76
75
74
73
72
71
70
69
81
82
83
84
85
86
87
88
89
90
91
92
93
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
22
20
82
94
106
126
21
19
83
95
107
127
20
18
84
96
108
128
19
17
85
97
109
129
18
16
86
98
110
130
17
15
87
99
111
131
16
14
88
100
112
132
15
13
89
101
113
133
14
12
90
102
114
134
13
11
91
103
115
135
12
10
92
104
116
136
11
10
9
8
7
6
5
4
3
2
1
0
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
144
145
146
147
148
149
150
151
152
153
154
155
156
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
186
185
184
183
182
181
180
179
178
177
176
175
174
173
157
147
143
155
167
172
156
146
142
154
166
171
155
145
141
153
165
170
154
144
140
152
164
169
153
143
139
151
163
168
152
142
138
150
162
167
151
141
137
149
161
166
150
140
136
148
160
165
149
139
135
147
159
164
148
138
134
146
158
163
147
137
133
145
157
162
146
134
135
136
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
161
145
133
127
131
143
162
148
160
144
132
126
130
142
162
147
159
143
131
125
129
141
161
146
158
142
130
124
128
140
160
145
157
141
129
123
127
139
159
144
156
140
128
122
126
138
158
143
155
139
127
121
125
137
157
142
154
138
137
136
135
134
133
132
131
130
129
128
127
126
120
124
136
156
141
142
143
144
145
146
147
148
149
150
151
152
153
125
119
123
135
155
140
124
118
122
134
154
139
123
117
121
133
153
138
122
116
120
132
152
137
121
115
119
131
151
136
120
114
118
130
150
135
119
113
117
129
149
134
118
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
133
117
103
139
132
116
102
138
131
115
101
137
130
112
111
110
109
108
109
110
111
112
113
114
115
116
117
116
115
114
100
136
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
107
113
99
135
130
118
106
112
98
134
131
119
105
111
97
133
132
120
104
110
96
132
133
121
103
109
95
131
134
122
102
108
94
130
135
123
101
107
93
129
136
124
100
106
105
104
103
102
101
100
99
98
97
98
99
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
125
99
96
91
127
141
126
98
95
90
126
142
127
97
94
89
125
143
128
96
93
88
124
144
129
95
92
87
123
145
130
94
91
86
122
146
131
93
90
85
121
147
132
92
89
84
120
148
133
91
88
83
119
147
134
90
87
82
118
146
135
89
86
81
117
145
136
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
80
116
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
142
141
140
139
138
137
87
75
79
115
135
138
86
74
78
114
134
139
85
73
77
113
133
140
84
72
76
112
132
141
83
71
75
111
131
142
82
70
74
110
130
142
81
69
73
109
129
141
80
68
72
108
128
140
79
67
71
107
127
139
78
66
70
106
126
138
77
65
69
105
125
137
76
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
136
75
55
79
93
115
135
74
54
78
94
114
134
73
53
77
95
113
133
72
52
76
96
112
132
71
51
75
97
111
131
70
50
74
98
110
130
69
49
73
99
109
129
68
48
72
100
108
128
67
47
71
101
107
127
66
46
70
102
106
126
65
45
69
103
105
125
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
56
57
58
59
60
61
62
63
64
65
66
67
68
104
103
102
101
100
99
98
97
96
95
94
93
92
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
55
43
55
91
103
117
54
42
54
90
102
118
53
41
53
89
101
119
52
40
52
88
100
120
51
39
51
87
99
121
50
38
50
86
98
122
49
37
49
85
97
123
48
36
48
84
96
124
47
35
47
83
95
125
46
34
46
82
94
126
45
33
45
81
93
127
36
37
38
39
40
41
42
43
44
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
128
129
130
131
132
133
134
135
136
35
31
57
69
93
135
34
30
58
70
94
134
33
29
59
71
95
133
32
28
60
72
96
132
31
27
61
73
97
131
30
26
62
74
98
130
29
25
63
75
99
129
28
24
64
76
100
128
27
23
65
77
101
127
26
22
66
78
102
126
25
21
67
79
103
125
24
25
26
27
28
29
30
31
32
31
30
29
28
27
26
25
24
23
22
21
20
80
79
78
77
76
75
74
73
72
71
70
69
68
80
81
82
83
84
85
86
87
88
89
90
91
92
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
23
19
81
93
105
125
22
18
82
94
106
126
21
17
83
95
107
127
20
16
84
96
108
128
19
15
85
97
109
129
18
14
86
98
110
130
17
13
87
99
111
131
16
12
88
100
112
132
15
11
89
101
113
133
14
10
90
102
114
134
13
9
91
103
115
135
12
11
10
9
8
7
6
5
4
3
2
1
0
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
143
144
145
146
147
148
149
150
151
152
153
154
155
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
185
184
183
182
181
180
179
178
177
176
175
174
173
172
156
146
142
154
166
171
155
145
141
153
165
170
154
144
140
152
164
169
153
143
139
151
163
168
152
142
138
150
162
167
151
141
137
149
161
166
150
140
136
148
160
165
149
139
135
147
159
164
148
138
134
146
158
163
147
137
133
145
157
162
146
136
132
144
156
161
145
133
134
135
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
161
160
159
158
157
156
155
154
153
152
151
150
149
148
160
144
132
126
130
142
161
147
159
143
131
125
129
141
161
146
158
142
130
124
128
140
160
145
157
141
129
123
127
139
159
144
156
140
128
122
126
138
158
143
155
139
127
121
125
137
157
142
154
138
126
120
124
136
156
141
153
137
136
135
134
133
132
131
130
129
128
127
126
125
119
123
135
155
140
141
142
143
144
145
146
147
148
149
150
151
152
124
118
122
134
154
139
123
117
121
133
153
138
122
116
120
132
152
137
121
115
119
131
151
136
120
114
118
130
150
135
119
113
117
129
149
134
118
112
116
128
148
133
117
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
132
116
102
138
131
115
101
137
130
114
100
136
129
111
110
109
108
107
108
109
110
111
112
113
114
115
116
115
114
113
99
135
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
106
112
98
134
129
117
105
111
97
133
130
118
104
110
96
132
131
119
103
109
95
131
132
120
102
108
94
130
133
121
101
107
93
129
134
122
100
106
92
128
135
123
99
105
104
103
102
101
100
99
98
97
96
97
98
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
141
140
139
138
137
136
124
98
95
90
126
140
125
97
94
89
125
141
126
96
93
88
124
142
127
95
92
87
123
143
128
94
91
86
122
144
129
93
90
85
121
145
130
92
89
84
120
146
131
91
88
83
119
147
132
90
87
82
118
146
133
89
86
81
117
145
134
88
85
80
116
144
135
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
79
115
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
141
140
139
138
137
136
86
74
78
114
134
137
85
73
77
113
133
138
84
72
76
112
132
139
83
71
75
111
131
140
82
70
74
110
130
141
81
69
73
109
129
141
80
68
72
108
128
140
79
67
71
107
127
139
78
66
70
106
126
138
77
65
69
105
125
137
76
64
68
104
124
136
75
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
135
74
54
78
92
114
134
73
53
77
93
113
133
72
52
76
94
112
132
71
51
75
95
111
131
70
50
74
96
110
130
69
49
73
97
109
129
68
48
72
98
108
128
67
47
71
99
107
127
66
46
70
100
106
126
65
45
69
101
105
125
64
44
68
102
104
124
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
55
56
57
58
59
60
61
62
63
64
65
66
67
103
102
101
100
99
98
97
96
95
94
93
92
91
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
56
42
54
90
102
116
55
41
53
89
101
117
54
40
52
88
100
118
53
39
51
87
99
119
52
38
50
86
98
120
51
37
49
85
97
121
50
36
48
84
96
122
49
35
47
83
95
123
48
34
46
82
94
124
47
33
45
81
93
125
46
32
44
80
92
126
37
38
39
40
41
42
43
44
45
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
127
128
129
130
131
132
133
134
135
36
30
56
68
92
134
35
29
57
69
93
133
34
28
58
70
94
132
33
27
59
71
95
131
32
26
60
72
96
130
31
25
61
73
97
129
30
24
62
74
98
128
29
23
63
75
99
127
28
22
64
76
100
126
27
21
65
77
101
125
26
20
66
78
102
124
25
26
27
28
29
30
31
32
31
30
29
28
27
26
25
24
23
22
21
20
19
79
78
77
76
75
74
73
72
71
70
69
68
67
79
80
81
82
83
84
85
86
87
88
89
90
91
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
24
18
80
92
104
124
23
17
81
93
105
125
22
16
82
94
106
126
21
15
83
95
107
127
20
14
84
96
108
128
19
13
85
97
109
129
18
12
86
98
110
130
17
11
87
99
111
131
16
10
88
100
112
132
15
9
89
101
113
133
14
8
90
102
114
134
13
12
11
10
9
8
7
6
5
4
3
2
1
0
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
142
143
144
145
146
147
148
149
150
151
152
153
154
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
184
183
182
181
180
179
178
177
176
175
174
173
172
171
155
145
141
153
165
170
154
144
140
152
164
169
153
143
139
151
163
168
152
142
138
150
162
167
151
141
137
149
161
166
150
140
136
148
160
165
149
139
135
147
159
164
148
138
134
146
158
163
147
137
133
145
157
162
146
136
132
144
156
161
145
135
131
143
155
160
144
132
133
134
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
160
159
158
157
156
155
154
153
152
151
150
149
148
147
159
143
131
125
129
141
160
146
158
142
130
124
128
140
160
145
157
141
129
123
127
139
159
144
156
140
128
122
126
138
158
143
155
139
127
121
125
137
157
142
154
138
126
120
124
136
156
141
153
137
125
119
123
135
155
140
152
136
135
134
133
132
131
130
129
128
127
126
125
124
118
122
134
154
139
140
141
142
143
144
145
146
147
148
149
150
151
123
117
121
133
153
138
122
116
120
132
152
137
121
115
119
131
151
136
120
114
118
130
150
135
119
113
117
129
149
134
118
112
116
128
148
133
117
111
115
127
147
132
116
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
131
115
101
137
130
114
100
136
129
113
99
135
128
110
109
108
107
106
107
108
109
110
111
112
113
114
115
114
113
112
98
134
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
105
111
97
133
128
116
104
110
96
132
129
117
103
109
95
131
130
118
102
108
94
130
131
119
101
107
93
129
132
120
100
106
92
128
133
121
99
105
91
127
134
122
98
104
103
102
101
100
99
98
97
96
95
96
97
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
140
139
138
137
136
135
123
97
94
89
125
139
124
96
93
88
124
140
125
95
92
87
123
141
126
94
91
86
122
142
127
93
90
85
121
143
128
92
89
84
120
144
129
91
88
83
119
145
130
90
87
82
118
146
131
89
86
81
117
145
132
88
85
80
116
144
133
87
84
79
115
143
134
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
78
114
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
140
139
138
137
136
135
85
73
77
113
133
136
84
72
76
112
132
137
83
71
75
111
131
138
82
70
74
110
130
139
81
69
73
109
129
140
80
68
72
108
128
140
79
67
71
107
127
139
78
66
70
106
126
138
77
65
69
105
125
137
76
64
68
104
124
136
75
63
67
103
123
135
74
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
134
73
53
77
91
113
133
72
52
76
92
112
132
71
51
75
93
111
131
70
50
74
94
110
130
69
49
73
95
109
129
68
48
72
96
108
128
67
47
71
97
107
127
66
46
70
98
106
126
65
45
69
99
105
125
64
44
68
100
104
124
63
43
67
101
103
123
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
54
55
56
57
58
59
60
61
62
63
64
65
66
102
101
100
99
98
97
96
95
94
93
92
91
90
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
55
41
53
89
101
115
56
40
52
88
100
116
55
39
51
87
99
117
54
38
50
86
98
118
53
37
49
85
97
119
52
36
48
84
96
120
51
35
47
83
95
121
50
34
46
82
94
122
49
33
45
81
93
123
48
32
44
80
92
124
47
31
43
79
91
125
38
39
40
41
42
43
44
45
46
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
126
127
128
129
130
131
132
133
134
37
29
55
67
91
133
36
28
56
68
92
132
35
27
57
69
93
131
34
26
58
70
94
130
33
25
59
71
95
129
32
24
60
72
96
128
31
23
61
73
97
127
30
22
62
74
98
126
29
21
63
75
99
125
28
20
64
76
100
124
27
19
65
77
101
123
26
27
28
29
30
31
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
78
77
76
75
74
73
72
71
70
69
68
67
66
78
79
80
81
82
83
84
85
86
87
88
89
90
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
25
17
79
91
103
123
24
16
80
92
104
124
23
15
81
93
105
125
22
14
82
94
106
126
21
13
83
95
107
127
20
12
84
96
108
128
19
11
85
97
109
129
18
10
86
98
110
130
17
9
87
99
111
131
16
8
88
100
112
132
15
7
89
101
113
133
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
141
142
143
144
145
146
147
148
149
150
151
152
153
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
183
182
181
180
179
178
177
176
175
174
173
172
171
170
154
144
140
152
164
169
153
143
139
151
163
168
152
142
138
150
162
167
151
141
137
149
161
166
150
140
136
148
160
165
149
139
135
147
159
164
148
138
134
146
158
163
147
137
133
145
157
162
146
136
132
144
156
161
145
135
131
143
155
160
144
134
130
142
154
159
143
131
132
133
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
159
158
157
156
155
154
153
152
151
150
149
148
147
146
158
142
130
124
128
140
159
145
157
141
129
123
127
139
159
144
156
140
128
122
126
138
158
143
155
139
127
121
125
137
157
142
154
138
126
120
124
136
156
141
153
137
125
119
123
135
155
140
152
136
124
118
122
134
154
139
151
135
134
133
132
131
130
129
128
127
126
125
124
123
117
121
133
153
138
139
140
141
142
143
144
145
146
147
148
149
150
122
116
120
132
152
137
121
115
119
131
151
136
120
114
118
130
150
135
119
113
117
129
149
134
118
112
116
128
148
133
117
111
115
127
147
132
116
110
114
126
146
131
115
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
130
114
100
136
129
113
99
135
128
112
98
134
127
109
108
107
106
105
106
107
108
109
110
111
112
113
114
113
112
111
97
133
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
104
110
96
132
127
115
103
109
95
131
128
116
102
108
94
130
129
117
101
107
93
129
130
118
100
106
92
128
131
119
99
105
91
127
132
120
98
104
90
126
133
121
97
103
102
101
100
99
98
97
96
95
94
95
96
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
139
138
137
136
135
134
122
96
93
88
124
138
123
95
92
87
123
139
124
94
91
86
122
140
125
93
90
85
121
141
126
92
89
84
120
142
127
91
88
83
119
143
128
90
87
82
118
144
129
89
86
81
117
145
130
88
85
80
116
144
131
87
84
79
115
143
132
86
83
78
114
142
133
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
77
113
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
139
138
137
136
135
134
84
72
76
112
132
135
83
71
75
111
131
136
82
70
74
110
130
137
81
69
73
109
129
138
80
68
72
108
128
139
79
67
71
107
127
139
78
66
70
106
126
138
77
65
69
105
125
137
76
64
68
104
124
136
75
63
67
103
123
135
74
62
66
102
122
134
73
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
133
72
52
76
90
112
132
71
51
75
91
111
131
70
50
74
92
110
130
69
49
73
93
109
129
68
48
72
94
108
128
67
47
71
95
107
127
66
46
70
96
106
126
65
45
69
97
105
125
64
44
68
98
104
124
63
43
67
99
103
123
62
42
66
100
102
122
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
53
54
55
56
57
58
59
60
61
62
63
64
65
101
100
99
98
97
96
95
94
93
92
91
90
89
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
54
40
52
88
100
114
55
39
51
87
99
115
56
38
50
86
98
116
55
37
49
85
97
117
54
36
48
84
96
118
53
35
47
83
95
119
52
34
46
82
94
120
51
33
45
81
93
121
50
32
44
80
92
122
49
31
43
79
91
123
48
30
42
78
90
124
39
40
41
42
43
44
45
46
47
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
125
126
127
128
129
130
131
132
133
38
28
54
66
90
132
37
27
55
67
91
131
36
26
56
68
92
130
35
25
57
69
93
129
34
24
58
70
94
128
33
23
59
71
95
127
32
22
60
72
96
126
31
21
61
73
97
125
30
20
62
74
98
124
29
19
63
75
99
123
28
18
64
76
100
122
27
28
29
30
31
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
77
76
75
74
73
72
71
70
69
68
67
66
65
77
78
79
80
81
82
83
84
85
86
87
88
89
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
26
16
78
90
102
122
25
15
79
91
103
123
24
14
80
92
104
124
23
13
81
93
105
125
22
12
82
94
106
126
21
11
83
95
107
127
20
10
84
96
108
128
19
9
85
97
109
129
18
8
86
98
110
130
17
7
87
99
111
131
16
6
88
100
112
132
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
140
141
142
143
144
145
146
147
148
149
150
151
152
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
182
181
180
179
178
177
176
175
174
173
172
171
170
169
153
143
139
151
163
168
152
142
138
150
162
167
151
141
137
149
161
166
150
140
136
148
160
165
149
139
135
147
159
164
148
138
134
146
158
163
147
137
133
145
157
162
146
136
132
144
156
161
145
135
131
143
155
160
144
134
130
142
154
159
143
133
129
141
153
158
142
130
131
132
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
158
157
156
155
154
153
152
151
150
149
148
147
146
145
157
141
129
123
127
139
158
144
156
140
128
122
126
138
158
143
155
139
127
121
125
137
157
142
154
138
126
120
124
136
156
141
153
137
125
119
123
135
155
140
152
136
124
118
122
134
154
139
151
135
123
117
121
133
153
138
150
134
133
132
131
130
129
128
127
126
125
124
123
122
116
120
132
152
137
138
139
140
141
142
143
144
145
146
147
148
149
121
115
119
131
151
136
120
114
118
130
150
135
119
113
117
129
149
134
118
112
116
128
148
133
117
111
115
127
147
132
116
110
114
126
146
131
115
109
113
125
145
130
114
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
129
113
99
135
128
112
98
134
127
111
97
133
126
108
107
106
105
104
105
106
107
108
109
110
111
112
113
112
111
110
96
132
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
103
109
95
131
126
114
102
108
94
130
127
115
101
107
93
129
128
116
100
106
92
128
129
117
99
105
91
127
130
118
98
104
90
126
131
119
97
103
89
125
132
120
96
102
101
100
99
98
97
96
95
94
93
94
95
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
138
137
136
135
134
133
121
95
92
87
123
137
122
94
91
86
122
138
123
93
90
85
121
139
124
92
89
84
120
140
125
91
88
83
119
141
126
90
87
82
118
142
127
89
86
81
117
143
128
88
85
80
116
144
129
87
84
79
115
143
130
86
83
78
114
142
131
85
82
77
113
141
132
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
76
112
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
138
137
136
135
134
133
83
71
75
111
131
134
82
70
74
110
130
135
81
69
73
109
129
136
80
68
72
108
128
137
79
67
71
107
127
138
78
66
70
106
126
138
77
65
69
105
125
137
76
64
68
104
124
136
75
63
67
103
123
135
74
62
66
102
122
134
73
61
65
101
121
133
72
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
132
71
51
75
89
111
131
70
50
74
90
110
130
69
49
73
91
109
129
68
48
72
92
108
128
67
47
71
93
107
127
66
46
70
94
106
126
65
45
69
95
105
125
64
44
68
96
104
124
63
43
67
97
103
123
62
42
66
98
102
122
61
41
65
99
101
121
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
52
53
54
55
56
57
58
59
60
61
62
63
64
100
99
98
97
96
95
94
93
92
91
90
89
88
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
53
39
51
87
99
113
54
38
50
86
98
114
55
37
49
85
97
115
56
36
48
84
96
116
55
35
47
83
95
117
54
34
46
82
94
118
53
33
45
81
93
119
52
32
44
80
92
120
51
31
43
79
91
121
50
30
42
78
90
122
49
29
41
77
89
123
40
41
42
43
44
45
46
47
48
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
124
125
126
127
128
129
130
131
132
39
27
53
65
89
131
38
26
54
66
90
130
37
25
55
67
91
129
36
24
56
68
92
128
35
23
57
69
93
127
34
22
58
70
94
126
33
21
59
71
95
125
32
20
60
72
96
124
31
19
61
73
97
123
30
18
62
74
98
122
29
17
63
75
99
121
28
29
30
31
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
76
75
74
73
72
71
70
69
68
67
66
65
64
76
77
78
79
80
81
82
83
84
85
86
87
88
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
27
15
77
89
101
121
26
14
78
90
102
122
25
13
79
91
103
123
24
12
80
92
104
124
23
11
81
93
105
125
22
10
82
94
106
126
21
9
83
95
107
127
20
8
84
96
108
128
19
7
85
97
109
129
18
6
86
98
110
130
17
5
87
99
111
131
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
139
140
141
142
143
144
145
146
147
148
149
150
151
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
181
180
179
178
177
176
175
174
173
172
171
170
169
168
152
142
138
150
162
167
151
141
137
149
161
166
150
140
136
148
160
165
149
139
135
147
159
164
148
138
134
146
158
163
147
137
133
145
157
162
146
136
132
144
156
161
145
135
131
143
155
160
144
134
130
142
154
159
143
133
129
141
153
158
142
132
128
140
152
157
141
129
130
131
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
157
156
155
154
153
152
151
150
149
148
147
146
145
144
156
140
128
122
126
138
157
143
155
139
127
121
125
137
157
142
154
138
126
120
124
136
156
141
153
137
125
119
123
135
155
140
152
136
124
118
122
134
154
139
151
135
123
117
121
133
153
138
150
134
122
116
120
132
152
137
149
133
132
131
130
129
128
127
126
125
124
123
122
121
115
119
131
151
136
137
138
139
140
141
142
143
144
145
146
147
148
120
114
118
130
150
135
119
113
117
129
149
134
118
112
116
128
148
133
117
111
115
127
147
132
116
110
114
126
146
131
115
109
113
125
145
130
114
108
112
124
144
129
113
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
128
112
98
134
127
111
97
133
126
110
96
132
125
107
106
105
104
103
104
105
106
107
108
109
110
111
112
111
110
109
95
131
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
102
108
94
130
125
113
101
107
93
129
126
114
100
106
92
128
127
115
99
105
91
127
128
116
98
104
90
126
129
117
97
103
89
125
130
118
96
102
88
124
131
119
95
101
100
99
98
97
96
95
94
93
92
93
94
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
137
136
135
134
133
132
120
94
91
86
122
136
121
93
90
85
121
137
122
92
89
84
120
138
123
91
88
83
119
139
124
90
87
82
118
140
125
89
86
81
117
141
126
88
85
80
116
142
127
87
84
79
115
143
128
86
83
78
114
142
129
85
82
77
113
141
130
84
81
76
112
140
131
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
75
111
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
137
136
135
134
133
132
82
70
74
110
130
133
81
69
73
109
129
134
80
68
72
108
128
135
79
67
71
107
127
136
78
66
70
106
126
137
77
65
69
105
125
137
76
64
68
104
124
136
75
63
67
103
123
135
74
62
66
102
122
134
73
61
65
101
121
133
72
60
64
100
120
132
71
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
131
70
50
74
88
110
130
69
49
73
89
109
129
68
48
72
90
108
128
67
47
71
91
107
127
66
46
70
92
106
126
65
45
69
93
105
125
64
44
68
94
104
124
63
43
67
95
103
123
62
42
66
96
102
122
61
41
65
97
101
121
60
40
64
98
100
120
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
51
52
53
54
55
56
57
58
59
60
61
62
63
99
98
97
96
95
94
93
92
91
90
89
88
87
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
52
38
50
86
98
112
53
37
49
85
97
113
54
36
48
84
96
114
55
35
47
83
95
115
56
34
46
82
94
116
55
33
45
81
93
117
54
32
44
80
92
118
53
31
43
79
91
119
52
30
42
78
90
120
51
29
41
77
89
121
50
28
40
76
88
122
41
42
43
44
45
46
47
48
49
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
123
124
125
126
127
128
129
130
131
40
26
52
64
88
130
39
25
53
65
89
129
38
24
54
66
90
128
37
23
55
67
91
127
36
22
56
68
92
126
35
21
57
69
93
125
34
20
58
70
94
124
33
19
59
71
95
123
32
18
60
72
96
122
31
17
61
73
97
121
30
16
62
74
98
120
29
30
31
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
75
74
73
72
71
70
69
68
67
66
65
64
63
75
76
77
78
79
80
81
82
83
84
85
86
87
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
28
14
76
88
100
120
27
13
77
89
101
121
26
12
78
90
102
122
25
11
79
91
103
123
24
10
80
92
104
124
23
9
81
93
105
125
22
8
82
94
106
126
21
7
83
95
107
127
20
6
84
96
108
128
19
5
85
97
109
129
18
4
86
98
110
130
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
138
139
140
141
142
143
144
145
146
147
148
149
150
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
180
179
178
177
176
175
174
173
172
171
170
169
168
167
151
141
137
149
161
166
150
140
136
148
160
165
149
139
135
147
159
164
148
138
134
146
158
163
147
137
133
145
157
162
146
136
132
144
156
161
145
135
131
143
155
160
144
134
130
142
154
159
143
133
129
141
153
158
142
132
128
140
152
157
141
131
127
139
151
156
140
128
129
130
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
156
155
154
153
152
151
150
149
148
147
146
145
144
143
155
139
127
121
125
137
156
142
154
138
126
120
124
136
156
141
153
137
125
119
123
135
155
140
152
136
124
118
122
134
154
139
151
135
123
117
121
133
153
138
150
134
122
116
120
132
152
137
149
133
121
115
119
131
151
136
148
132
131
130
129
128
127
126
125
124
123
122
121
120
114
118
130
150
135
136
137
138
139
140
141
142
143
144
145
146
147
119
113
117
129
149
134
118
112
116
128
148
133
117
111
115
127
147
132
116
110
114
126
146
131
115
109
113
125
145
130
114
108
112
124
144
129
113
107
111
123
143
128
112
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
127
111
97
133
126
110
96
132
125
109
95
131
124
106
105
104
103
102
103
104
105
106
107
108
109
110
111
110
109
108
94
130
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
101
107
93
129
124
112
100
106
92
128
125
113
99
105
91
127
126
114
98
104
90
126
127
115
97
103
89
125
128
116
96
102
88
124
129
117
95
101
87
123
130
118
94
100
99
98
97
96
95
94
93
92
91
92
93
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
136
135
134
133
132
131
119
93
90
85
121
135
120
92
89
84
120
136
121
91
88
83
119
137
122
90
87
82
118
138
123
89
86
81
117
139
124
88
85
80
116
140
125
87
84
79
115
141
126
86
83
78
114
142
127
85
82
77
113
141
128
84
81
76
112
140
129
83
80
75
111
139
130
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
74
110
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
136
135
134
133
132
131
81
69
73
109
129
132
80
68
72
108
128
133
79
67
71
107
127
134
78
66
70
106
126
135
77
65
69
105
125
136
76
64
68
104
124
136
75
63
67
103
123
135
74
62
66
102
122
134
73
61
65
101
121
133
72
60
64
100
120
132
71
59
63
99
119
131
70
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
130
69
49
73
87
109
129
68
48
72
88
108
128
67
47
71
89
107
127
66
46
70
90
106
126
65
45
69
91
105
125
64
44
68
92
104
124
63
43
67
93
103
123
62
42
66
94
102
122
61
41
65
95
101
121
60
40
64
96
100
120
59
39
63
97
99
119
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
50
51
52
53
54
55
56
57
58
59
60
61
62
98
97
96
95
94
93
92
91
90
89
88
87
86
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
51
37
49
85
97
111
52
36
48
84
96
112
53
35
47
83
95
113
54
34
46
82
94
114
55
33
45
81
93
115
56
32
44
80
92
116
55
31
43
79
91
117
54
30
42
78
90
118
53
29
41
77
89
119
52
28
40
76
88
120
51
27
39
75
87
121
42
43
44
45
46
47
48
49
50
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
122
123
124
125
126
127
128
129
130
41
25
51
63
87
129
40
24
52
64
88
128
39
23
53
65
89
127
38
22
54
66
90
126
37
21
55
67
91
125
36
20
56
68
92
124
35
19
57
69
93
123
34
18
58
70
94
122
33
17
59
71
95
121
32
16
60
72
96
120
31
15
61
73
97
119
30
31
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
74
73
72
71
70
69
68
67
66
65
64
63
62
74
75
76
77
78
79
80
81
82
83
84
85
86
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
29
13
75
87
99
119
28
12
76
88
100
120
27
11
77
89
101
121
26
10
78
90
102
122
25
9
79
91
103
123
24
8
80
92
104
124
23
7
81
93
105
125
22
6
82
94
106
126
21
5
83
95
107
127
20
4
84
96
108
128
19
3
85
97
109
129
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
137
138
139
140
141
142
143
144
145
146
147
148
149
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
179
178
177
176
175
174
173
172
171
170
169
168
167
166
150
140
136
148
160
165
149
139
135
147
159
164
148
138
134
146
158
163
147
137
133
145
157
162
146
136
132
144
156
161
145
135
131
143
155
160
144
134
130
142
154
159
143
133
129
141
153
158
142
132
128
140
152
157
141
131
127
139
151
156
140
130
126
138
150
155
139
127
128
129
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
155
154
153
152
151
150
149
148
147
146
145
144
143
142
154
138
126
120
124
136
155
141
153
137
125
119
123
135
155
140
152
136
124
118
122
134
154
139
151
135
123
117
121
133
153
138
150
134
122
116
120
132
152
137
149
133
121
115
119
131
151
136
148
132
120
114
118
130
150
135
147
131
130
129
128
127
126
125
124
123
122
121
120
119
113
117
129
149
134
135
136
137
138
139
140
141
142
143
144
145
146
118
112
116
128
148
133
117
111
115
127
147
132
116
110
114
126
146
131
115
109
113
125
145
130
114
108
112
124
144
129
113
107
111
123
143
128
112
106
110
122
142
127
111
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
126
110
96
132
125
109
95
131
124
108
94
130
123
105
104
103
102
101
102
103
104
105
106
107
108
109
110
109
108
107
93
129
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
100
106
92
128
123
111
99
105
91
127
124
112
98
104
90
126
125
113
97
103
89
125
126
114
96
102
88
124
127
115
95
101
87
123
128
116
94
100
86
122
129
117
93
99
98
97
96
95
94
93
92
91
90
91
92
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
135
134
133
132
131
130
118
92
89
84
120
134
119
91
88
83
119
135
120
90
87
82
118
136
121
89
86
81
117
137
122
88
85
80
116
138
123
87
84
79
115
139
124
86
83
78
114
140
125
85
82
77
113
141
126
84
81
76
112
140
127
83
80
75
111
139
128
82
79
74
110
138
129
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
73
109
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
135
134
133
132
131
130
80
68
72
108
128
131
79
67
71
107
127
132
78
66
70
106
126
133
77
65
69
105
125
134
76
64
68
104
124
135
75
63
67
103
123
135
74
62
66
102
122
134
73
61
65
101
121
133
72
60
64
100
120
132
71
59
63
99
119
131
70
58
62
98
118
130
69
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
129
68
48
72
86
108
128
67
47
71
87
107
127
66
46
70
88
106
126
65
45
69
89
105
125
64
44
68
90
104
124
63
43
67
91
103
123
62
42
66
92
102
122
61
41
65
93
101
121
60
40
64
94
100
120
59
39
63
95
99
119
58
38
62
96
98
118
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
49
50
51
52
53
54
55
56
57
58
59
60
61
97
96
95
94
93
92
91
90
89
88
87
86
85
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
50
36
48
84
96
110
51
35
47
83
95
111
52
34
46
82
94
112
53
33
45
81
93
113
54
32
44
80
92
114
55
31
43
79
91
115
56
30
42
78
90
116
55
29
41
77
89
117
54
28
40
76
88
118
53
27
39
75
87
119
52
26
38
74
86
120
43
44
45
46
47
48
49
50
51
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
121
122
123
124
125
126
127
128
129
42
24
50
62
86
128
41
23
51
63
87
127
40
22
52
64
88
126
39
21
53
65
89
125
38
20
54
66
90
124
37
19
55
67
91
123
36
18
56
68
92
122
35
17
57
69
93
121
34
16
58
70
94
120
33
15
59
71
95
119
32
14
60
72
96
118
31
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
73
72
71
70
69
68
67
66
65
64
63
62
61
73
74
75
76
77
78
79
80
81
82
83
84
85
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
30
12
74
86
98
118
29
11
75
87
99
119
28
10
76
88
100
120
27
9
77
89
101
121
26
8
78
90
102
122
25
7
79
91
103
123
24
6
80
92
104
124
23
5
81
93
105
125
22
4
82
94
106
126
21
3
83
95
107
127
20
2
84
96
108
128
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
136
137
138
139
140
141
142
143
144
145
146
147
148
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
178
177
176
175
174
173
172
171
170
169
168
167
166
165
149
139
135
147
159
164
148
138
134
146
158
163
147
137
133
145
157
162
146
136
132
144
156
161
145
135
131
143
155
160
144
134
130
142
154
159
143
133
129
141
153
158
142
132
128
140
152
157
141
131
127
139
151
156
140
130
126
138
150
155
139
129
125
137
149
154
138
126
127
128
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
154
153
152
151
150
149
148
147
146
145
144
143
142
141
153
137
125
119
123
135
154
140
152
136
124
118
122
134
154
139
151
135
123
117
121
133
153
138
150
134
122
116
120
132
152
137
149
133
121
115
119
131
151
136
148
132
120
114
118
130
150
135
147
131
119
113
117
129
149
134
146
130
129
128
127
126
125
124
123
122
121
120
119
118
112
116
128
148
133
134
135
136
137
138
139
140
141
142
143
144
145
117
111
115
127
147
132
116
110
114
126
146
131
115
109
113
125
145
130
114
108
112
124
144
129
113
107
111
123
143
128
112
106
110
122
142
127
111
105
109
121
141
126
110
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
125
109
95
131
124
108
94
130
123
107
93
129
122
104
103
102
101
100
101
102
103
104
105
106
107
108
109
108
107
106
92
128
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
99
105
91
127
122
110
98
104
90
126
123
111
97
103
89
125
124
112
96
102
88
124
125
113
95
101
87
123
126
114
94
100
86
122
127
115
93
99
85
121
128
116
92
98
97
96
95
94
93
92
91
90
89
90
91
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
117
91
88
83
119
133
118
90
87
82
118
134
119
89
86
81
117
135
120
88
85
80
116
136
121
87
84
79
115
137
122
86
83
78
114
138
123
85
82
77
113
139
124
84
81
76
112
140
125
83
80
75
111
139
126
82
79
74
110
138
127
81
78
73
109
137
128
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
72
108
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
134
133
132
131
130
129
79
67
71
107
127
130
78
66
70
106
126
131
77
65
69
105
125
132
76
64
68
104
124
133
75
63
67
103
123
134
74
62
66
102
122
134
73
61
65
101
121
133
72
60
64
100
120
132
71
59
63
99
119
131
70
58
62
98
118
130
69
57
61
97
117
129
68
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
128
67
47
71
85
107
127
66
46
70
86
106
126
65
45
69
87
105
125
64
44
68
88
104
124
63
43
67
89
103
123
62
42
66
90
102
122
61
41
65
91
101
121
60
40
64
92
100
120
59
39
63
93
99
119
58
38
62
94
98
118
57
37
61
95
97
117
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
48
49
50
51
52
53
54
55
56
57
58
59
60
96
95
94
93
92
91
90
89
88
87
86
85
84
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
49
35
47
83
95
109
50
34
46
82
94
110
51
33
45
81
93
111
52
32
44
80
92
112
53
31
43
79
91
113
54
30
42
78
90
114
55
29
41
77
89
115
56
28
40
76
88
116
55
27
39
75
87
117
54
26
38
74
86
118
53
25
37
73
85
119
44
45
46
47
48
49
50
51
52
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
120
121
122
123
124
125
126
127
128
43
23
49
61
85
127
42
22
50
62
86
126
41
21
51
63
87
125
40
20
52
64
88
124
39
19
53
65
89
123
38
18
54
66
90
122
37
17
55
67
91
121
36
16
56
68
92
120
35
15
57
69
93
119
34
14
58
70
94
118
33
13
59
71
95
117
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
72
71
70
69
68
67
66
65
64
63
62
61
60
72
73
74
75
76
77
78
79
80
81
82
83
84
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
31
11
73
85
97
117
30
10
74
86
98
118
29
9
75
87
99
119
28
8
76
88
100
120
27
7
77
89
101
121
26
6
78
90
102
122
25
5
79
91
103
123
24
4
80
92
104
124
23
3
81
93
105
125
22
2
82
94
106
126
21
1
83
95
107
127
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
186
187
188
189
190
191
192
193
194
195
196
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
172
173
174
175
176
177
178
179
180
181
182
183
184
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
207
206
205
204
203
202
201
200
199
198
197
196
185
175
171
183
187
195
184
174
170
182
186
194
183
173
169
181
185
193
182
172
168
180
184
192
181
171
167
179
183
191
180
170
166
178
182
190
179
169
165
177
181
189
178
168
164
176
180
188
177
167
163
175
179
187
176
166
162
174
178
186
175
165
161
173
177
185
174
162
163
164
165
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
169
170
171
172
173
174
175
176
175
174
173
172
184
173
161
155
159
171
167
171
183
172
160
154
158
170
166
170
182
171
159
153
157
169
165
169
181
170
158
152
156
168
164
168
180
169
157
151
155
167
163
167
179
168
156
150
154
166
162
166
178
167
155
149
153
165
161
165
177
166
165
164
163
162
161
160
159
158
157
156
155
154
148
152
164
160
164
165
166
167
168
169
170
171
172
173
174
175
176
153
147
151
163
159
163
152
146
150
162
158
162
151
145
149
161
157
161
150
144
148
160
156
160
149
143
147
159
155
159
148
142
146
158
154
158
147
141
145
157
153
157
146
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
156
145
131
143
155
144
130
142
154
143
129
141
153
140
139
138
137
136
137
138
139
140
141
142
143
144
145
144
143
142
128
140
152
153
154
154
153
152
151
150
149
148
147
146
145
144
143
142
141
135
141
127
139
151
146
134
140
126
138
150
146
133
139
125
137
149
145
132
138
124
136
148
144
131
137
123
135
147
143
130
136
122
134
146
142
129
135
121
133
145
141
128
134
133
132
131
130
129
128
127
126
125
126
127
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
139
138
137
136
137
138
139
140
141
142
143
144
140
127
124
119
131
135
139
126
123
118
130
134
138
125
122
117
129
133
137
124
121
116
128
132
136
123
120
115
127
131
135
122
119
114
126
130
134
121
118
113
125
129
133
120
117
112
124
128
132
119
116
111
123
127
131
118
115
110
122
126
130
117
114
109
121
125
129
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
108
120
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
115
103
107
119
115
127
114
102
106
118
114
126
113
101
105
117
113
125
112
100
104
116
112
124
111
99
103
115
111
123
110
98
102
114
110
122
109
97
101
113
109
121
108
96
100
112
108
120
107
95
99
111
107
119
106
94
98
110
106
118
105
93
97
109
105
117
104
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
116
103
83
83
95
95
115
102
82
82
94
94
114
101
81
81
93
93
113
100
80
80
92
92
112
99
79
79
91
91
111
98
78
78
90
90
110
97
77
77
89
89
109
96
76
76
88
88
108
95
75
75
87
87
107
94
74
74
86
86
106
93
73
73
85
85
105
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
60
61
62
63
64
65
66
67
68
69
70
71
72
84
83
82
81
80
79
78
77
76
75
74
73
72
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
85
71
59
71
83
97
86
70
58
70
82
98
87
69
57
69
81
99
88
68
56
68
80
100
89
67
55
67
79
101
90
66
54
66
78
102
91
65
53
65
77
103
92
64
52
64
76
104
93
63
51
63
75
105
94
62
50
62
74
106
95
61
49
61
73
107
104
103
102
101
100
99
98
97
96
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
108
109
110
111
112
113
114
115
116
103
61
35
49
73
115
102
62
34
50
74
114
101
63
33
51
75
113
100
64
32
52
76
112
99
65
31
53
77
111
98
66
30
54
78
110
97
67
29
55
79
109
96
68
28
56
80
108
95
69
27
57
81
107
94
70
26
58
82
106
93
71
25
59
83
105
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
12
13
14
15
16
17
18
19
20
21
22
23
24
60
59
58
57
56
55
54
53
52
51
50
49
48
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
93
73
11
47
85
105
94
74
10
46
86
106
95
75
9
45
87
107
96
76
8
44
88
108
97
77
7
43
89
109
98
78
6
42
90
110
99
79
5
41
91
111
100
80
4
40
92
112
101
81
3
39
93
113
102
82
2
38
94
114
103
83
1
37
95
115
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
0
187
188
189
190
191
192
193
194
195
196
197
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
173
174
175
176
177
178
179
180
181
182
183
184
185
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
208
207
206
205
204
203
202
201
200
199
198
197
186
176
172
184
188
196
185
175
171
183
187
195
184
174
170
182
186
194
183
173
169
181
185
193
182
172
168
180
184
192
181
171
167
179
183
191
180
170
166
178
182
190
179
169
165
177
181
189
178
168
164
176
180
188
177
167
163
175
179
187
176
166
162
174
178
186
175
163
164
165
166
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
172
171
170
169
170
171
172
173
174
175
176
177
176
175
174
173
185
174
162
156
160
172
168
172
184
173
161
155
159
171
167
171
183
172
160
154
158
170
166
170
182
171
159
153
157
169
165
169
181
170
158
152
156
168
164
168
180
169
157
151
155
167
163
167
179
168
156
150
154
166
162
166
178
167
166
165
164
163
162
161
160
159
158
157
156
155
149
153
165
161
165
166
167
168
169
170
171
172
173
174
175
176
177
154
148
152
164
160
164
153
147
151
163
159
163
152
146
150
162
158
162
151
145
149
161
157
161
150
144
148
160
156
160
149
143
147
159
155
159
148
142
146
158
154
158
147
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
157
146
132
144
156
145
131
143
155
144
130
142
154
141
140
139
138
137
138
139
140
141
142
143
144
145
146
145
144
143
129
141
153
154
155
155
154
153
152
151
150
149
148
147
146
145
144
143
142
136
142
128
140
152
147
135
141
127
139
151
147
134
140
126
138
150
146
133
139
125
137
149
145
132
138
124
136
148
144
131
137
123
135
147
143
130
136
122
134
146
142
129
135
134
133
132
131
130
129
128
127
126
127
128
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
140
139
138
137
138
139
140
141
142
143
144
145
141
128
125
120
132
136
140
127
124
119
131
135
139
126
123
118
130
134
138
125
122
117
129
133
137
124
121
116
128
132
136
123
120
115
127
131
135
122
119
114
126
130
134
121
118
113
125
129
133
120
117
112
124
128
132
119
116
111
123
127
131
118
115
110
122
126
130
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
109
121
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
116
104
108
120
116
128
115
103
107
119
115
127
114
102
106
118
114
126
113
101
105
117
113
125
112
100
104
116
112
124
111
99
103
115
111
123
110
98
102
114
110
122
109
97
101
113
109
121
108
96
100
112
108
120
107
95
99
111
107
119
106
94
98
110
106
118
105
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
117
104
84
84
96
96
116
103
83
83
95
95
115
102
82
82
94
94
114
101
81
81
93
93
113
100
80
80
92
92
112
99
79
79
91
91
111
98
78
78
90
90
110
97
77
77
89
89
109
96
76
76
88
88
108
95
75
75
87
87
107
94
74
74
86
86
106
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
61
62
63
64
65
66
67
68
69
70
71
72
73
85
84
83
82
81
80
79
78
77
76
75
74
73
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
86
72
60
72
84
98
87
71
59
71
83
99
88
70
58
70
82
100
89
69
57
69
81
101
90
68
56
68
80
102
91
67
55
67
79
103
92
66
54
66
78
104
93
65
53
65
77
105
94
64
52
64
76
106
95
63
51
63
75
107
96
62
50
62
74
108
105
104
103
102
101
100
99
98
97
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
109
110
111
112
113
114
115
116
117
104
62
36
50
74
116
103
63
35
51
75
115
102
64
34
52
76
114
101
65
33
53
77
113
100
66
32
54
78
112
99
67
31
55
79
111
98
68
30
56
80
110
97
69
29
57
81
109
96
70
28
58
82
108
95
71
27
59
83
107
94
72
26
60
84
106
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
13
14
15
16
17
18
19
20
21
22
23
24
25
59
58
57
56
55
54
53
52
51
50
49
48
47
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
94
74
12
46
86
106
95
75
11
45
87
107
96
76
10
44
88
108
97
77
9
43
89
109
98
78
8
42
90
110
99
79
7
41
91
111
100
80
6
40
92
112
101
81
5
39
93
113
102
82
4
38
94
114
103
83
3
37
95
115
104
84
2
36
96
116
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
1
0
188
189
190
191
192
193
194
195
196
197
198
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
174
175
176
177
178
179
180
181
182
183
184
185
186
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
209
208
207
206
205
204
203
202
201
200
199
198
187
177
173
185
189
197
186
176
172
184
188
196
185
175
171
183
187
195
184
174
170
182
186
194
183
173
169
181
185
193
182
172
168
180
184
192
181
171
167
179
183
191
180
170
166
178
182
190
179
169
165
177
181
189
178
168
164
176
180
188
177
167
163
175
179
187
176
164
165
166
167
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
173
172
171
170
171
172
173
174
175
176
177
178
177
176
175
174
186
175
163
157
161
173
169
173
185
174
162
156
160
172
168
172
184
173
161
155
159
171
167
171
183
172
160
154
158
170
166
170
182
171
159
153
157
169
165
169
181
170
158
152
156
168
164
168
180
169
157
151
155
167
163
167
179
168
167
166
165
164
163
162
161
160
159
158
157
156
150
154
166
162
166
167
168
169
170
171
172
173
174
175
176
177
178
155
149
153
165
161
165
154
148
152
164
160
164
153
147
151
163
159
163
152
146
150
162
158
162
151
145
149
161
157
161
150
144
148
160
156
160
149
143
147
159
155
159
148
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
158
147
133
145
157
146
132
144
156
145
131
143
155
142
141
140
139
138
139
140
141
142
143
144
145
146
147
146
145
144
130
142
154
155
156
156
155
154
153
152
151
150
149
148
147
146
145
144
143
137
143
129
141
153
148
136
142
128
140
152
148
135
141
127
139
151
147
134
140
126
138
150
146
133
139
125
137
149
145
132
138
124
136
148
144
131
137
123
135
147
143
130
136
135
134
133
132
131
130
129
128
127
128
129
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
141
140
139
138
139
140
141
142
143
144
145
146
142
129
126
121
133
137
141
128
125
120
132
136
140
127
124
119
131
135
139
126
123
118
130
134
138
125
122
117
129
133
137
124
121
116
128
132
136
123
120
115
127
131
135
122
119
114
126
130
134
121
118
113
125
129
133
120
117
112
124
128
132
119
116
111
123
127
131
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
110
122
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
117
105
109
121
117
129
116
104
108
120
116
128
115
103
107
119
115
127
114
102
106
118
114
126
113
101
105
117
113
125
112
100
104
116
112
124
111
99
103
115
111
123
110
98
102
114
110
122
109
97
101
113
109
121
108
96
100
112
108
120
107
95
99
111
107
119
106
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
118
105
85
85
97
97
117
104
84
84
96
96
116
103
83
83
95
95
115
102
82
82
94
94
114
101
81
81
93
93
113
100
80
80
92
92
112
99
79
79
91
91
111
98
78
78
90
90
110
97
77
77
89
89
109
96
76
76
88
88
108
95
75
75
87
87
107
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
62
63
64
65
66
67
68
69
70
71
72
73
74
86
85
84
83
82
81
80
79
78
77
76
75
74
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
87
73
61
73
85
99
88
72
60
72
84
100
89
71
59
71
83
101
90
70
58
70
82
102
91
69
57
69
81
103
92
68
56
68
80
104
93
67
55
67
79
105
94
66
54
66
78
106
95
65
53
65
77
107
96
64
52
64
76
108
97
63
51
63
75
109
106
105
104
103
102
101
100
99
98
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
110
111
112
113
114
115
116
117
118
105
63
37
51
75
117
104
64
36
52
76
116
103
65
35
53
77
115
102
66
34
54
78
114
101
67
33
55
79
113
100
68
32
56
80
112
99
69
31
57
81
111
98
70
30
58
82
110
97
71
29
59
83
109
96
72
28
60
84
108
95
73
27
59
85
107
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
14
15
16
17
18
19
20
21
22
23
24
25
26
58
57
56
55
54
53
52
51
50
49
48
47
46
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
95
75
13
45
87
107
96
76
12
44
88
108
97
77
11
43
89
109
98
78
10
42
90
110
99
79
9
41
91
111
100
80
8
40
92
112
101
81
7
39
93
113
102
82
6
38
94
114
103
83
5
37
95
115
104
84
4
36
96
116
105
85
3
35
97
117
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
2
1
0
189
190
191
192
193
194
195
196
197
198
199
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
175
176
177
178
179
180
181
182
183
184
185
186
187
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
210
209
208
207
206
205
204
203
202
201
200
199
188
178
174
186
190
198
187
177
173
185
189
197
186
176
172
184
188
196
185
175
171
183
187
195
184
174
170
182
186
194
183
173
169
181
185
193
182
172
168
180
184
192
181
171
167
179
183
191
180
170
166
178
182
190
179
169
165
177
181
189
178
168
164
176
180
188
177
165
166
167
168
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
174
173
172
171
172
173
174
175
176
177
178
179
178
177
176
175
187
176
164
158
162
174
170
174
186
175
163
157
161
173
169
173
185
174
162
156
160
172
168
172
184
173
161
155
159
171
167
171
183
172
160
154
158
170
166
170
182
171
159
153
157
169
165
169
181
170
158
152
156
168
164
168
180
169
168
167
166
165
164
163
162
161
160
159
158
157
151
155
167
163
167
168
169
170
171
172
173
174
175
176
177
178
179
156
150
154
166
162
166
155
149
153
165
161
165
154
148
152
164
160
164
153
147
151
163
159
163
152
146
150
162
158
162
151
145
149
161
157
161
150
144
148
160
156
160
149
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
159
148
134
146
158
147
133
145
157
146
132
144
156
143
142
141
140
139
140
141
142
143
144
145
146
147
148
147
146
145
131
143
155
156
157
157
156
155
154
153
152
151
150
149
148
147
146
145
144
138
144
130
142
154
149
137
143
129
141
153
149
136
142
128
140
152
148
135
141
127
139
151
147
134
140
126
138
150
146
133
139
125
137
149
145
132
138
124
136
148
144
131
137
136
135
134
133
132
131
130
129
128
129
130
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
142
141
140
139
140
141
142
143
144
145
146
147
143
130
127
122
134
138
142
129
126
121
133
137
141
128
125
120
132
136
140
127
124
119
131
135
139
126
123
118
130
134
138
125
122
117
129
133
137
124
121
116
128
132
136
123
120
115
127
131
135
122
119
114
126
130
134
121
118
113
125
129
133
120
117
112
124
128
132
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
111
123
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
118
106
110
122
118
130
117
105
109
121
117
129
116
104
108
120
116
128
115
103
107
119
115
127
114
102
106
118
114
126
113
101
105
117
113
125
112
100
104
116
112
124
111
99
103
115
111
123
110
98
102
114
110
122
109
97
101
113
109
121
108
96
100
112
108
120
107
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
119
106
86
86
98
98
118
105
85
85
97
97
117
104
84
84
96
96
116
103
83
83
95
95
115
102
82
82
94
94
114
101
81
81
93
93
113
100
80
80
92
92
112
99
79
79
91
91
111
98
78
78
90
90
110
97
77
77
89
89
109
96
76
76
88
88
108
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
63
64
65
66
67
68
69
70
71
72
73
74
75
87
86
85
84
83
82
81
80
79
78
77
76
75
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
88
74
62
74
86
100
89
73
61
73
85
101
90
72
60
72
84
102
91
71
59
71
83
103
92
70
58
70
82
104
93
69
57
69
81
105
94
68
56
68
80
106
95
67
55
67
79
107
96
66
54
66
78
108
97
65
53
65
77
109
98
64
52
64
76
110
107
106
105
104
103
102
101
100
99
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
111
112
113
114
115
116
117
118
119
106
64
38
52
76
118
105
65
37
53
77
117
104
66
36
54
78
116
103
67
35
55
79
115
102
68
34
56
80
114
101
69
33
57
81
113
100
70
32
58
82
112
99
71
31
59
83
111
98
72
30
60
84
110
97
73
29
59
85
109
96
74
28
58
86
108
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
15
16
17
18
19
20
21
22
23
24
25
26
27
57
56
55
54
53
52
51
50
49
48
47
46
45
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
96
76
14
44
88
108
97
77
13
43
89
109
98
78
12
42
90
110
99
79
11
41
91
111
100
80
10
40
92
112
101
81
9
39
93
113
102
82
8
38
94
114
103
83
7
37
95
115
104
84
6
36
96
116
105
85
5
35
97
117
106
86
4
34
98
118
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
3
2
1
0
190
191
192
193
194
195
196
197
198
199
200
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
176
177
178
179
180
181
182
183
184
185
186
187
188
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
189
179
175
187
191
199
188
178
174
186
190
198
187
177
173
185
189
197
186
176
172
184
188
196
185
175
171
183
187
195
184
174
170
182
186
194
183
173
169
181
185
193
182
172
168
180
184
192
181
171
167
179
183
191
180
170
166
178
182
190
179
169
165
177
181
189
178
166
167
168
169
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
173
174
175
176
177
178
179
180
179
178
177
176
188
177
165
159
163
175
171
175
187
176
164
158
162
174
170
174
186
175
163
157
161
173
169
173
185
174
162
156
160
172
168
172
184
173
161
155
159
171
167
171
183
172
160
154
158
170
166
170
182
171
159
153
157
169
165
169
181
170
169
168
167
166
165
164
163
162
161
160
159
158
152
156
168
164
168
169
170
171
172
173
174
175
176
177
178
179
180
157
151
155
167
163
167
156
150
154
166
162
166
155
149
153
165
161
165
154
148
152
164
160
164
153
147
151
163
159
163
152
146
150
162
158
162
151
145
149
161
157
161
150
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
160
149
135
147
159
148
134
146
158
147
133
145
157
144
143
142
141
140
141
142
143
144
145
146
147
148
149
148
147
146
132
144
156
157
158
158
157
156
155
154
153
152
151
150
149
148
147
146
145
139
145
131
143
155
150
138
144
130
142
154
150
137
143
129
141
153
149
136
142
128
140
152
148
135
141
127
139
151
147
134
140
126
138
150
146
133
139
125
137
149
145
132
138
137
136
135
134
133
132
131
130
129
130
131
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
143
142
141
140
141
142
143
144
145
146
147
148
144
131
128
123
135
139
143
130
127
122
134
138
142
129
126
121
133
137
141
128
125
120
132
136
140
127
124
119
131
135
139
126
123
118
130
134
138
125
122
117
129
133
137
124
121
116
128
132
136
123
120
115
127
131
135
122
119
114
126
130
134
121
118
113
125
129
133
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
112
124
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
119
107
111
123
119
131
118
106
110
122
118
130
117
105
109
121
117
129
116
104
108
120
116
128
115
103
107
119
115
127
114
102
106
118
114
126
113
101
105
117
113
125
112
100
104
116
112
124
111
99
103
115
111
123
110
98
102
114
110
122
109
97
101
113
109
121
108
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
120
107
87
87
99
99
119
106
86
86
98
98
118
105
85
85
97
97
117
104
84
84
96
96
116
103
83
83
95
95
115
102
82
82
94
94
114
101
81
81
93
93
113
100
80
80
92
92
112
99
79
79
91
91
111
98
78
78
90
90
110
97
77
77
89
89
109
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
64
65
66
67
68
69
70
71
72
73
74
75
76
88
87
86
85
84
83
82
81
80
79
78
77
76
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
89
75
63
75
87
101
90
74
62
74
86
102
91
73
61
73
85
103
92
72
60
72
84
104
93
71
59
71
83
105
94
70
58
70
82
106
95
69
57
69
81
107
96
68
56
68
80
108
97
67
55
67
79
109
98
66
54
66
78
110
99
65
53
65
77
111
108
107
106
105
104
103
102
101
100
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
112
113
114
115
116
117
118
119
120
107
65
39
53
77
119
106
66
38
54
78
118
105
67
37
55
79
117
104
68
36
56
80
116
103
69
35
57
81
115
102
70
34
58
82
114
101
71
33
59
83
113
100
72
32
60
84
112
99
73
31
59
85
111
98
74
30
58
86
110
97
75
29
57
87
109
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
16
17
18
19
20
21
22
23
24
25
26
27
28
56
55
54
53
52
51
50
49
48
47
46
45
44
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
97
77
15
43
89
109
98
78
14
42
90
110
99
79
13
41
91
111
100
80
12
40
92
112
101
81
11
39
93
113
102
82
10
38
94
114
103
83
9
37
95
115
104
84
8
36
96
116
105
85
7
35
97
117
106
86
6
34
98
118
107
87
5
33
99
119
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
4
3
2
1
0
191
192
193
194
195
196
197
198
199
200
201
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
177
178
179
180
181
182
183
184
185
186
187
188
189
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
212
211
210
209
208
207
206
205
204
203
202
201
190
180
176
188
192
200
189
179
175
187
191
199
188
178
174
186
190
198
187
177
173
185
189
197
186
176
172
184
188
196
185
175
171
183
187
195
184
174
170
182
186
194
183
173
169
181
185
193
182
172
168
180
184
192
181
171
167
179
183
191
180
170
166
178
182
190
179
167
168
169
170
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
176
175
174
173
174
175
176
177
178
179
180
181
180
179
178
177
189
178
166
160
164
176
172
176
188
177
165
159
163
175
171
175
187
176
164
158
162
174
170
174
186
175
163
157
161
173
169
173
185
174
162
156
160
172
168
172
184
173
161
155
159
171
167
171
183
172
160
154
158
170
166
170
182
171
170
169
168
167
166
165
164
163
162
161
160
159
153
157
169
165
169
170
171
172
173
174
175
176
177
178
179
180
181
158
152
156
168
164
168
157
151
155
167
163
167
156
150
154
166
162
166
155
149
153
165
161
165
154
148
152
164
160
164
153
147
151
163
159
163
152
146
150
162
158
162
151
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
161
150
136
148
160
149
135
147
159
148
134
146
158
145
144
143
142
141
142
143
144
145
146
147
148
149
150
149
148
147
133
145
157
158
159
159
158
157
156
155
154
153
152
151
150
149
148
147
146
140
146
132
144
156
151
139
145
131
143
155
151
138
144
130
142
154
150
137
143
129
141
153
149
136
142
128
140
152
148
135
141
127
139
151
147
134
140
126
138
150
146
133
139
138
137
136
135
134
133
132
131
130
131
132
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
144
143
142
141
142
143
144
145
146
147
148
149
145
132
129
124
136
140
144
131
128
123
135
139
143
130
127
122
134
138
142
129
126
121
133
137
141
128
125
120
132
136
140
127
124
119
131
135
139
126
123
118
130
134
138
125
122
117
129
133
137
124
121
116
128
132
136
123
120
115
127
131
135
122
119
114
126
130
134
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
113
125
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
120
108
112
124
120
132
119
107
111
123
119
131
118
106
110
122
118
130
117
105
109
121
117
129
116
104
108
120
116
128
115
103
107
119
115
127
114
102
106
118
114
126
113
101
105
117
113
125
112
100
104
116
112
124
111
99
103
115
111
123
110
98
102
114
110
122
109
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
121
108
88
88
100
100
120
107
87
87
99
99
119
106
86
86
98
98
118
105
85
85
97
97
117
104
84
84
96
96
116
103
83
83
95
95
115
102
82
82
94
94
114
101
81
81
93
93
113
100
80
80
92
92
112
99
79
79
91
91
111
98
78
78
90
90
110
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
65
66
67
68
69
70
71
72
73
74
75
76
77
89
88
87
86
85
84
83
82
81
80
79
78
77
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
90
76
64
76
88
102
91
75
63
75
87
103
92
74
62
74
86
104
93
73
61
73
85
105
94
72
60
72
84
106
95
71
59
71
83
107
96
70
58
70
82
108
97
69
57
69
81
109
98
68
56
68
80
110
99
67
55
67
79
111
100
66
54
66
78
112
109
108
107
106
105
104
103
102
101
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
113
114
115
116
117
118
119
120
121
108
66
40
54
78
120
107
67
39
55
79
119
106
68
38
56
80
118
105
69
37
57
81
117
104
70
36
58
82
116
103
71
35
59
83
115
102
72
34
60
84
114
101
73
33
59
85
113
100
74
32
58
86
112
99
75
31
57
87
111
98
76
30
56
88
110
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
17
18
19
20
21
22
23
24
25
26
27
28
29
55
54
53
52
51
50
49
48
47
46
45
44
43
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
98
78
16
42
90
110
99
79
15
41
91
111
100
80
14
40
92
112
101
81
13
39
93
113
102
82
12
38
94
114
103
83
11
37
95
115
104
84
10
36
96
116
105
85
9
35
97
117
106
86
8
34
98
118
107
87
7
33
99
119
108
88
6
32
100
120
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
5
4
3
2
1
0
192
193
194
195
196
197
198
199
200
201
202
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
178
179
180
181
182
183
184
185
186
187
188
189
190
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
213
212
211
210
209
208
207
206
205
204
203
202
191
181
177
189
193
201
190
180
176
188
192
200
189
179
175
187
191
199
188
178
174
186
190
198
187
177
173
185
189
197
186
176
172
184
188
196
185
175
171
183
187
195
184
174
170
182
186
194
183
173
169
181
185
193
182
172
168
180
184
192
181
171
167
179
183
191
180
168
169
170
171
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
177
176
175
174
175
176
177
178
179
180
181
182
181
180
179
178
190
179
167
161
165
177
173
177
189
178
166
160
164
176
172
176
188
177
165
159
163
175
171
175
187
176
164
158
162
174
170
174
186
175
163
157
161
173
169
173
185
174
162
156
160
172
168
172
184
173
161
155
159
171
167
171
183
172
171
170
169
168
167
166
165
164
163
162
161
160
154
158
170
166
170
171
172
173
174
175
176
177
178
179
180
181
182
159
153
157
169
165
169
158
152
156
168
164
168
157
151
155
167
163
167
156
150
154
166
162
166
155
149
153
165
161
165
154
148
152
164
160
164
153
147
151
163
159
163
152
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
162
151
137
149
161
150
136
148
160
149
135
147
159
146
145
144
143
142
143
144
145
146
147
148
149
150
151
150
149
148
134
146
158
159
160
160
159
158
157
156
155
154
153
152
151
150
149
148
147
141
147
133
145
157
152
140
146
132
144
156
152
139
145
131
143
155
151
138
144
130
142
154
150
137
143
129
141
153
149
136
142
128
140
152
148
135
141
127
139
151
147
134
140
139
138
137
136
135
134
133
132
131
132
133
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
145
144
143
142
143
144
145
146
147
148
149
150
146
133
130
125
137
141
145
132
129
124
136
140
144
131
128
123
135
139
143
130
127
122
134
138
142
129
126
121
133
137
141
128
125
120
132
136
140
127
124
119
131
135
139
126
123
118
130
134
138
125
122
117
129
133
137
124
121
116
128
132
136
123
120
115
127
131
135
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
114
126
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
121
109
113
125
121
133
120
108
112
124
120
132
119
107
111
123
119
131
118
106
110
122
118
130
117
105
109
121
117
129
116
104
108
120
116
128
115
103
107
119
115
127
114
102
106
118
114
126
113
101
105
117
113
125
112
100
104
116
112
124
111
99
103
115
111
123
110
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
122
109
89
89
101
101
121
108
88
88
100
100
120
107
87
87
99
99
119
106
86
86
98
98
118
105
85
85
97
97
117
104
84
84
96
96
116
103
83
83
95
95
115
102
82
82
94
94
114
101
81
81
93
93
113
100
80
80
92
92
112
99
79
79
91
91
111
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
66
67
68
69
70
71
72
73
74
75
76
77
78
90
89
88
87
86
85
84
83
82
81
80
79
78
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
91
77
65
77
89
103
92
76
64
76
88
104
93
75
63
75
87
105
94
74
62
74
86
106
95
73
61
73
85
107
96
72
60
72
84
108
97
71
59
71
83
109
98
70
58
70
82
110
99
69
57
69
81
111
100
68
56
68
80
112
101
67
55
67
79
113
110
109
108
107
106
105
104
103
102
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
114
115
116
117
118
119
120
121
122
109
67
41
55
79
121
108
68
40
56
80
120
107
69
39
57
81
119
106
70
38
58
82
118
105
71
37
59
83
117
104
72
36
60
84
116
103
73
35
59
85
115
102
74
34
58
86
114
101
75
33
57
87
113
100
76
32
56
88
112
99
77
31
55
89
111
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
18
19
20
21
22
23
24
25
26
27
28
29
30
54
53
52
51
50
49
48
47
46
45
44
43
42
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
99
79
17
41
91
111
100
80
16
40
92
112
101
81
15
39
93
113
102
82
14
38
94
114
103
83
13
37
95
115
104
84
12
36
96
116
105
85
11
35
97
117
106
86
10
34
98
118
107
87
9
33
99
119
108
88
8
32
100
120
109
89
7
31
101
121
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
6
5
4
3
2
1
0
193
194
195
196
197
198
199
200
201
202
203
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
179
180
181
182
183
184
185
186
187
188
189
190
191
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
214
213
212
211
210
209
208
207
206
205
204
203
192
182
178
190
194
202
191
181
177
189
193
201
190
180
176
188
192
200
189
179
175
187
191
199
188
178
174
186
190
198
187
177
173
185
189
197
186
176
172
184
188
196
185
175
171
183
187
195
184
174
170
182
186
194
183
173
169
181
185
193
182
172
168
180
184
192
181
169
170
171
172
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
179
180
181
182
183
184
185
186
187
186
185
184
183
182
181
180
179
178
177
176
175
176
177
178
179
180
181
182
183
182
181
180
179
191
180
168
162
166
178
174
178
190
179
167
161
165
177
173
177
189
178
166
160
164
176
172
176
188
177
165
159
163
175
171
175
187
176
164
158
162
174
170
174
186
175
163
157
161
173
169
173
185
174
162
156
160
172
168
172
184
173
172
171
170
169
168
167
166
165
164
163
162
161
155
159
171
167
171
172
173
174
175
176
177
178
179
180
181
182
183
160
154
158
170
166
170
159
153
157
169
165
169
158
152
156
168
164
168
157
151
155
167
163
167
156
150
154
166
162
166
155
149
153
165
161
165
154
148
152
164
160
164
153
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
163
152
138
150
162
151
137
149
161
150
136
148
160
147
146
145
144
143
144
145
146
147
148
149
150
151
152
151
150
149
135
147
159
160
161
161
160
159
158
157
156
155
154
153
152
151
150
149
148
142
148
134
146
158
153
141
147
133
145
157
153
140
146
132
144
156
152
139
145
131
143
155
151
138
144
130
142
154
150
137
143
129
141
153
149
136
142
128
140
152
148
135
141
140
139
138
137
136
135
134
133
132
133
134
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
146
145
144
143
144
145
146
147
148
149
150
151
147
134
131
126
138
142
146
133
130
125
137
141
145
132
129
124
136
140
144
131
128
123
135
139
143
130
127
122
134
138
142
129
126
121
133
137
141
128
125
120
132
136
140
127
124
119
131
135
139
126
123
118
130
134
138
125
122
117
129
133
137
124
121
116
128
132
136
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
115
127
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
122
110
114
126
122
134
121
109
113
125
121
133
120
108
112
124
120
132
119
107
111
123
119
131
118
106
110
122
118
130
117
105
109
121
117
129
116
104
108
120
116
128
115
103
107
119
115
127
114
102
106
118
114
126
113
101
105
117
113
125
112
100
104
116
112
124
111
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
123
110
90
90
102
102
122
109
89
89
101
101
121
108
88
88
100
100
120
107
87
87
99
99
119
106
86
86
98
98
118
105
85
85
97
97
117
104
84
84
96
96
116
103
83
83
95
95
115
102
82
82
94
94
114
101
81
81
93
93
113
100
80
80
92
92
112
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
67
68
69
70
71
72
73
74
75
76
77
78
79
91
90
89
88
87
86
85
84
83
82
81
80
79
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
92
78
66
78
90
104
93
77
65
77
89
105
94
76
64
76
88
106
95
75
63
75
87
107
96
74
62
74
86
108
97
73
61
73
85
109
98
72
60
72
84
110
99
71
59
71
83
111
100
70
58
70
82
112
101
69
57
69
81
113
102
68
56
68
80
114
111
110
109
108
107
106
105
104
103
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
115
116
117
118
119
120
121
122
123
110
68
42
56
80
122
109
69
41
57
81
121
108
70
40
58
82
120
107
71
39
59
83
119
106
72
38
60
84
118
105
73
37
59
85
117
104
74
36
58
86
116
103
75
35
57
87
115
102
76
34
56
88
114
101
77
33
55
89
113
100
78
32
54
90
112
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
19
20
21
22
23
24
25
26
27
28
29
30
31
53
52
51
50
49
48
47
46
45
44
43
42
41
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
100
80
18
40
92
112
101
81
17
39
93
113
102
82
16
38
94
114
103
83
15
37
95
115
104
84
14
36
96
116
105
85
13
35
97
117
106
86
12
34
98
118
107
87
11
33
99
119
108
88
10
32
100
120
109
89
9
31
101
121
110
90
8
30
102
122
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
7
6
5
4
3
2
1
0
194
195
196
197
198
199
200
201
202
203
204
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
180
181
182
183
184
185
186
187
188
189
190
191
192
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
215
214
213
212
211
210
209
208
207
206
205
204
193
183
179
191
195
203
192
182
178
190
194
202
191
181
177
189
193
201
190
180
176
188
192
200
189
179
175
187
191
199
188
178
174
186
190
198
187
177
173
185
189
197
186
176
172
184
188
196
185
175
171
183
187
195
184
174
170
182
186
194
183
173
169
181
185
193
182
170
171
172
173
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
180
181
182
183
184
185
186
187
188
187
186
185
184
183
182
181
180
179
178
177
176
177
178
179
180
181
182
183
184
183
182
181
180
192
181
169
163
167
179
175
179
191
180
168
162
166
178
174
178
190
179
167
161
165
177
173
177
189
178
166
160
164
176
172
176
188
177
165
159
163
175
171
175
187
176
164
158
162
174
170
174
186
175
163
157
161
173
169
173
185
174
173
172
171
170
169
168
167
166
165
164
163
162
156
160
172
168
172
173
174
175
176
177
178
179
180
181
182
183
184
161
155
159
171
167
171
160
154
158
170
166
170
159
153
157
169
165
169
158
152
156
168
164
168
157
151
155
167
163
167
156
150
154
166
162
166
155
149
153
165
161
165
154
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
164
153
139
151
163
152
138
150
162
151
137
149
161
148
147
146
145
144
145
146
147
148
149
150
151
152
153
152
151
150
136
148
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
143
149
135
147
159
154
142
148
134
146
158
154
141
147
133
145
157
153
140
146
132
144
156
152
139
145
131
143
155
151
138
144
130
142
154
150
137
143
129
141
153
149
136
142
141
140
139
138
137
136
135
134
133
134
135
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
147
146
145
144
145
146
147
148
149
150
151
152
148
135
132
127
139
143
147
134
131
126
138
142
146
133
130
125
137
141
145
132
129
124
136
140
144
131
128
123
135
139
143
130
127
122
134
138
142
129
126
121
133
137
141
128
125
120
132
136
140
127
124
119
131
135
139
126
123
118
130
134
138
125
122
117
129
133
137
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
116
128
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
123
111
115
127
123
135
122
110
114
126
122
134
121
109
113
125
121
133
120
108
112
124
120
132
119
107
111
123
119
131
118
106
110
122
118
130
117
105
109
121
117
129
116
104
108
120
116
128
115
103
107
119
115
127
114
102
106
118
114
126
113
101
105
117
113
125
112
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
124
111
91
91
103
103
123
110
90
90
102
102
122
109
89
89
101
101
121
108
88
88
100
100
120
107
87
87
99
99
119
106
86
86
98
98
118
105
85
85
97
97
117
104
84
84
96
96
116
103
83
83
95
95
115
102
82
82
94
94
114
101
81
81
93
93
113
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
68
69
70
71
72
73
74
75
76
77
78
79
80
92
91
90
89
88
87
86
85
84
83
82
81
80
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
93
79
67
79
91
105
94
78
66
78
90
106
95
77
65
77
89
107
96
76
64
76
88
108
97
75
63
75
87
109
98
74
62
74
86
110
99
73
61
73
85
111
100
72
60
72
84
112
101
71
59
71
83
113
102
70
58
70
82
114
103
69
57
69
81
115
112
111
110
109
108
107
106
105
104
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
116
117
118
119
120
121
122
123
124
111
69
43
57
81
123
110
70
42
58
82
122
109
71
41
59
83
121
108
72
40
60
84
120
107
73
39
59
85
119
106
74
38
58
86
118
105
75
37
57
87
117
104
76
36
56
88
116
103
77
35
55
89
115
102
78
34
54
90
114
101
79
33
53
91
113
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
20
21
22
23
24
25
26
27
28
29
30
31
32
52
51
50
49
48
47
46
45
44
43
42
41
40
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
101
81
19
39
93
113
102
82
18
38
94
114
103
83
17
37
95
115
104
84
16
36
96
116
105
85
15
35
97
117
106
86
14
34
98
118
107
87
13
33
99
119
108
88
12
32
100
120
109
89
11
31
101
121
110
90
10
30
102
122
111
91
9
29
103
123
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
8
7
6
5
4
3
2
1
0
195
196
197
198
199
200
201
202
203
204
205
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
181
182
183
184
185
186
187
188
189
190
191
192
193
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
216
215
214
213
212
211
210
209
208
207
206
205
194
184
180
192
196
204
193
183
179
191
195
203
192
182
178
190
194
202
191
181
177
189
193
201
190
180
176
188
192
200
189
179
175
187
191
199
188
178
174
186
190
198
187
177
173
185
189
197
186
176
172
184
188
196
185
175
171
183
187
195
184
174
170
182
186
194
183
171
172
173
174
173
172
171
170
169
168
167
166
165
166
167
168
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
181
182
183
184
185
186
187
188
189
188
187
186
185
184
183
182
181
180
179
178
177
178
179
180
181
182
183
184
185
184
183
182
181
193
182
170
164
168
180
176
180
192
181
169
163
167
179
175
179
191
180
168
162
166
178
174
178
190
179
167
161
165
177
173
177
189
178
166
160
164
176
172
176
188
177
165
159
163
175
171
175
187
176
164
158
162
174
170
174
186
175
174
173
172
171
170
169
168
167
166
165
164
163
157
161
173
169
173
174
175
176
177
178
179
180
181
182
183
184
185
162
156
160
172
168
172
161
155
159
171
167
171
160
154
158
170
166
170
159
153
157
169
165
169
158
152
156
168
164
168
157
151
155
167
163
167
156
150
154
166
162
166
155
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
165
154
140
152
164
153
139
151
163
152
138
150
162
149
148
147
146
145
146
147
148
149
150
151
152
153
154
153
152
151
137
149
161
162
163
163
162
161
160
159
158
157
156
155
154
153
152
151
150
144
150
136
148
160
155
143
149
135
147
159
155
142
148
134
146
158
154
141
147
133
145
157
153
140
146
132
144
156
152
139
145
131
143
155
151
138
144
130
142
154
150
137
143
142
141
140
139
138
137
136
135
134
135
136
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
148
147
146
145
146
147
148
149
150
151
152
153
149
136
133
128
140
144
148
135
132
127
139
143
147
134
131
126
138
142
146
133
130
125
137
141
145
132
129
124
136
140
144
131
128
123
135
139
143
130
127
122
134
138
142
129
126
121
133
137
141
128
125
120
132
136
140
127
124
119
131
135
139
126
123
118
130
134
138
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
117
129
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
124
112
116
128
124
136
123
111
115
127
123
135
122
110
114
126
122
134
121
109
113
125
121
133
120
108
112
124
120
132
119
107
111
123
119
131
118
106
110
122
118
130
117
105
109
121
117
129
116
104
108
120
116
128
115
103
107
119
115
127
114
102
106
118
114
126
113
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
125
112
92
92
104
104
124
111
91
91
103
103
123
110
90
90
102
102
122
109
89
89
101
101
121
108
88
88
100
100
120
107
87
87
99
99
119
106
86
86
98
98
118
105
85
85
97
97
117
104
84
84
96
96
116
103
83
83
95
95
115
102
82
82
94
94
114
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
69
70
71
72
73
74
75
76
77
78
79
80
81
93
92
91
90
89
88
87
86
85
84
83
82
81
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
94
80
68
80
92
106
95
79
67
79
91
107
96
78
66
78
90
108
97
77
65
77
89
109
98
76
64
76
88
110
99
75
63
75
87
111
100
74
62
74
86
112
101
73
61
73
85
113
102
72
60
72
84
114
103
71
59
71
83
115
104
70
58
70
82
116
113
112
111
110
109
108
107
106
105
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
117
118
119
120
121
122
123
124
125
112
70
44
58
82
124
111
71
43
59
83
123
110
72
42
60
84
122
109
73
41
59
85
121
108
74
40
58
86
120
107
75
39
57
87
119
106
76
38
56
88
118
105
77
37
55
89
117
104
78
36
54
90
116
103
79
35
53
91
115
102
80
34
52
92
114
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
21
22
23
24
25
26
27
28
29
30
31
32
33
51
50
49
48
47
46
45
44
43
42
41
40
39
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
102
82
20
38
94
114
103
83
19
37
95
115
104
84
18
36
96
116
105
85
17
35
97
117
106
86
16
34
98
118
107
87
15
33
99
119
108
88
14
32
100
120
109
89
13
31
101
121
110
90
12
30
102
122
111
91
11
29
103
123
112
92
10
28
104
124
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
9
8
7
6
5
4
3
2
1
0
196
197
198
199
200
201
202
203
204
205
206
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
182
183
184
185
186
187
188
189
190
191
192
193
194
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
217
216
215
214
213
212
211
210
209
208
207
206
195
185
181
193
197
205
194
184
180
192
196
204
193
183
179
191
195
203
192
182
178
190
194
202
191
181
177
189
193
201
190
180
176
188
192
200
189
179
175
187
191
199
188
178
174
186
190
198
187
177
173
185
189
197
186
176
172
184
188
196
185
175
171
183
187
195
184
172
173
174
175
174
173
172
171
170
169
168
167
166
167
168
169
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
182
183
184
185
186
187
188
189
190
189
188
187
186
185
184
183
182
181
180
179
178
179
180
181
182
183
184
185
186
185
184
183
182
194
183
171
165
169
181
177
181
193
182
170
164
168
180
176
180
192
181
169
163
167
179
175
179
191
180
168
162
166
178
174
178
190
179
167
161
165
177
173
177
189
178
166
160
164
176
172
176
188
177
165
159
163
175
171
175
187
176
175
174
173
172
171
170
169
168
167
166
165
164
158
162
174
170
174
175
176
177
178
179
180
181
182
183
184
185
186
163
157
161
173
169
173
162
156
160
172
168
172
161
155
159
171
167
171
160
154
158
170
166
170
159
153
157
169
165
169
158
152
156
168
164
168
157
151
155
167
163
167
156
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
166
155
141
153
165
154
140
152
164
153
139
151
163
150
149
148
147
146
147
148
149
150
151
152
153
154
155
154
153
152
138
150
162
163
164
164
163
162
161
160
159
158
157
156
155
154
153
152
151
145
151
137
149
161
156
144
150
136
148
160
156
143
149
135
147
159
155
142
148
134
146
158
154
141
147
133
145
157
153
140
146
132
144
156
152
139
145
131
143
155
151
138
144
143
142
141
140
139
138
137
136
135
136
137
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
149
148
147
146
147
148
149
150
151
152
153
154
150
137
134
129
141
145
149
136
133
128
140
144
148
135
132
127
139
143
147
134
131
126
138
142
146
133
130
125
137
141
145
132
129
124
136
140
144
131
128
123
135
139
143
130
127
122
134
138
142
129
126
121
133
137
141
128
125
120
132
136
140
127
124
119
131
135
139
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
118
130
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
125
113
117
129
125
137
124
112
116
128
124
136
123
111
115
127
123
135
122
110
114
126
122
134
121
109
113
125
121
133
120
108
112
124
120
132
119
107
111
123
119
131
118
106
110
122
118
130
117
105
109
121
117
129
116
104
108
120
116
128
115
103
107
119
115
127
114
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
126
113
93
93
105
105
125
112
92
92
104
104
124
111
91
91
103
103
123
110
90
90
102
102
122
109
89
89
101
101
121
108
88
88
100
100
120
107
87
87
99
99
119
106
86
86
98
98
118
105
85
85
97
97
117
104
84
84
96
96
116
103
83
83
95
95
115
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
70
71
72
73
74
75
76
77
78
79
80
81
82
94
93
92
91
90
89
88
87
86
85
84
83
82
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
95
81
69
81
93
107
96
80
68
80
92
108
97
79
67
79
91
109
98
78
66
78
90
110
99
77
65
77
89
111
100
76
64
76
88
112
101
75
63
75
87
113
102
74
62
74
86
114
103
73
61
73
85
115
104
72
60
72
84
116
105
71
59
71
83
117
114
113
112
111
110
109
108
107
106
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
118
119
120
121
122
123
124
125
126
113
71
45
59
83
125
112
72
44
60
84
124
111
73
43
59
85
123
110
74
42
58
86
122
109
75
41
57
87
121
108
76
40
56
88
120
107
77
39
55
89
119
106
78
38
54
90
118
105
79
37
53
91
117
104
80
36
52
92
116
103
81
35
51
93
115
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
22
23
24
25
26
27
28
29
30
31
32
33
34
50
49
48
47
46
45
44
43
42
41
40
39
38
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
103
83
21
37
95
115
104
84
20
36
96
116
105
85
19
35
97
117
106
86
18
34
98
118
107
87
17
33
99
119
108
88
16
32
100
120
109
89
15
31
101
121
110
90
14
30
102
122
111
91
13
29
103
123
112
92
12
28
104
124
113
93
11
27
105
125
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
10
9
8
7
6
5
4
3
2
1
0
197
198
199
200
201
202
203
204
205
206
207
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
183
184
185
186
187
188
189
190
191
192
193
194
195
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
218
217
216
215
214
213
212
211
210
209
208
207
196
186
182
194
198
206
195
185
181
193
197
205
194
184
180
192
196
204
193
183
179
191
195
203
192
182
178
190
194
202
191
181
177
189
193
201
190
180
176
188
192
200
189
179
175
187
191
199
188
178
174
186
190
198
187
177
173
185
189
197
186
176
172
184
188
196
185
173
174
175
176
175
174
173
172
171
170
169
168
167
168
169
170
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
183
184
185
186
187
188
189
190
191
190
189
188
187
186
185
184
183
182
181
180
179
180
181
182
183
184
185
186
187
186
185
184
183
195
184
172
166
170
182
178
182
194
183
171
165
169
181
177
181
193
182
170
164
168
180
176
180
192
181
169
163
167
179
175
179
191
180
168
162
166
178
174
178
190
179
167
161
165
177
173
177
189
178
166
160
164
176
172
176
188
177
176
175
174
173
172
171
170
169
168
167
166
165
159
163
175
171
175
176
177
178
179
180
181
182
183
184
185
186
187
164
158
162
174
170
174
163
157
161
173
169
173
162
156
160
172
168
172
161
155
159
171
167
171
160
154
158
170
166
170
159
153
157
169
165
169
158
152
156
168
164
168
157
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
167
156
142
154
166
155
141
153
165
154
140
152
164
151
150
149
148
147
148
149
150
151
152
153
154
155
156
155
154
153
139
151
163
164
165
165
164
163
162
161
160
159
158
157
156
155
154
153
152
146
152
138
150
162
157
145
151
137
149
161
157
144
150
136
148
160
156
143
149
135
147
159
155
142
148
134
146
158
154
141
147
133
145
157
153
140
146
132
144
156
152
139
145
144
143
142
141
140
139
138
137
136
137
138
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
150
149
148
147
148
149
150
151
152
153
154
155
151
138
135
130
142
146
150
137
134
129
141
145
149
136
133
128
140
144
148
135
132
127
139
143
147
134
131
126
138
142
146
133
130
125
137
141
145
132
129
124
136
140
144
131
128
123
135
139
143
130
127
122
134
138
142
129
126
121
133
137
141
128
125
120
132
136
140
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
119
131
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
126
114
118
130
126
138
125
113
117
129
125
137
124
112
116
128
124
136
123
111
115
127
123
135
122
110
114
126
122
134
121
109
113
125
121
133
120
108
112
124
120
132
119
107
111
123
119
131
118
106
110
122
118
130
117
105
109
121
117
129
116
104
108
120
116
128
115
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
127
114
94
94
106
106
126
113
93
93
105
105
125
112
92
92
104
104
124
111
91
91
103
103
123
110
90
90
102
102
122
109
89
89
101
101
121
108
88
88
100
100
120
107
87
87
99
99
119
106
86
86
98
98
118
105
85
85
97
97
117
104
84
84
96
96
116
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
71
72
73
74
75
76
77
78
79
80
81
82
83
95
94
93
92
91
90
89
88
87
86
85
84
83
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
96
82
70
82
94
108
97
81
69
81
93
109
98
80
68
80
92
110
99
79
67
79
91
111
100
78
66
78
90
112
101
77
65
77
89
113
102
76
64
76
88
114
103
75
63
75
87
115
104
74
62
74
86
116
105
73
61
73
85
117
106
72
60
72
84
118
115
114
113
112
111
110
109
108
107
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
119
120
121
122
123
124
125
126
127
114
72
46
60
84
126
113
73
45
59
85
125
112
74
44
58
86
124
111
75
43
57
87
123
110
76
42
56
88
122
109
77
41
55
89
121
108
78
40
54
90
120
107
79
39
53
91
119
106
80
38
52
92
118
105
81
37
51
93
117
104
82
36
50
94
116
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
23
24
25
26
27
28
29
30
31
32
33
34
35
49
48
47
46
45
44
43
42
41
40
39
38
37
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
104
84
22
36
96
116
105
85
21
35
97
117
106
86
20
34
98
118
107
87
19
33
99
119
108
88
18
32
100
120
109
89
17
31
101
121
110
90
16
30
102
122
111
91
15
29
103
123
112
92
14
28
104
124
113
93
13
27
105
125
114
94
12
26
106
126
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
11
10
9
8
7
6
5
4
3
2
1
0
198
199
200
201
202
203
204
205
206
207
208
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
184
185
186
187
188
189
190
191
192
193
194
195
196
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
219
218
217
216
215
214
213
212
211
210
209
208
197
187
183
195
199
207
196
186
182
194
198
206
195
185
181
193
197
205
194
184
180
192
196
204
193
183
179
191
195
203
192
182
178
190
194
202
191
181
177
189
193
201
190
180
176
188
192
200
189
179
175
187
191
199
188
178
174
186
190
198
187
177
173
185
189
197
186
174
175
176
177
176
175
174
173
172
171
170
169
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
184
185
186
187
188
189
190
191
192
191
190
189
188
187
186
185
184
183
182
181
180
181
182
183
184
185
186
187
188
187
186
185
184
196
185
173
167
171
183
179
183
195
184
172
166
170
182
178
182
194
183
171
165
169
181
177
181
193
182
170
164
168
180
176
180
192
181
169
163
167
179
175
179
191
180
168
162
166
178
174
178
190
179
167
161
165
177
173
177
189
178
177
176
175
174
173
172
171
170
169
168
167
166
160
164
176
172
176
177
178
179
180
181
182
183
184
185
186
187
188
165
159
163
175
171
175
164
158
162
174
170
174
163
157
161
173
169
173
162
156
160
172
168
172
161
155
159
171
167
171
160
154
158
170
166
170
159
153
157
169
165
169
158
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
168
157
143
155
167
156
142
154
166
155
141
153
165
152
151
150
149
148
149
150
151
152
153
154
155
156
157
156
155
154
140
152
164
165
166
166
165
164
163
162
161
160
159
158
157
156
155
154
153
147
153
139
151
163
158
146
152
138
150
162
158
145
151
137
149
161
157
144
150
136
148
160
156
143
149
135
147
159
155
142
148
134
146
158
154
141
147
133
145
157
153
140
146
145
144
143
142
141
140
139
138
137
138
139
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
151
150
149
148
149
150
151
152
153
154
155
156
152
139
136
131
143
147
151
138
135
130
142
146
150
137
134
129
141
145
149
136
133
128
140
144
148
135
132
127
139
143
147
134
131
126
138
142
146
133
130
125
137
141
145
132
129
124
136
140
144
131
128
123
135
139
143
130
127
122
134
138
142
129
126
121
133
137
141
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
120
132
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
127
115
119
131
127
139
126
114
118
130
126
138
125
113
117
129
125
137
124
112
116
128
124
136
123
111
115
127
123
135
122
110
114
126
122
134
121
109
113
125
121
133
120
108
112
124
120
132
119
107
111
123
119
131
118
106
110
122
118
130
117
105
109
121
117
129
116
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
128
115
95
95
107
107
127
114
94
94
106
106
126
113
93
93
105
105
125
112
92
92
104
104
124
111
91
91
103
103
123
110
90
90
102
102
122
109
89
89
101
101
121
108
88
88
100
100
120
107
87
87
99
99
119
106
86
86
98
98
118
105
85
85
97
97
117
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
72
73
74
75
76
77
78
79
80
81
82
83
84
96
95
94
93
92
91
90
89
88
87
86
85
84
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
97
83
71
83
95
109
98
82
70
82
94
110
99
81
69
81
93
111
100
80
68
80
92
112
101
79
67
79
91
113
102
78
66
78
90
114
103
77
65
77
89
115
104
76
64
76
88
116
105
75
63
75
87
117
106
74
62
74
86
118
107
73
61
73
85
119
116
115
114
113
112
111
110
109
108
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
120
121
122
123
124
125
126
127
128
115
73
47
59
85
127
114
74
46
58
86
126
113
75
45
57
87
125
112
76
44
56
88
124
111
77
43
55
89
123
110
78
42
54
90
122
109
79
41
53
91
121
108
80
40
52
92
120
107
81
39
51
93
119
106
82
38
50
94
118
105
83
37
49
95
117
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
24
25
26
27
28
29
30
31
32
33
34
35
36
48
47
46
45
44
43
42
41
40
39
38
37
36
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
105
85
23
35
97
117
106
86
22
34
98
118
107
87
21
33
99
119
108
88
20
32
100
120
109
89
19
31
101
121
110
90
18
30
102
122
111
91
17
29
103
123
112
92
16
28
104
124
113
93
15
27
105
125
114
94
14
26
106
126
115
95
13
25
107
127
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
12
11
10
9
8
7
6
5
4
3
2
1
0
199
200
201
202
203
204
205
206
207
208
209
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
185
186
187
188
189
190
191
192
193
194
195
196
195
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
218
217
216
215
214
213
212
211
210
209
208
207
198
188
184
194
198
206
197
187
183
193
197
205
196
186
182
192
196
204
195
185
181
191
195
203
194
184
180
190
194
202
193
183
179
189
193
201
192
182
178
188
192
200
191
181
177
187
191
199
190
180
176
186
190
198
189
179
175
185
189
197
188
178
174
184
188
196
187
175
176
177
178
177
176
175
174
173
172
171
170
169
170
171
172
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
183
184
185
186
187
188
189
190
191
190
189
188
187
186
185
184
183
182
181
180
179
180
181
182
183
184
185
186
187
186
185
184
183
195
186
174
168
172
182
178
182
194
185
173
167
171
181
177
181
193
184
172
166
170
180
176
180
192
183
171
165
169
179
175
179
191
182
170
164
168
178
174
178
190
181
169
163
167
177
173
177
189
180
168
162
166
176
172
176
188
179
178
177
176
175
174
173
172
171
170
169
168
167
161
165
175
171
175
176
177
178
179
180
181
182
183
184
185
186
187
166
160
164
174
170
174
165
159
163
173
169
173
164
158
162
172
168
172
163
157
161
171
167
171
162
156
160
170
166
170
161
155
159
169
165
169
160
154
158
168
164
168
159
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
167
158
144
154
166
157
143
153
165
156
142
152
164
153
152
151
150
149
150
151
152
153
154
155
156
157
158
157
156
155
141
151
163
164
165
166
166
165
164
163
162
161
160
159
158
157
156
155
154
148
154
140
150
162
158
147
153
139
149
161
157
146
152
138
148
160
156
145
151
137
147
159
155
144
150
136
146
158
154
143
149
135
145
157
153
142
148
134
144
156
152
141
147
146
145
144
143
142
141
140
139
138
139
140
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
150
149
148
147
148
149
150
151
152
153
154
155
151
140
137
132
142
146
150
139
136
131
141
145
149
138
135
130
140
144
148
137
134
129
139
143
147
136
133
128
138
142
146
135
132
127
137
141
145
134
131
126
136
140
144
133
130
125
135
139
143
132
129
124
134
138
142
131
128
123
133
137
141
130
127
122
132
136
140
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
121
131
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
128
116
120
130
126
138
127
115
119
129
125
137
126
114
118
128
124
136
125
113
117
127
123
135
124
112
116
126
122
134
123
111
115
125
121
133
122
110
114
124
120
132
121
109
113
123
119
131
120
108
112
122
118
130
119
107
111
121
117
129
118
106
110
120
116
128
117
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
127
116
96
96
106
106
126
115
95
95
105
105
125
114
94
94
104
104
124
113
93
93
103
103
123
112
92
92
102
102
122
111
91
91
101
101
121
110
90
90
100
100
120
109
89
89
99
99
119
108
88
88
98
98
118
107
87
87
97
97
117
106
86
86
96
96
116
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
73
74
75
76
77
78
79
80
81
82
83
84
85
95
94
93
92
91
90
89
88
87
86
85
84
83
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
98
84
72
82
94
108
99
83
71
81
93
109
100
82
70
80
92
110
101
81
69
79
91
111
102
80
68
78
90
112
103
79
67
77
89
113
104
78
66
76
88
114
105
77
65
75
87
115
106
76
64
74
86
116
107
75
63
73
85
117
108
74
62
72
84
118
117
116
115
114
113
112
111
110
109
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
119
120
121
122
123
124
125
126
127
116
74
48
58
84
126
115
75
47
57
85
125
114
76
46
56
86
124
113
77
45
55
87
123
112
78
44
54
88
122
111
79
43
53
89
121
110
80
42
52
90
120
109
81
41
51
91
119
108
82
40
50
92
118
107
83
39
49
93
117
106
84
38
48
94
116
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
25
26
27
28
29
30
31
32
33
34
35
36
37
47
46
45
44
43
42
41
40
39
38
37
36
35
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
106
86
24
34
96
116
107
87
23
33
97
117
108
88
22
32
98
118
109
89
21
31
99
119
110
90
20
30
100
120
111
91
19
29
101
121
112
92
18
28
102
122
113
93
17
27
103
123
114
94
16
26
104
124
115
95
15
25
105
125
116
96
14
24
106
126
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
13
12
11
10
9
8
7
6
5
4
3
2
1
0
200
201
202
203
204
205
206
207
208
209
210
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
186
187
188
189
190
191
192
193
194
195
196
195
194
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
217
216
215
214
213
212
211
210
209
208
207
206
199
189
185
193
197
205
198
188
184
192
196
204
197
187
183
191
195
203
196
186
182
190
194
202
195
185
181
189
193
201
194
184
180
188
192
200
193
183
179
187
191
199
192
182
178
186
190
198
191
181
177
185
189
197
190
180
176
184
188
196
189
179
175
183
187
195
188
176
177
178
179
178
177
176
175
174
173
172
171
170
171
172
173
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
182
183
184
185
186
187
188
189
190
189
188
187
186
185
184
183
182
181
180
179
178
179
180
181
182
183
184
185
186
185
184
183
182
194
187
175
169
173
181
177
181
193
186
174
168
172
180
176
180
192
185
173
167
171
179
175
179
191
184
172
166
170
178
174
178
190
183
171
165
169
177
173
177
189
182
170
164
168
176
172
176
188
181
169
163
167
175
171
175
187
180
179
178
177
176
175
174
173
172
171
170
169
168
162
166
174
170
174
175
176
177
178
179
180
181
182
183
184
185
186
167
161
165
173
169
173
166
160
164
172
168
172
165
159
163
171
167
171
164
158
162
170
166
170
163
157
161
169
165
169
162
156
160
168
164
168
161
155
159
167
163
167
160
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
166
159
145
153
165
158
144
152
164
157
143
151
163
154
153
152
151
150
151
152
153
154
155
156
157
158
159
158
157
156
142
150
162
163
164
165
166
165
164
163
162
161
160
159
158
158
157
156
155
149
155
141
149
161
157
148
154
140
148
160
156
147
153
139
147
159
155
146
152
138
146
158
154
145
151
137
145
157
153
144
150
136
144
156
152
143
149
135
143
155
151
142
148
147
146
145
144
143
142
141
140
139
140
141
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
149
148
147
146
147
148
149
150
151
152
153
154
150
141
138
133
141
145
149
140
137
132
140
144
148
139
136
131
139
143
147
138
135
130
138
142
146
137
134
129
137
141
145
136
133
128
136
140
144
135
132
127
135
139
143
134
131
126
134
138
142
133
130
125
133
137
141
132
129
124
132
136
140
131
128
123
131
135
139
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
122
130
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
129
117
121
129
125
137
128
116
120
128
124
136
127
115
119
127
123
135
126
114
118
126
122
134
125
113
117
125
121
133
124
112
116
124
120
132
123
111
115
123
119
131
122
110
114
122
118
130
121
109
113
121
117
129
120
108
112
120
116
128
119
107
111
119
115
127
118
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
126
117
97
97
105
105
125
116
96
96
104
104
124
115
95
95
103
103
123
114
94
94
102
102
122
113
93
93
101
101
121
112
92
92
100
100
120
111
91
91
99
99
119
110
90
90
98
98
118
109
89
89
97
97
117
108
88
88
96
96
116
107
87
87
95
95
115
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
74
75
76
77
78
79
80
81
82
83
84
85
86
94
93
92
91
90
89
88
87
86
85
84
83
82
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
99
85
73
81
93
107
100
84
72
80
92
108
101
83
71
79
91
109
102
82
70
78
90
110
103
81
69
77
89
111
104
80
68
76
88
112
105
79
67
75
87
113
106
78
66
74
86
114
107
77
65
73
85
115
108
76
64
72
84
116
109
75
63
71
83
117
118
117
116
115
114
113
112
111
110
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
118
119
120
121
122
123
124
125
126
117
75
49
57
83
125
116
76
48
56
84
124
115
77
47
55
85
123
114
78
46
54
86
122
113
79
45
53
87
121
112
80
44
52
88
120
111
81
43
51
89
119
110
82
42
50
90
118
109
83
41
49
91
117
108
84
40
48
92
116
107
85
39
47
93
115
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
26
27
28
29
30
31
32
33
34
35
36
37
38
46
45
44
43
42
41
40
39
38
37
36
35
34
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
107
87
25
33
95
115
108
88
24
32
96
116
109
89
23
31
97
117
110
90
22
30
98
118
111
91
21
29
99
119
112
92
20
28
100
120
113
93
19
27
101
121
114
94
18
26
102
122
115
95
17
25
103
123
116
96
16
24
104
124
117
97
15
23
105
125
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
187
188
189
190
191
192
193
194
195
196
195
194
193
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
216
215
214
213
212
211
210
209
208
207
206
205
200
190
186
192
196
204
199
189
185
191
195
203
198
188
184
190
194
202
197
187
183
189
193
201
196
186
182
188
192
200
195
185
181
187
191
199
194
184
180
186
190
198
193
183
179
185
189
197
192
182
178
184
188
196
191
181
177
183
187
195
190
180
176
182
186
194
189
177
178
179
180
179
178
177
176
175
174
173
172
171
172
173
174
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
181
182
183
184
185
186
187
188
189
188
187
186
185
184
183
182
181
180
179
178
177
178
179
180
181
182
183
184
185
184
183
182
181
193
188
176
170
174
180
176
180
192
187
175
169
173
179
175
179
191
186
174
168
172
178
174
178
190
185
173
167
171
177
173
177
189
184
172
166
170
176
172
176
188
183
171
165
169
175
171
175
187
182
170
164
168
174
170
174
186
181
180
179
178
177
176
175
174
173
172
171
170
169
163
167
173
169
173
174
175
176
177
178
179
180
181
182
183
184
185
168
162
166
172
168
172
167
161
165
171
167
171
166
160
164
170
166
170
165
159
163
169
165
169
164
158
162
168
164
168
163
157
161
167
163
167
162
156
160
166
162
166
161
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
165
160
146
152
164
159
145
151
163
158
144
150
162
155
154
153
152
151
152
153
154
155
156
157
158
159
160
159
158
157
143
149
161
162
163
164
165
164
163
162
161
160
159
158
157
158
158
157
156
150
156
142
148
160
156
149
155
141
147
159
155
148
154
140
146
158
154
147
153
139
145
157
153
146
152
138
144
156
152
145
151
137
143
155
151
144
150
136
142
154
150
143
149
148
147
146
145
144
143
142
141
140
141
142
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
148
147
146
145
146
147
148
149
150
151
152
153
149
142
139
134
140
144
148
141
138
133
139
143
147
140
137
132
138
142
146
139
136
131
137
141
145
138
135
130
136
140
144
137
134
129
135
139
143
136
133
128
134
138
142
135
132
127
133
137
141
134
131
126
132
136
140
133
130
125
131
135
139
132
129
124
130
134
138
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
123
129
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
130
118
122
128
124
136
129
117
121
127
123
135
128
116
120
126
122
134
127
115
119
125
121
133
126
114
118
124
120
132
125
113
117
123
119
131
124
112
116
122
118
130
123
111
115
121
117
129
122
110
114
120
116
128
121
109
113
119
115
127
120
108
112
118
114
126
119
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
125
118
98
98
104
104
124
117
97
97
103
103
123
116
96
96
102
102
122
115
95
95
101
101
121
114
94
94
100
100
120
113
93
93
99
99
119
112
92
92
98
98
118
111
91
91
97
97
117
110
90
90
96
96
116
109
89
89
95
95
115
108
88
88
94
94
114
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
75
76
77
78
79
80
81
82
83
84
85
86
87
93
92
91
90
89
88
87
86
85
84
83
82
81
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
100
86
74
80
92
106
101
85
73
79
91
107
102
84
72
78
90
108
103
83
71
77
89
109
104
82
70
76
88
110
105
81
69
75
87
111
106
80
68
74
86
112
107
79
67
73
85
113
108
78
66
72
84
114
109
77
65
71
83
115
110
76
64
70
82
116
119
118
117
116
115
114
113
112
111
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
117
118
119
120
121
122
123
124
125
118
76
50
56
82
124
117
77
49
55
83
123
116
78
48
54
84
122
115
79
47
53
85
121
114
80
46
52
86
120
113
81
45
51
87
119
112
82
44
50
88
118
111
83
43
49
89
117
110
84
42
48
90
116
109
85
41
47
91
115
108
86
40
46
92
114
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
27
28
29
30
31
32
33
34
35
36
37
38
39
45
44
43
42
41
40
39
38
37
36
35
34
33
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
108
88
26
32
94
114
109
89
25
31
95
115
110
90
24
30
96
116
111
91
23
29
97
117
112
92
22
28
98
118
113
93
21
27
99
119
114
94
20
26
100
120
115
95
19
25
101
121
116
96
18
24
102
122
117
97
17
23
103
123
118
98
16
22
104
124
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
202
203
204
205
206
207
208
209
210
211
212
213
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
188
189
190
191
192
193
194
195
196
195
194
193
192
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
215
214
213
212
211
210
209
208
207
206
205
204
201
191
187
191
195
203
200
190
186
190
194
202
199
189
185
189
193
201
198
188
184
188
192
200
197
187
183
187
191
199
196
186
182
186
190
198
195
185
181
185
189
197
194
184
180
184
188
196
193
183
179
183
187
195
192
182
178
182
186
194
191
181
177
181
185
193
190
178
179
180
181
180
179
178
177
176
175
174
173
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
180
181
182
183
184
185
186
187
188
187
186
185
184
183
182
181
180
179
178
177
176
177
178
179
180
181
182
183
184
183
182
181
180
192
189
177
171
175
179
175
179
191
188
176
170
174
178
174
178
190
187
175
169
173
177
173
177
189
186
174
168
172
176
172
176
188
185
173
167
171
175
171
175
187
184
172
166
170
174
170
174
186
183
171
165
169
173
169
173
185
182
181
180
179
178
177
176
175
174
173
172
171
170
164
168
172
168
172
173
174
175
176
177
178
179
180
181
182
183
184
169
163
167
171
167
171
168
162
166
170
166
170
167
161
165
169
165
169
166
160
164
168
164
168
165
159
163
167
163
167
164
158
162
166
162
166
163
157
161
165
161
165
162
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
164
161
147
151
163
160
146
150
162
159
145
149
161
156
155
154
153
152
153
154
155
156
157
158
159
160
161
160
159
158
144
148
160
161
162
163
164
163
162
161
160
159
158
157
156
157
158
158
157
151
157
143
147
159
155
150
156
142
146
158
154
149
155
141
145
157
153
148
154
140
144
156
152
147
153
139
143
155
151
146
152
138
142
154
150
145
151
137
141
153
149
144
150
149
148
147
146
145
144
143
142
141
142
143
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
147
146
145
144
145
146
147
148
149
150
151
152
148
143
140
135
139
143
147
142
139
134
138
142
146
141
138
133
137
141
145
140
137
132
136
140
144
139
136
131
135
139
143
138
135
130
134
138
142
137
134
129
133
137
141
136
133
128
132
136
140
135
132
127
131
135
139
134
131
126
130
134
138
133
130
125
129
133
137
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
124
128
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
131
119
123
127
123
135
130
118
122
126
122
134
129
117
121
125
121
133
128
116
120
124
120
132
127
115
119
123
119
131
126
114
118
122
118
130
125
113
117
121
117
129
124
112
116
120
116
128
123
111
115
119
115
127
122
110
114
118
114
126
121
109
113
117
113
125
120
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
124
119
99
99
103
103
123
118
98
98
102
102
122
117
97
97
101
101
121
116
96
96
100
100
120
115
95
95
99
99
119
114
94
94
98
98
118
113
93
93
97
97
117
112
92
92
96
96
116
111
91
91
95
95
115
110
90
90
94
94
114
109
89
89
93
93
113
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
76
77
78
79
80
81
82
83
84
85
86
87
88
92
91
90
89
88
87
86
85
84
83
82
81
80
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
101
87
75
79
91
105
102
86
74
78
90
106
103
85
73
77
89
107
104
84
72
76
88
108
105
83
71
75
87
109
106
82
70
74
86
110
107
81
69
73
85
111
108
80
68
72
84
112
109
79
67
71
83
113
110
78
66
70
82
114
111
77
65
69
81
115
120
119
118
117
116
115
114
113
112
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
116
117
118
119
120
121
122
123
124
119
77
51
55
81
123
118
78
50
54
82
122
117
79
49
53
83
121
116
80
48
52
84
120
115
81
47
51
85
119
114
82
46
50
86
118
113
83
45
49
87
117
112
84
44
48
88
116
111
85
43
47
89
115
110
86
42
46
90
114
109
87
41
45
91
113
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
28
29
30
31
32
33
34
35
36
37
38
39
40
44
43
42
41
40
39
38
37
36
35
34
33
32
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
109
89
27
31
93
113
110
90
26
30
94
114
111
91
25
29
95
115
112
92
24
28
96
116
113
93
23
27
97
117
114
94
22
26
98
118
115
95
21
25
99
119
116
96
20
24
100
120
117
97
19
23
101
121
118
98
18
22
102
122
119
99
17
21
103
123
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
203
204
205
206
207
208
209
210
211
212
213
214
213
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
189
190
191
192
193
194
195
196
195
194
193
192
191
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
214
213
212
211
210
209
208
207
206
205
204
203
202
192
188
190
194
202
201
191
187
189
193
201
200
190
186
188
192
200
199
189
185
187
191
199
198
188
184
186
190
198
197
187
183
185
189
197
196
186
182
184
188
196
195
185
181
183
187
195
194
184
180
182
186
194
193
183
179
181
185
193
192
182
178
180
184
192
191
179
180
181
182
181
180
179
178
177
176
175
174
173
174
175
176
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
179
180
181
182
183
184
185
186
187
186
185
184
183
182
181
180
179
178
177
176
175
176
177
178
179
180
181
182
183
182
181
180
179
191
190
178
172
176
178
174
178
190
189
177
171
175
177
173
177
189
188
176
170
174
176
172
176
188
187
175
169
173
175
171
175
187
186
174
168
172
174
170
174
186
185
173
167
171
173
169
173
185
184
172
166
170
172
168
172
184
183
182
181
180
179
178
177
176
175
174
173
172
171
165
169
171
167
171
172
173
174
175
176
177
178
179
180
181
182
183
170
164
168
170
166
170
169
163
167
169
165
169
168
162
166
168
164
168
167
161
165
167
163
167
166
160
164
166
162
166
165
159
163
165
161
165
164
158
162
164
160
164
163
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
163
162
148
150
162
161
147
149
161
160
146
148
160
157
156
155
154
153
154
155
156
157
158
159
160
161
162
161
160
159
145
147
159
160
161
162
163
162
161
160
159
158
157
156
155
156
157
158
158
152
158
144
146
158
154
151
157
143
145
157
153
150
156
142
144
156
152
149
155
141
143
155
151
148
154
140
142
154
150
147
153
139
141
153
149
146
152
138
140
152
148
145
151
150
149
148
147
146
145
144
143
142
143
144
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
146
145
144
143
144
145
146
147
148
149
150
151
147
144
141
136
138
142
146
143
140
135
137
141
145
142
139
134
136
140
144
141
138
133
135
139
143
140
137
132
134
138
142
139
136
131
133
137
141
138
135
130
132
136
140
137
134
129
131
135
139
136
133
128
130
134
138
135
132
127
129
133
137
134
131
126
128
132
136
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
125
127
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
132
120
124
126
122
134
131
119
123
125
121
133
130
118
122
124
120
132
129
117
121
123
119
131
128
116
120
122
118
130
127
115
119
121
117
129
126
114
118
120
116
128
125
113
117
119
115
127
124
112
116
118
114
126
123
111
115
117
113
125
122
110
114
116
112
124
121
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
123
120
100
100
102
102
122
119
99
99
101
101
121
118
98
98
100
100
120
117
97
97
99
99
119
116
96
96
98
98
118
115
95
95
97
97
117
114
94
94
96
96
116
113
93
93
95
95
115
112
92
92
94
94
114
111
91
91
93
93
113
110
90
90
92
92
112
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
77
78
79
80
81
82
83
84
85
86
87
88
89
91
90
89
88
87
86
85
84
83
82
81
80
79
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
102
88
76
78
90
104
103
87
75
77
89
105
104
86
74
76
88
106
105
85
73
75
87
107
106
84
72
74
86
108
107
83
71
73
85
109
108
82
70
72
84
110
109
81
69
71
83
111
110
80
68
70
82
112
111
79
67
69
81
113
112
78
66
68
80
114
121
120
119
118
117
116
115
114
113
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
115
116
117
118
119
120
121
122
123
120
78
52
54
80
122
119
79
51
53
81
121
118
80
50
52
82
120
117
81
49
51
83
119
116
82
48
50
84
118
115
83
47
49
85
117
114
84
46
48
86
116
113
85
45
47
87
115
112
86
44
46
88
114
111
87
43
45
89
113
110
88
42
44
90
112
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
29
30
31
32
33
34
35
36
37
38
39
40
41
43
42
41
40
39
38
37
36
35
34
33
32
31
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
110
90
28
30
92
112
111
91
27
29
93
113
112
92
26
28
94
114
113
93
25
27
95
115
114
94
24
26
96
116
115
95
23
25
97
117
116
96
22
24
98
118
117
97
21
23
99
119
118
98
20
22
100
120
119
99
19
21
101
121
120
100
18
20
102
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
204
205
206
207
208
209
210
211
212
213
214
215
214
213
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
190
191
192
193
194
195
196
195
194
193
192
191
190
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
213
212
211
210
209
208
207
206
205
204
203
202
203
193
189
189
193
201
202
192
188
188
192
200
201
191
187
187
191
199
200
190
186
186
190
198
199
189
185
185
189
197
198
188
184
184
188
196
197
187
183
183
187
195
196
186
182
182
186
194
195
185
181
181
185
193
194
184
180
180
184
192
193
183
179
179
183
191
192
180
181
182
183
182
181
180
179
178
177
176
175
174
175
176
177
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
177
176
175
174
175
176
177
178
179
180
181
182
181
180
179
178
190
191
179
173
177
177
173
177
189
190
178
172
176
176
172
176
188
189
177
171
175
175
171
175
187
188
176
170
174
174
170
174
186
187
175
169
173
173
169
173
185
186
174
168
172
172
168
172
184
185
173
167
171
171
167
171
183
184
183
182
181
180
179
178
177
176
175
174
173
172
166
170
170
166
170
171
172
173
174
175
176
177
178
179
180
181
182
171
165
169
169
165
169
170
164
168
168
164
168
169
163
167
167
163
167
168
162
166
166
162
166
167
161
165
165
161
165
166
160
164
164
160
164
165
159
163
163
159
163
164
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
162
163
149
149
161
162
148
148
160
161
147
147
159
158
157
156
155
154
155
156
157
158
159
160
161
162
163
162
161
160
146
146
158
159
160
161
162
161
160
159
158
157
156
155
154
155
156
157
158
153
159
145
145
157
153
152
158
144
144
156
152
151
157
143
143
155
151
150
156
142
142
154
150
149
155
141
141
153
149
148
154
140
140
152
148
147
153
139
139
151
147
146
152
151
150
149
148
147
146
145
144
143
144
145
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
145
144
143
142
143
144
145
146
147
148
149
150
146
145
142
137
137
141
145
144
141
136
136
140
144
143
140
135
135
139
143
142
139
134
134
138
142
141
138
133
133
137
141
140
137
132
132
136
140
139
136
131
131
135
139
138
135
130
130
134
138
137
134
129
129
133
137
136
133
128
128
132
136
135
132
127
127
131
135
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
126
126
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
133
121
125
125
121
133
132
120
124
124
120
132
131
119
123
123
119
131
130
118
122
122
118
130
129
117
121
121
117
129
128
116
120
120
116
128
127
115
119
119
115
127
126
114
118
118
114
126
125
113
117
117
113
125
124
112
116
116
112
124
123
111
115
115
111
123
122
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
122
121
101
101
101
101
121
120
100
100
100
100
120
119
99
99
99
99
119
118
98
98
98
98
118
117
97
97
97
97
117
116
96
96
96
96
116
115
95
95
95
95
115
114
94
94
94
94
114
113
93
93
93
93
113
112
92
92
92
92
112
111
91
91
91
91
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
103
89
77
77
89
103
104
88
76
76
88
104
105
87
75
75
87
105
106
86
74
74
86
106
107
85
73
73
85
107
108
84
72
72
84
108
109
83
71
71
83
109
110
82
70
70
82
110
111
81
69
69
81
111
112
80
68
68
80
112
113
79
67
67
79
113
122
121
120
119
118
117
116
115
114
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
114
115
116
117
118
119
120
121
122
121
79
53
53
79
121
120
80
52
52
80
120
119
81
51
51
81
119
118
82
50
50
82
118
117
83
49
49
83
117
116
84
48
48
84
116
115
85
47
47
85
115
114
86
46
46
86
114
113
87
45
45
87
113
112
88
44
44
88
112
111
89
43
43
89
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
30
31
32
33
34
35
36
37
38
39
40
41
42
42
41
40
39
38
37
36
35
34
33
32
31
30
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
91
29
29
91
111
112
92
28
28
92
112
113
93
27
27
93
113
114
94
26
26
94
114
115
95
25
25
95
115
116
96
24
24
96
116
117
97
23
23
97
117
118
98
22
22
98
118
119
99
21
21
99
119
120
100
20
20
100
120
121
101
19
19
101
121
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
205
206
207
208
209
210
211
212
213
214
215
216
215
214
213
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
191
192
193
194
195
196
195
194
193
192
191
190
189
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
212
211
210
209
208
207
206
205
204
203
202
201
204
194
190
188
192
200
203
193
189
187
191
199
202
192
188
186
190
198
201
191
187
185
189
197
200
190
186
184
188
196
199
189
185
183
187
195
198
188
184
182
186
194
197
187
183
181
185
193
196
186
182
180
184
192
195
185
181
179
183
191
194
184
180
178
182
190
193
181
182
183
184
183
182
181
180
179
178
177
176
175
176
177
178
179
180
181
182
183
184
185
186
187
186
185
184
183
182
181
180
179
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
176
175
174
173
174
175
176
177
178
179
180
181
180
179
178
177
189
192
180
174
178
176
172
176
188
191
179
173
177
175
171
175
187
190
178
172
176
174
170
174
186
189
177
171
175
173
169
173
185
188
176
170
174
172
168
172
184
187
175
169
173
171
167
171
183
186
174
168
172
170
166
170
182
185
184
183
182
181
180
179
178
177
176
175
174
173
167
171
169
165
169
170
171
172
173
174
175
176
177
178
179
180
181
172
166
170
168
164
168
171
165
169
167
163
167
170
164
168
166
162
166
169
163
167
165
161
165
168
162
166
164
160
164
167
161
165
163
159
163
166
160
164
162
158
162
165
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
161
164
150
148
160
163
149
147
159
162
148
146
158
158
158
157
156
155
156
157
158
159
160
161
162
163
164
163
162
161
147
145
157
158
159
160
161
160
159
158
157
156
155
154
153
154
155
156
157
154
160
146
144
156
152
153
159
145
143
155
151
152
158
144
142
154
150
151
157
143
141
153
149
150
156
142
140
152
148
149
155
141
139
151
147
148
154
140
138
150
146
147
153
152
151
150
149
148
147
146
145
144
145
146
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
144
143
142
141
142
143
144
145
146
147
148
149
145
146
143
138
136
140
144
145
142
137
135
139
143
144
141
136
134
138
142
143
140
135
133
137
141
142
139
134
132
136
140
141
138
133
131
135
139
140
137
132
130
134
138
139
136
131
129
133
137
138
135
130
128
132
136
137
134
129
127
131
135
136
133
128
126
130
134
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
127
125
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
134
122
126
124
120
132
133
121
125
123
119
131
132
120
124
122
118
130
131
119
123
121
117
129
130
118
122
120
116
128
129
117
121
119
115
127
128
116
120
118
114
126
127
115
119
117
113
125
126
114
118
116
112
124
125
113
117
115
111
123
124
112
116
114
110
122
123
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
121
122
102
102
100
100
120
121
101
101
99
99
119
120
100
100
98
98
118
119
99
99
97
97
117
118
98
98
96
96
116
117
97
97
95
95
115
116
96
96
94
94
114
115
95
95
93
93
113
114
94
94
92
92
112
113
93
93
91
91
111
112
92
92
90
90
110
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
79
80
81
82
83
84
85
86
87
88
89
90
91
89
88
87
86
85
84
83
82
81
80
79
78
77
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
104
90
78
76
88
102
105
89
77
75
87
103
106
88
76
74
86
104
107
87
75
73
85
105
108
86
74
72
84
106
109
85
73
71
83
107
110
84
72
70
82
108
111
83
71
69
81
109
112
82
70
68
80
110
113
81
69
67
79
111
114
80
68
66
78
112
123
122
121
120
119
118
117
116
115
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
113
114
115
116
117
118
119
120
121
122
80
54
52
78
120
121
81
53
51
79
119
120
82
52
50
80
118
119
83
51
49
81
117
118
84
50
48
82
116
117
85
49
47
83
115
116
86
48
46
84
114
115
87
47
45
85
113
114
88
46
44
86
112
113
89
45
43
87
111
112
90
44
42
88
110
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
31
32
33
34
35
36
37
38
39
40
41
42
43
41
40
39
38
37
36
35
34
33
32
31
30
29
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
112
92
30
28
90
110
113
93
29
27
91
111
114
94
28
26
92
112
115
95
27
25
93
113
116
96
26
24
94
114
117
97
25
23
95
115
118
98
24
22
96
116
119
99
23
21
97
117
120
100
22
20
98
118
121
101
21
19
99
119
122
102
20
18
100
120
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
206
207
208
209
210
211
212
213
214
215
216
217
216
215
214
213
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
192
193
194
195
196
195
194
193
192
191
190
189
188
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
205
195
191
187
191
199
204
194
190
186
190
198
203
193
189
185
189
197
202
192
188
184
188
196
201
191
187
183
187
195
200
190
186
182
186
194
199
189
185
181
185
193
198
188
184
180
184
192
197
187
183
179
183
191
196
186
182
178
182
190
195
185
181
177
181
189
194
182
183
184
185
184
183
182
181
180
179
178
177
176
177
178
179
180
181
182
183
184
185
186
187
188
187
186
185
184
183
182
181
180
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
173
174
175
176
177
178
179
180
179
178
177
176
188
193
181
175
179
175
171
175
187
192
180
174
178
174
170
174
186
191
179
173
177
173
169
173
185
190
178
172
176
172
168
172
184
189
177
171
175
171
167
171
183
188
176
170
174
170
166
170
182
187
175
169
173
169
165
169
181
186
185
184
183
182
181
180
179
178
177
176
175
174
168
172
168
164
168
169
170
171
172
173
174
175
176
177
178
179
180
173
167
171
167
163
167
172
166
170
166
162
166
171
165
169
165
161
165
170
164
168
164
160
164
169
163
167
163
159
163
168
162
166
162
158
162
167
161
165
161
157
161
166
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
160
165
151
147
159
164
150
146
158
163
149
145
157
157
158
158
157
156
157
158
159
160
161
162
163
164
165
164
163
162
148
144
156
157
158
159
160
159
158
157
156
155
154
153
152
153
154
155
156
155
161
147
143
155
151
154
160
146
142
154
150
153
159
145
141
153
149
152
158
144
140
152
148
151
157
143
139
151
147
150
156
142
138
150
146
149
155
141
137
149
145
148
154
153
152
151
150
149
148
147
146
145
146
147
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
143
142
141
140
141
142
143
144
145
146
147
148
144
147
144
139
135
139
143
146
143
138
134
138
142
145
142
137
133
137
141
144
141
136
132
136
140
143
140
135
131
135
139
142
139
134
130
134
138
141
138
133
129
133
137
140
137
132
128
132
136
139
136
131
127
131
135
138
135
130
126
130
134
137
134
129
125
129
133
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
128
124
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
135
123
127
123
119
131
134
122
126
122
118
130
133
121
125
121
117
129
132
120
124
120
116
128
131
119
123
119
115
127
130
118
122
118
114
126
129
117
121
117
113
125
128
116
120
116
112
124
127
115
119
115
111
123
126
114
118
114
110
122
125
113
117
113
109
121
124
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
120
123
103
103
99
99
119
122
102
102
98
98
118
121
101
101
97
97
117
120
100
100
96
96
116
119
99
99
95
95
115
118
98
98
94
94
114
117
97
97
93
93
113
116
96
96
92
92
112
115
95
95
91
91
111
114
94
94
90
90
110
113
93
93
89
89
109
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
80
81
82
83
84
85
86
87
88
89
90
91
92
88
87
86
85
84
83
82
81
80
79
78
77
76
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
105
91
79
75
87
101
106
90
78
74
86
102
107
89
77
73
85
103
108
88
76
72
84
104
109
87
75
71
83
105
110
86
74
70
82
106
111
85
73
69
81
107
112
84
72
68
80
108
113
83
71
67
79
109
114
82
70
66
78
110
115
81
69
65
77
111
124
123
122
121
120
119
118
117
116
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
112
113
114
115
116
117
118
119
120
123
81
55
51
77
119
122
82
54
50
78
118
121
83
53
49
79
117
120
84
52
48
80
116
119
85
51
47
81
115
118
86
50
46
82
114
117
87
49
45
83
113
116
88
48
44
84
112
115
89
47
43
85
111
114
90
46
42
86
110
113
91
45
41
87
109
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
32
33
34
35
36
37
38
39
40
41
42
43
44
40
39
38
37
36
35
34
33
32
31
30
29
28
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
113
93
31
27
89
109
114
94
30
26
90
110
115
95
29
25
91
111
116
96
28
24
92
112
117
97
27
23
93
113
118
98
26
22
94
114
119
99
25
21
95
115
120
100
24
20
96
116
121
101
23
19
97
117
122
102
22
18
98
118
123
103
21
17
99
119
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
207
208
209
210
211
212
213
214
215
216
217
218
217
216
215
214
213
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
193
194
195
196
195
194
193
192
191
190
189
188
187
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
210
209
208
207
206
205
204
203
202
201
200
199
206
196
192
186
190
198
205
195
191
185
189
197
204
194
190
184
188
196
203
193
189
183
187
195
202
192
188
182
186
194
201
191
187
181
185
193
200
190
186
180
184
192
199
189
185
179
183
191
198
188
184
178
182
190
197
187
183
177
181
189
196
186
182
176
180
188
195
183
184
185
186
185
184
183
182
181
180
179
178
177
178
179
180
181
182
183
184
185
186
187
188
189
188
187
186
185
184
183
182
181
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
174
173
172
171
172
173
174
175
176
177
178
179
178
177
176
175
187
194
182
176
180
174
170
174
186
193
181
175
179
173
169
173
185
192
180
174
178
172
168
172
184
191
179
173
177
171
167
171
183
190
178
172
176
170
166
170
182
189
177
171
175
169
165
169
181
188
176
170
174
168
164
168
180
187
186
185
184
183
182
181
180
179
178
177
176
175
169
173
167
163
167
168
169
170
171
172
173
174
175
176
177
178
179
174
168
172
166
162
166
173
167
171
165
161
165
172
166
170
164
160
164
171
165
169
163
159
163
170
164
168
162
158
162
169
163
167
161
157
161
168
162
166
160
156
160
167
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
159
166
152
146
158
165
151
145
157
164
150
144
156
156
157
158
158
157
158
159
160
161
162
163
164
165
166
165
164
163
149
143
155
156
157
158
159
158
157
156
155
154
153
152
151
152
153
154
155
156
162
148
142
154
150
155
161
147
141
153
149
154
160
146
140
152
148
153
159
145
139
151
147
152
158
144
138
150
146
151
157
143
137
149
145
150
156
142
136
148
144
149
155
154
153
152
151
150
149
148
147
146
147
148
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
142
141
140
139
140
141
142
143
144
145
146
147
143
148
145
140
134
138
142
147
144
139
133
137
141
146
143
138
132
136
140
145
142
137
131
135
139
144
141
136
130
134
138
143
140
135
129
133
137
142
139
134
128
132
136
141
138
133
127
131
135
140
137
132
126
130
134
139
136
131
125
129
133
138
135
130
124
128
132
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
129
123
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
136
124
128
122
118
130
135
123
127
121
117
129
134
122
126
120
116
128
133
121
125
119
115
127
132
120
124
118
114
126
131
119
123
117
113
125
130
118
122
116
112
124
129
117
121
115
111
123
128
116
120
114
110
122
127
115
119
113
109
121
126
114
118
112
108
120
125
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
119
124
104
104
98
98
118
123
103
103
97
97
117
122
102
102
96
96
116
121
101
101
95
95
115
120
100
100
94
94
114
119
99
99
93
93
113
118
98
98
92
92
112
117
97
97
91
91
111
116
96
96
90
90
110
115
95
95
89
89
109
114
94
94
88
88
108
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
81
82
83
84
85
86
87
88
89
90
91
92
93
87
86
85
84
83
82
81
80
79
78
77
76
75
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
106
92
80
74
86
100
107
91
79
73
85
101
108
90
78
72
84
102
109
89
77
71
83
103
110
88
76
70
82
104
111
87
75
69
81
105
112
86
74
68
80
106
113
85
73
67
79
107
114
84
72
66
78
108
115
83
71
65
77
109
116
82
70
64
76
110
125
124
123
122
121
120
119
118
117
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
111
112
113
114
115
116
117
118
119
124
82
56
50
76
118
123
83
55
49
77
117
122
84
54
48
78
116
121
85
53
47
79
115
120
86
52
46
80
114
119
87
51
45
81
113
118
88
50
44
82
112
117
89
49
43
83
111
116
90
48
42
84
110
115
91
47
41
85
109
114
92
46
40
86
108
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
33
34
35
36
37
38
39
40
41
42
43
44
45
39
38
37
36
35
34
33
32
31
30
29
28
27
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
114
94
32
26
88
108
115
95
31
25
89
109
116
96
30
24
90
110
117
97
29
23
91
111
118
98
28
22
92
112
119
99
27
21
93
113
120
100
26
20
94
114
121
101
25
19
95
115
122
102
24
18
96
116
123
103
23
17
97
117
124
104
22
16
98
118
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
208
209
210
211
212
213
214
215
216
217
218
219
218
217
216
215
214
213
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
194
195
196
195
194
193
192
191
190
189
188
187
186
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
209
208
207
206
205
204
203
202
201
200
199
198
207
197
193
185
189
197
206
196
192
184
188
196
205
195
191
183
187
195
204
194
190
182
186
194
203
193
189
181
185
193
202
192
188
180
184
192
201
191
187
179
183
191
200
190
186
178
182
190
199
189
185
177
181
189
198
188
184
176
180
188
197
187
183
175
179
187
196
184
185
186
187
186
185
184
183
182
181
180
179
178
179
180
181
182
183
184
185
186
187
188
189
190
189
188
187
186
185
184
183
182
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
173
172
171
170
171
172
173
174
175
176
177
178
177
176
175
174
186
195
183
177
181
173
169
173
185
194
182
176
180
172
168
172
184
193
181
175
179
171
167
171
183
192
180
174
178
170
166
170
182
191
179
173
177
169
165
169
181
190
178
172
176
168
164
168
180
189
177
171
175
167
163
167
179
188
187
186
185
184
183
182
181
180
179
178
177
176
170
174
166
162
166
167
168
169
170
171
172
173
174
175
176
177
178
175
169
173
165
161
165
174
168
172
164
160
164
173
167
171
163
159
163
172
166
170
162
158
162
171
165
169
161
157
161
170
164
168
160
156
160
169
163
167
159
155
159
168
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
158
167
153
145
157
166
152
144
156
165
151
143
155
155
156
157
158
158
159
160
161
162
163
164
165
166
167
166
165
164
150
142
154
155
156
157
158
157
156
155
154
153
152
151
150
151
152
153
154
157
163
149
141
153
149
156
162
148
140
152
148
155
161
147
139
151
147
154
160
146
138
150
146
153
159
145
137
149
145
152
158
144
136
148
144
151
157
143
135
147
143
150
156
155
154
153
152
151
150
149
148
147
148
149
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
141
140
139
138
139
140
141
142
143
144
145
146
142
149
146
141
133
137
141
148
145
140
132
136
140
147
144
139
131
135
139
146
143
138
130
134
138
145
142
137
129
133
137
144
141
136
128
132
136
143
140
135
127
131
135
142
139
134
126
130
134
141
138
133
125
129
133
140
137
132
124
128
132
139
136
131
123
127
131
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
130
122
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
137
125
129
121
117
129
136
124
128
120
116
128
135
123
127
119
115
127
134
122
126
118
114
126
133
121
125
117
113
125
132
120
124
116
112
124
131
119
123
115
111
123
130
118
122
114
110
122
129
117
121
113
109
121
128
116
120
112
108
120
127
115
119
111
107
119
126
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
118
125
105
105
97
97
117
124
104
104
96
96
116
123
103
103
95
95
115
122
102
102
94
94
114
121
101
101
93
93
113
120
100
100
92
92
112
119
99
99
91
91
111
118
98
98
90
90
110
117
97
97
89
89
109
116
96
96
88
88
108
115
95
95
87
87
107
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
82
83
84
85
86
87
88
89
90
91
92
93
94
86
85
84
83
82
81
80
79
78
77
76
75
74
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
93
81
73
85
99
108
92
80
72
84
100
109
91
79
71
83
101
110
90
78
70
82
102
111
89
77
69
81
103
112
88
76
68
80
104
113
87
75
67
79
105
114
86
74
66
78
106
115
85
73
65
77
107
116
84
72
64
76
108
117
83
71
63
75
109
126
125
124
123
122
121
120
119
118
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
110
111
112
113
114
115
116
117
118
125
83
57
49
75
117
124
84
56
48
76
116
123
85
55
47
77
115
122
86
54
46
78
114
121
87
53
45
79
113
120
88
52
44
80
112
119
89
51
43
81
111
118
90
50
42
82
110
117
91
49
41
83
109
116
92
48
40
84
108
115
93
47
39
85
107
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
34
35
36
37
38
39
40
41
42
43
44
45
46
38
37
36
35
34
33
32
31
30
29
28
27
26
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
115
95
33
25
87
107
116
96
32
24
88
108
117
97
31
23
89
109
118
98
30
22
90
110
119
99
29
21
91
111
120
100
28
20
92
112
121
101
27
19
93
113
122
102
26
18
94
114
123
103
25
17
95
115
124
104
24
16
96
116
125
105
23
15
97
117
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
209
210
211
212
213
214
215
216
217
218
219
220
219
218
217
216
215
214
213
212
211
210
209
208
207
206
205
204
203
202
201
200
199
195
196
195
194
193
192
191
190
189
188
187
186
185
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
208
207
206
205
204
203
202
201
200
199
198
197
208
198
194
184
188
196
207
197
193
183
187
195
206
196
192
182
186
194
205
195
191
181
185
193
204
194
190
180
184
192
203
193
189
179
183
191
202
192
188
178
182
190
201
191
187
177
181
189
200
190
186
176
180
188
199
189
185
175
179
187
198
188
184
174
178
186
197
185
186
187
188
187
186
185
184
183
182
181
180
179
180
181
182
183
184
185
186
187
188
189
190
191
190
189
188
187
186
185
184
183
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
172
171
170
169
170
171
172
173
174
175
176
177
176
175
174
173
185
196
184
178
182
172
168
172
184
195
183
177
181
171
167
171
183
194
182
176
180
170
166
170
182
193
181
175
179
169
165
169
181
192
180
174
178
168
164
168
180
191
179
173
177
167
163
167
179
190
178
172
176
166
162
166
178
189
188
187
186
185
184
183
182
181
180
179
178
177
171
175
165
161
165
166
167
168
169
170
171
172
173
174
175
176
177
176
170
174
164
160
164
175
169
173
163
159
163
174
168
172
162
158
162
173
167
171
161
157
161
172
166
170
160
156
160
171
165
169
159
155
159
170
164
168
158
154
158
169
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
157
168
154
144
156
167
153
143
155
166
152
142
154
154
155
156
157
158
159
160
161
162
163
164
165
166
167
167
166
165
151
141
153
154
155
156
157
156
155
154
153
152
151
150
149
150
151
152
153
158
164
150
140
152
148
157
163
149
139
151
147
156
162
148
138
150
146
155
161
147
137
149
145
154
160
146
136
148
144
153
159
145
135
147
143
152
158
144
134
146
142
151
157
156
155
154
153
152
151
150
149
148
149
150
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
140
139
138
137
138
139
140
141
142
143
144
145
141
150
147
142
132
136
140
149
146
141
131
135
139
148
145
140
130
134
138
147
144
139
129
133
137
146
143
138
128
132
136
145
142
137
127
131
135
144
141
136
126
130
134
143
140
135
125
129
133
142
139
134
124
128
132
141
138
133
123
127
131
140
137
132
122
126
130
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
131
121
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
138
126
130
120
116
128
137
125
129
119
115
127
136
124
128
118
114
126
135
123
127
117
113
125
134
122
126
116
112
124
133
121
125
115
111
123
132
120
124
114
110
122
131
119
123
113
109
121
130
118
122
112
108
120
129
117
121
111
107
119
128
116
120
110
106
118
127
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
117
126
106
106
96
96
116
125
105
105
95
95
115
124
104
104
94
94
114
123
103
103
93
93
113
122
102
102
92
92
112
121
101
101
91
91
111
120
100
100
90
90
110
119
99
99
89
89
109
118
98
98
88
88
108
117
97
97
87
87
107
116
96
96
86
86
106
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
83
84
85
86
87
88
89
90
91
92
93
94
95
85
84
83
82
81
80
79
78
77
76
75
74
73
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
108
94
82
72
84
98
109
93
81
71
83
99
110
92
80
70
82
100
111
91
79
69
81
101
112
90
78
68
80
102
113
89
77
67
79
103
114
88
76
66
78
104
115
87
75
65
77
105
116
86
74
64
76
106
117
85
73
63
75
107
118
84
72
62
74
108
127
126
125
124
123
122
121
120
119
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
109
110
111
112
113
114
115
116
117
126
84
58
48
74
116
125
85
57
47
75
115
124
86
56
46
76
114
123
87
55
45
77
113
122
88
54
44
78
112
121
89
53
43
79
111
120
90
52
42
80
110
119
91
51
41
81
109
118
92
50
40
82
108
117
93
49
39
83
107
116
94
48
38
84
106
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
35
36
37
38
39
40
41
42
43
44
45
46
47
37
36
35
34
33
32
31
30
29
28
27
26
25
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
116
96
34
24
86
106
117
97
33
23
87
107
118
98
32
22
88
108
119
99
31
21
89
109
120
100
30
20
90
110
121
101
29
19
91
111
122
102
28
18
92
112
123
103
27
17
93
113
124
104
26
16
94
114
125
105
25
15
95
115
126
106
24
14
96
116
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
210
211
212
213
214
215
216
217
218
219
220
221
220
219
218
217
216
215
214
213
212
211
210
209
208
207
206
205
204
203
202
201
200
196
195
194
193
192
191
190
189
188
187
186
185
184
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
207
206
205
204
203
202
201
200
199
198
197
196
209
199
195
183
187
195
208
198
194
182
186
194
207
197
193
181
185
193
206
196
192
180
184
192
205
195
191
179
183
191
204
194
190
178
182
190
203
193
189
177
181
189
202
192
188
176
180
188
201
191
187
175
179
187
200
190
186
174
178
186
199
189
185
173
177
185
198
186
187
188
189
188
187
186
185
184
183
182
181
180
181
182
183
184
185
186
187
188
189
190
191
192
191
190
189
188
187
186
185
184
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
169
170
171
172
173
174
175
176
175
174
173
172
184
197
185
179
183
171
167
171
183
196
184
178
182
170
166
170
182
195
183
177
181
169
165
169
181
194
182
176
180
168
164
168
180
193
181
175
179
167
163
167
179
192
180
174
178
166
162
166
178
191
179
173
177
165
161
165
177
190
189
188
187
186
185
184
183
182
181
180
179
178
172
176
164
160
164
165
166
167
168
169
170
171
172
173
174
175
176
177
171
175
163
159
163
176
170
174
162
158
162
175
169
173
161
157
161
174
168
172
160
156
160
173
167
171
159
155
159
172
166
170
158
154
158
171
165
169
157
153
157
170
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
156
169
155
143
155
168
154
142
154
167
153
141
153
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
167
166
152
140
152
153
154
155
156
155
154
153
152
151
150
149
148
149
150
151
152
158
165
151
139
151
147
158
164
150
138
150
146
157
163
149
137
149
145
156
162
148
136
148
144
155
161
147
135
147
143
154
160
146
134
146
142
153
159
145
133
145
141
152
158
157
156
155
154
153
152
151
150
149
150
151
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
139
138
137
136
137
138
139
140
141
142
143
144
140
151
148
143
131
135
139
150
147
142
130
134
138
149
146
141
129
133
137
148
145
140
128
132
136
147
144
139
127
131
135
146
143
138
126
130
134
145
142
137
125
129
133
144
141
136
124
128
132
143
140
135
123
127
131
142
139
134
122
126
130
141
138
133
121
125
129
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
132
120
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
139
127
131
119
115
127
138
126
130
118
114
126
137
125
129
117
113
125
136
124
128
116
112
124
135
123
127
115
111
123
134
122
126
114
110
122
133
121
125
113
109
121
132
120
124
112
108
120
131
119
123
111
107
119
130
118
122
110
106
118
129
117
121
109
105
117
128
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
116
127
107
107
95
95
115
126
106
106
94
94
114
125
105
105
93
93
113
124
104
104
92
92
112
123
103
103
91
91
111
122
102
102
90
90
110
121
101
101
89
89
109
120
100
100
88
88
108
119
99
99
87
87
107
118
98
98
86
86
106
117
97
97
85
85
105
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
84
85
86
87
88
89
90
91
92
93
94
95
96
84
83
82
81
80
79
78
77
76
75
74
73
72
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
109
95
83
71
83
97
110
94
82
70
82
98
111
93
81
69
81
99
112
92
80
68
80
100
113
91
79
67
79
101
114
90
78
66
78
102
115
89
77
65
77
103
116
88
76
64
76
104
117
87
75
63
75
105
118
86
74
62
74
106
119
85
73
61
73
107
128
127
126
125
124
123
122
121
120
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
108
109
110
111
112
113
114
115
116
127
85
59
47
73
115
126
86
58
46
74
114
125
87
57
45
75
113
124
88
56
44
76
112
123
89
55
43
77
111
122
90
54
42
78
110
121
91
53
41
79
109
120
92
52
40
80
108
119
93
51
39
81
107
118
94
50
38
82
106
117
95
49
37
83
105
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
36
37
38
39
40
41
42
43
44
45
46
47
48
36
35
34
33
32
31
30
29
28
27
26
25
24
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
117
97
35
23
85
105
118
98
34
22
86
106
119
99
33
21
87
107
120
100
32
20
88
108
121
101
31
19
89
109
122
102
30
18
90
110
123
103
29
17
91
111
124
104
28
16
92
112
125
105
27
15
93
113
126
106
26
14
94
114
127
107
25
13
95
115
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
209
210
211
212
213
214
215
216
217
218
219
220
219
218
217
216
215
214
213
212
211
210
209
208
207
206
205
204
203
202
201
200
199
195
194
193
192
191
190
189
188
187
186
185
184
183
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
206
205
204
203
202
201
200
199
198
197
196
195
208
198
194
182
186
194
207
197
193
181
185
193
206
196
192
180
184
192
205
195
191
179
183
191
204
194
190
178
182
190
203
193
189
177
181
189
202
192
188
176
180
188
201
191
187
175
179
187
200
190
186
174
178
186
199
189
185
173
177
185
198
188
184
172
176
184
197
185
186
187
188
187
186
185
184
183
182
181
180
179
180
181
182
183
184
185
186
187
188
189
190
191
190
189
188
187
186
185
184
183
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
170
169
168
167
168
169
170
171
172
173
174
175
174
173
172
171
183
196
184
178
182
170
166
170
182
195
183
177
181
169
165
169
181
194
182
176
180
168
164
168
180
193
181
175
179
167
163
167
179
192
180
174
178
166
162
166
178
191
179
173
177
165
161
165
177
190
178
172
176
164
160
164
176
189
188
187
186
185
184
183
182
181
180
179
178
177
171
175
163
159
163
164
165
166
167
168
169
170
171
172
173
174
175
176
170
174
162
158
162
175
169
173
161
157
161
174
168
172
160
156
160
173
167
171
159
155
159
172
166
170
158
154
158
171
165
169
157
153
157
170
164
168
156
152
156
169
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
155
168
154
142
154
167
153
141
153
166
152
140
152
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
166
165
151
139
151
152
153
154
155
154
153
152
151
150
149
148
147
148
149
150
151
157
164
150
138
150
146
157
163
149
137
149
145
156
162
148
136
148
144
155
161
147
135
147
143
154
160
146
134
146
142
153
159
145
133
145
141
152
158
144
132
144
140
151
157
156
155
154
153
152
151
150
149
148
149
150
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
138
137
136
135
136
137
138
139
140
141
142
143
139
150
147
142
130
134
138
149
146
141
129
133
137
148
145
140
128
132
136
147
144
139
127
131
135
146
143
138
126
130
134
145
142
137
125
129
133
144
141
136
124
128
132
143
140
135
123
127
131
142
139
134
122
126
130
141
138
133
121
125
129
140
137
132
120
124
128
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
131
119
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
138
126
130
118
114
126
137
125
129
117
113
125
136
124
128
116
112
124
135
123
127
115
111
123
134
122
126
114
110
122
133
121
125
113
109
121
132
120
124
112
108
120
131
119
123
111
107
119
130
118
122
110
106
118
129
117
121
109
105
117
128
116
120
108
104
116
127
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
115
126
106
106
94
94
114
125
105
105
93
93
113
124
104
104
92
92
112
123
103
103
91
91
111
122
102
102
90
90
110
121
101
101
89
89
109
120
100
100
88
88
108
119
99
99
87
87
107
118
98
98
86
86
106
117
97
97
85
85
105
116
96
96
84
84
104
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
83
84
85
86
87
88
89
90
91
92
93
94
95
83
82
81
80
79
78
77
76
75
74
73
72
71
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
108
94
82
70
82
96
109
93
81
69
81
97
110
92
80
68
80
98
111
91
79
67
79
99
112
90
78
66
78
100
113
89
77
65
77
101
114
88
76
64
76
102
115
87
75
63
75
103
116
86
74
62
74
104
117
85
73
61
73
105
118
84
72
60
72
106
127
126
125
124
123
122
121
120
119
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
107
108
109
110
111
112
113
114
115
126
84
60
46
72
114
125
85
59
45
73
113
124
86
58
44
74
112
123
87
57
43
75
111
122
88
56
42
76
110
121
89
55
41
77
109
120
90
54
40
78
108
119
91
53
39
79
107
118
92
52
38
80
106
117
93
51
37
81
105
116
94
50
36
82
104
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
37
38
39
40
41
42
43
44
45
46
47
48
49
35
34
33
32
31
30
29
28
27
26
25
24
23
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
116
96
36
22
84
104
117
97
35
21
85
105
118
98
34
20
86
106
119
99
33
19
87
107
120
100
32
18
88
108
121
101
31
17
89
109
122
102
30
16
90
110
123
103
29
15
91
111
124
104
28
14
92
112
125
105
27
13
93
113
126
106
26
12
94
114
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
208
209
210
211
212
213
214
215
216
217
218
219
218
217
216
215
214
213
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
194
193
192
191
190
189
188
187
186
185
184
183
182
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
205
204
203
202
201
200
199
198
197
196
195
194
207
197
193
181
185
193
206
196
192
180
184
192
205
195
191
179
183
191
204
194
190
178
182
190
203
193
189
177
181
189
202
192
188
176
180
188
201
191
187
175
179
187
200
190
186
174
178
186
199
189
185
173
177
185
198
188
184
172
176
184
197
187
183
171
175
183
196
184
185
186
187
186
185
184
183
182
181
180
179
178
179
180
181
182
183
184
185
186
187
188
189
190
189
188
187
186
185
184
183
182
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
169
168
167
166
167
168
169
170
171
172
173
174
173
172
171
170
182
195
183
177
181
169
165
169
181
194
182
176
180
168
164
168
180
193
181
175
179
167
163
167
179
192
180
174
178
166
162
166
178
191
179
173
177
165
161
165
177
190
178
172
176
164
160
164
176
189
177
171
175
163
159
163
175
188
187
186
185
184
183
182
181
180
179
178
177
176
170
174
162
158
162
163
164
165
166
167
168
169
170
171
172
173
174
175
169
173
161
157
161
174
168
172
160
156
160
173
167
171
159
155
159
172
166
170
158
154
158
171
165
169
157
153
157
170
164
168
156
152
156
169
163
167
155
151
155
168
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
154
167
153
141
153
166
152
140
152
165
151
139
151
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
165
164
150
138
150
151
152
153
154
153
152
151
150
149
148
147
146
147
148
149
150
156
163
149
137
149
145
156
162
148
136
148
144
155
161
147
135
147
143
154
160
146
134
146
142
153
159
145
133
145
141
152
158
144
132
144
140
151
157
143
131
143
139
150
156
155
154
153
152
151
150
149
148
147
148
149
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
137
136
135
134
135
136
137
138
139
140
141
142
138
149
146
141
129
133
137
148
145
140
128
132
136
147
144
139
127
131
135
146
143
138
126
130
134
145
142
137
125
129
133
144
141
136
124
128
132
143
140
135
123
127
131
142
139
134
122
126
130
141
138
133
121
125
129
140
137
132
120
124
128
139
136
131
119
123
127
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
130
118
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
137
125
129
117
113
125
136
124
128
116
112
124
135
123
127
115
111
123
134
122
126
114
110
122
133
121
125
113
109
121
132
120
124
112
108
120
131
119
123
111
107
119
130
118
122
110
106
118
129
117
121
109
105
117
128
116
120
108
104
116
127
115
119
107
103
115
126
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
114
125
105
105
93
93
113
124
104
104
92
92
112
123
103
103
91
91
111
122
102
102
90
90
110
121
101
101
89
89
109
120
100
100
88
88
108
119
99
99
87
87
107
118
98
98
86
86
106
117
97
97
85
85
105
116
96
96
84
84
104
115
95
95
83
83
103
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
82
83
84
85
86
87
88
89
90
91
92
93
94
82
81
80
79
78
77
76
75
74
73
72
71
70
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
107
93
81
69
81
95
108
92
80
68
80
96
109
91
79
67
79
97
110
90
78
66
78
98
111
89
77
65
77
99
112
88
76
64
76
100
113
87
75
63
75
101
114
86
74
62
74
102
115
85
73
61
73
103
116
84
72
60
72
104
117
83
71
59
71
105
126
125
124
123
122
121
120
119
118
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
106
107
108
109
110
111
112
113
114
125
83
59
45
71
113
124
84
60
44
72
112
123
85
59
43
73
111
122
86
58
42
74
110
121
87
57
41
75
109
120
88
56
40
76
108
119
89
55
39
77
107
118
90
54
38
78
106
117
91
53
37
79
105
116
92
52
36
80
104
115
93
51
35
81
103
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
38
39
40
41
42
43
44
45
46
47
48
49
50
34
33
32
31
30
29
28
27
26
25
24
23
22
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
115
95
37
21
83
103
116
96
36
20
84
104
117
97
35
19
85
105
118
98
34
18
86
106
119
99
33
17
87
107
120
100
32
16
88
108
121
101
31
15
89
109
122
102
30
14
90
110
123
103
29
13
91
111
124
104
28
12
92
112
125
105
27
11
93
113
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
207
208
209
210
211
212
213
214
215
216
217
218
217
216
215
214
213
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
193
192
191
190
189
188
187
186
185
184
183
182
181
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
204
203
202
201
200
199
198
197
196
195
194
193
206
196
192
180
184
192
205
195
191
179
183
191
204
194
190
178
182
190
203
193
189
177
181
189
202
192
188
176
180
188
201
191
187
175
179
187
200
190
186
174
178
186
199
189
185
173
177
185
198
188
184
172
176
184
197
187
183
171
175
183
196
186
182
170
174
182
195
183
184
185
186
185
184
183
182
181
180
179
178
177
178
179
180
181
182
183
184
185
186
187
188
189
188
187
186
185
184
183
182
181
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
168
167
166
165
166
167
168
169
170
171
172
173
172
171
170
169
181
194
182
176
180
168
164
168
180
193
181
175
179
167
163
167
179
192
180
174
178
166
162
166
178
191
179
173
177
165
161
165
177
190
178
172
176
164
160
164
176
189
177
171
175
163
159
163
175
188
176
170
174
162
158
162
174
187
186
185
184
183
182
181
180
179
178
177
176
175
169
173
161
157
161
162
163
164
165
166
167
168
169
170
171
172
173
174
168
172
160
156
160
173
167
171
159
155
159
172
166
170
158
154
158
171
165
169
157
153
157
170
164
168
156
152
156
169
163
167
155
151
155
168
162
166
154
150
154
167
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
153
166
152
140
152
165
151
139
151
164
150
138
150
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
164
163
149
137
149
150
151
152
153
152
151
150
149
148
147
146
145
146
147
148
149
155
162
148
136
148
144
155
161
147
135
147
143
154
160
146
134
146
142
153
159
145
133
145
141
152
158
144
132
144
140
151
157
143
131
143
139
150
156
142
130
142
138
149
155
154
153
152
151
150
149
148
147
146
147
148
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
136
135
134
133
134
135
136
137
138
139
140
141
137
148
145
140
128
132
136
147
144
139
127
131
135
146
143
138
126
130
134
145
142
137
125
129
133
144
141
136
124
128
132
143
140
135
123
127
131
142
139
134
122
126
130
141
138
133
121
125
129
140
137
132
120
124
128
139
136
131
119
123
127
138
135
130
118
122
126
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
129
117
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
136
124
128
116
112
124
135
123
127
115
111
123
134
122
126
114
110
122
133
121
125
113
109
121
132
120
124
112
108
120
131
119
123
111
107
119
130
118
122
110
106
118
129
117
121
109
105
117
128
116
120
108
104
116
127
115
119
107
103
115
126
114
118
106
102
114
125
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
113
124
104
104
92
92
112
123
103
103
91
91
111
122
102
102
90
90
110
121
101
101
89
89
109
120
100
100
88
88
108
119
99
99
87
87
107
118
98
98
86
86
106
117
97
97
85
85
105
116
96
96
84
84
104
115
95
95
83
83
103
114
94
94
82
82
102
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
81
82
83
84
85
86
87
88
89
90
91
92
93
81
80
79
78
77
76
75
74
73
72
71
70
69
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
106
92
80
68
80
94
107
91
79
67
79
95
108
90
78
66
78
96
109
89
77
65
77
97
110
88
76
64
76
98
111
87
75
63
75
99
112
86
74
62
74
100
113
85
73
61
73
101
114
84
72
60
72
102
115
83
71
59
71
103
116
82
70
58
70
104
125
124
123
122
121
120
119
118
117
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
105
106
107
108
109
110
111
112
113
124
82
58
44
70
112
123
83
59
43
71
111
122
84
60
42
72
110
121
85
59
41
73
109
120
86
58
40
74
108
119
87
57
39
75
107
118
88
56
38
76
106
117
89
55
37
77
105
116
90
54
36
78
104
115
91
53
35
79
103
114
92
52
34
80
102
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
39
40
41
42
43
44
45
46
47
48
49
50
51
33
32
31
30
29
28
27
26
25
24
23
22
21
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
114
94
38
20
82
102
115
95
37
19
83
103
116
96
36
18
84
104
117
97
35
17
85
105
118
98
34
16
86
106
119
99
33
15
87
107
120
100
32
14
88
108
121
101
31
13
89
109
122
102
30
12
90
110
123
103
29
11
91
111
124
104
28
10
92
112
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
206
207
208
209
210
211
212
213
214
215
216
217
216
215
214
213
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
192
191
190
189
188
187
186
185
184
183
182
181
180
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
203
202
201
200
199
198
197
196
195
194
193
192
205
195
191
179
183
191
204
194
190
178
182
190
203
193
189
177
181
189
202
192
188
176
180
188
201
191
187
175
179
187
200
190
186
174
178
186
199
189
185
173
177
185
198
188
184
172
176
184
197
187
183
171
175
183
196
186
182
170
174
182
195
185
181
169
173
181
194
182
183
184
185
184
183
182
181
180
179
178
177
176
177
178
179
180
181
182
183
184
185
186
187
188
187
186
185
184
183
182
181
180
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
171
170
169
168
180
193
181
175
179
167
163
167
179
192
180
174
178
166
162
166
178
191
179
173
177
165
161
165
177
190
178
172
176
164
160
164
176
189
177
171
175
163
159
163
175
188
176
170
174
162
158
162
174
187
175
169
173
161
157
161
173
186
185
184
183
182
181
180
179
178
177
176
175
174
168
172
160
156
160
161
162
163
164
165
166
167
168
169
170
171
172
173
167
171
159
155
159
172
166
170
158
154
158
171
165
169
157
153
157
170
164
168
156
152
156
169
163
167
155
151
155
168
162
166
154
150
154
167
161
165
153
149
153
166
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
152
165
151
139
151
164
150
138
150
163
149
137
149
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
163
162
148
136
148
149
150
151
152
151
150
149
148
147
146
145
144
145
146
147
148
154
161
147
135
147
143
154
160
146
134
146
142
153
159
145
133
145
141
152
158
144
132
144
140
151
157
143
131
143
139
150
156
142
130
142
138
149
155
141
129
141
137
148
154
153
152
151
150
149
148
147
146
145
146
147
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
135
134
133
132
133
134
135
136
137
138
139
140
136
147
144
139
127
131
135
146
143
138
126
130
134
145
142
137
125
129
133
144
141
136
124
128
132
143
140
135
123
127
131
142
139
134
122
126
130
141
138
133
121
125
129
140
137
132
120
124
128
139
136
131
119
123
127
138
135
130
118
122
126
137
134
129
117
121
125
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
128
116
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
135
123
127
115
111
123
134
122
126
114
110
122
133
121
125
113
109
121
132
120
124
112
108
120
131
119
123
111
107
119
130
118
122
110
106
118
129
117
121
109
105
117
128
116
120
108
104
116
127
115
119
107
103
115
126
114
118
106
102
114
125
113
117
105
101
113
124
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
112
123
103
103
91
91
111
122
102
102
90
90
110
121
101
101
89
89
109
120
100
100
88
88
108
119
99
99
87
87
107
118
98
98
86
86
106
117
97
97
85
85
105
116
96
96
84
84
104
115
95
95
83
83
103
114
94
94
82
82
102
113
93
93
81
81
101
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
80
81
82
83
84
85
86
87
88
89
90
91
92
80
79
78
77
76
75
74
73
72
71
70
69
68
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
105
91
79
67
79
93
106
90
78
66
78
94
107
89
77
65
77
95
108
88
76
64
76
96
109
87
75
63
75
97
110
86
74
62
74
98
111
85
73
61
73
99
112
84
72
60
72
100
113
83
71
59
71
101
114
82
70
58
70
102
115
81
69
57
69
103
124
123
122
121
120
119
118
117
116
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
104
105
106
107
108
109
110
111
112
123
81
57
43
69
111
122
82
58
42
70
110
121
83
59
41
71
109
120
84
60
40
72
108
119
85
59
39
73
107
118
86
58
38
74
106
117
87
57
37
75
105
116
88
56
36
76
104
115
89
55
35
77
103
114
90
54
34
78
102
113
91
53
33
79
101
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
40
41
42
43
44
45
46
47
48
49
50
51
52
32
31
30
29
28
27
26
25
24
23
22
21
20
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
113
93
39
19
81
101
114
94
38
18
82
102
115
95
37
17
83
103
116
96
36
16
84
104
117
97
35
15
85
105
118
98
34
14
86
106
119
99
33
13
87
107
120
100
32
12
88
108
121
101
31
11
89
109
122
102
30
10
90
110
123
103
29
9
91
111
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
205
206
207
208
209
210
211
212
213
214
215
216
215
214
213
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
191
190
189
188
187
186
185
184
183
182
181
180
179
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
202
201
200
199
198
197
196
195
194
193
192
191
204
194
190
178
182
190
203
193
189
177
181
189
202
192
188
176
180
188
201
191
187
175
179
187
200
190
186
174
178
186
199
189
185
173
177
185
198
188
184
172
176
184
197
187
183
171
175
183
196
186
182
170
174
182
195
185
181
169
173
181
194
184
180
168
172
180
193
181
182
183
184
183
182
181
180
179
178
177
176
175
176
177
178
179
180
181
182
183
184
185
186
187
186
185
184
183
182
181
180
179
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
170
169
168
167
179
192
180
174
178
166
162
166
178
191
179
173
177
165
161
165
177
190
178
172
176
164
160
164
176
189
177
171
175
163
159
163
175
188
176
170
174
162
158
162
174
187
175
169
173
161
157
161
173
186
174
168
172
160
156
160
172
185
184
183
182
181
180
179
178
177
176
175
174
173
167
171
159
155
159
160
161
162
163
164
165
166
167
168
169
170
171
172
166
170
158
154
158
171
165
169
157
153
157
170
164
168
156
152
156
169
163
167
155
151
155
168
162
166
154
150
154
167
161
165
153
149
153
166
160
164
152
148
152
165
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
151
164
150
138
150
163
149
137
149
162
148
136
148
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
147
135
147
148
149
150
151
150
149
148
147
146
145
144
143
144
145
146
147
153
160
146
134
146
142
153
159
145
133
145
141
152
158
144
132
144
140
151
157
143
131
143
139
150
156
142
130
142
138
149
155
141
129
141
137
148
154
140
128
140
136
147
153
152
151
150
149
148
147
146
145
144
145
146
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
134
133
132
131
132
133
134
135
136
137
138
139
135
146
143
138
126
130
134
145
142
137
125
129
133
144
141
136
124
128
132
143
140
135
123
127
131
142
139
134
122
126
130
141
138
133
121
125
129
140
137
132
120
124
128
139
136
131
119
123
127
138
135
130
118
122
126
137
134
129
117
121
125
136
133
128
116
120
124
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
127
115
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
134
122
126
114
110
122
133
121
125
113
109
121
132
120
124
112
108
120
131
119
123
111
107
119
130
118
122
110
106
118
129
117
121
109
105
117
128
116
120
108
104
116
127
115
119
107
103
115
126
114
118
106
102
114
125
113
117
105
101
113
124
112
116
104
100
112
123
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
111
122
102
102
90
90
110
121
101
101
89
89
109
120
100
100
88
88
108
119
99
99
87
87
107
118
98
98
86
86
106
117
97
97
85
85
105
116
96
96
84
84
104
115
95
95
83
83
103
114
94
94
82
82
102
113
93
93
81
81
101
112
92
92
80
80
100
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
79
80
81
82
83
84
85
86
87
88
89
90
91
79
78
77
76
75
74
73
72
71
70
69
68
67
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
104
90
78
66
78
92
105
89
77
65
77
93
106
88
76
64
76
94
107
87
75
63
75
95
108
86
74
62
74
96
109
85
73
61
73
97
110
84
72
60
72
98
111
83
71
59
71
99
112
82
70
58
70
100
113
81
69
57
69
101
114
80
68
56
68
102
123
122
121
120
119
118
117
116
115
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
103
104
105
106
107
108
109
110
111
122
80
56
42
68
110
121
81
57
41
69
109
120
82
58
40
70
108
119
83
59
39
71
107
118
84
60
38
72
106
117
85
59
37
73
105
116
86
58
36
74
104
115
87
57
35
75
103
114
88
56
34
76
102
113
89
55
33
77
101
112
90
54
32
78
100
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
41
42
43
44
45
46
47
48
49
50
51
52
53
31
30
29
28
27
26
25
24
23
22
21
20
19
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
112
92
40
18
80
100
113
93
39
17
81
101
114
94
38
16
82
102
115
95
37
15
83
103
116
96
36
14
84
104
117
97
35
13
85
105
118
98
34
12
86
106
119
99
33
11
87
107
120
100
32
10
88
108
121
101
31
9
89
109
122
102
30
8
90
110
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
204
205
206
207
208
209
210
211
212
213
214
215
214
213
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
190
189
188
187
186
185
184
183
182
181
180
179
178
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
201
200
199
198
197
196
195
194
193
192
191
190
203
193
189
177
181
189
202
192
188
176
180
188
201
191
187
175
179
187
200
190
186
174
178
186
199
189
185
173
177
185
198
188
184
172
176
184
197
187
183
171
175
183
196
186
182
170
174
182
195
185
181
169
173
181
194
184
180
168
172
180
193
183
179
167
171
179
192
180
181
182
183
182
181
180
179
178
177
176
175
174
175
176
177
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
169
168
167
166
178
191
179
173
177
165
161
165
177
190
178
172
176
164
160
164
176
189
177
171
175
163
159
163
175
188
176
170
174
162
158
162
174
187
175
169
173
161
157
161
173
186
174
168
172
160
156
160
172
185
173
167
171
159
155
159
171
184
183
182
181
180
179
178
177
176
175
174
173
172
166
170
158
154
158
159
160
161
162
163
164
165
166
167
168
169
170
171
165
169
157
153
157
170
164
168
156
152
156
169
163
167
155
151
155
168
162
166
154
150
154
167
161
165
153
149
153
166
160
164
152
148
152
165
159
163
151
147
151
164
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
150
163
149
137
149
162
148
136
148
161
147
135
147
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
161
160
146
134
146
147
148
149
150
149
148
147
146
145
144
143
142
143
144
145
146
152
159
145
133
145
141
152
158
144
132
144
140
151
157
143
131
143
139
150
156
142
130
142
138
149
155
141
129
141
137
148
154
140
128
140
136
147
153
139
127
139
135
146
152
151
150
149
148
147
146
145
144
143
144
145
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
133
132
131
130
131
132
133
134
135
136
137
138
134
145
142
137
125
129
133
144
141
136
124
128
132
143
140
135
123
127
131
142
139
134
122
126
130
141
138
133
121
125
129
140
137
132
120
124
128
139
136
131
119
123
127
138
135
130
118
122
126
137
134
129
117
121
125
136
133
128
116
120
124
135
132
127
115
119
123
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
126
114
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
133
121
125
113
109
121
132
120
124
112
108
120
131
119
123
111
107
119
130
118
122
110
106
118
129
117
121
109
105
117
128
116
120
108
104
116
127
115
119
107
103
115
126
114
118
106
102
114
125
113
117
105
101
113
124
112
116
104
100
112
123
111
115
103
99
111
122
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
110
121
101
101
89
89
109
120
100
100
88
88
108
119
99
99
87
87
107
118
98
98
86
86
106
117
97
97
85
85
105
116
96
96
84
84
104
115
95
95
83
83
103
114
94
94
82
82
102
113
93
93
81
81
101
112
92
92
80
80
100
111
91
91
79
79
99
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
78
79
80
81
82
83
84
85
86
87
88
89
90
78
77
76
75
74
73
72
71
70
69
68
67
66
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
103
89
77
65
77
91
104
88
76
64
76
92
105
87
75
63
75
93
106
86
74
62
74
94
107
85
73
61
73
95
108
84
72
60
72
96
109
83
71
59
71
97
110
82
70
58
70
98
111
81
69
57
69
99
112
80
68
56
68
100
113
79
67
55
67
101
122
121
120
119
118
117
116
115
114
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
102
103
104
105
106
107
108
109
110
121
79
55
41
67
109
120
80
56
40
68
108
119
81
57
39
69
107
118
82
58
38
70
106
117
83
59
37
71
105
116
84
60
36
72
104
115
85
59
35
73
103
114
86
58
34
74
102
113
87
57
33
75
101
112
88
56
32
76
100
111
89
55
31
77
99
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
42
43
44
45
46
47
48
49
50
51
52
53
54
30
29
28
27
26
25
24
23
22
21
20
19
18
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
111
91
41
17
79
99
112
92
40
16
80
100
113
93
39
15
81
101
114
94
38
14
82
102
115
95
37
13
83
103
116
96
36
12
84
104
117
97
35
11
85
105
118
98
34
10
86
106
119
99
33
9
87
107
120
100
32
8
88
108
121
101
31
7
89
109
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
203
204
205
206
207
208
209
210
211
212
213
214
213
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
189
188
187
186
185
184
183
182
181
180
179
178
177
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
200
199
198
197
196
195
194
193
192
191
190
189
202
192
188
176
180
188
201
191
187
175
179
187
200
190
186
174
178
186
199
189
185
173
177
185
198
188
184
172
176
184
197
187
183
171
175
183
196
186
182
170
174
182
195
185
181
169
173
181
194
184
180
168
172
180
193
183
179
167
171
179
192
182
178
166
170
178
191
179
180
181
182
181
180
179
178
177
176
175
174
173
174
175
176
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
168
167
166
165
177
190
178
172
176
164
160
164
176
189
177
171
175
163
159
163
175
188
176
170
174
162
158
162
174
187
175
169
173
161
157
161
173
186
174
168
172
160
156
160
172
185
173
167
171
159
155
159
171
184
172
166
170
158
154
158
170
183
182
181
180
179
178
177
176
175
174
173
172
171
165
169
157
153
157
158
159
160
161
162
163
164
165
166
167
168
169
170
164
168
156
152
156
169
163
167
155
151
155
168
162
166
154
150
154
167
161
165
153
149
153
166
160
164
152
148
152
165
159
163
151
147
151
164
158
162
150
146
150
163
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
149
162
148
136
148
161
147
135
147
160
146
134
146
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
160
159
145
133
145
146
147
148
149
148
147
146
145
144
143
142
141
142
143
144
145
151
158
144
132
144
140
151
157
143
131
143
139
150
156
142
130
142
138
149
155
141
129
141
137
148
154
140
128
140
136
147
153
139
127
139
135
146
152
138
126
138
134
145
151
150
149
148
147
146
145
144
143
142
143
144
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
132
131
130
129
130
131
132
133
134
135
136
137
133
144
141
136
124
128
132
143
140
135
123
127
131
142
139
134
122
126
130
141
138
133
121
125
129
140
137
132
120
124
128
139
136
131
119
123
127
138
135
130
118
122
126
137
134
129
117
121
125
136
133
128
116
120
124
135
132
127
115
119
123
134
131
126
114
118
122
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
125
113
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
132
120
124
112
108
120
131
119
123
111
107
119
130
118
122
110
106
118
129
117
121
109
105
117
128
116
120
108
104
116
127
115
119
107
103
115
126
114
118
106
102
114
125
113
117
105
101
113
124
112
116
104
100
112
123
111
115
103
99
111
122
110
114
102
98
110
121
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
109
120
100
100
88
88
108
119
99
99
87
87
107
118
98
98
86
86
106
117
97
97
85
85
105
116
96
96
84
84
104
115
95
95
83
83
103
114
94
94
82
82
102
113
93
93
81
81
101
112
92
92
80
80
100
111
91
91
79
79
99
110
90
90
78
78
98
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
77
78
79
80
81
82
83
84
85
86
87
88
89
77
76
75
74
73
72
71
70
69
68
67
66
65
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
102
88
76
64
76
90
103
87
75
63
75
91
104
86
74
62
74
92
105
85
73
61
73
93
106
84
72
60
72
94
107
83
71
59
71
95
108
82
70
58
70
96
109
81
69
57
69
97
110
80
68
56
68
98
111
79
67
55
67
99
112
78
66
54
66
100
121
120
119
118
117
116
115
114
113
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
101
102
103
104
105
106
107
108
109
120
78
54
40
66
108
119
79
55
39
67
107
118
80
56
38
68
106
117
81
57
37
69
105
116
82
58
36
70
104
115
83
59
35
71
103
114
84
60
34
72
102
113
85
59
33
73
101
112
86
58
32
74
100
111
87
57
31
75
99
110
88
56
30
76
98
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
43
44
45
46
47
48
49
50
51
52
53
54
55
29
28
27
26
25
24
23
22
21
20
19
18
17
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
110
90
42
16
78
98
111
91
41
15
79
99
112
92
40
14
80
100
113
93
39
13
81
101
114
94
38
12
82
102
115
95
37
11
83
103
116
96
36
10
84
104
117
97
35
9
85
105
118
98
34
8
86
106
119
99
33
7
87
107
120
100
32
6
88
108
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
202
203
204
205
206
207
208
209
210
211
212
213
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
188
187
186
185
184
183
182
181
180
179
178
177
176
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
199
198
197
196
195
194
193
192
191
190
189
188
201
191
187
175
179
187
200
190
186
174
178
186
199
189
185
173
177
185
198
188
184
172
176
184
197
187
183
171
175
183
196
186
182
170
174
182
195
185
181
169
173
181
194
184
180
168
172
180
193
183
179
167
171
179
192
182
178
166
170
178
191
181
177
165
169
177
190
178
179
180
181
180
179
178
177
176
175
174
173
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
167
166
165
164
176
189
177
171
175
163
159
163
175
188
176
170
174
162
158
162
174
187
175
169
173
161
157
161
173
186
174
168
172
160
156
160
172
185
173
167
171
159
155
159
171
184
172
166
170
158
154
158
170
183
171
165
169
157
153
157
169
182
181
180
179
178
177
176
175
174
173
172
171
170
164
168
156
152
156
157
158
159
160
161
162
163
164
165
166
167
168
169
163
167
155
151
155
168
162
166
154
150
154
167
161
165
153
149
153
166
160
164
152
148
152
165
159
163
151
147
151
164
158
162
150
146
150
163
157
161
149
145
149
162
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
148
161
147
135
147
160
146
134
146
159
145
133
145
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
159
158
144
132
144
145
146
147
148
147
146
145
144
143
142
141
140
141
142
143
144
150
157
143
131
143
139
150
156
142
130
142
138
149
155
141
129
141
137
148
154
140
128
140
136
147
153
139
127
139
135
146
152
138
126
138
134
145
151
137
125
137
133
144
150
149
148
147
146
145
144
143
142
141
142
143
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
131
130
129
128
129
130
131
132
133
134
135
136
132
143
140
135
123
127
131
142
139
134
122
126
130
141
138
133
121
125
129
140
137
132
120
124
128
139
136
131
119
123
127
138
135
130
118
122
126
137
134
129
117
121
125
136
133
128
116
120
124
135
132
127
115
119
123
134
131
126
114
118
122
133
130
125
113
117
121
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
124
112
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
131
119
123
111
107
119
130
118
122
110
106
118
129
117
121
109
105
117
128
116
120
108
104
116
127
115
119
107
103
115
126
114
118
106
102
114
125
113
117
105
101
113
124
112
116
104
100
112
123
111
115
103
99
111
122
110
114
102
98
110
121
109
113
101
97
109
120
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
108
119
99
99
87
87
107
118
98
98
86
86
106
117
97
97
85
85
105
116
96
96
84
84
104
115
95
95
83
83
103
114
94
94
82
82
102
113
93
93
81
81
101
112
92
92
80
80
100
111
91
91
79
79
99
110
90
90
78
78
98
109
89
89
77
77
97
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
76
77
78
79
80
81
82
83
84
85
86
87
88
76
75
74
73
72
71
70
69
68
67
66
65
64
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
101
87
75
63
75
89
102
86
74
62
74
90
103
85
73
61
73
91
104
84
72
60
72
92
105
83
71
59
71
93
106
82
70
58
70
94
107
81
69
57
69
95
108
80
68
56
68
96
109
79
67
55
67
97
110
78
66
54
66
98
111
77
65
53
65
99
120
119
118
117
116
115
114
113
112
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
100
101
102
103
104
105
106
107
108
119
77
53
39
65
107
118
78
54
38
66
106
117
79
55
37
67
105
116
80
56
36
68
104
115
81
57
35
69
103
114
82
58
34
70
102
113
83
59
33
71
101
112
84
60
32
72
100
111
85
59
31
73
99
110
86
58
30
74
98
109
87
57
29
75
97
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
44
45
46
47
48
49
50
51
52
53
54
55
56
28
27
26
25
24
23
22
21
20
19
18
17
16
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
109
89
43
15
77
97
110
90
42
14
78
98
111
91
41
13
79
99
112
92
40
12
80
100
113
93
39
11
81
101
114
94
38
10
82
102
115
95
37
9
83
103
116
96
36
8
84
104
117
97
35
7
85
105
118
98
34
6
86
106
119
99
33
5
87
107
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
187
186
185
184
183
182
181
180
179
178
177
176
175
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
198
197
196
195
194
193
192
191
190
189
188
187
200
190
186
174
178
186
199
189
185
173
177
185
198
188
184
172
176
184
197
187
183
171
175
183
196
186
182
170
174
182
195
185
181
169
173
181
194
184
180
168
172
180
193
183
179
167
171
179
192
182
178
166
170
178
191
181
177
165
169
177
190
180
176
164
168
176
189
177
178
179
180
179
178
177
176
175
174
173
172
171
172
173
174
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
166
165
164
163
175
188
176
170
174
162
158
162
174
187
175
169
173
161
157
161
173
186
174
168
172
160
156
160
172
185
173
167
171
159
155
159
171
184
172
166
170
158
154
158
170
183
171
165
169
157
153
157
169
182
170
164
168
156
152
156
168
181
180
179
178
177
176
175
174
173
172
171
170
169
163
167
155
151
155
156
157
158
159
160
161
162
163
164
165
166
167
168
162
166
154
150
154
167
161
165
153
149
153
166
160
164
152
148
152
165
159
163
151
147
151
164
158
162
150
146
150
163
157
161
149
145
149
162
156
160
148
144
148
161
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
147
160
146
134
146
159
145
133
145
158
144
132
144
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
158
157
143
131
143
144
145
146
147
146
145
144
143
142
141
140
139
140
141
142
143
149
156
142
130
142
138
149
155
141
129
141
137
148
154
140
128
140
136
147
153
139
127
139
135
146
152
138
126
138
134
145
151
137
125
137
133
144
150
136
124
136
132
143
149
148
147
146
145
144
143
142
141
140
141
142
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
130
129
128
127
128
129
130
131
132
133
134
135
131
142
139
134
122
126
130
141
138
133
121
125
129
140
137
132
120
124
128
139
136
131
119
123
127
138
135
130
118
122
126
137
134
129
117
121
125
136
133
128
116
120
124
135
132
127
115
119
123
134
131
126
114
118
122
133
130
125
113
117
121
132
129
124
112
116
120
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
123
111
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
130
118
122
110
106
118
129
117
121
109
105
117
128
116
120
108
104
116
127
115
119
107
103
115
126
114
118
106
102
114
125
113
117
105
101
113
124
112
116
104
100
112
123
111
115
103
99
111
122
110
114
102
98
110
121
109
113
101
97
109
120
108
112
100
96
108
119
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
107
118
98
98
86
86
106
117
97
97
85
85
105
116
96
96
84
84
104
115
95
95
83
83
103
114
94
94
82
82
102
113
93
93
81
81
101
112
92
92
80
80
100
111
91
91
79
79
99
110
90
90
78
78
98
109
89
89
77
77
97
108
88
88
76
76
96
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
75
76
77
78
79
80
81
82
83
84
85
86
87
75
74
73
72
71
70
69
68
67
66
65
64
63
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
100
86
74
62
74
88
101
85
73
61
73
89
102
84
72
60
72
90
103
83
71
59
71
91
104
82
70
58
70
92
105
81
69
57
69
93
106
80
68
56
68
94
107
79
67
55
67
95
108
78
66
54
66
96
109
77
65
53
65
97
110
76
64
52
64
98
119
118
117
116
115
114
113
112
111
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
99
100
101
102
103
104
105
106
107
118
76
52
38
64
106
117
77
53
37
65
105
116
78
54
36
66
104
115
79
55
35
67
103
114
80
56
34
68
102
113
81
57
33
69
101
112
82
58
32
70
100
111
83
59
31
71
99
110
84
60
30
72
98
109
85
59
29
73
97
108
86
58
28
74
96
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
45
46
47
48
49
50
51
52
53
54
55
56
57
27
26
25
24
23
22
21
20
19
18
17
16
15
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
108
88
44
14
76
96
109
89
43
13
77
97
110
90
42
12
78
98
111
91
41
11
79
99
112
92
40
10
80
100
113
93
39
9
81
101
114
94
38
8
82
102
115
95
37
7
83
103
116
96
36
6
84
104
117
97
35
5
85
105
118
98
34
4
86
106
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
200
201
202
203
204
205
206
207
208
209
210
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
186
185
184
183
182
181
180
179
178
177
176
175
174
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
197
196
195
194
193
192
191
190
189
188
187
186
199
189
185
173
177
185
198
188
184
172
176
184
197
187
183
171
175
183
196
186
182
170
174
182
195
185
181
169
173
181
194
184
180
168
172
180
193
183
179
167
171
179
192
182
178
166
170
178
191
181
177
165
169
177
190
180
176
164
168
176
189
179
175
163
167
175
188
176
177
178
179
178
177
176
175
174
173
172
171
170
171
172
173
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
165
164
163
162
174
187
175
169
173
161
157
161
173
186
174
168
172
160
156
160
172
185
173
167
171
159
155
159
171
184
172
166
170
158
154
158
170
183
171
165
169
157
153
157
169
182
170
164
168
156
152
156
168
181
169
163
167
155
151
155
167
180
179
178
177
176
175
174
173
172
171
170
169
168
162
166
154
150
154
155
156
157
158
159
160
161
162
163
164
165
166
167
161
165
153
149
153
166
160
164
152
148
152
165
159
163
151
147
151
164
158
162
150
146
150
163
157
161
149
145
149
162
156
160
148
144
148
161
155
159
147
143
147
160
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
146
159
145
133
145
158
144
132
144
157
143
131
143
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
157
156
142
130
142
143
144
145
146
145
144
143
142
141
140
139
138
139
140
141
142
148
155
141
129
141
137
148
154
140
128
140
136
147
153
139
127
139
135
146
152
138
126
138
134
145
151
137
125
137
133
144
150
136
124
136
132
143
149
135
123
135
131
142
148
147
146
145
144
143
142
141
140
139
140
141
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
129
128
127
126
127
128
129
130
131
132
133
134
130
141
138
133
121
125
129
140
137
132
120
124
128
139
136
131
119
123
127
138
135
130
118
122
126
137
134
129
117
121
125
136
133
128
116
120
124
135
132
127
115
119
123
134
131
126
114
118
122
133
130
125
113
117
121
132
129
124
112
116
120
131
128
123
111
115
119
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
122
110
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
129
117
121
109
105
117
128
116
120
108
104
116
127
115
119
107
103
115
126
114
118
106
102
114
125
113
117
105
101
113
124
112
116
104
100
112
123
111
115
103
99
111
122
110
114
102
98
110
121
109
113
101
97
109
120
108
112
100
96
108
119
107
111
99
95
107
118
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
106
117
97
97
85
85
105
116
96
96
84
84
104
115
95
95
83
83
103
114
94
94
82
82
102
113
93
93
81
81
101
112
92
92
80
80
100
111
91
91
79
79
99
110
90
90
78
78
98
109
89
89
77
77
97
108
88
88
76
76
96
107
87
87
75
75
95
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
74
75
76
77
78
79
80
81
82
83
84
85
86
74
73
72
71
70
69
68
67
66
65
64
63
62
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
99
85
73
61
73
87
100
84
72
60
72
88
101
83
71
59
71
89
102
82
70
58
70
90
103
81
69
57
69
91
104
80
68
56
68
92
105
79
67
55
67
93
106
78
66
54
66
94
107
77
65
53
65
95
108
76
64
52
64
96
109
75
63
51
63
97
118
117
116
115
114
113
112
111
110
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
98
99
100
101
102
103
104
105
106
117
75
51
37
63
105
116
76
52
36
64
104
115
77
53
35
65
103
114
78
54
34
66
102
113
79
55
33
67
101
112
80
56
32
68
100
111
81
57
31
69
99
110
82
58
30
70
98
109
83
59
29
71
97
108
84
60
28
72
96
107
85
59
27
73
95
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
46
47
48
49
50
51
52
53
54
55
56
57
58
26
25
24
23
22
21
20
19
18
17
16
15
14
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
107
87
45
13
75
95
108
88
44
12
76
96
109
89
43
11
77
97
110
90
42
10
78
98
111
91
41
9
79
99
112
92
40
8
80
100
113
93
39
7
81
101
114
94
38
6
82
102
115
95
37
5
83
103
116
96
36
4
84
104
117
97
35
3
85
105
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
199
200
201
202
203
204
205
206
207
208
209
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
185
184
183
182
181
180
179
178
177
176
175
174
173
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
196
195
194
193
192
191
190
189
188
187
186
185
198
188
184
172
176
184
197
187
183
171
175
183
196
186
182
170
174
182
195
185
181
169
173
181
194
184
180
168
172
180
193
183
179
167
171
179
192
182
178
166
170
178
191
181
177
165
169
177
190
180
176
164
168
176
189
179
175
163
167
175
188
178
174
162
166
174
187
175
176
177
178
177
176
175
174
173
172
171
170
169
170
171
172
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
164
163
162
161
173
186
174
168
172
160
156
160
172
185
173
167
171
159
155
159
171
184
172
166
170
158
154
158
170
183
171
165
169
157
153
157
169
182
170
164
168
156
152
156
168
181
169
163
167
155
151
155
167
180
168
162
166
154
150
154
166
179
178
177
176
175
174
173
172
171
170
169
168
167
161
165
153
149
153
154
155
156
157
158
159
160
161
162
163
164
165
166
160
164
152
148
152
165
159
163
151
147
151
164
158
162
150
146
150
163
157
161
149
145
149
162
156
160
148
144
148
161
155
159
147
143
147
160
154
158
146
142
146
159
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
145
158
144
132
144
157
143
131
143
156
142
130
142
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
156
155
141
129
141
142
143
144
145
144
143
142
141
140
139
138
137
138
139
140
141
147
154
140
128
140
136
147
153
139
127
139
135
146
152
138
126
138
134
145
151
137
125
137
133
144
150
136
124
136
132
143
149
135
123
135
131
142
148
134
122
134
130
141
147
146
145
144
143
142
141
140
139
138
139
140
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
128
127
126
125
126
127
128
129
130
131
132
133
129
140
137
132
120
124
128
139
136
131
119
123
127
138
135
130
118
122
126
137
134
129
117
121
125
136
133
128
116
120
124
135
132
127
115
119
123
134
131
126
114
118
122
133
130
125
113
117
121
132
129
124
112
116
120
131
128
123
111
115
119
130
127
122
110
114
118
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
121
109
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
128
116
120
108
104
116
127
115
119
107
103
115
126
114
118
106
102
114
125
113
117
105
101
113
124
112
116
104
100
112
123
111
115
103
99
111
122
110
114
102
98
110
121
109
113
101
97
109
120
108
112
100
96
108
119
107
111
99
95
107
118
106
110
98
94
106
117
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
105
116
96
96
84
84
104
115
95
95
83
83
103
114
94
94
82
82
102
113
93
93
81
81
101
112
92
92
80
80
100
111
91
91
79
79
99
110
90
90
78
78
98
109
89
89
77
77
97
108
88
88
76
76
96
107
87
87
75
75
95
106
86
86
74
74
94
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
73
74
75
76
77
78
79
80
81
82
83
84
85
73
72
71
70
69
68
67
66
65
64
63
62
61
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
98
84
72
60
72
86
99
83
71
59
71
87
100
82
70
58
70
88
101
81
69
57
69
89
102
80
68
56
68
90
103
79
67
55
67
91
104
78
66
54
66
92
105
77
65
53
65
93
106
76
64
52
64
94
107
75
63
51
63
95
108
74
62
50
62
96
117
116
115
114
113
112
111
110
109
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
97
98
99
100
101
102
103
104
105
116
74
50
36
62
104
115
75
51
35
63
103
114
76
52
34
64
102
113
77
53
33
65
101
112
78
54
32
66
100
111
79
55
31
67
99
110
80
56
30
68
98
109
81
57
29
69
97
108
82
58
28
70
96
107
83
59
27
71
95
106
84
60
26
72
94
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
47
48
49
50
51
52
53
54
55
56
57
58
59
25
24
23
22
21
20
19
18
17
16
15
14
13
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
106
86
46
12
74
94
107
87
45
11
75
95
108
88
44
10
76
96
109
89
43
9
77
97
110
90
42
8
78
98
111
91
41
7
79
99
112
92
40
6
80
100
113
93
39
5
81
101
114
94
38
4
82
102
115
95
37
3
83
103
116
96
36
2
84
104
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
198
199
200
201
202
203
204
205
206
207
208
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
184
183
182
181
180
179
178
177
176
175
174
173
172
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
195
194
193
192
191
190
189
188
187
186
185
184
197
187
183
171
175
183
196
186
182
170
174
182
195
185
181
169
173
181
194
184
180
168
172
180
193
183
179
167
171
179
192
182
178
166
170
178
191
181
177
165
169
177
190
180
176
164
168
176
189
179
175
163
167
175
188
178
174
162
166
174
187
177
173
161
165
173
186
174
175
176
177
176
175
174
173
172
171
170
169
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
163
162
161
160
172
185
173
167
171
159
155
159
171
184
172
166
170
158
154
158
170
183
171
165
169
157
153
157
169
182
170
164
168
156
152
156
168
181
169
163
167
155
151
155
167
180
168
162
166
154
150
154
166
179
167
161
165
153
149
153
165
178
177
176
175
174
173
172
171
170
169
168
167
166
160
164
152
148
152
153
154
155
156
157
158
159
160
161
162
163
164
165
159
163
151
147
151
164
158
162
150
146
150
163
157
161
149
145
149
162
156
160
148
144
148
161
155
159
147
143
147
160
154
158
146
142
146
159
153
157
145
141
145
158
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
144
157
143
131
143
156
142
130
142
155
141
129
141
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
155
154
140
128
140
141
142
143
144
143
142
141
140
139
138
137
136
137
138
139
140
146
153
139
127
139
135
146
152
138
126
138
134
145
151
137
125
137
133
144
150
136
124
136
132
143
149
135
123
135
131
142
148
134
122
134
130
141
147
133
121
133
129
140
146
145
144
143
142
141
140
139
138
137
138
139
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
127
126
125
124
125
126
127
128
129
130
131
132
128
139
136
131
119
123
127
138
135
130
118
122
126
137
134
129
117
121
125
136
133
128
116
120
124
135
132
127
115
119
123
134
131
126
114
118
122
133
130
125
113
117
121
132
129
124
112
116
120
131
128
123
111
115
119
130
127
122
110
114
118
129
126
121
109
113
117
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
120
108
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
127
115
119
107
103
115
126
114
118
106
102
114
125
113
117
105
101
113
124
112
116
104
100
112
123
111
115
103
99
111
122
110
114
102
98
110
121
109
113
101
97
109
120
108
112
100
96
108
119
107
111
99
95
107
118
106
110
98
94
106
117
105
109
97
93
105
116
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
104
115
95
95
83
83
103
114
94
94
82
82
102
113
93
93
81
81
101
112
92
92
80
80
100
111
91
91
79
79
99
110
90
90
78
78
98
109
89
89
77
77
97
108
88
88
76
76
96
107
87
87
75
75
95
106
86
86
74
74
94
105
85
85
73
73
93
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
72
73
74
75
76
77
78
79
80
81
82
83
84
72
71
70
69
68
67
66
65
64
63
62
61
60
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
97
83
71
59
71
85
98
82
70
58
70
86
99
81
69
57
69
87
100
80
68
56
68
88
101
79
67
55
67
89
102
78
66
54
66
90
103
77
65
53
65
91
104
76
64
52
64
92
105
75
63
51
63
93
106
74
62
50
62
94
107
73
61
49
61
95
116
115
114
113
112
111
110
109
108
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
96
97
98
99
100
101
102
103
104
115
73
49
35
61
103
114
74
50
34
62
102
113
75
51
33
63
101
112
76
52
32
64
100
111
77
53
31
65
99
110
78
54
30
66
98
109
79
55
29
67
97
108
80
56
28
68
96
107
81
57
27
69
95
106
82
58
26
70
94
105
83
59
25
71
93
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
48
49
50
51
52
53
54
55
56
57
58
59
60
24
23
22
21
20
19
18
17
16
15
14
13
12
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
105
85
47
11
73
93
106
86
46
10
74
94
107
87
45
9
75
95
108
88
44
8
76
96
109
89
43
7
77
97
110
90
42
6
78
98
111
91
41
5
79
99
112
92
40
4
80
100
113
93
39
3
81
101
114
94
38
2
82
102
115
95
37
1
83
103
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
165
166
167
168
169
170
171
172
173
174
175
176
177
178
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
148
147
146
145
144
143
142
141
140
139
138
137
136
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
164
159
147
135
139
147
163
158
146
134
138
146
162
157
145
133
137
145
161
156
144
132
136
144
160
155
143
131
135
143
159
154
142
130
134
142
158
153
141
129
133
141
157
152
140
128
132
140
156
151
139
127
131
139
155
150
138
126
130
138
154
149
137
125
129
137
153
141
142
143
144
145
146
147
148
149
150
151
152
153
154
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
127
126
125
124
136
152
140
154
135
123
119
123
135
151
139
154
134
122
118
122
134
150
138
153
133
121
117
121
133
149
137
152
132
120
116
120
132
148
136
151
131
119
115
119
131
147
135
150
130
118
114
118
130
146
134
149
129
117
113
117
129
145
144
143
142
141
140
139
138
137
136
135
134
133
148
128
116
112
116
117
118
119
120
121
122
123
124
125
126
127
128
132
147
127
115
111
115
131
146
126
114
110
114
130
145
125
113
109
113
129
144
124
112
108
112
128
143
123
111
107
111
127
142
122
110
106
110
126
141
121
109
105
109
125
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
108
124
131
95
107
123
130
94
106
122
129
93
105
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
128
92
104
105
106
107
108
107
106
105
104
103
102
101
100
101
102
103
104
110
122
127
91
103
99
111
123
126
90
102
98
112
124
125
89
101
97
113
125
124
88
100
96
114
126
123
87
99
95
115
127
122
86
98
94
116
128
121
85
97
93
117
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
91
90
89
88
89
90
91
92
93
94
95
96
92
118
132
119
83
87
91
119
133
118
82
86
90
120
134
117
81
85
89
121
135
116
80
84
88
122
136
115
79
83
87
123
137
114
78
82
86
124
138
113
77
81
85
125
139
112
76
80
84
126
140
111
75
79
83
127
139
110
74
78
82
128
138
109
73
77
81
129
130
131
132
133
134
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
108
72
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
130
127
107
71
67
79
131
126
106
70
66
78
132
125
105
69
65
77
133
124
104
68
64
76
134
123
103
67
63
75
134
122
102
66
62
74
133
121
101
65
61
73
132
120
100
64
60
72
131
119
99
63
59
71
130
118
98
62
58
70
129
117
97
61
57
69
128
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
68
127
107
85
71
47
67
126
106
86
70
46
66
125
105
87
69
45
65
124
104
88
68
44
64
123
103
89
67
43
63
122
102
90
66
42
62
121
101
91
65
41
61
120
100
92
64
40
60
119
99
93
63
39
59
118
98
94
62
38
58
117
97
95
61
37
57
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
84
85
86
87
88
89
90
91
92
93
94
95
96
60
59
58
57
56
55
54
53
52
51
50
49
48
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
109
95
83
47
35
49
110
94
82
46
34
50
111
93
81
45
33
51
112
92
80
44
32
52
113
91
79
43
31
53
114
90
78
42
30
54
115
89
77
41
29
55
116
88
76
40
28
56
117
87
75
39
27
55
118
86
74
38
26
54
119
85
73
37
25
53
128
127
126
125
124
123
122
121
120
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
52
51
50
49
48
47
46
45
44
127
85
61
49
23
43
126
86
62
50
22
42
125
87
63
51
21
41
124
88
64
52
20
40
123
89
65
53
19
39
122
90
66
54
18
38
121
91
67
55
17
37
120
92
68
56
16
36
119
93
69
57
15
35
118
94
70
58
14
34
117
95
71
59
13
33
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
84
83
82
81
80
79
78
77
76
75
74
73
72
60
61
62
63
64
65
66
67
68
69
70
71
72
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
117
97
85
73
11
31
118
98
86
74
10
30
119
99
87
75
9
29
120
100
88
76
8
28
121
101
89
77
7
27
122
102
90
78
6
26
123
103
91
79
5
25
124
104
92
80
4
24
125
105
93
81
3
23
126
106
94
82
2
22
127
107
95
83
1
21
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
0
166
167
168
169
170
171
172
173
174
175
176
177
178
179
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
149
148
147
146
145
144
143
142
141
140
139
138
137
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
165
160
148
136
140
148
164
159
147
135
139
147
163
158
146
134
138
146
162
157
145
133
137
145
161
156
144
132
136
144
160
155
143
131
135
143
159
154
142
130
134
142
158
153
141
129
133
141
157
152
140
128
132
140
156
151
139
127
131
139
155
150
138
126
130
138
154
142
143
144
145
146
147
148
149
150
151
152
153
154
155
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
128
127
126
125
137
153
141
155
136
124
120
124
136
152
140
155
135
123
119
123
135
151
139
154
134
122
118
122
134
150
138
153
133
121
117
121
133
149
137
152
132
120
116
120
132
148
136
151
131
119
115
119
131
147
135
150
130
118
114
118
130
146
145
144
143
142
141
140
139
138
137
136
135
134
149
129
117
113
117
118
119
120
121
122
123
124
125
126
127
128
129
133
148
128
116
112
116
132
147
127
115
111
115
131
146
126
114
110
114
130
145
125
113
109
113
129
144
124
112
108
112
128
143
123
111
107
111
127
142
122
110
106
110
126
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
109
125
132
96
108
124
131
95
107
123
130
94
106
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
129
93
105
106
107
108
109
108
107
106
105
104
103
102
101
102
103
104
105
111
123
128
92
104
100
112
124
127
91
103
99
113
125
126
90
102
98
114
126
125
89
101
97
115
127
124
88
100
96
116
128
123
87
99
95
117
129
122
86
98
94
118
130
131
132
133
134
135
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
92
91
90
89
90
91
92
93
94
95
96
97
93
119
133
120
84
88
92
120
134
119
83
87
91
121
135
118
82
86
90
122
136
117
81
85
89
123
137
116
80
84
88
124
138
115
79
83
87
125
139
114
78
82
86
126
140
113
77
81
85
127
141
112
76
80
84
128
140
111
75
79
83
129
139
110
74
78
82
130
131
132
133
134
135
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
109
73
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
131
128
108
72
68
80
132
127
107
71
67
79
133
126
106
70
66
78
134
125
105
69
65
77
135
124
104
68
64
76
135
123
103
67
63
75
134
122
102
66
62
74
133
121
101
65
61
73
132
120
100
64
60
72
131
119
99
63
59
71
130
118
98
62
58
70
129
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
69
128
108
86
72
48
68
127
107
87
71
47
67
126
106
88
70
46
66
125
105
89
69
45
65
124
104
90
68
44
64
123
103
91
67
43
63
122
102
92
66
42
62
121
101
93
65
41
61
120
100
94
64
40
60
119
99
95
63
39
59
118
98
96
62
38
58
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
85
86
87
88
89
90
91
92
93
94
95
96
97
61
60
59
58
57
56
55
54
53
52
51
50
49
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
110
96
84
48
36
50
111
95
83
47
35
51
112
94
82
46
34
52
113
93
81
45
33
53
114
92
80
44
32
54
115
91
79
43
31
55
116
90
78
42
30
56
117
89
77
41
29
55
118
88
76
40
28
54
119
87
75
39
27
53
120
86
74
38
26
52
129
128
127
126
125
124
123
122
121
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
51
50
49
48
47
46
45
44
43
128
86
62
50
24
42
127
87
63
51
23
41
126
88
64
52
22
40
125
89
65
53
21
39
124
90
66
54
20
38
123
91
67
55
19
37
122
92
68
56
18
36
121
93
69
57
17
35
120
94
70
58
16
34
119
95
71
59
15
33
118
96
72
60
14
32
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
85
84
83
82
81
80
79
78
77
76
75
74
73
61
62
63
64
65
66
67
68
69
70
71
72
73
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
31
118
98
86
74
12
30
119
99
87
75
11
29
120
100
88
76
10
28
121
101
89
77
9
27
122
102
90
78
8
26
123
103
91
79
7
25
124
104
92
80
6
24
125
105
93
81
5
23
126
106
94
82
4
22
127
107
95
83
3
21
128
108
96
84
2
20
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
1
0
167
168
169
170
171
172
173
174
175
176
177
178
179
180
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
150
149
148
147
146
145
144
143
142
141
140
139
138
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
166
161
149
137
141
149
165
160
148
136
140
148
164
159
147
135
139
147
163
158
146
134
138
146
162
157
145
133
137
145
161
156
144
132
136
144
160
155
143
131
135
143
159
154
142
130
134
142
158
153
141
129
133
141
157
152
140
128
132
140
156
151
139
127
131
139
155
143
144
145
146
147
148
149
150
151
152
153
154
155
156
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
129
128
127
126
138
154
142
156
137
125
121
125
137
153
141
156
136
124
120
124
136
152
140
155
135
123
119
123
135
151
139
154
134
122
118
122
134
150
138
153
133
121
117
121
133
149
137
152
132
120
116
120
132
148
136
151
131
119
115
119
131
147
146
145
144
143
142
141
140
139
138
137
136
135
150
130
118
114
118
119
120
121
122
123
124
125
126
127
128
129
130
134
149
129
117
113
117
133
148
128
116
112
116
132
147
127
115
111
115
131
146
126
114
110
114
130
145
125
113
109
113
129
144
124
112
108
112
128
143
123
111
107
111
127
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
110
126
133
97
109
125
132
96
108
124
131
95
107
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
130
94
106
107
108
109
110
109
108
107
106
105
104
103
102
103
104
105
106
112
124
129
93
105
101
113
125
128
92
104
100
114
126
127
91
103
99
115
127
126
90
102
98
116
128
125
89
101
97
117
129
124
88
100
96
118
130
123
87
99
95
119
131
132
133
134
135
136
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
93
92
91
90
91
92
93
94
95
96
97
98
94
120
134
121
85
89
93
121
135
120
84
88
92
122
136
119
83
87
91
123
137
118
82
86
90
124
138
117
81
85
89
125
139
116
80
84
88
126
140
115
79
83
87
127
141
114
78
82
86
128
142
113
77
81
85
129
141
112
76
80
84
130
140
111
75
79
83
131
132
133
134
135
136
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
110
74
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
132
129
109
73
69
81
133
128
108
72
68
80
134
127
107
71
67
79
135
126
106
70
66
78
136
125
105
69
65
77
136
124
104
68
64
76
135
123
103
67
63
75
134
122
102
66
62
74
133
121
101
65
61
73
132
120
100
64
60
72
131
119
99
63
59
71
130
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
70
129
109
87
73
49
69
128
108
88
72
48
68
127
107
89
71
47
67
126
106
90
70
46
66
125
105
91
69
45
65
124
104
92
68
44
64
123
103
93
67
43
63
122
102
94
66
42
62
121
101
95
65
41
61
120
100
96
64
40
60
119
99
97
63
39
59
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
86
87
88
89
90
91
92
93
94
95
96
97
98
62
61
60
59
58
57
56
55
54
53
52
51
50
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
111
97
85
49
37
51
112
96
84
48
36
52
113
95
83
47
35
53
114
94
82
46
34
54
115
93
81
45
33
55
116
92
80
44
32
56
117
91
79
43
31
55
118
90
78
42
30
54
119
89
77
41
29
53
120
88
76
40
28
52
121
87
75
39
27
51
130
129
128
127
126
125
124
123
122
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
50
49
48
47
46
45
44
43
42
129
87
63
51
25
41
128
88
64
52
24
40
127
89
65
53
23
39
126
90
66
54
22
38
125
91
67
55
21
37
124
92
68
56
20
36
123
93
69
57
19
35
122
94
70
58
18
34
121
95
71
59
17
33
120
96
72
60
16
32
119
97
73
61
15
31
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
86
85
84
83
82
81
80
79
78
77
76
75
74
62
63
64
65
66
67
68
69
70
71
72
73
74
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
31
30
119
99
87
75
13
29
120
100
88
76
12
28
121
101
89
77
11
27
122
102
90
78
10
26
123
103
91
79
9
25
124
104
92
80
8
24
125
105
93
81
7
23
126
106
94
82
6
22
127
107
95
83
5
21
128
108
96
84
4
20
129
109
97
85
3
19
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
2
1
0
168
169
170
171
172
173
174
175
176
177
178
179
180
181
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
151
150
149
148
147
146
145
144
143
142
141
140
139
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
167
162
150
138
142
150
166
161
149
137
141
149
165
160
148
136
140
148
164
159
147
135
139
147
163
158
146
134
138
146
162
157
145
133
137
145
161
156
144
132
136
144
160
155
143
131
135
143
159
154
142
130
134
142
158
153
141
129
133
141
157
152
140
128
132
140
156
144
145
146
147
148
149
150
151
152
153
154
155
156
157
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
130
129
128
127
139
155
143
157
138
126
122
126
138
154
142
157
137
125
121
125
137
153
141
156
136
124
120
124
136
152
140
155
135
123
119
123
135
151
139
154
134
122
118
122
134
150
138
153
133
121
117
121
133
149
137
152
132
120
116
120
132
148
147
146
145
144
143
142
141
140
139
138
137
136
151
131
119
115
119
120
121
122
123
124
125
126
127
128
129
130
131
135
150
130
118
114
118
134
149
129
117
113
117
133
148
128
116
112
116
132
147
127
115
111
115
131
146
126
114
110
114
130
145
125
113
109
113
129
144
124
112
108
112
128
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
111
127
134
98
110
126
133
97
109
125
132
96
108
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
131
95
107
108
109
110
111
110
109
108
107
106
105
104
103
104
105
106
107
113
125
130
94
106
102
114
126
129
93
105
101
115
127
128
92
104
100
116
128
127
91
103
99
117
129
126
90
102
98
118
130
125
89
101
97
119
131
124
88
100
96
120
132
133
134
135
136
137
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
94
93
92
91
92
93
94
95
96
97
98
99
95
121
135
122
86
90
94
122
136
121
85
89
93
123
137
120
84
88
92
124
138
119
83
87
91
125
139
118
82
86
90
126
140
117
81
85
89
127
141
116
80
84
88
128
142
115
79
83
87
129
143
114
78
82
86
130
142
113
77
81
85
131
141
112
76
80
84
132
133
134
135
136
137
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
111
75
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
133
130
110
74
70
82
134
129
109
73
69
81
135
128
108
72
68
80
136
127
107
71
67
79
137
126
106
70
66
78
137
125
105
69
65
77
136
124
104
68
64
76
135
123
103
67
63
75
134
122
102
66
62
74
133
121
101
65
61
73
132
120
100
64
60
72
131
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
71
130
110
88
74
50
70
129
109
89
73
49
69
128
108
90
72
48
68
127
107
91
71
47
67
126
106
92
70
46
66
125
105
93
69
45
65
124
104
94
68
44
64
123
103
95
67
43
63
122
102
96
66
42
62
121
101
97
65
41
61
120
100
98
64
40
60
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
87
88
89
90
91
92
93
94
95
96
97
98
99
63
62
61
60
59
58
57
56
55
54
53
52
51
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
112
98
86
50
38
52
113
97
85
49
37
53
114
96
84
48
36
54
115
95
83
47
35
55
116
94
82
46
34
56
117
93
81
45
33
55
118
92
80
44
32
54
119
91
79
43
31
53
120
90
78
42
30
52
121
89
77
41
29
51
122
88
76
40
28
50
131
130
129
128
127
126
125
124
123
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
49
48
47
46
45
44
43
42
41
130
88
64
52
26
40
129
89
65
53
25
39
128
90
66
54
24
38
127
91
67
55
23
37
126
92
68
56
22
36
125
93
69
57
21
35
124
94
70
58
20
34
123
95
71
59
19
33
122
96
72
60
18
32
121
97
73
61
17
31
120
98
74
62
16
30
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
87
86
85
84
83
82
81
80
79
78
77
76
75
63
64
65
66
67
68
69
70
71
72
73
74
75
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
31
30
29
120
100
88
76
14
28
121
101
89
77
13
27
122
102
90
78
12
26
123
103
91
79
11
25
124
104
92
80
10
24
125
105
93
81
9
23
126
106
94
82
8
22
127
107
95
83
7
21
128
108
96
84
6
20
129
109
97
85
5
19
130
110
98
86
4
18
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
3
2
1
0
169
170
171
172
173
174
175
176
177
178
179
180
181
182
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
152
151
150
149
148
147
146
145
144
143
142
141
140
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
168
163
151
139
143
151
167
162
150
138
142
150
166
161
149
137
141
149
165
160
148
136
140
148
164
159
147
135
139
147
163
158
146
134
138
146
162
157
145
133
137
145
161
156
144
132
136
144
160
155
143
131
135
143
159
154
142
130
134
142
158
153
141
129
133
141
157
145
146
147
148
149
150
151
152
153
154
155
156
157
158
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
131
130
129
128
140
156
144
158
139
127
123
127
139
155
143
158
138
126
122
126
138
154
142
157
137
125
121
125
137
153
141
156
136
124
120
124
136
152
140
155
135
123
119
123
135
151
139
154
134
122
118
122
134
150
138
153
133
121
117
121
133
149
148
147
146
145
144
143
142
141
140
139
138
137
152
132
120
116
120
121
122
123
124
125
126
127
128
129
130
131
132
136
151
131
119
115
119
135
150
130
118
114
118
134
149
129
117
113
117
133
148
128
116
112
116
132
147
127
115
111
115
131
146
126
114
110
114
130
145
125
113
109
113
129
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
112
128
135
99
111
127
134
98
110
126
133
97
109
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
132
96
108
109
110
111
112
111
110
109
108
107
106
105
104
105
106
107
108
114
126
131
95
107
103
115
127
130
94
106
102
116
128
129
93
105
101
117
129
128
92
104
100
118
130
127
91
103
99
119
131
126
90
102
98
120
132
125
89
101
97
121
133
134
135
136
137
138
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
95
94
93
92
93
94
95
96
97
98
99
100
96
122
136
123
87
91
95
123
137
122
86
90
94
124
138
121
85
89
93
125
139
120
84
88
92
126
140
119
83
87
91
127
141
118
82
86
90
128
142
117
81
85
89
129
143
116
80
84
88
130
144
115
79
83
87
131
143
114
78
82
86
132
142
113
77
81
85
133
134
135
136
137
138
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
112
76
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
134
131
111
75
71
83
135
130
110
74
70
82
136
129
109
73
69
81
137
128
108
72
68
80
138
127
107
71
67
79
138
126
106
70
66
78
137
125
105
69
65
77
136
124
104
68
64
76
135
123
103
67
63
75
134
122
102
66
62
74
133
121
101
65
61
73
132
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
72
131
111
89
75
51
71
130
110
90
74
50
70
129
109
91
73
49
69
128
108
92
72
48
68
127
107
93
71
47
67
126
106
94
70
46
66
125
105
95
69
45
65
124
104
96
68
44
64
123
103
97
67
43
63
122
102
98
66
42
62
121
101
99
65
41
61
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
88
89
90
91
92
93
94
95
96
97
98
99
100
64
63
62
61
60
59
58
57
56
55
54
53
52
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
113
99
87
51
39
53
114
98
86
50
38
54
115
97
85
49
37
55
116
96
84
48
36
56
117
95
83
47
35
55
118
94
82
46
34
54
119
93
81
45
33
53
120
92
80
44
32
52
121
91
79
43
31
51
122
90
78
42
30
50
123
89
77
41
29
49
132
131
130
129
128
127
126
125
124
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
48
47
46
45
44
43
42
41
40
131
89
65
53
27
39
130
90
66
54
26
38
129
91
67
55
25
37
128
92
68
56
24
36
127
93
69
57
23
35
126
94
70
58
22
34
125
95
71
59
21
33
124
96
72
60
20
32
123
97
73
61
19
31
122
98
74
62
18
30
121
99
75
63
17
29
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
88
87
86
85
84
83
82
81
80
79
78
77
76
64
65
66
67
68
69
70
71
72
73
74
75
76
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
31
30
29
28
121
101
89
77
15
27
122
102
90
78
14
26
123
103
91
79
13
25
124
104
92
80
12
24
125
105
93
81
11
23
126
106
94
82
10
22
127
107
95
83
9
21
128
108
96
84
8
20
129
109
97
85
7
19
130
110
98
86
6
18
131
111
99
87
5
17
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
4
3
2
1
0
170
171
172
173
174
175
176
177
178
179
180
181
182
183
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
153
152
151
150
149
148
147
146
145
144
143
142
141
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
169
164
152
140
144
152
168
163
151
139
143
151
167
162
150
138
142
150
166
161
149
137
141
149
165
160
148
136
140
148
164
159
147
135
139
147
163
158
146
134
138
146
162
157
145
133
137
145
161
156
144
132
136
144
160
155
143
131
135
143
159
154
142
130
134
142
158
146
147
148
149
150
151
152
153
154
155
156
157
158
159
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
132
131
130
129
141
157
145
159
140
128
124
128
140
156
144
159
139
127
123
127
139
155
143
158
138
126
122
126
138
154
142
157
137
125
121
125
137
153
141
156
136
124
120
124
136
152
140
155
135
123
119
123
135
151
139
154
134
122
118
122
134
150
149
148
147
146
145
144
143
142
141
140
139
138
153
133
121
117
121
122
123
124
125
126
127
128
129
130
131
132
133
137
152
132
120
116
120
136
151
131
119
115
119
135
150
130
118
114
118
134
149
129
117
113
117
133
148
128
116
112
116
132
147
127
115
111
115
131
146
126
114
110
114
130
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
113
129
136
100
112
128
135
99
111
127
134
98
110
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
133
97
109
110
111
112
113
112
111
110
109
108
107
106
105
106
107
108
109
115
127
132
96
108
104
116
128
131
95
107
103
117
129
130
94
106
102
118
130
129
93
105
101
119
131
128
92
104
100
120
132
127
91
103
99
121
133
126
90
102
98
122
134
135
136
137
138
139
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
96
95
94
93
94
95
96
97
98
99
100
101
97
123
137
124
88
92
96
124
138
123
87
91
95
125
139
122
86
90
94
126
140
121
85
89
93
127
141
120
84
88
92
128
142
119
83
87
91
129
143
118
82
86
90
130
144
117
81
85
89
131
145
116
80
84
88
132
144
115
79
83
87
133
143
114
78
82
86
134
135
136
137
138
139
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
113
77
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
135
132
112
76
72
84
136
131
111
75
71
83
137
130
110
74
70
82
138
129
109
73
69
81
139
128
108
72
68
80
139
127
107
71
67
79
138
126
106
70
66
78
137
125
105
69
65
77
136
124
104
68
64
76
135
123
103
67
63
75
134
122
102
66
62
74
133
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
73
132
112
90
76
52
72
131
111
91
75
51
71
130
110
92
74
50
70
129
109
93
73
49
69
128
108
94
72
48
68
127
107
95
71
47
67
126
106
96
70
46
66
125
105
97
69
45
65
124
104
98
68
44
64
123
103
99
67
43
63
122
102
100
66
42
62
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
89
90
91
92
93
94
95
96
97
98
99
100
101
65
64
63
62
61
60
59
58
57
56
55
54
53
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
114
100
88
52
40
54
115
99
87
51
39
55
116
98
86
50
38
56
117
97
85
49
37
55
118
96
84
48
36
54
119
95
83
47
35
53
120
94
82
46
34
52
121
93
81
45
33
51
122
92
80
44
32
50
123
91
79
43
31
49
124
90
78
42
30
48
133
132
131
130
129
128
127
126
125
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
47
46
45
44
43
42
41
40
39
132
90
66
54
28
38
131
91
67
55
27
37
130
92
68
56
26
36
129
93
69
57
25
35
128
94
70
58
24
34
127
95
71
59
23
33
126
96
72
60
22
32
125
97
73
61
21
31
124
98
74
62
20
30
123
99
75
63
19
29
122
100
76
64
18
28
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
89
88
87
86
85
84
83
82
81
80
79
78
77
65
66
67
68
69
70
71
72
73
74
75
76
77
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
31
30
29
28
27
122
102
90
78
16
26
123
103
91
79
15
25
124
104
92
80
14
24
125
105
93
81
13
23
126
106
94
82
12
22
127
107
95
83
11
21
128
108
96
84
10
20
129
109
97
85
9
19
130
110
98
86
8
18
131
111
99
87
7
17
132
112
100
88
6
16
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
5
4
3
2
1
0
171
172
173
174
175
176
177
178
179
180
181
182
183
184
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
154
153
152
151
150
149
148
147
146
145
144
143
142
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
170
165
153
141
145
153
169
164
152
140
144
152
168
163
151
139
143
151
167
162
150
138
142
150
166
161
149
137
141
149
165
160
148
136
140
148
164
159
147
135
139
147
163
158
146
134
138
146
162
157
145
133
137
145
161
156
144
132
136
144
160
155
143
131
135
143
159
147
148
149
150
151
152
153
154
155
156
157
158
159
160
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
133
132
131
130
142
158
146
160
141
129
125
129
141
157
145
160
140
128
124
128
140
156
144
159
139
127
123
127
139
155
143
158
138
126
122
126
138
154
142
157
137
125
121
125
137
153
141
156
136
124
120
124
136
152
140
155
135
123
119
123
135
151
150
149
148
147
146
145
144
143
142
141
140
139
154
134
122
118
122
123
124
125
126
127
128
129
130
131
132
133
134
138
153
133
121
117
121
137
152
132
120
116
120
136
151
131
119
115
119
135
150
130
118
114
118
134
149
129
117
113
117
133
148
128
116
112
116
132
147
127
115
111
115
131
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
114
130
137
101
113
129
136
100
112
128
135
99
111
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
134
98
110
111
112
113
114
113
112
111
110
109
108
107
106
107
108
109
110
116
128
133
97
109
105
117
129
132
96
108
104
118
130
131
95
107
103
119
131
130
94
106
102
120
132
129
93
105
101
121
133
128
92
104
100
122
134
127
91
103
99
123
135
136
137
138
139
140
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
97
96
95
94
95
96
97
98
99
100
101
102
98
124
138
125
89
93
97
125
139
124
88
92
96
126
140
123
87
91
95
127
141
122
86
90
94
128
142
121
85
89
93
129
143
120
84
88
92
130
144
119
83
87
91
131
145
118
82
86
90
132
146
117
81
85
89
133
145
116
80
84
88
134
144
115
79
83
87
135
136
137
138
139
140
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
114
78
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
136
133
113
77
73
85
137
132
112
76
72
84
138
131
111
75
71
83
139
130
110
74
70
82
140
129
109
73
69
81
140
128
108
72
68
80
139
127
107
71
67
79
138
126
106
70
66
78
137
125
105
69
65
77
136
124
104
68
64
76
135
123
103
67
63
75
134
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
74
133
113
91
77
53
73
132
112
92
76
52
72
131
111
93
75
51
71
130
110
94
74
50
70
129
109
95
73
49
69
128
108
96
72
48
68
127
107
97
71
47
67
126
106
98
70
46
66
125
105
99
69
45
65
124
104
100
68
44
64
123
103
101
67
43
63
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
90
91
92
93
94
95
96
97
98
99
100
101
102
66
65
64
63
62
61
60
59
58
57
56
55
54
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
115
101
89
53
41
55
116
100
88
52
40
56
117
99
87
51
39
55
118
98
86
50
38
54
119
97
85
49
37
53
120
96
84
48
36
52
121
95
83
47
35
51
122
94
82
46
34
50
123
93
81
45
33
49
124
92
80
44
32
48
125
91
79
43
31
47
134
133
132
131
130
129
128
127
126
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
46
45
44
43
42
41
40
39
38
133
91
67
55
29
37
132
92
68
56
28
36
131
93
69
57
27
35
130
94
70
58
26
34
129
95
71
59
25
33
128
96
72
60
24
32
127
97
73
61
23
31
126
98
74
62
22
30
125
99
75
63
21
29
124
100
76
64
20
28
123
101
77
65
19
27
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
90
89
88
87
86
85
84
83
82
81
80
79
78
66
67
68
69
70
71
72
73
74
75
76
77
78
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
31
30
29
28
27
26
123
103
91
79
17
25
124
104
92
80
16
24
125
105
93
81
15
23
126
106
94
82
14
22
127
107
95
83
13
21
128
108
96
84
12
20
129
109
97
85
11
19
130
110
98
86
10
18
131
111
99
87
9
17
132
112
100
88
8
16
133
113
101
89
7
15
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
6
5
4
3
2
1
0
172
173
174
175
176
177
178
179
180
181
182
183
184
185
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
155
154
153
152
151
150
149
148
147
146
145
144
143
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
171
166
154
142
146
154
170
165
153
141
145
153
169
164
152
140
144
152
168
163
151
139
143
151
167
162
150
138
142
150
166
161
149
137
141
149
165
160
148
136
140
148
164
159
147
135
139
147
163
158
146
134
138
146
162
157
145
133
137
145
161
156
144
132
136
144
160
148
149
150
151
152
153
154
155
156
157
158
159
160
161
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
134
133
132
131
143
159
147
161
142
130
126
130
142
158
146
161
141
129
125
129
141
157
145
160
140
128
124
128
140
156
144
159
139
127
123
127
139
155
143
158
138
126
122
126
138
154
142
157
137
125
121
125
137
153
141
156
136
124
120
124
136
152
151
150
149
148
147
146
145
144
143
142
141
140
155
135
123
119
123
124
125
126
127
128
129
130
131
132
133
134
135
139
154
134
122
118
122
138
153
133
121
117
121
137
152
132
120
116
120
136
151
131
119
115
119
135
150
130
118
114
118
134
149
129
117
113
117
133
148
128
116
112
116
132
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
115
131
138
102
114
130
137
101
113
129
136
100
112
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
135
99
111
112
113
114
115
114
113
112
111
110
109
108
107
108
109
110
111
117
129
134
98
110
106
118
130
133
97
109
105
119
131
132
96
108
104
120
132
131
95
107
103
121
133
130
94
106
102
122
134
129
93
105
101
123
135
128
92
104
100
124
136
137
138
139
140
141
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
98
97
96
95
96
97
98
99
100
101
102
103
99
125
139
126
90
94
98
126
140
125
89
93
97
127
141
124
88
92
96
128
142
123
87
91
95
129
143
122
86
90
94
130
144
121
85
89
93
131
145
120
84
88
92
132
146
119
83
87
91
133
147
118
82
86
90
134
146
117
81
85
89
135
145
116
80
84
88
136
137
138
139
140
141
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
115
79
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
137
134
114
78
74
86
138
133
113
77
73
85
139
132
112
76
72
84
140
131
111
75
71
83
141
130
110
74
70
82
141
129
109
73
69
81
140
128
108
72
68
80
139
127
107
71
67
79
138
126
106
70
66
78
137
125
105
69
65
77
136
124
104
68
64
76
135
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
75
134
114
92
78
54
74
133
113
93
77
53
73
132
112
94
76
52
72
131
111
95
75
51
71
130
110
96
74
50
70
129
109
97
73
49
69
128
108
98
72
48
68
127
107
99
71
47
67
126
106
100
70
46
66
125
105
101
69
45
65
124
104
102
68
44
64
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
91
92
93
94
95
96
97
98
99
100
101
102
103
67
66
65
64
63
62
61
60
59
58
57
56
55
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
116
102
90
54
42
56
117
101
89
53
41
55
118
100
88
52
40
54
119
99
87
51
39
53
120
98
86
50
38
52
121
97
85
49
37
51
122
96
84
48
36
50
123
95
83
47
35
49
124
94
82
46
34
48
125
93
81
45
33
47
126
92
80
44
32
46
135
134
133
132
131
130
129
128
127
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
45
44
43
42
41
40
39
38
37
134
92
68
56
30
36
133
93
69
57
29
35
132
94
70
58
28
34
131
95
71
59
27
33
130
96
72
60
26
32
129
97
73
61
25
31
128
98
74
62
24
30
127
99
75
63
23
29
126
100
76
64
22
28
125
101
77
65
21
27
124
102
78
66
20
26
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
91
90
89
88
87
86
85
84
83
82
81
80
79
67
68
69
70
71
72
73
74
75
76
77
78
79
19
20
21
22
23
24
25
26
27
28
29
30
31
32
31
30
29
28
27
26
25
124
104
92
80
18
24
125
105
93
81
17
23
126
106
94
82
16
22
127
107
95
83
15
21
128
108
96
84
14
20
129
109
97
85
13
19
130
110
98
86
12
18
131
111
99
87
11
17
132
112
100
88
10
16
133
113
101
89
9
15
134
114
102
90
8
14
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
7
6
5
4
3
2
1
0
173
174
175
176
177
178
179
180
181
182
183
184
185
186
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
156
155
154
153
152
151
150
149
148
147
146
145
144
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
172
167
155
143
147
155
171
166
154
142
146
154
170
165
153
141
145
153
169
164
152
140
144
152
168
163
151
139
143
151
167
162
150
138
142
150
166
161
149
137
141
149
165
160
148
136
140
148
164
159
147
135
139
147
163
158
146
134
138
146
162
157
145
133
137
145
161
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
135
134
133
132
144
160
148
162
143
131
127
131
143
159
147
162
142
130
126
130
142
158
146
161
141
129
125
129
141
157
145
160
140
128
124
128
140
156
144
159
139
127
123
127
139
155
143
158
138
126
122
126
138
154
142
157
137
125
121
125
137
153
152
151
150
149
148
147
146
145
144
143
142
141
156
136
124
120
124
125
126
127
128
129
130
131
132
133
134
135
136
140
155
135
123
119
123
139
154
134
122
118
122
138
153
133
121
117
121
137
152
132
120
116
120
136
151
131
119
115
119
135
150
130
118
114
118
134
149
129
117
113
117
133
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
116
132
139
103
115
131
138
102
114
130
137
101
113
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
136
100
112
113
114
115
116
115
114
113
112
111
110
109
108
109
110
111
112
118
130
135
99
111
107
119
131
134
98
110
106
120
132
133
97
109
105
121
133
132
96
108
104
122
134
131
95
107
103
123
135
130
94
106
102
124
136
129
93
105
101
125
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
99
98
97
96
97
98
99
100
101
102
103
104
100
126
140
127
91
95
99
127
141
126
90
94
98
128
142
125
89
93
97
129
143
124
88
92
96
130
144
123
87
91
95
131
145
122
86
90
94
132
146
121
85
89
93
133
147
120
84
88
92
134
148
119
83
87
91
135
147
118
82
86
90
136
146
117
81
85
89
137
138
139
140
141
142
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
116
80
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
138
135
115
79
75
87
139
134
114
78
74
86
140
133
113
77
73
85
141
132
112
76
72
84
142
131
111
75
71
83
142
130
110
74
70
82
141
129
109
73
69
81
140
128
108
72
68
80
139
127
107
71
67
79
138
126
106
70
66
78
137
125
105
69
65
77
136
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
76
135
115
93
79
55
75
134
114
94
78
54
74
133
113
95
77
53
73
132
112
96
76
52
72
131
111
97
75
51
71
130
110
98
74
50
70
129
109
99
73
49
69
128
108
100
72
48
68
127
107
101
71
47
67
126
106
102
70
46
66
125
105
103
69
45
65
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
92
93
94
95
96
97
98
99
100
101
102
103
104
68
67
66
65
64
63
62
61
60
59
58
57
56
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
117
103
91
55
43
55
118
102
90
54
42
54
119
101
89
53
41
53
120
100
88
52
40
52
121
99
87
51
39
51
122
98
86
50
38
50
123
97
85
49
37
49
124
96
84
48
36
48
125
95
83
47
35
47
126
94
82
46
34
46
127
93
81
45
33
45
136
135
134
133
132
131
130
129
128
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
44
43
42
41
40
39
38
37
36
135
93
69
57
31
35
134
94
70
58
30
34
133
95
71
59
29
33
132
96
72
60
28
32
131
97
73
61
27
31
130
98
74
62
26
30
129
99
75
63
25
29
128
100
76
64
24
28
127
101
77
65
23
27
126
102
78
66
22
26
125
103
79
67
21
25
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
92
91
90
89
88
87
86
85
84
83
82
81
80
68
69
70
71
72
73
74
75
76
77
78
79
80
20
21
22
23
24
25
26
27
28
29
30
31
32
31
30
29
28
27
26
25
24
125
105
93
81
19
23
126
106
94
82
18
22
127
107
95
83
17
21
128
108
96
84
16
20
129
109
97
85
15
19
130
110
98
86
14
18
131
111
99
87
13
17
132
112
100
88
12
16
133
113
101
89
11
15
134
114
102
90
10
14
135
115
103
91
9
13
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
8
7
6
5
4
3
2
1
0
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
157
156
155
154
153
152
151
150
149
148
147
146
145
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
171
168
156
144
148
156
170
167
155
143
147
155
169
166
154
142
146
154
168
165
153
141
145
153
167
164
152
140
144
152
166
163
151
139
143
151
165
162
150
138
142
150
164
161
149
137
141
149
163
160
148
136
140
148
162
159
147
135
139
147
161
158
146
134
138
146
160
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
136
135
134
133
145
159
147
161
144
132
128
132
144
158
146
162
143
131
127
131
143
157
145
162
142
130
126
130
142
156
144
161
141
129
125
129
141
155
143
160
140
128
124
128
140
154
142
159
139
127
123
127
139
153
141
158
138
126
122
126
138
152
151
150
149
148
147
146
145
144
143
142
141
140
157
137
125
121
125
126
127
128
129
130
131
132
133
134
135
136
137
139
156
136
124
120
124
138
155
135
123
119
123
137
154
134
122
118
122
136
153
133
121
117
121
135
152
132
120
116
120
134
151
131
119
115
119
133
150
130
118
114
118
132
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
117
131
140
104
116
130
139
103
115
129
138
102
114
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
137
101
113
114
115
116
115
114
113
112
111
110
109
108
107
108
109
110
111
117
129
136
100
112
106
118
130
135
99
111
105
119
131
134
98
110
104
120
132
133
97
109
103
121
133
132
96
108
102
122
134
131
95
107
101
123
135
130
94
106
100
124
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
100
99
98
97
98
99
100
101
102
103
104
105
99
125
141
128
92
96
98
126
142
127
91
95
97
127
143
126
90
94
96
128
144
125
89
93
95
129
145
124
88
92
94
130
146
123
87
91
93
131
147
122
86
90
92
132
148
121
85
89
91
133
149
120
84
88
90
134
148
119
83
87
89
135
147
118
82
86
88
136
137
138
139
140
141
142
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
117
81
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
87
137
136
116
80
76
86
138
135
115
79
75
85
139
134
114
78
74
84
140
133
113
77
73
83
141
132
112
76
72
82
142
131
111
75
71
81
142
130
110
74
70
80
141
129
109
73
69
79
140
128
108
72
68
78
139
127
107
71
67
77
138
126
106
70
66
76
137
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
75
136
116
94
80
56
74
135
115
95
79
55
73
134
114
96
78
54
72
133
113
97
77
53
71
132
112
98
76
52
70
131
111
99
75
51
69
130
110
100
74
50
68
129
109
101
73
49
67
128
108
102
72
48
66
127
107
103
71
47
65
126
106
104
70
46
64
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
93
94
95
96
97
98
99
100
101
102
103
104
105
69
68
67
66
65
64
63
62
61
60
59
58
57
45
46
47
48
49
50
51
52
53
54
55
56
55
56
57
58
59
60
61
62
63
118
104
92
56
44
54
119
103
91
55
43
53
120
102
90
54
42
52
121
101
89
53
41
51
122
100
88
52
40
50
123
99
87
51
39
49
124
98
86
50
38
48
125
97
85
49
37
47
126
96
84
48
36
46
127
95
83
47
35
45
128
94
82
46
34
44
137
136
135
134
133
132
131
130
129
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
43
42
41
40
39
38
37
36
35
136
94
70
58
32
34
135
95
71
59
31
33
134
96
72
60
30
32
133
97
73
61
29
31
132
98
74
62
28
30
131
99
75
63
27
29
130
100
76
64
26
28
129
101
77
65
25
27
128
102
78
66
24
26
127
103
79
67
23
25
126
104
80
68
22
24
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
93
92
91
90
89
88
87
86
85
84
83
82
81
69
70
71
72
73
74
75
76
77
78
79
80
81
21
22
23
24
25
26
27
28
29
30
31
32
31
30
29
28
27
26
25
24
23
126
106
94
82
20
22
127
107
95
83
19
21
128
108
96
84
18
20
129
109
97
85
17
19
130
110
98
86
16
18
131
111
99
87
15
17
132
112
100
88
14
16
133
113
101
89
13
15
134
114
102
90
12
14
135
115
103
91
11
13
136
116
104
92
10
12
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
9
8
7
6
5
4
3
2
1
0
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
158
157
156
155
154
153
152
151
150
149
148
147
146
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
170
169
157
145
149
157
169
168
156
144
148
156
168
167
155
143
147
155
167
166
154
142
146
154
166
165
153
141
145
153
165
164
152
140
144
152
164
163
151
139
143
151
163
162
150
138
142
150
162
161
149
137
141
149
161
160
148
136
140
148
160
159
147
135
139
147
159
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
137
136
135
134
146
158
146
160
145
133
129
133
145
157
145
161
144
132
128
132
144
156
144
162
143
131
127
131
143
155
143
162
142
130
126
130
142
154
142
161
141
129
125
129
141
153
141
160
140
128
124
128
140
152
140
159
139
127
123
127
139
151
150
149
148
147
146
145
144
143
142
141
140
139
158
138
126
122
126
127
128
129
130
131
132
133
134
135
136
137
138
138
157
137
125
121
125
137
156
136
124
120
124
136
155
135
123
119
123
135
154
134
122
118
122
134
153
133
121
117
121
133
152
132
120
116
120
132
151
131
119
115
119
131
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
118
130
141
105
117
129
140
104
116
128
139
103
115
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
138
102
114
115
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
116
128
137
101
113
105
117
129
136
100
112
104
118
130
135
99
111
103
119
131
134
98
110
102
120
132
133
97
109
101
121
133
132
96
108
100
122
134
131
95
107
99
123
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
101
100
99
98
99
100
101
102
103
104
105
106
98
124
142
129
93
97
97
125
143
128
92
96
96
126
144
127
91
95
95
127
145
126
90
94
94
128
146
125
89
93
93
129
147
124
88
92
92
130
148
123
87
91
91
131
149
122
86
90
90
132
150
121
85
89
89
133
149
120
84
88
88
134
148
119
83
87
87
135
136
137
138
139
140
141
142
142
141
140
139
138
139
140
141
142
143
144
145
146
147
118
82
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
87
86
136
137
117
81
77
85
137
136
116
80
76
84
138
135
115
79
75
83
139
134
114
78
74
82
140
133
113
77
73
81
141
132
112
76
72
80
142
131
111
75
71
79
142
130
110
74
70
78
141
129
109
73
69
77
140
128
108
72
68
76
139
127
107
71
67
75
138
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
74
137
117
95
81
57
73
136
116
96
80
56
72
135
115
97
79
55
71
134
114
98
78
54
70
133
113
99
77
53
69
132
112
100
76
52
68
131
111
101
75
51
67
130
110
102
74
50
66
129
109
103
73
49
65
128
108
104
72
48
64
127
107
105
71
47
63
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
94
95
96
97
98
99
100
101
102
103
104
105
106
70
69
68
67
66
65
64
63
62
61
60
59
58
46
47
48
49
50
51
52
53
54
55
56
55
54
55
56
57
58
59
60
61
62
119
105
93
57
45
53
120
104
92
56
44
52
121
103
91
55
43
51
122
102
90
54
42
50
123
101
89
53
41
49
124
100
88
52
40
48
125
99
87
51
39
47
126
98
86
50
38
46
127
97
85
49
37
45
128
96
84
48
36
44
129
95
83
47
35
43
138
137
136
135
134
133
132
131
130
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
42
41
40
39
38
37
36
35
34
137
95
71
59
33
33
136
96
72
60
32
32
135
97
73
61
31
31
134
98
74
62
30
30
133
99
75
63
29
29
132
100
76
64
28
28
131
101
77
65
27
27
130
102
78
66
26
26
129
103
79
67
25
25
128
104
80
68
24
24
127
105
81
69
23
23
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
94
93
92
91
90
89
88
87
86
85
84
83
82
70
71
72
73
74
75
76
77
78
79
80
81
82
22
23
24
25
26
27
28
29
30
31
32
31
30
29
28
27
26
25
24
23
22
127
107
95
83
21
21
128
108
96
84
20
20
129
109
97
85
19
19
130
110
98
86
18
18
131
111
99
87
17
17
132
112
100
88
16
16
133
113
101
89
15
15
134
114
102
90
14
14
135
115
103
91
13
13
136
116
104
92
12
12
137
117
105
93
11
11
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
10
9
8
7
6
5
4
3
2
1
0
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
159
158
157
156
155
154
153
152
151
150
149
148
147
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
169
170
158
146
150
158
168
169
157
145
149
157
167
168
156
144
148
156
166
167
155
143
147
155
165
166
154
142
146
154
164
165
153
141
145
153
163
164
152
140
144
152
162
163
151
139
143
151
161
162
150
138
142
150
160
161
149
137
141
149
159
160
148
136
140
148
158
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
138
137
136
135
147
157
145
159
146
134
130
134
146
156
144
160
145
133
129
133
145
155
143
161
144
132
128
132
144
154
142
162
143
131
127
131
143
153
141
162
142
130
126
130
142
152
140
161
141
129
125
129
141
151
139
160
140
128
124
128
140
150
149
148
147
146
145
144
143
142
141
140
139
138
159
139
127
123
127
128
129
130
131
132
133
134
135
136
137
138
139
137
158
138
126
122
126
136
157
137
125
121
125
135
156
136
124
120
124
134
155
135
123
119
123
133
154
134
122
118
122
132
153
133
121
117
121
131
152
132
120
116
120
130
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
119
129
142
106
118
128
141
105
117
127
140
104
116
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
139
103
115
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
115
127
138
102
114
104
116
128
137
101
113
103
117
129
136
100
112
102
118
130
135
99
111
101
119
131
134
98
110
100
120
132
133
97
109
99
121
133
132
96
108
98
122
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
102
101
100
99
100
101
102
103
104
105
106
107
97
123
143
130
94
98
96
124
144
129
93
97
95
125
145
128
92
96
94
126
146
127
91
95
93
127
147
126
90
94
92
128
148
125
89
93
91
129
149
124
88
92
90
130
150
123
87
91
89
131
151
122
86
90
88
132
150
121
85
89
87
133
149
120
84
88
86
134
135
136
137
138
139
140
141
142
142
141
140
139
140
141
142
143
144
145
146
147
148
119
83
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
87
86
85
135
138
118
82
78
84
136
137
117
81
77
83
137
136
116
80
76
82
138
135
115
79
75
81
139
134
114
78
74
80
140
133
113
77
73
79
141
132
112
76
72
78
142
131
111
75
71
77
142
130
110
74
70
76
141
129
109
73
69
75
140
128
108
72
68
74
139
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
73
138
118
96
82
58
72
137
117
97
81
57
71
136
116
98
80
56
70
135
115
99
79
55
69
134
114
100
78
54
68
133
113
101
77
53
67
132
112
102
76
52
66
131
111
103
75
51
65
130
110
104
74
50
64
129
109
105
73
49
63
128
108
106
72
48
62
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
95
96
97
98
99
100
101
102
103
104
105
106
107
71
70
69
68
67
66
65
64
63
62
61
60
59
47
48
49
50
51
52
53
54
55
56
55
54
53
54
55
56
57
58
59
60
61
120
106
94
58
46
52
121
105
93
57
45
51
122
104
92
56
44
50
123
103
91
55
43
49
124
102
90
54
42
48
125
101
89
53
41
47
126
100
88
52
40
46
127
99
87
51
39
45
128
98
86
50
38
44
129
97
85
49
37
43
130
96
84
48
36
42
139
138
137
136
135
134
133
132
131
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
41
40
39
38
37
36
35
34
33
138
96
72
60
34
32
137
97
73
61
33
31
136
98
74
62
32
30
135
99
75
63
31
29
134
100
76
64
30
28
133
101
77
65
29
27
132
102
78
66
28
26
131
103
79
67
27
25
130
104
80
68
26
24
129
105
81
69
25
23
128
106
82
70
24
22
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
95
94
93
92
91
90
89
88
87
86
85
84
83
71
72
73
74
75
76
77
78
79
80
81
82
83
23
24
25
26
27
28
29
30
31
32
31
30
29
28
27
26
25
24
23
22
21
128
108
96
84
22
20
129
109
97
85
21
19
130
110
98
86
20
18
131
111
99
87
19
17
132
112
100
88
18
16
133
113
101
89
17
15
134
114
102
90
16
14
135
115
103
91
15
13
136
116
104
92
14
12
137
117
105
93
13
11
138
118
106
94
12
10
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
11
10
9
8
7
6
5
4
3
2
1
0
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
160
159
158
157
156
155
154
153
152
151
150
149
148
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
168
171
159
147
151
159
167
170
158
146
150
158
166
169
157
145
149
157
165
168
156
144
148
156
164
167
155
143
147
155
163
166
154
142
146
154
162
165
153
141
145
153
161
164
152
140
144
152
160
163
151
139
143
151
159
162
150
138
142
150
158
161
149
137
141
149
157
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
139
138
137
136
148
156
144
158
147
135
131
135
147
155
143
159
146
134
130
134
146
154
142
160
145
133
129
133
145
153
141
161
144
132
128
132
144
152
140
162
143
131
127
131
143
151
139
162
142
130
126
130
142
150
138
161
141
129
125
129
141
149
148
147
146
145
144
143
142
141
140
139
138
137
160
140
128
124
128
129
130
131
132
133
134
135
136
137
138
139
140
136
159
139
127
123
127
135
158
138
126
122
126
134
157
137
125
121
125
133
156
136
124
120
124
132
155
135
123
119
123
131
154
134
122
118
122
130
153
133
121
117
121
129
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
120
128
143
107
119
127
142
106
118
126
141
105
117
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
140
104
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
114
126
139
103
115
103
115
127
138
102
114
102
116
128
137
101
113
101
117
129
136
100
112
100
118
130
135
99
111
99
119
131
134
98
110
98
120
132
133
97
109
97
121
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
103
102
101
100
101
102
103
104
105
106
107
108
96
122
143
131
95
99
95
123
144
130
94
98
94
124
145
129
93
97
93
125
146
128
92
96
92
126
147
127
91
95
91
127
148
126
90
94
90
128
149
125
89
93
89
129
150
124
88
92
88
130
151
123
87
91
87
131
151
122
86
90
86
132
150
121
85
89
85
133
134
135
136
137
138
139
140
141
142
142
141
140
141
142
143
144
145
146
147
148
149
120
84
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
87
86
85
84
134
139
119
83
79
83
135
138
118
82
78
82
136
137
117
81
77
81
137
136
116
80
76
80
138
135
115
79
75
79
139
134
114
78
74
78
140
133
113
77
73
77
141
132
112
76
72
76
142
131
111
75
71
75
142
130
110
74
70
74
141
129
109
73
69
73
140
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
72
139
119
97
83
59
71
138
118
98
82
58
70
137
117
99
81
57
69
136
116
100
80
56
68
135
115
101
79
55
67
134
114
102
78
54
66
133
113
103
77
53
65
132
112
104
76
52
64
131
111
105
75
51
63
130
110
106
74
50
62
129
109
107
73
49
61
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
96
97
98
99
100
101
102
103
104
105
106
107
108
72
71
70
69
68
67
66
65
64
63
62
61
60
48
49
50
51
52
53
54
55
56
55
54
53
52
53
54
55
56
57
58
59
60
121
107
95
59
47
51
122
106
94
58
46
50
123
105
93
57
45
49
124
104
92
56
44
48
125
103
91
55
43
47
126
102
90
54
42
46
127
101
89
53
41
45
128
100
88
52
40
44
129
99
87
51
39
43
130
98
86
50
38
42
131
97
85
49
37
41
140
139
138
137
136
135
134
133
132
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
40
39
38
37
36
35
34
33
32
139
97
73
61
35
31
138
98
74
62
34
30
137
99
75
63
33
29
136
100
76
64
32
28
135
101
77
65
31
27
134
102
78
66
30
26
133
103
79
67
29
25
132
104
80
68
28
24
131
105
81
69
27
23
130
106
82
70
26
22
129
107
83
71
25
21
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
96
95
94
93
92
91
90
89
88
87
86
85
84
72
73
74
75
76
77
78
79
80
81
82
83
84
24
25
26
27
28
29
30
31
32
31
30
29
28
27
26
25
24
23
22
21
20
129
109
97
85
23
19
130
110
98
86
22
18
131
111
99
87
21
17
132
112
100
88
20
16
133
113
101
89
19
15
134
114
102
90
18
14
135
115
103
91
17
13
136
116
104
92
16
12
137
117
105
93
15
11
138
118
106
94
14
10
139
119
107
95
13
9
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
12
11
10
9
8
7
6
5
4
3
2
1
0
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
186
185
184
183
182
181
180
179
178
177
176
175
174
173
161
160
159
158
157
156
155
154
153
152
151
150
149
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
167
172
160
148
152
158
166
171
159
147
151
157
165
170
158
146
150
156
164
169
157
145
149
155
163
168
156
144
148
154
162
167
155
143
147
153
161
166
154
142
146
152
160
165
153
141
145
151
159
164
152
140
144
150
158
163
151
139
143
149
157
162
150
138
142
148
156
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
139
138
137
136
135
147
155
143
157
148
136
132
134
146
154
142
158
147
135
131
133
145
153
141
159
146
134
130
132
144
152
140
160
145
133
129
131
143
151
139
161
144
132
128
130
142
150
138
162
143
131
127
129
141
149
137
162
142
130
126
128
140
148
147
146
145
144
143
142
141
140
139
138
137
136
161
141
129
125
127
128
129
130
131
132
133
134
135
136
137
138
139
135
160
140
128
124
126
134
159
139
127
123
125
133
158
138
126
122
124
132
157
137
125
121
123
131
156
136
124
120
122
130
155
135
123
119
121
129
154
134
122
118
120
128
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
119
127
144
108
118
126
143
107
117
125
142
106
116
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
141
105
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
113
125
140
104
116
102
114
126
139
103
115
101
115
127
138
102
114
100
116
128
137
101
113
99
117
129
136
100
112
98
118
130
135
99
111
97
119
131
134
98
110
96
120
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
104
103
102
101
102
103
104
105
106
107
108
109
95
121
142
132
96
100
94
122
143
131
95
99
93
123
144
130
94
98
92
124
145
129
93
97
91
125
146
128
92
96
90
126
147
127
91
95
89
127
148
126
90
94
88
128
149
125
89
93
87
129
150
124
88
92
86
130
151
123
87
91
85
131
151
122
86
90
84
132
133
134
135
136
137
138
139
140
141
142
142
141
142
143
144
145
146
147
148
149
150
121
85
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
87
86
85
84
83
133
140
120
84
80
82
134
139
119
83
79
81
135
138
118
82
78
80
136
137
117
81
77
79
137
136
116
80
76
78
138
135
115
79
75
77
139
134
114
78
74
76
140
133
113
77
73
75
141
132
112
76
72
74
142
131
111
75
71
73
142
130
110
74
70
72
141
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
71
140
120
98
84
60
70
139
119
99
83
59
69
138
118
100
82
58
68
137
117
101
81
57
67
136
116
102
80
56
66
135
115
103
79
55
65
134
114
104
78
54
64
133
113
105
77
53
63
132
112
106
76
52
62
131
111
107
75
51
61
130
110
108
74
50
60
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
97
98
99
100
101
102
103
104
105
106
107
108
109
73
72
71
70
69
68
67
66
65
64
63
62
61
49
50
51
52
53
54
55
56
55
54
53
52
51
52
53
54
55
56
57
58
59
122
108
96
60
48
50
123
107
95
59
47
49
124
106
94
58
46
48
125
105
93
57
45
47
126
104
92
56
44
46
127
103
91
55
43
45
128
102
90
54
42
44
129
101
89
53
41
43
130
100
88
52
40
42
131
99
87
51
39
41
132
98
86
50
38
40
141
140
139
138
137
136
135
134
133
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
39
38
37
36
35
34
33
32
31
140
98
74
62
36
30
139
99
75
63
35
29
138
100
76
64
34
28
137
101
77
65
33
27
136
102
78
66
32
26
135
103
79
67
31
25
134
104
80
68
30
24
133
105
81
69
29
23
132
106
82
70
28
22
131
107
83
71
27
21
130
108
84
72
26
20
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
97
96
95
94
93
92
91
90
89
88
87
86
85
73
74
75
76
77
78
79
80
81
82
83
84
85
25
26
27
28
29
30
31
32
31
30
29
28
27
26
25
24
23
22
21
20
19
130
110
98
86
24
18
131
111
99
87
23
17
132
112
100
88
22
16
133
113
101
89
21
15
134
114
102
90
20
14
135
115
103
91
19
13
136
116
104
92
18
12
137
117
105
93
17
11
138
118
106
94
16
10
139
119
107
95
15
9
140
120
108
96
14
8
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
13
12
11
10
9
8
7
6
5
4
3
2
1
0
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
186
185
184
183
182
181
180
179
178
177
176
175
174
162
161
160
159
158
157
156
155
154
153
152
151
150
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
166
173
161
149
153
157
165
172
160
148
152
156
164
171
159
147
151
155
163
170
158
146
150
154
162
169
157
145
149
153
161
168
156
144
148
152
160
167
155
143
147
151
159
166
154
142
146
150
158
165
153
141
145
149
157
164
152
140
144
148
156
163
151
139
143
147
155
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
139
138
137
136
135
134
146
154
142
156
149
137
133
133
145
153
141
157
148
136
132
132
144
152
140
158
147
135
131
131
143
151
139
159
146
134
130
130
142
150
138
160
145
133
129
129
141
149
137
161
144
132
128
128
140
148
136
162
143
131
127
127
139
147
146
145
144
143
142
141
140
139
138
137
136
135
162
142
130
126
126
127
128
129
130
131
132
133
134
135
136
137
138
134
161
141
129
125
125
133
160
140
128
124
124
132
159
139
127
123
123
131
158
138
126
122
122
130
157
137
125
121
121
129
156
136
124
120
120
128
155
135
123
119
119
127
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
118
126
145
109
117
125
144
108
116
124
143
107
115
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
142
106
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
112
124
141
105
115
101
113
125
140
104
116
100
114
126
139
103
115
99
115
127
138
102
114
98
116
128
137
101
113
97
117
129
136
100
112
96
118
130
135
99
111
95
119
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
105
104
103
102
103
104
105
106
107
108
109
110
94
120
141
133
97
101
93
121
142
132
96
100
92
122
143
131
95
99
91
123
144
130
94
98
90
124
145
129
93
97
89
125
146
128
92
96
88
126
147
127
91
95
87
127
148
126
90
94
86
128
149
125
89
93
85
129
150
124
88
92
84
130
151
123
87
91
83
131
132
133
134
135
136
137
138
139
140
141
142
142
143
144
145
146
147
148
149
150
151
122
86
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
87
86
85
84
83
82
132
141
121
85
81
81
133
140
120
84
80
80
134
139
119
83
79
79
135
138
118
82
78
78
136
137
117
81
77
77
137
136
116
80
76
76
138
135
115
79
75
75
139
134
114
78
74
74
140
133
113
77
73
73
141
132
112
76
72
72
142
131
111
75
71
71
142
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
70
141
121
99
85
61
69
140
120
100
84
60
68
139
119
101
83
59
67
138
118
102
82
58
66
137
117
103
81
57
65
136
116
104
80
56
64
135
115
105
79
55
63
134
114
106
78
54
62
133
113
107
77
53
61
132
112
108
76
52
60
131
111
109
75
51
59
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
98
99
100
101
102
103
104
105
106
107
108
109
110
74
73
72
71
70
69
68
67
66
65
64
63
62
50
51
52
53
54
55
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
123
109
97
61
49
49
124
108
96
60
48
48
125
107
95
59
47
47
126
106
94
58
46
46
127
105
93
57
45
45
128
104
92
56
44
44
129
103
91
55
43
43
130
102
90
54
42
42
131
101
89
53
41
41
132
100
88
52
40
40
133
99
87
51
39
39
142
141
140
139
138
137
136
135
134
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
38
37
36
35
34
33
32
31
30
141
99
75
63
37
29
140
100
76
64
36
28
139
101
77
65
35
27
138
102
78
66
34
26
137
103
79
67
33
25
136
104
80
68
32
24
135
105
81
69
31
23
134
106
82
70
30
22
133
107
83
71
29
21
132
108
84
72
28
20
131
109
85
73
27
19
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
98
97
96
95
94
93
92
91
90
89
88
87
86
74
75
76
77
78
79
80
81
82
83
84
85
86
26
27
28
29
30
31
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
131
111
99
87
25
17
132
112
100
88
24
16
133
113
101
89
23
15
134
114
102
90
22
14
135
115
103
91
21
13
136
116
104
92
20
12
137
117
105
93
19
11
138
118
106
94
18
10
139
119
107
95
17
9
140
120
108
96
16
8
141
121
109
97
15
7
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
177
176
175
174
163
162
161
160
159
158
157
156
155
154
153
152
151
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
165
173
162
150
154
156
164
172
161
149
153
155
163
171
160
148
152
154
162
170
159
147
151
153
161
169
158
146
150
152
160
168
157
145
149
151
159
167
156
144
148
150
158
166
155
143
147
149
157
165
154
142
146
148
156
164
153
141
145
147
155
163
152
140
144
146
154
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
139
138
137
136
135
134
133
145
153
141
155
150
138
134
132
144
152
140
156
149
137
133
131
143
151
139
157
148
136
132
130
142
150
138
158
147
135
131
129
141
149
137
159
146
134
130
128
140
148
136
160
145
133
129
127
139
147
135
161
144
132
128
126
138
146
145
144
143
142
141
140
139
138
137
136
135
134
162
143
131
127
125
126
127
128
129
130
131
132
133
134
135
136
137
133
162
142
130
126
124
132
161
141
129
125
123
131
160
140
128
124
122
130
159
139
127
123
121
129
158
138
126
122
120
128
157
137
125
121
119
127
156
136
124
120
118
126
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
117
125
146
110
116
124
145
109
115
123
144
108
114
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
143
107
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
111
123
142
106
114
100
112
124
141
105
115
99
113
125
140
104
116
98
114
126
139
103
115
97
115
127
138
102
114
96
116
128
137
101
113
95
117
129
136
100
112
94
118
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
106
105
104
103
104
105
106
107
108
109
110
111
93
119
140
134
98
102
92
120
141
133
97
101
91
121
142
132
96
100
90
122
143
131
95
99
89
123
144
130
94
98
88
124
145
129
93
97
87
125
146
128
92
96
86
126
147
127
91
95
85
127
148
126
90
94
84
128
149
125
89
93
83
129
150
124
88
92
82
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
123
87
91
90
89
88
87
86
85
84
83
84
85
86
87
88
87
86
85
84
83
82
81
131
142
122
86
82
80
132
141
121
85
81
79
133
140
120
84
80
78
134
139
119
83
79
77
135
138
118
82
78
76
136
137
117
81
77
75
137
136
116
80
76
74
138
135
115
79
75
73
139
134
114
78
74
72
140
133
113
77
73
71
141
132
112
76
72
70
142
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
69
142
122
100
86
62
68
141
121
101
85
61
67
140
120
102
84
60
66
139
119
103
83
59
65
138
118
104
82
58
64
137
117
105
81
57
63
136
116
106
80
56
62
135
115
107
79
55
61
134
114
108
78
54
60
133
113
109
77
53
59
132
112
110
76
52
58
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
99
100
101
102
103
104
105
106
107
108
109
110
111
75
74
73
72
71
70
69
68
67
66
65
64
63
51
52
53
54
55
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
124
110
98
62
50
48
125
109
97
61
49
47
126
108
96
60
48
46
127
107
95
59
47
45
128
106
94
58
46
44
129
105
93
57
45
43
130
104
92
56
44
42
131
103
91
55
43
41
132
102
90
54
42
40
133
101
89
53
41
39
134
100
88
52
40
38
143
142
141
140
139
138
137
136
135
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
37
36
35
34
33
32
31
30
29
142
100
76
64
38
28
141
101
77
65
37
27
140
102
78
66
36
26
139
103
79
67
35
25
138
104
80
68
34
24
137
105
81
69
33
23
136
106
82
70
32
22
135
107
83
71
31
21
134
108
84
72
30
20
133
109
85
73
29
19
132
110
86
74
28
18
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
99
98
97
96
95
94
93
92
91
90
89
88
87
75
76
77
78
79
80
81
82
83
84
85
86
87
27
28
29
30
31
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
132
112
100
88
26
16
133
113
101
89
25
15
134
114
102
90
24
14
135
115
103
91
23
13
136
116
104
92
22
12
137
117
105
93
21
11
138
118
106
94
20
10
139
119
107
95
19
9
140
120
108
96
18
8
141
121
109
97
17
7
142
122
110
98
16
6
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
176
175
174
173
164
163
162
161
160
159
158
157
156
155
154
153
152
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
164
172
163
151
155
155
163
171
162
150
154
154
162
170
161
149
153
153
161
169
160
148
152
152
160
168
159
147
151
151
159
167
158
146
150
150
158
166
157
145
149
149
157
165
156
144
148
148
156
164
155
143
147
147
155
163
154
142
146
146
154
162
153
141
145
145
153
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
139
138
137
136
135
134
133
132
144
152
140
154
151
139
135
131
143
151
139
155
150
138
134
130
142
150
138
156
149
137
133
129
141
149
137
157
148
136
132
128
140
148
136
158
147
135
131
127
139
147
135
159
146
134
130
126
138
146
134
160
145
133
129
125
137
145
144
143
142
141
140
139
138
137
136
135
134
133
161
144
132
128
124
125
126
127
128
129
130
131
132
133
134
135
136
132
162
143
131
127
123
131
162
142
130
126
122
130
161
141
129
125
121
129
160
140
128
124
120
128
159
139
127
123
119
127
158
138
126
122
118
126
157
137
125
121
117
125
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
116
124
147
111
115
123
146
110
114
122
145
109
113
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
144
108
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
110
122
143
107
113
99
111
123
142
106
114
98
112
124
141
105
115
97
113
125
140
104
116
96
114
126
139
103
115
95
115
127
138
102
114
94
116
128
137
101
113
93
117
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
107
106
105
104
105
106
107
108
109
110
111
112
92
118
139
135
99
103
91
119
140
134
98
102
90
120
141
133
97
101
89
121
142
132
96
100
88
122
143
131
95
99
87
123
144
130
94
98
86
124
145
129
93
97
85
125
146
128
92
96
84
126
147
127
91
95
83
127
148
126
90
94
82
128
149
125
89
93
81
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
124
88
92
91
90
89
88
87
86
85
84
85
86
87
88
87
86
85
84
83
82
81
80
130
142
123
87
83
79
131
142
122
86
82
78
132
141
121
85
81
77
133
140
120
84
80
76
134
139
119
83
79
75
135
138
118
82
78
74
136
137
117
81
77
73
137
136
116
80
76
72
138
135
115
79
75
71
139
134
114
78
74
70
140
133
113
77
73
69
141
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
68
142
123
101
87
63
67
142
122
102
86
62
66
141
121
103
85
61
65
140
120
104
84
60
64
139
119
105
83
59
63
138
118
106
82
58
62
137
117
107
81
57
61
136
116
108
80
56
60
135
115
109
79
55
59
134
114
110
78
54
58
133
113
111
77
53
57
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
100
101
102
103
104
105
106
107
108
109
110
111
112
76
75
74
73
72
71
70
69
68
67
66
65
64
52
53
54
55
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
125
111
99
63
51
47
126
110
98
62
50
46
127
109
97
61
49
45
128
108
96
60
48
44
129
107
95
59
47
43
130
106
94
58
46
42
131
105
93
57
45
41
132
104
92
56
44
40
133
103
91
55
43
39
134
102
90
54
42
38
135
101
89
53
41
37
144
143
142
141
140
139
138
137
136
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
36
35
34
33
32
31
30
29
28
143
101
77
65
39
27
142
102
78
66
38
26
141
103
79
67
37
25
140
104
80
68
36
24
139
105
81
69
35
23
138
106
82
70
34
22
137
107
83
71
33
21
136
108
84
72
32
20
135
109
85
73
31
19
134
110
86
74
30
18
133
111
87
75
29
17
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
100
99
98
97
96
95
94
93
92
91
90
89
88
76
77
78
79
80
81
82
83
84
85
86
87
88
28
29
30
31
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
133
113
101
89
27
15
134
114
102
90
26
14
135
115
103
91
25
13
136
116
104
92
24
12
137
117
105
93
23
11
138
118
106
94
22
10
139
119
107
95
21
9
140
120
108
96
20
8
141
121
109
97
19
7
142
122
110
98
18
6
143
123
111
99
17
5
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
165
164
163
162
161
160
159
158
157
156
155
154
153
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
163
171
164
152
156
154
162
170
163
151
155
153
161
169
162
150
154
152
160
168
161
149
153
151
159
167
160
148
152
150
158
166
159
147
151
149
157
165
158
146
150
148
156
164
157
145
149
147
155
163
156
144
148
146
154
162
155
143
147
145
153
161
154
142
146
144
152
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
139
138
137
136
135
134
133
132
131
143
151
139
153
152
140
136
130
142
150
138
154
151
139
135
129
141
149
137
155
150
138
134
128
140
148
136
156
149
137
133
127
139
147
135
157
148
136
132
126
138
146
134
158
147
135
131
125
137
145
133
159
146
134
130
124
136
144
143
142
141
140
139
138
137
136
135
134
133
132
160
145
133
129
123
124
125
126
127
128
129
130
131
132
133
134
135
131
161
144
132
128
122
130
162
143
131
127
121
129
162
142
130
126
120
128
161
141
129
125
119
127
160
140
128
124
118
126
159
139
127
123
117
125
158
138
126
122
116
124
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
115
123
148
112
114
122
147
111
113
121
146
110
112
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
145
109
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
109
121
144
108
112
98
110
122
143
107
113
97
111
123
142
106
114
96
112
124
141
105
115
95
113
125
140
104
116
94
114
126
139
103
115
93
115
127
138
102
114
92
116
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
108
107
106
105
106
107
108
109
110
111
112
113
91
117
138
136
100
104
90
118
139
135
99
103
89
119
140
134
98
102
88
120
141
133
97
101
87
121
142
132
96
100
86
122
143
131
95
99
85
123
144
130
94
98
84
124
145
129
93
97
83
125
146
128
92
96
82
126
147
127
91
95
81
127
148
126
90
94
80
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
125
89
93
92
91
90
89
88
87
86
85
86
87
88
87
86
85
84
83
82
81
80
79
129
141
124
88
84
78
130
142
123
87
83
77
131
142
122
86
82
76
132
141
121
85
81
75
133
140
120
84
80
74
134
139
119
83
79
73
135
138
118
82
78
72
136
137
117
81
77
71
137
136
116
80
76
70
138
135
115
79
75
69
139
134
114
78
74
68
140
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
67
141
124
102
88
64
66
142
123
103
87
63
65
142
122
104
86
62
64
141
121
105
85
61
63
140
120
106
84
60
62
139
119
107
83
59
61
138
118
108
82
58
60
137
117
109
81
57
59
136
116
110
80
56
58
135
115
111
79
55
57
134
114
112
78
54
56
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
101
102
103
104
105
106
107
108
109
110
111
112
113
77
76
75
74
73
72
71
70
69
68
67
66
65
53
54
55
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
126
112
100
64
52
46
127
111
99
63
51
45
128
110
98
62
50
44
129
109
97
61
49
43
130
108
96
60
48
42
131
107
95
59
47
41
132
106
94
58
46
40
133
105
93
57
45
39
134
104
92
56
44
38
135
103
91
55
43
37
136
102
90
54
42
36
145
144
143
142
141
140
139
138
137
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
35
34
33
32
31
30
29
28
27
144
102
78
66
40
26
143
103
79
67
39
25
142
104
80
68
38
24
141
105
81
69
37
23
140
106
82
70
36
22
139
107
83
71
35
21
138
108
84
72
34
20
137
109
85
73
33
19
136
110
86
74
32
18
135
111
87
75
31
17
134
112
88
76
30
16
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
101
100
99
98
97
96
95
94
93
92
91
90
89
77
78
79
80
81
82
83
84
85
86
87
88
89
29
30
31
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
134
114
102
90
28
14
135
115
103
91
27
13
136
116
104
92
26
12
137
117
105
93
25
11
138
118
106
94
24
10
139
119
107
95
23
9
140
120
108
96
22
8
141
121
109
97
21
7
142
122
110
98
20
6
143
123
111
99
19
5
144
124
112
100
18
4
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
174
173
172
171
166
165
164
163
162
161
160
159
158
157
156
155
154
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
162
170
165
153
157
153
161
169
164
152
156
152
160
168
163
151
155
151
159
167
162
150
154
150
158
166
161
149
153
149
157
165
160
148
152
148
156
164
159
147
151
147
155
163
158
146
150
146
154
162
157
145
149
145
153
161
156
144
148
144
152
160
155
143
147
143
151
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
139
138
137
136
135
134
133
132
131
130
142
150
138
152
153
141
137
129
141
149
137
153
152
140
136
128
140
148
136
154
151
139
135
127
139
147
135
155
150
138
134
126
138
146
134
156
149
137
133
125
137
145
133
157
148
136
132
124
136
144
132
158
147
135
131
123
135
143
142
141
140
139
138
137
136
135
134
133
132
131
159
146
134
130
122
123
124
125
126
127
128
129
130
131
132
133
134
130
160
145
133
129
121
129
161
144
132
128
120
128
162
143
131
127
119
127
162
142
130
126
118
126
161
141
129
125
117
125
160
140
128
124
116
124
159
139
127
123
115
123
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
114
122
149
113
113
121
148
112
112
120
147
111
111
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
146
110
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
108
120
145
109
111
97
109
121
144
108
112
96
110
122
143
107
113
95
111
123
142
106
114
94
112
124
141
105
115
93
113
125
140
104
116
92
114
126
139
103
115
91
115
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
109
108
107
106
107
108
109
110
111
112
113
114
90
116
137
137
101
105
89
117
138
136
100
104
88
118
139
135
99
103
87
119
140
134
98
102
86
120
141
133
97
101
85
121
142
132
96
100
84
122
143
131
95
99
83
123
144
130
94
98
82
124
145
129
93
97
81
125
146
128
92
96
80
126
147
127
91
95
79
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
126
90
94
93
92
91
90
89
88
87
86
87
88
87
86
85
84
83
82
81
80
79
78
128
140
125
89
85
77
129
141
124
88
84
76
130
142
123
87
83
75
131
142
122
86
82
74
132
141
121
85
81
73
133
140
120
84
80
72
134
139
119
83
79
71
135
138
118
82
78
70
136
137
117
81
77
69
137
136
116
80
76
68
138
135
115
79
75
67
139
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
66
140
125
103
89
65
65
141
124
104
88
64
64
142
123
105
87
63
63
142
122
106
86
62
62
141
121
107
85
61
61
140
120
108
84
60
60
139
119
109
83
59
59
138
118
110
82
58
58
137
117
111
81
57
57
136
116
112
80
56
56
135
115
113
79
55
55
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
102
103
104
105
106
107
108
109
110
111
112
113
114
78
77
76
75
74
73
72
71
70
69
68
67
66
54
55
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
127
113
101
65
53
45
128
112
100
64
52
44
129
111
99
63
51
43
130
110
98
62
50
42
131
109
97
61
49
41
132
108
96
60
48
40
133
107
95
59
47
39
134
106
94
58
46
38
135
105
93
57
45
37
136
104
92
56
44
36
137
103
91
55
43
35
146
145
144
143
142
141
140
139
138
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
34
33
32
31
30
29
28
27
26
145
103
79
67
41
25
144
104
80
68
40
24
143
105
81
69
39
23
142
106
82
70
38
22
141
107
83
71
37
21
140
108
84
72
36
20
139
109
85
73
35
19
138
110
86
74
34
18
137
111
87
75
33
17
136
112
88
76
32
16
135
113
89
77
31
15
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
102
101
100
99
98
97
96
95
94
93
92
91
90
78
79
80
81
82
83
84
85
86
87
88
89
90
30
31
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
135
115
103
91
29
13
136
116
104
92
28
12
137
117
105
93
27
11
138
118
106
94
26
10
139
119
107
95
25
9
140
120
108
96
24
8
141
121
109
97
23
7
142
122
110
98
22
6
143
123
111
99
21
5
144
124
112
100
20
4
145
125
113
101
19
3
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
173
172
171
170
167
166
165
164
163
162
161
160
159
158
157
156
155
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
161
169
166
154
158
152
160
168
165
153
157
151
159
167
164
152
156
150
158
166
163
151
155
149
157
165
162
150
154
148
156
164
161
149
153
147
155
163
160
148
152
146
154
162
159
147
151
145
153
161
158
146
150
144
152
160
157
145
149
143
151
159
156
144
148
142
150
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
140
139
138
137
136
135
134
133
132
131
130
129
141
149
137
151
154
142
138
128
140
148
136
152
153
141
137
127
139
147
135
153
152
140
136
126
138
146
134
154
151
139
135
125
137
145
133
155
150
138
134
124
136
144
132
156
149
137
133
123
135
143
131
157
148
136
132
122
134
142
141
140
139
138
137
136
135
134
133
132
131
130
158
147
135
131
121
122
123
124
125
126
127
128
129
130
131
132
133
129
159
146
134
130
120
128
160
145
133
129
119
127
161
144
132
128
118
126
162
143
131
127
117
125
162
142
130
126
116
124
161
141
129
125
115
123
160
140
128
124
114
122
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
113
121
150
114
112
120
149
113
111
119
148
112
110
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
147
111
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
107
119
146
110
110
96
108
120
145
109
111
95
109
121
144
108
112
94
110
122
143
107
113
93
111
123
142
106
114
92
112
124
141
105
115
91
113
125
140
104
116
90
114
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
110
109
108
107
108
109
110
111
112
113
114
115
89
115
136
138
102
106
88
116
137
137
101
105
87
117
138
136
100
104
86
118
139
135
99
103
85
119
140
134
98
102
84
120
141
133
97
101
83
121
142
132
96
100
82
122
143
131
95
99
81
123
144
130
94
98
80
124
145
129
93
97
79
125
146
128
92
96
78
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
127
91
95
94
93
92
91
90
89
88
87
88
87
86
85
84
83
82
81
80
79
78
77
127
139
126
90
86
76
128
140
125
89
85
75
129
141
124
88
84
74
130
142
123
87
83
73
131
142
122
86
82
72
132
141
121
85
81
71
133
140
120
84
80
70
134
139
119
83
79
69
135
138
118
82
78
68
136
137
117
81
77
67
137
136
116
80
76
66
138
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
65
139
126
104
90
66
64
140
125
105
89
65
63
141
124
106
88
64
62
142
123
107
87
63
61
142
122
108
86
62
60
141
121
109
85
61
59
140
120
110
84
60
58
139
119
111
83
59
57
138
118
112
82
58
56
137
117
113
81
57
55
136
116
114
80
56
54
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
103
104
105
106
107
108
109
110
111
112
113
114
115
79
78
77
76
75
74
73
72
71
70
69
68
67
55
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
128
114
102
66
54
44
129
113
101
65
53
43
130
112
100
64
52
42
131
111
99
63
51
41
132
110
98
62
50
40
133
109
97
61
49
39
134
108
96
60
48
38
135
107
95
59
47
37
136
106
94
58
46
36
137
105
93
57
45
35
138
104
92
56
44
34
147
146
145
144
143
142
141
140
139
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
33
32
31
30
29
28
27
26
25
146
104
80
68
42
24
145
105
81
69
41
23
144
106
82
70
40
22
143
107
83
71
39
21
142
108
84
72
38
20
141
109
85
73
37
19
140
110
86
74
36
18
139
111
87
75
35
17
138
112
88
76
34
16
137
113
89
77
33
15
136
114
90
78
32
14
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
103
102
101
100
99
98
97
96
95
94
93
92
91
79
80
81
82
83
84
85
86
87
88
89
90
91
31
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
136
116
104
92
30
12
137
117
105
93
29
11
138
118
106
94
28
10
139
119
107
95
27
9
140
120
108
96
26
8
141
121
109
97
25
7
142
122
110
98
24
6
143
123
111
99
23
5
144
124
112
100
22
4
145
125
113
101
21
3
146
126
114
102
20
2
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
160
168
167
155
159
151
159
167
166
154
158
150
158
166
165
153
157
149
157
165
164
152
156
148
156
164
163
151
155
147
155
163
162
150
154
146
154
162
161
149
153
145
153
161
160
148
152
144
152
160
159
147
151
143
151
159
158
146
150
142
150
158
157
145
149
141
149
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
140
148
136
150
155
143
139
127
139
147
135
151
154
142
138
126
138
146
134
152
153
141
137
125
137
145
133
153
152
140
136
124
136
144
132
154
151
139
135
123
135
143
131
155
150
138
134
122
134
142
130
156
149
137
133
121
133
141
140
139
138
137
136
135
134
133
132
131
130
129
157
148
136
132
120
121
122
123
124
125
126
127
128
129
130
131
132
128
158
147
135
131
119
127
159
146
134
130
118
126
160
145
133
129
117
125
161
144
132
128
116
124
162
143
131
127
115
123
162
142
130
126
114
122
161
141
129
125
113
121
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
112
120
151
115
111
119
150
114
110
118
149
113
109
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
148
112
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
106
118
147
111
109
95
107
119
146
110
110
94
108
120
145
109
111
93
109
121
144
108
112
92
110
122
143
107
113
91
111
123
142
106
114
90
112
124
141
105
115
89
113
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
111
110
109
108
109
110
111
112
113
114
115
116
88
114
135
139
103
107
87
115
136
138
102
106
86
116
137
137
101
105
85
117
138
136
100
104
84
118
139
135
99
103
83
119
140
134
98
102
82
120
141
133
97
101
81
121
142
132
96
100
80
122
143
131
95
99
79
123
144
130
94
98
78
124
145
129
93
97
77
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
128
92
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
126
138
127
91
87
75
127
139
126
90
86
74
128
140
125
89
85
73
129
141
124
88
84
72
130
142
123
87
83
71
131
142
122
86
82
70
132
141
121
85
81
69
133
140
120
84
80
68
134
139
119
83
79
67
135
138
118
82
78
66
136
137
117
81
77
65
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
64
138
127
105
91
67
63
139
126
106
90
66
62
140
125
107
89
65
61
141
124
108
88
64
60
142
123
109
87
63
59
142
122
110
86
62
58
141
121
111
85
61
57
140
120
112
84
60
56
139
119
113
83
59
55
138
118
114
82
58
54
137
117
115
81
57
53
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
104
105
106
107
108
109
110
111
112
113
114
115
116
80
79
78
77
76
75
74
73
72
71
70
69
68
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
129
115
103
67
55
43
130
114
102
66
54
42
131
113
101
65
53
41
132
112
100
64
52
40
133
111
99
63
51
39
134
110
98
62
50
38
135
109
97
61
49
37
136
108
96
60
48
36
137
107
95
59
47
35
138
106
94
58
46
34
139
105
93
57
45
33
148
147
146
145
144
143
142
141
140
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
32
31
30
29
28
27
26
25
24
147
105
81
69
43
23
146
106
82
70
42
22
145
107
83
71
41
21
144
108
84
72
40
20
143
109
85
73
39
19
142
110
86
74
38
18
141
111
87
75
37
17
140
112
88
76
36
16
139
113
89
77
35
15
138
114
90
78
34
14
137
115
91
79
33
13
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
104
103
102
101
100
99
98
97
96
95
94
93
92
80
81
82
83
84
85
86
87
88
89
90
91
92
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
137
117
105
93
31
11
138
118
106
94
30
10
139
119
107
95
29
9
140
120
108
96
28
8
141
121
109
97
27
7
142
122
110
98
26
6
143
123
111
99
25
5
144
124
112
100
24
4
145
125
113
101
23
3
146
126
114
102
22
2
147
127
115
103
21
1
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-1
-1
-1
-1
0
© 2015 - 2025 Weber Informatics LLC | Privacy Policy