24
24
24
24
21
21
19
15
14
13
11
11
11
11
11
11
12
12
12
12
15
17
19
25
26
28
30
31
30
23
23
23
23
23
23
23
23
24
24
25
26
26
27
27
27
27
27
27
26
26
21
21
20
21
21
25
18
17
16
15
15
14
12
8
10
16
19
20
22
21
18
16
12
8
7
9
11
12
13
13
13
13
13
12
26
28
30
29
28
27
27
27
29
29
30
30
30
29
29
28
30
34
35
35
34
32
31
31
30
30
29
30
32
30
28
27
26
26
26
19
17
15
15
15
15
15
16
17
19
26
26
26
28
29
29
32
30
28
28
28
28
31
38
38
39
39
41
42
37
36
35
35
36
36
36
33
31
31
30
30
30
30
31
34
36
37
37
38
39
44
45
45
45
45
45
45
46
46
46
46
45
45
44
44
47
48
48
48
48
48
48
48
47
47
50
52
53
53
54
58
57
54
50
49
49
52
57
54
53
54
49
49
50
51
51
50
53
54
54
54
51
49
49
49
49
49
48
48
48
49
49
50
50
51
51
50
50
50
50
50
50
50
50
49
48
48
50
50
51
51
58
55
52
58
66
70
70
69
67
58
55
55
54
51
51
51
51
48
47
47
47
45
44
42
41
44
44
36
31
28
14
29
36
37
39
32
29
31
33
35
36
22
23
22
20
19
18
17
17
18
19
22
23
24
29
29
29
29
29
29
30
21
17
17
17
18
18
19
20
20
17
9
1
1
3
4
4
6
8
8
10
14
23
28
29
29
29
30
30
31
32
35
37
38
40
41
42
42
42
43
41
40
40
40
40
40
40
40
39
35
30
26
21
21
21
21
22
28
31
34
35
35
35
34
34
34
32
31
31
31
30
29
29
27
27
26
26
26
26
26
25
25
24
24
24
24
24
24
27
28
29
29
29
30
30
25
25
16
31
34
35
34
28
20
21
22
16
15
17
16
15
15
15
16
16
17
18
18
18
17
17
14
14
14
17
17
17
17
21
21
17
18
18
18
18
18
19
21
18
17
17
17
17
16
14
14
14
14
14
14
14
13
13
13
13
14
17
19
20
21
21
21
21
21
21
22
22
23
23
23
23
22
22
22
22
20
20
20
21
21
21
21
20
19
18
18
17
17
14
18
23
22
22
22
22
22
22
22
22
22
22
22
22
22
21
21
21
21
21
21
21
20
15
14
13
8
7
7
6
6
6
6
7
11
10
10
10
9
7
5
5
7
7
5
4
0
0
0
3
4
6
7
8
4
4
4
4
2
2
5
3
8
6
6
6
5
4
4
3
3
10
12
11
11
11
11
11
13
11
9
9
16
17
9
9
9
10
10
10
11
11
12
12
9
12
10
11
13
13
14
16
16
18
19
19
20
20
20
20
19
18
18
18
14
14
14
14
14
15
16
17
17
18
19
20
20
20
20
19
19
18
18
18
17
16
14
14
13
12
11
10
10
10
12
12
10
10
12
11
10
10
9
9
9
9
9
9
9
10
10
18
17
10
10
12
11
11
11
11
11
11
12
10
3
3
3
4
4
4
5
5
6
8
5
4
4
10
6
4
3
3
0
1
2
4
6
5
5
5
6
7
6
6
6
6
7
7
8
11
14
15
21
21
21
21
21
21
20
20
20
20
20
20
23
14
14
14
14
14
14
17
17
17
17
17
17
17
17
17
18
19
19
19
19
16
14
10
8
8
10
13
13
13
13
13
13
13
13
13
12
11
10
10
10
10
7
6
6
6
6
5
0
0
0
0
10
10
6
5
5
5
5
5
6
7
8
8
8
7
4
3
3
3
3
3
3
2
1
2
2
4
4
12
12
13
13
13
13
13
13
13
11
5
7
12
10
9
11
11
12
12
9
9
16
16
9
9
10
10
10
10
10
10
10
10
10
10
10
9
9
11
13
15
16
17
17
23
25
25
26
24
19
24
24
25
25
25
26
27
27
27
27
27
28
30
32
33
37
41
41
42
44
44
42
42
41
40
40
46
47
47
41
38
38
39
43
45
45
42
39
37
36
36
36
36
37
37
37
38
38
38
37
27
17
17
17
17
17
18
20
10
13
12
6
6
11
15
14
7
8
7
6
9
10
11
13
15
17
19
19
24
25
37
40
43
53
57
61
61
68
71
69
72
71
69
72
74
74
78
77
76
75
75
76
77
77
77
77
76
82
82
78
75
70
67
64
62
64
65
66
70
69
68
65
63
62
57
53
52
51
50
43
41
38
36
39
42
43
44
44
34
34
32
36
30
30
31
31
27
23
13
15
9
17
23
24
23
18
17
19
22
31
32
32
32
35
38
40
42
43
43
44
42
39
40
46
44
42
38
37
36
37
31
35
36
37
36
39
36
42
42
43
44
42
44
41
46
47
48
48
48
50
55
58
60
61
60
63
64
67
68
68
68
69
73
72
72
73
72
64
63
63
63
63
52
51
51
35
35
35
32
29
28
21
21
21
15
12
11
10
9
9
9
10
7
7
7
8
8
8
10
17
19
22
23
24
25
26
27
29
28
21
27
23
22
23
25
28
38
39
38
37
36
37
44
47
48
50
52
55
56
56
58
58
57
59
59
59
60
59
67
73
73
73
70
70
67
63
61
64
68
72
75
77
77
78
78
79
79
81
78
77
82
87
88
89
87
87
81
81
83
84
89
92
93
91
90
92
93
93
94
90
91
92
96
97
97
102
100
100
100
101
101
101
101
100
101
102
102
102
102
102
103
95
95
94
92
92
93
82
83
85
87
92
93
94
94
93
92
92
91
91
92
96
95
94
94
94
92
90
88
89
89
89
88
87
87
89
89
89
88
88
87
85
79
79
79
79
79
80
80
80
81
81
82
85
85
85
86
86
93
94
95
96
95
93
86
77
74
66
63
62
61
76
78
87
86
86
88
88
87
86
84
87
95
96
106
103
103
103
105
106
103
107
120
130
129
131
132
133
129
126
109
107
103
104
105
111
108
107
106
105
106
105
102
102
102
110
114
113
110
114
115
116
116
117
117
117
118
118
118
118
119
120
121
121
122
121
115
115
118
121
121
121
121
121
121
124
124
123
124
130
130
127
124
123
123
123
123
123
123
119
119
119
119
120
124
122
122
123
123
123
123
123
122
122
122
122
124
125
117
114
114
108
107
106
102
96
96
95
97
96
95
92
92
95
111
107
112
113
114
111
111
111
121
118
118
119
121
122
123
122
121
111
114
119
119
119
119
121
115
114
113
126
124
121
119
119
119
116
114
110
104
103
96
97
97
97
90
89
86
87
88
90
91
86
84
86
87
90
89
89
90
91
85
86
92
92
92
92
92
91
90
85
83
84
84
85
86
87
90
91
92
95
95
94
87
87
80
72
70
70
69
68
67
67
67
67
65
69
75
75
75
75
78
81
81
78
77
75
77
80
80
78
75
71
71
71
71
66
70
73
73
69
64
63
61
59
57
57
57
57
58
58
59
58
58
58
58
57
56
50
47
44
37
32
34
31
25
22
19
18
18
17
17
16
16
16
16
17
10
11
12
12
12
12
12
12
13
9
9
8
8
9
9
9
8
8
7
7
7
7
7
7
9
9
9
9
9
9
9
17
17
19
20
28
36
49
53
56
59
59
59
60
60
61
62
62
63
65
70
70
70
65
63
61
60
60
59
48
23
21
17
16
16
16
16
16
16
15
19
22
25
29
31
36
40
39
38
38
37
36
36
47
47
50
48
46
38
36
35
35
34
34
34
33
33
23
14
10
9
9
7
7
5
7
9
13
22
24
20
19
17
6
5
6
10
12
20
30
37
40
42
42
42
42
42
43
44
45
44
43
43
47
48
40
36
36
37
37
39
39
35
35
36
41
40
39
39
38
36
35
35
34
34
34
33
32
34
33
31
30
30
30
30
26
25
24
23
16
8
7
7
8
9
11
14
18
20
21
21
20
19
16
10
3
24
21
22
22
24
27
31
31
32
32
34
35
36
36
34
31
23
22
22
36
37
34
34
32
27
26
25
25
26
28
31
31
29
28
28
28
27
27
25
25
25
24
24
23
18
17
18
19
19
20
19
10
8
13
19
22
30
34
34
34
35
32
31
29
28
27
27
27
27
27
27
28
31
32
22
19
12
21
22
22
23
24
24
22
21
19
15
13
13
13
12
12
12
11
11
11
12
11
11
11
11
13
13
12
12
12
15
16
14
15
17
17
17
18
18
16
20
20
23
23
20
21
23
23
23
23
22
22
22
23
27
28
28
28
28
30
31
31
31
31
31
31
32
32
32
32
32
31
29
28
27
28
28
29
29
29
29
28
29
29
28
28
27
24
25
25
25
25
23
23
23
23
22
22
22
19
18
17
17
16
13
12
9
9
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
8
8
8
9
9
9
9
9
9
9
12
12
14
16
17
18
18
18
18
18
18
24
22
22
23
22
22
23
25
25
25
24
25
26
28
29
29
28
28
28
28
28
27
27
29
30
31
32
32
32
32
31
31
32
31
31
30
30
29
28
28
29
29
27
26
26
22
22
22
22
22
23
23
23
23
23
20
21
21
21
20
20
16
20
21
21
20
19
19
18
17
16
14
14
15
16
13
12
12
13
13
11
13
13
13
14
11
11
11
11
14
17
20
22
22
24
24
23
22
22
13
14
28
29
30
27
26
26
26
26
27
27
27
28
31
33
37
34
34
34
34
29
22
18
14
14
8
14
21
19
18
16
17
18
24
24
25
25
25
25
26
27
27
27
27
29
31
28
28
28
28
28
28
28
35
35
34
33
32
34
22
23
25
29
32
35
36
36
35
34
31
31
31
30
27
23
21
21
20
22
24
2
12
19
20
20
19
18
18
16
9
11
10
9
8
8
7
11
16
19
22
22
26
26
32
32
31
32
34
32
33
35
35
35
36
37
38
39
40
41
40
38
38
32
39
39
37
37
36
38
40
41
44
47
48
44
43
44
45
43
43
42
42
42
42
42
40
35
32
25
20
17
10
9
7
6
5
5
4
4
4
4
4
4
4
12
18
19
20
25
21
8
7
7
8
8
9
10
10
10
12
18
21
21
22
30
30
35
39
40
42
43
46
48
49
47
47
54
53
54
61
63
64
65
66
66
63
62
62
62
62
62
62
62
63
63
64
65
66
66
68
68
68
69
69
69
69
62
59
54
51
47
37
35
33
30
20
19
17
16
14
13
13
13
13
13
10
11
11
11
11
11
11
12
12
12
12
14
14
14
14
32
31
28
19
19
19
22
22
36
27
26
32
34
34
33
34
35
35
35
35
35
37
38
40
40
41
41
42
48
58
58
63
65
66
78
91
97
97
95
84
82
85
90
94
97
110
111
111
112
114
119
121
121
121
121
122
132
133
133
133
133
135
135
131
126
126
134
134
135
135
135
135
134
132
131
131
131
132
133
133
134
135
135
137
137
136
135
133
132
132
133
134
134
134
135
135
132
134
134
134
133
134
136
139
138
135
133
133
135
136
138
138
138
138
142
145
146
145
145
147
147
126
126
127
130
127
126
127
136
139
140
140
140
149
151
153
155
155
156
156
156
165
163
154
154
154
153
152
151
148
149
150
154
154
154
160
148
147
147
139
138
136
137
138
137
135
127
125
114
113
113
113
112
111
111
111
111
111
114
119
118
118
118
114
110
108
108
109
111
110
100
108
113
111
109
103
104
106
107
106
105
102
98
102
100
99
99
99
106
100
98
95
90
90
92
92
88
86
86
84
82
83
83
83
83
83
85
85
86
86
85
82
82
82
81
80
79
78
78
79
79
73
72
72
68
67
66
64
63
62
63
53
49
48
46
43
38
36
35
33
27
28
28
29
29
28
37
39
41
42
53
55
57
59
57
61
61
62
65
68
75
74
73
74
78
82
85
87
90
90
87
90
90
91
91
92
93
93
93
93
94
94
95
96
97
98
102
106
104
103
103
105
114
117
114
110
109
108
108
104
101
100
100
100
97
93
103
104
109
112
114
116
128
129
133
135
139
141
143
143
143
140
141
141
141
148
143
138
124
125
120
122
121
119
116
113
110
102
87
83
81
80
71
72
85
100
103
105
109
109
108
102
93
81
81
85
77
75
74
73
90
92
95
100
100
102
104
106
107
108
105
103
105
107
109
110
115
116
119
118
118
118
122
124
125
130
132
134
137
136
135
136
137
133
135
136
136
139
141
146
151
155
154
153
153
152
154
161
160
159
159
159
159
159
160
160
170
169
168
167
162
162
163
163
163
168
171
173
181
182
185
189
189
189
195
196
197
198
199
215
216
216
217
218
221
226
227
227
229
226
223
227
229
230
235
239
242
243
251
251
251
251
254
256
259
259
258
259
262
263
265
265
264
263
259
257
253
250
246
244
245
246
246
236
228
225
222
219
210
207
204
203
195
193
192
189
185
184
181
181
181
181
180
179
169
168
166
165
165
166
167
172
168
169
176
178
181
180
173
170
169
169
168
166
188
190
191
192
193
216
222
224
225
232
238
238
239
241
250
253
262
265
267
267
264
261
263
266
263
256
252
244
241
247
242
228
227
224
222
215
214
213
212
209
208
205
199
199
197
195
194
195
192
196
194
193
189
186
185
187
188
187
184
188
187
186
183
182
179
176
175
176
180
180
177
177
179
181
182
183
186
196
201
199
194
188
185
183
183
183
184
185
189
199
202
199
195
186
183
183
182
179
177
180
191
189
178
175
175
176
179
183
187
188
188
185
187
188
187
185
186
190
194
195
196
192
191
195
195
200
199
199
206
209
209
209
208
207
206
204
203
202
197
188
178
176
170
165
164
162
161
163
163
163
164
166
167
192
198
200
205
201
199
195
191
185
180
177
178
180
182
183
186
191
191
193
186
185
184
182
178
177
177
177
177
177
177
177
177
178
179
181
181
182
183
184
189
192
194
196
197
198
198
198
197
196
196
197
197
197
202
206
206
211
222
223
223
224
225
225
224
225
224
228
236
241
239
241
244
254
251
248
247
248
250
259
262
263
265
268
279
282
284
286
284
287
294
288
290
293
291
305
315
322
313
321
326
321
326
321
325
340
341
340
339
339
331
329
327
323
315
306
301
300
295
288
287
288
288
286
284
282
279
274
271
261
258
257
253
249
249
239
235
231
235
248
251
255
260
248
245
215
214
213
215
212
211
211
213
205
207
208
200
194
176
176
176
177
178
178
172
170
169
168
166
158
158
156
151
149
143
143
142
141
138
136
126
126
127
130
130
130
132
132
132
132
132
133
133
132
133
133
132
131
131
131
129
129
129
124
120
120
120
120
116
116
108
88
87
86
85
84
84
82
79
79
79
79
78
77
76
79
75
62
60
59
58
57
56
56
55
54
54
52
47
45
44
42
23
22
22
21
20
19
19
20
22
18
16
17
19
19
17
17
15
15
15
14
13
14
22
21
20
17
12
13
13
14
15
15
15
15
15
15
14
13
11
13
13
14
13
12
15
15
15
15
15
13
13
15
15
14
13
13
12
19
22
18
17
21
33
29
25
24
22
26
33
35
35
34
42
42
43
44
46
49
53
63
69
73
75
84
85
85
84
84
84
84
83
83
82
82
81
79
77
72
67
57
49
47
46
48
50
51
53
51
50
49
49
56
56
56
60
63
64
64
64
64
75
70
77
78
79
79
79
79
80
84
84
84
84
85
86
87
116
117
120
120
120
120
120
120
120
120
120
124
129
129
130
131
131
131
132
133
133
133
133
133
132
132
132
131
131
130
130
129
128
126
127
134
135
141
141
143
151
155
157
159
168
169
172
175
180
179
177
177
176
176
194
199
207
207
205
211
211
210
211
214
214
214
214
239
244
247
255
254
252
248
236
232
235
241
246
249
257
260
260
276
277
280
282
286
289
292
300
300
309
319
322
327
324
331
332
333
339
341
341
341
328
324
322
324
322
327
317
315
319
313
306
293
291
286
287
295
282
281
286
283
282
279
261
260
258
250
248
248
249
251
254
243
240
240
241
239
228
224
225
224
225
224
222
221
209
206
206
206
203
197
196
190
188
186
185
183
180
179
179
176
173
172
172
172
170
169
169
169
166
166
166
176
173
168
167
164
161
143
143
145
145
146
146
147
148
151
154
147
133
131
130
133
131
131
128
126
125
122
122
121
117
114
113
113
112
114
107
109
113
113
115
105
104
101
102
102
102
101
101
102
104
108
111
111
110
109
106
101
96
92
91
89
89
89
90
91
91
92
92
92
92
92
101
106
115
131
133
133
132
133
135
138
138
132
129
129
130
138
151
152
155
155
154
155
157
165
165
165
166
161
150
141
140
137
135
133
125
124
122
119
116
114
115
127
128
129
126
128
122
120
115
111
107
105
100
90
89
89
88
88
88
88
84
79
79
79
91
97
99
99
98
98
94
99
98
100
100
98
96
94
92
87
90
89
83
77
72
73
74
75
72
70
70
71
72
71
70
68
68
66
63
65
63
58
45
45
45
43
43
42
40
38
29
28
27
25
24
23
23
23
21
15
13
8
4
4
6
6
11
12
10
12
12
13
14
16
14
13
8
8
8
8
8
8
7
6
6
6
5
4
5
7
14
15
20
20
20
20
28
28
28
36
43
45
44
36
31
19
22
24
27
31
32
26
29
31
30
30
33
32
35
34
33
33
30
28
27
20
19
9
18
12
28
26
23
19
46
55
21
13
16
18
23
26
25
13
9
5
3
1
0
0
0
2
8
14
14
34
26
36
43
38
54
54
47
50
54
53
50
37
22
14
0
0
8
30
31
33
34
37
41
48
56
62
70
76
85
87
87
87
86
85
85
96
95
102
103
103
101
101
100
102
102
103
103
103
104
104
105
107
107
107
107
105
101
93
93
92
88
88
86
81
81
80
81
82
82
86
88
88
88
88
87
87
88
89
88
85
84
85
85
84
84
83
83
83
83
83
84
85
79
74
50
50
50
50
50
50
44
53
34
49
50
51
54
56
58
59
62
65
71
82
82
83
83
83
84
79
78
78
78
80
84
82
82
82
82
82
82
82
82
68
64
61
58
56
55
52
51
50
49
49
49
49
48
34
53
44
50
50
50
50
50
50
51
74
79
85
84
83
83
83
83
83
83
83
83
83
84
84
86
85
84
84
84
89
89
87
87
88
88
88
87
87
86
83
82
83
80
81
82
87
88
89
93
93
94
102
105
108
107
107
106
105
105
105
103
103
103
102
101
102
103
102
102
102
102
102
96
96
85
86
86
87
87
85
83
72
63
56
54
48
38
35
32
30
24
14
0
0
2
28
36
49
53
58
58
48
54
55
51
50
52
44
35
28
13
16
0
0
0
2
4
7
9
11
14
17
26
27
22
18
14
33
45
53
52
24
28
31
11
28
23
29
42
26
30
31
32
33
33
31
31
33
30
36
39
34
28
27
25
26
32
29
25
23
21
23
32
39
44
46
32
29
28
28
28
19
19
19
18
16
14
8
7
6
6
6
6
8
8
8
8
8
9
14
14
17
15
11
11
11
7
6
5
4
4
4
4
4
4
7
8
9
12
16
16
16
22
22
24
26
27
29
31
32
40
40
40
46
50
62
64
65
64
64
66
68
70
71
71
72
71
70
74
73
73
77
82
86
87
87
94
95
96
97
98
100
101
98
98
98
99
94
98
99
99
97
91
86
80
80
80
83
87
88
89
90
90
90
94
103
104
109
113
114
123
125
129
129
128
126
120
114
118
120
122
124
126
130
132
132
134
137
140
141
145
153
162
166
165
165
165
155
155
154
155
155
152
151
133
129
129
130
132
136
135
133
133
132
133
131
126
112
107
103
92
91
91
91
91
91
90
89
87
87
89
95
99
102
104
109
111
111
110
109
106
103
101
101
101
102
102
102
102
102
102
105
106
115
113
111
109
110
110
112
112
112
115
119
122
122
123
125
129
130
130
131
134
133
133
133
140
151
152
149
147
146
148
149
141
142
144
163
166
167
168
169
169
165
165
168
169
169
170
171
173
174
175
176
176
177
180
181
184
185
185
189
190
194
198
201
205
206
206
211
222
223
224
224
224
225
225
229
237
240
236
240
245
253
250
247
246
248
252
260
262
263
277
283
285
282
283
285
282
292
288
292
304
311
309
308
313
317
312
320
329
330
324
338
341
343
343
343
332
331
321
322
327
323
310
299
295
294
291
288
287
286
285
281
277
275
274
270
264
260
259
256
252
249
239
234
230
237
250
253
255
258
247
243
214
214
214
212
211
211
211
212
207
207
202
195
193
176
177
177
177
180
179
174
171
168
168
158
156
154
151
142
141
138
134
134
126
126
128
129
130
130
132
132
132
132
132
133
133
133
133
132
131
131
131
131
129
129
128
123
120
120
120
120
117
117
109
86
86
85
84
84
84
84
80
79
79
79
79
79
77
74
76
64
64
63
61
56
55
54
51
48
50
52
49
46
44
40
28
25
24
24
24
24
24
24
24
22
16
17
19
19
29
27
15
16
18
20
21
22
19
16
16
18
19
13
13
14
15
15
14
14
12
13
14
16
11
10
10
10
10
10
12
7
7
13
16
10
10
12
15
20
24
26
28
31
39
42
47
48
49
50
49
53
54
54
54
54
54
54
54
54
55
55
57
61
64
66
68
69
75
76
78
79
79
80
81
83
86
87
86
86
68
67
62
59
57
57
48
45
35
34
30
28
28
27
22
25
26
28
34
37
40
40
39
34
32
31
31
29
26
26
26
26
27
29
34
35
37
37
38
39
43
45
46
50
52
59
61
64
70
72
73
75
77
78
82
95
98
98
98
103
103
104
106
110
115
117
116
116
116
117
121
126
124
122
111
104
112
112
114
116
116
116
116
116
116
116
116
116
116
116
117
117
117
116
115
113
109
103
103
103
102
99
99
99
99
104
103
101
101
101
100
90
88
85
83
81
81
71
63
58
56
56
51
50
49
48
39
38
31
31
32
32
13
13
12
10
19
32
34
37
44
46
47
48
49
46
44
42
39
35
32
30
26
24
24
25
33
33
30
30
31
32
32
33
38
39
39
44
46
48
49
54
54
54
55
54
54
49
48
47
43
40
42
45
42
40
34
29
22
20
19
18
20
21
18
13
11
12
10
6
9
0
0
0
3
8
11
6
0
4
4
2
0
1
2
1
16
14
6
6
9
6
10
12
9
12
18
31
34
27
27
27
27
28
31
33
41
50
49
52
57
59
65
76
78
79
81
82
82
84
87
88
89
92
94
96
96
96
97
98
98
100
105
110
111
111
112
117
117
117
116
115
113
110
103
98
97
93
92
92
87
86
83
83
86
88
88
89
94
95
96
97
97
97
98
98
98
98
97
97
98
99
99
99
99
99
99
99
99
99
94
93
85
82
77
74
68
62
49
40
39
35
35
24
16
8
4
2
2
3
3
4
4
4
5
6
6
16
19
21
21
21
19
13
8
4
4
4
4
4
4
4
4
4
4
3
5
7
10
18
28
32
37
40
47
51
61
65
74
82
88
90
94
96
97
98
99
99
99
99
99
99
99
97
98
98
97
97
97
97
98
96
95
93
92
89
87
85
83
83
87
89
91
93
93
98
99
103
110
113
117
117
115
111
110
110
109
103
99
98
96
95
93
92
90
90
89
87
86
85
82
81
80
79
76
74
71
65
58
53
51
51
49
41
28
27
27
27
27
28
29
24
23
25
15
11
15
0
9
9
6
4
4
4
3
1
0
3
4
4
2
8
13
1
0
0
0
0
0
5
10
12
10
13
16
20
10
11
18
23
26
29
37
37
42
43
43
42
41
43
48
50
50
54
54
55
54
52
52
48
48
46
42
38
37
36
31
31
31
30
30
30
30
31
33
31
24
24
25
27
33
36
37
40
42
45
48
47
46
45
44
44
36
32
30
19
13
13
15
28
29
30
33
38
39
50
50
52
53
57
59
61
63
68
82
83
84
86
89
92
102
101
101
101
104
103
101
98
98
99
99
100
102
103
104
105
111
114
117
117
117
116
116
116
116
116
116
116
116
116
116
116
117
117
111
110
110
104
109
111
120
123
125
125
116
116
116
116
116
114
110
103
103
98
98
98
95
78
77
73
71
69
69
67
62
60
57
48
47
45
45
42
37
37
37
34
34
35
29
28
27
27
27
28
32
35
36
38
39
29
32
34
32
26
23
21
21
26
27
28
30
37
38
45
55
59
58
61
66
68
70
85
88
88
86
86
84
82
79
78
77
76
76
75
72
66
64
61
61
56
56
56
54
54
53
52
50
49
46
43
41
38
35
29
27
17
15
13
12
11
11
9
7
8
10
11
10
12
13
15
15
15
15
15
13
11
10
18
13
13
15
15
14
13
13
19
20
22
21
17
20
24
35
28
24
23
22
27
34
35
33
36
42
42
44
45
46
49
53
58
70
74
76
85
85
84
84
84
84
83
83
82
82
81
81
79
76
71
66
56
49
47
47
49
51
52
53
50
49
48
50
57
57
57
62
63
64
64
64
65
75
71
77
79
79
79
79
79
80
84
84
84
84
85
86
88
116
117
120
120
120
120
120
120
120
120
120
124
129
129
130
131
131
131
132
133
133
133
133
133
132
131
131
131
131
130
129
129
128
126
127
135
135
141
142
143
143
152
154
157
159
161
168
169
172
173
175
180
178
177
176
176
176
194
200
207
207
205
211
211
210
211
215
213
214
214
239
245
247
254
253
252
248
235
232
236
241
246
249
258
260
260
277
278
280
284
287
290
293
300
300
309
319
323
327
323
332
332
334
340
341
342
342
342
343
344
344
344
345
345
345
346
341
342
345
347
344
342
339
340
337
332
334
333
329
293
291
293
289
290
292
289
290
289
290
289
287
284
284
285
281
280
280
290
292
291
288
283
275
273
271
262
263
266
268
277
279
282
284
287
293
287
295
295
295
296
295
291
290
290
289
288
287
279
280
284
285
288
291
289
289
286
284
282
279
275
269
264
264
264
263
261
244
244
241
243
244
240
240
242
236
210
222
220
219
202
198
193
188
184
182
181
180
177
175
163
165
166
167
168
168
167
159
156
156
157
158
158
158
157
153
156
159
163
159
154
142
141
140
138
136
136
135
132
136
137
137
138
139
134
132
128
126
123
122
121
115
116
117
118
116
115
110
109
107
105
104
106
108
106
105
103
101
100
100
95
92
89
73
74
75
77
84
88
82
88
98
108
110
109
105
103
99
84
74
74
71
71
81
80
83
86
87
93
105
109
113
119
122
122
125
123
130
136
138
144
148
145
142
143
140
143
143
143
143
143
143
143
143
149
155
153
152
151
150
148
147
145
147
146
141
139
137
136
136
136
136
139
133
135
137
137
138
139
134
134
138
140
140
139
143
146
146
144
136
134
134
136
140
141
140
137
135
135
131
131
127
122
119
105
96
96
99
105
106
106
107
110
109
102
93
94
90
80
77
72
70
69
69
70
71
72
77
81
81
81
81
81
83
81
81
74
67
58
64
54
46
46
43
43
41
40
39
39
39
39
42
43
44
20
19
17
9
9
8
9
9
9
9
9
10
14
16
17
17
18
20
23
23
23
24
31
33
37
38
40
40
52
52
55
58
59
62
69
73
87
88
89
91
98
99
113
118
131
134
134
138
141
143
146
148
150
153
156
162
171
172
173
176
178
184
187
190
191
194
196
197
197
196
196
177
176
170
169
166
162
141
136
133
133
130
127
125
124
122
119
118
112
111
109
106
106
107
102
101
101
101
101
102
102
101
98
96
96
96
95
91
91
94
101
102
104
106
107
107
108
108
109
116
115
116
118
118
118
115
114
111
111
89
73
74
88
90
91
92
93
92
92
92
85
84
83
83
83
83
82
82
82
77
76
74
75
74
73
72
71
69
68
62
45
42
40
39
37
46
52
57
62
69
72
73
74
73
71
70
85
90
92
100
102
100
98
94
87
87
86
86
79
78
78
78
80
79
76
75
75
74
67
60
57
51
45
42
41
41
40
39
37
30
24
21
21
20
20
20
18
16
13
6
5
9
13
18
21
25
23
28
33
31
46
50
59
64
65
66
69
70
69
70
72
69
66
63
61
59
55
52
47
42
34
30
31
32
35
43
47
53
55
64
64
66
68
70
72
74
74
74
75
73
68
59
58
53
52
51
51
50
48
46
43
40
28
29
39
40
41
42
43
44
44
44
45
45
47
40
35
37
39
41
42
45
49
56
59
60
63
66
74
91
91
89
87
93
93
95
99
107
113
118
116
117
119
130
138
142
145
148
147
146
146
149
156
143
143
150
152
146
149
148
146
147
148
147
129
127
128
130
133
143
146
149
151
153
153
152
146
141
141
143
144
139
139
144
153
154
149
147
147
146
146
148
147
146
154
147
144
141
137
131
119
119
117
115
115
116
116
110
106
105
105
107
110
107
105
97
97
94
88
88
88
88
88
88
89
90
91
92
93
94
94
94
95
95
97
97
98
100
100
100
101
101
101
102
100
99
95
93
93
92
88
86
79
84
66
64
65
68
63
63
64
67
67
63
61
62
66
67
67
70
70
65
56
47
47
47
49
51
53
54
55
59
64
67
69
66
57
57
60
62
62
58
51
46
8
7
6
6
6
7
7
7
7
7
7
7
7
7
7
8
8
7
3
8
11
12
12
12
13
13
12
14
25
25
25
24
22
18
19
19
21
22
18
16
16
16
16
19
23
36
42
45
47
51
52
54
55
57
58
58
57
56
55
55
56
56
58
59
63
63
66
66
67
68
69
69
69
69
69
60
57
53
50
45
35
34
31
28
19
17
16
15
14
13
13
13
13
13
10
11
11
10
9
9
9
16
16
17
18
18
19
19
24
27
30
32
34
35
36
37
38
40
44
47
47
48
49
49
49
49
50
50
52
56
56
57
57
58
58
59
58
59
61
64
62
57
55
53
51
66
73
76
83
81
82
89
91
88
95
98
99
100
100
100
100
99
99
98
98
100
103
105
107
108
107
107
107
106
107
108
106
106
108
110
110
110
111
111
110
106
99
102
102
102
99
97
98
99
100
100
107
110
114
117
119
118
118
114
115
117
120
129
138
140
140
141
142
143
143
142
142
142
148
152
151
151
154
155
155
153
153
155
159
156
157
159
159
159
159
159
159
160
162
161
161
161
160
160
162
162
163
163
163
163
158
161
164
166
168
173
175
180
180
179
182
187
189
190
192
192
189
192
197
201
202
208
209
211
212
213
218
224
224
224
224
224
224
226
227
227
226
227
226
225
224
223
229
230
233
234
235
236
229
227
227
225
225
226
224
229
230
231
241
242
237
237
238
234
236
237
237
238
237
245
243
244
243
243
241
240
237
232
228
223
219
219
217
208
206
205
203
206
204
199
194
193
191
191
188
185
185
184
182
178
170
167
165
165
165
164
165
168
168
167
168
169
169
169
169
170
171
171
171
171
171
173
177
178
178
178
180
181
181
181
181
180
181
179
179
178
165
157
157
161
164
163
160
157
157
154
152
152
149
149
150
151
151
151
147
139
139
135
126
124
123
121
121
126
129
126
126
137
140
141
144
143
143
142
142
142
143
143
144
145
145
145
143
138
140
142
140
140
143
144
144
143
142
142
144
144
145
145
146
149
150
153
154
154
153
152
149
149
149
149
149
150
155
155
154
153
152
152
152
152
152
152
153
155
158
159
159
161
167
172
177
183
200
196
195
191
189
188
190
190
188
185
187
182
182
183
169
171
171
170
174
174
176
175
175
174
167
164
166
205
204
204
206
204
204
204
205
206
206
209
210
211
210
202
202
216
232
246
254
263
263
263
268
268
268
268
274
279
279
278
278
279
287
292
288
283
271
270
268
274
274
270
269
279
281
285
284
281
270
267
267
258
257
251
240
245
251
252
250
247
235
237
238
237
238
240
240
240
240
240
240
240
240
237
229
222
221
220
219
218
218
217
216
215
214
210
207
199
198
193
191
189
188
192
192
192
196
196
196
196
196
196
200
202
202
203
206
215
208
206
204
201
199
198
197
197
197
202
203
207
210
209
214
215
217
218
221
223
224
224
224
223
222
222
221
220
220
219
219
210
208
204
202
200
197
191
194
201
204
196
196
195
202
209
215
210
210
200
201
197
193
191
190
188
176
175
175
175
175
175
175
175
174
173
172
169
165
165
164
163
162
158
158
157
157
157
157
157
158
160
163
165
171
168
168
172
170
165
161
159
159
155
155
155
154
147
146
148
150
147
157
165
168
176
183
186
188
186
183
175
174
172
172
171
169
169
169
164
158
156
156
156
156
178
184
184
185
197
207
208
208
208
210
210
205
201
202
209
218
215
214
216
216
195
192
191
183
182
182
188
191
188
187
186
171
171
171
179
182
182
181
176
177
177
179
178
178
179
181
184
189
191
191
193
193
193
198
198
199
203
207
209
209
209
208
214
216
220
220
220
210
206
206
204
203
203
211
213
204
203
203
207
210
217
216
219
216
240
245
244
241
268
264
263
263
265
246
244
244
244
246
246
245
243
236
235
237
239
235
228
213
194
192
192
189
208
212
207
196
193
184
183
181
180
179
178
177
177
174
174
157
152
151
162
161
158
152
143
138
140
140
141
153
150
144
139
134
135
140
144
155
155
157
179
182
185
186
188
189
190
190
189
189
188
188
187
187
187
187
187
187
186
190
192
192
189
188
189
190
190
190
189
188
188
190
189
188
187
187
187
185
184
183
181
176
176
176
167
166
159
159
158
157
156
155
155
155
155
155
155
148
145
145
146
153
154
157
158
161
162
162
162
162
155
155
155
155
155
155
155
155
155
156
156
156
155
151
149
129
126
125
118
115
106
107
108
115
124
125
126
126
126
127
127
127
127
128
129
129
144
144
143
128
124
119
112
105
99
95
95
95
94
93
93
92
92
98
102
90
87
85
70
69
68
57
49
47
38
41
42
42
40
35
35
30
24
22
16
15
11
11
11
11
11
11
7
7
7
7
15
24
26
26
27
27
37
39
39
38
38
37
37
37
37
37
36
35
32
32
32
32
32
32
32
36
38
40
41
51
50
50
50
49
49
46
45
45
45
45
45
45
45
48
50
52
53
51
47
43
42
48
52
54
58
68
68
69
71
74
77
77
76
75
72
72
71
70
69
65
66
67
66
66
66
65
66
71
71
71
71
70
53
51
48
48
48
48
48
48
47
49
51
52
53
53
53
51
53
58
61
62
62
61
54
53
52
50
52
55
57
61
61
61
61
61
61
61
61
61
61
61
61
62
60
60
48
44
42
42
43
50
52
52
52
57
58
58
58
57
56
55
55
55
52
50
50
47
49
51
54
60
60
60
60
60
60
61
61
61
61
61
61
64
68
70
73
76
76
77
77
80
79
78
66
64
64
61
62
64
63
60
60
59
59
60
60
59
69
67
66
66
68
72
73
77
78
79
83
81
80
78
65
55
51
50
50
47
46
45
45
46
48
54
57
58
58
59
63
79
83
83
85
86
87
87
79
76
74
72
78
81
82
82
82
83
79
70
71
71
71
71
70
69
67
62
62
48
47
47
47
47
49
49
49
48
48
48
48
47
45
44
42
41
42
48
54
55
56
57
59
61
63
65
66
66
66
66
65
63
63
64
58
58
57
57
57
57
57
56
55
55
54
54
53
51
49
43
37
31
24
20
15
12
11
11
10
9
9
9
9
9
9
9
9
9
9
9
7
6
6
8
8
5
6
4
4
4
5
15
31
36
39
41
41
40
40
41
40
39
48
48
48
41
39
39
39
39
39
41
28
27
25
20
20
20
21
21
21
22
23
23
23
18
5
4
4
8
11
11
11
11
15
16
16
17
17
18
18
19
23
24
24
25
26
29
29
29
29
29
29
29
29
28
28
28
28
28
28
22
18
18
18
37
39
36
34
26
25
24
21
19
17
20
21
26
30
32
32
33
34
35
35
39
40
50
50
52
54
54
54
55
68
66
66
66
56
56
58
57
51
49
48
48
48
48
48
48
48
48
46
46
46
46
44
39
39
42
45
36
29
24
16
17
18
19
12
7
4
2
5
9
10
11
14
17
19
14
11
13
15
21
23
25
27
29
30
31
32
35
40
40
39
37
36
36
32
33
33
32
32
32
34
34
35
36
38
37
37
40
40
39
39
38
38
38
38
38
38
39
39
39
39
37
35
33
23
23
23
22
22
28
26
10
20
28
29
31
29
27
29
31
31
32
31
29
27
23
23
22
29
34
38
40
40
41
40
41
42
44
43
45
45
45
45
46
47
49
51
52
54
54
54
53
50
50
50
50
50
50
50
50
50
50
50
50
48
48
47
47
46
44
40
35
33
28
28
22
16
4
5
5
5
4
4
4
5
4
3
3
3
4
4
5
6
7
7
7
8
6
7
7
8
7
4
3
7
6
4
8
5
6
6
6
6
7
8
8
8
8
8
8
4
5
4
4
4
4
6
5
5
7
6
6
6
6
6
5
7
6
5
4
4
4
4
4
4
4
4
3
4
4
4
3
3
4
4
6
5
5
5
4
3
4
9
9
8
9
13
15
18
18
25
28
16
16
27
24
17
15
18
14
10
18
16
31
17
14
10
10
10
10
9
9
9
10
10
7
7
7
7
26
19
12
17
13
9
13
10
8
8
9
9
13
12
12
12
7
7
5
5
6
7
7
8
8
8
7
6
6
6
6
6
6
5
5
6
5
5
5
5
6
7
8
8
8
8
8
10
10
10
8
7
7
8
9
9
9
9
9
8
8
7
7
7
7
8
9
10
9
7
7
8
7
8
8
8
7
8
6
6
7
6
6
6
6
8
8
8
8
7
6
6
6
6
8
6
6
5
7
7
7
6
6
5
7
7
6
6
6
3
4
4
6
6