14
14
23
23
18
16
16
16
16
19
19
18
9
8
8
8
8
15
16
17
17
17
25
27
29
35
35
37
39
40
53
55
55
56
56
58
55
57
55
52
44
43
43
43
55
70
77
79
82
84
85
84
77
73
59
56
58
62
64
60
62
64
39
37
37
50
16
16
16
16
17
18
18
19
33
33
35
40
44
43
43
55
48
44
44
42
42
42
42
42
43
44
43
42
33
35
35
34
34
34
34
43
44
30
31
33
34
35
35
37
38
42
45
48
50
51
52
45
44
43
42
36
34
27
27
27
31
35
37
38
39
40
40
43
45
46
49
50
46
46
47
46
41
41
41
47
52
53
54
55
55
58
69
79
82
82
77
76
75
74
73
70
68
65
43
40
26
27
33
34
34
35
37
38
39
39
39
42
39
38
38
39
41
42
42
44
45
45
46
47
64
66
75
75
71
72
72
70
68
67
67
67
66
67
68
68
66
67
67
68
67
67
67
71
72
72
72
71
70
69
69
68
82
81
84
83
82
83
87
90
93
94
95
96
104
106
106
103
101
97
95
93
90
89
85
81
79
79
79
80
80
78
77
77
76
73
73
73
81
82
83
85
86
86
87
87
88
89
89
86
84
84
75
75
83
86
86
76
72
69
69
66
63
65
65
63
60
45
45
39
38
39
39
38
34
24
23
23
23
24
26
26
23
20
16
16
14
14
15
15
16
17
18
18
17
16
15
15
15
17
19
28
36
37
37
45
46
47
51
52
56
61
65
73
80
81
83
83
84
86
87
87
87
90
93
94
95
98
98
100
101
98
96
96
96
96
95
95
94
89
89
86
83
80
80
80
80
76
74
72
64
61
61
61
58
57
54
53
49
48
45
44
43
44
44
41
38
36
29
26
25
23
22
21
21
22
23
24
24
26
30
31
30
29
30
31
31
31
30
29
28
28
29
30
33
35
33
28
26
26
24
23
20
17
15
19
20
20
20
19
19
19
19
22
22
18
15
15
17
18
17
13
13
13
11
11
12
13
13
12
12
16
13
14
16
15
14
19
19
17
15
16
18
19
22
23
27
33
32
31
29
24
23
28
28
29
33
32
31
34
34
36
36
36
33
30
31
33
37
35
32
32
31
32
39
37
38
34
32
32
37
39
39
38
39
38
38
38
38
38
37
36
35
37
40
39
41
45
45
44
43
41
43
43
44
47
48
47
47
47
47
46
50
47
49
49
49
51
51
53
56
65
65
64
63
64
63
63
64
65
66
67
70
72
72
71
71
71
72
73
72
75
75
75
75
81
83
85
87
88
93
93
92
88
88
90
91
95
97
101
102
104
107
106
108
106
105
106
109
104
104
109
110
110
110
109
109
112
114
117
123
123
123
126
126
129
130
131
133
138
138
144
150
151
152
158
160
166
167
169
185
185
185
185
185
194
197
197
197
197
196
196
194
194
181
182
182
181
171
169
166
161
158
157
158
157
158
157
157
155
154
153
152
151
151
150
147
139
138
136
135
134
134
134
127
126
135
136
136
135
132
131
131
131
131
130
135
132
127
126
127
127
123
119
118
118
118
118
118
117
116
114
113
112
111
111
110
109
110
111
110
109
108
107
113
113
115
117
118
123
127
129
131
130
134
139
134
127
129
125
137
135
131
131
134
135
135
134
130
130
131
129
131
133
132
135
137
131
134
136
142
153
156
156
158
158
162
163
163
163
165
177
182
192
195
189
188
184
177
173
172
171
170
167
165
165
167
166
164
163
162
160
157
155
154
153
153
153
153
154
155
156
156
152
150
150
150
150
152
154
158
158
160
163
165
166
166
170
177
178
181
180
180
176
175
174
173
172
171
168
163
161
159
155
150
146
142
141
129
126
129
131
138
142
142
142
141
141
140
138
136
136
137
138
138
140
143
143
144
146
146
146
149
151
151
152
154
157
161
164
164
164
165
166
167
167
166
164
165
165
165
162
161
159
152
147
145
136
135
130
129
128
120
118
115
112
110
110
109
108
104
101
98
95
93
91
89
85
81
80
78
77
74
71
70
68
54
52
51
49
48
49
50
51
51
52
51
53
53
54
59
60
69
67
66
71
71
73
76
74
73
69
66
73
72
72
70
69
70
75
70
70
69
70
71
69
68
68
70
70
69
66
66
73
74
73
73
73
76
78
75
72
72
75
74
83
85
85
83
82
87
90
89
89
93
91
87
81
80
82
86
90
85
80
82
83
84
83
80
83
82
82
82
82
82
82
82
83
84
84
86
91
92
95
98
99
100
101
99
97
96
97
99
100
99
99
100
97
99
100
95
86
86
86
88
90
89
88
87
87
88
88
88
89
91
93
92
87
83
84
85
83
86
86
84
81
81
84
86
88
89
90
90
86
84
83
82
83
96
97
97
97
96
93
89
87
86
86
87
87
89
89
89
89
89
89
89
89
88
87
85
84
83
85
89
92
87
89
86
80
83
89
90
92
92
92
92
90
87
82
81
81
82
84
84
85
86
86
85
83
81
81
82
83
84
85
87
88
86
85
82
86
88
90
89
87
83
79
80
85
86
88
89
90
90
89
87
84
81
82
90
93
97
96
96
97
96
96
96
96
96
97
98
99
97
95
95
95
92
92
94
94
94
92
89
80
80
80
79
78
78
78
80
82
83
83
84
82
82
83
83
84
85
87
101
101
104
106
107
105
104
102
101
101
99
98
98
100
100
99
99
99
98
98
98
105
108
108
108
111
112
113
114
114
118
121
124
129
137
138
141
142
145
146
148
148
147
153
153
158
157
154
154
154
170
163
164
166
162
166
169
169
168
165
165
163
162
167
171
171
171
171
173
174
178
178
179
178
175
175
178
178
178
178
178
179
179
177
177
177
180
182
180
181
182
183
183
184
185
185
187
187
187
189
190
190
192
192
194
194
198
197
195
207
214
223
227
230
232
232
242
242
247
258
266
263
262
262
264
264
263
262
261
257
253
251
243
242
227
224
221
222
223
224
228
239
238
235
235
235
232
229
229
224
223
218
218
214
210
204
202
193
193
199
197
207
205
205
203
203
204
203
201
201
207
202
202
202
202
201
200
199
199
199
200
199
200
201
200
199
199
197
198
203
204
204
203
202
201
195
193
188
184
181
180
176
169
169
155
153
152
152
150
148
138
135
135
135
129
129
129
129
130
131
131
131
129
128
128
127
127
127
127
127
127
127
124
124
124
124
124
124
123
123
123
123
123
123
123
124
123
121
120
118
108
107
102
99
104
111
111
114
108
107
105
104
104
100
99
101
101
97
96
99
104
102
100
94
93
91
92
90
88
87
87
88
88
88
87
87
86
83
83
86
87
87
87
87
87
87
87
87
88
88
88
88
89
91
92
93
93
88
89
90
91
91
91
88
88
88
89
86
86
86
84
79
77
76
75
75
73
73
71
68
67
67
67
67
69
67
66
67
68
68
69
70
71
71
71
67
67
67
67
61
60
59
59
64
64
61
61
57
57
57
57
57
54
50
48
48
50
53
53
51
55
54
53
52
54
55
55
54
54
54
53
52
51
48
47
38
38
38
44
41
40
36
36
34
34
34
33
32
31
30
30
30
30
30
26
25
26
26
25
25
23
17
15
15
15
17
18
19
19
20
25
23
22
21
20
20
20
20
19
16
16
16
16
19
19
15
15
15
14
14
13
11
12
12
8
9
11
11
12
14
14
13
7
7
8
9
11
12
11
20
21
24
24
25
21
11
14
12
14
10
11
7
6
4
2
3
3
3
3
3
3
3
6
6
10
13
13
13
13
19
18
16
15
13
12
11
13
17
19
20
19
21
19
16
19
16
22
23
27
17
15
16
19
18
14
12
11
11
11
14
16
16
16
16
17
19
21
31
31
29
27
23
24
28
29
29
28
24
49
53
47
56
53
44
56
64
63
64
70
71
71
72
85
90
95
109
110
108
107
101
99
97
99
104
115
118
118
121
123
149
150
176
184
184
193
199
204
211
214
216
218
217
216
215
213
213
213
211
208
208
208
209
208
207
209
210
211
209
206
211
208
206
205
205
212
209
210
211
213
215
211
205
205
206
204
205
210
211
211
211
208
211
215
217
217
218
219
222
226
227
232
235
238
239
243
243
243
242
242
243
244
244
242
239
240
243
243
244
231
228
227
228
214
205
203
200
200
201
201
195
189
187
184
184
182
182
182
186
186
186
187
187
203
199
218
214
217
221
219
220
220
221
219
218
216
216
216
214
208
206
204
203
203
201
193
189
187
187
182
179
177
178
177
176
175
174
173
166
165
165
164
162
157
155
132
131
129
128
124
123
124
124
123
123
121
115
118
118
115
113
112
113
114
91
88
80
77
68
65
61
61
61
63
69
76
84
84
84
84
84
86
91
92
91
91
91
92
92
93
92
89
85
84
80
81
76
73
69
69
69
68
68
67
65
54
53
51
49
47
45
41
30
28
20
20
19
18
20
21
22
25
25
25
25
24
25
23
23
26
28
29
33
33
24
24
26
26
28
26
29
30
30
29
27
27
27
27
28
28
29
30
30
31
32
35
38
41
41
44
48
48
48
47
43
42
43
43
44
45
45
52
44
43
45
49
51
56
60
62
65
65
65
69
72
72
71
72
75
82
85
85
86
87
96
98
98
99
99
99
98
98
98
99
101
108
109
109
110
115
103
105
99
91
78
80
78
77
73
51
51
51
32
29
26
23
19
17
16
13
8
8
8
8
8
8
8
8
10
11
10
9
8
8
8
7
7
7
8
8
9
9
9
11
15
17
16
16
17
16
13
15
16
16
13
12
15
16
16
19
12
12
10
10
9
8
8
5
5
8
9
22
43
48
52
58
62
69
77
87
92
97
99
99
103
108
108
109
110
111
112
116
119
119
119
119
119
119
120
124
124
109
103
92
82
81
78
76
74
68
65
64
60
55
53
47
46
46
46
44
43
43
43
39
29
29
29
29
31
33
30
29
29
27
28
28
28
27
27
27
27
27
26
25
25
25
24
10
9
7
7
7
8
9
9
8
8
8
13
17
18
17
15
6
5
5
4
5
6
15
17
18
20
22
31
32
38
36
33
32
39
45
39
37
52
52
53
55
47
47
47
46
45
45
44
35
28
22
16
10
9
7
6
5
5
4
6
7
8
12
17
22
22
19
18
18
18
20
21
23
26
29
30
33
36
38
41
44
54
55
57
63
66
67
72
84
85
90
95
98
112
115
119
122
125
131
142
163
177
179
183
188
195
197
199
206
206
205
205
198
193
190
187
187
187
183
183
181
179
178
168
163
156
153
149
145
144
143
143
143
143
139
112
112
102
101
94
85
84
56
34
29
28
27
23
20
20
19
19
17
16
19
20
20
20
22
13
8
7
10
3
9
7
7
15
6
9
7
16
28
23
6
4
11
12
12
13
14
16
9
9
9
9
9
10
9
9
9
9
9
7
5
5
5
5
5
5
5
5
7
6
6
5
5
5
5
5
5
5
5
5
5
5
5
8
8
8
6
6
4
7
8
12
13
9
7
7
7
7
11
12
13
11
13
14
22
23
28
30
23
17
16
17
17
20
21
21
21
21
21
21
21
21
22
31
34
38
38
40
43
51
53
47
57
57
56
52
37
36
47
57
71
86
94
70
70
61
49
41
42
49
45
44
41
40
38
37
36
31
27
27
26
24
24
24
24
31
34
36
36
22
24
34
32
40
41
33
34
30
31
32
36
33
29
32
35
32
32
25
26
29
46
26
43
43
39
41
34
29
42
23
35
29
29
29
36
39
41
46
28
19
23
28
33
41
38
33
35
44
41
30
32
33
35
33
34
35
39
29
34
38
39
41
45
51
55
59
54
51
47
45
43
39
34
32
29
31
33
36
40
32
23
23
24
25
28
32
33
30
32
35
29
24
22
22
41
45
46
41
45
50
53
56
47
49
56
56
55
55
77
79
69
79
76
79
89
96
100
99
93
91
101
93
84
82
81
85
100
104
108
113
112
112
113
119
130
133
133
129
127
125
125
126
134
139
136
138
138
138
139
139
139
139
139
139
139
139
136
134
131
130
134
137
145
149
149
151
156
158
163
171
177
180
182
183
185
184
183
183
184
189
192
193
199
200
184
187
185
175
171
170
166
163
158
156
152
151
150
148
155
155
157
159
163
163
163
163
160
160
160
160
157
157
158
161
163
164
165
165
166
166
166
166
166
166
166
166
166
166
165
165
164
164
168
169
182
187
185
188
188
190
191
194
193
204
204
204
204
212
212
212
218
213
212
215
216
220
242
245
272
282
285
290
307
332
355
357
357
358
364
366
378
382
386
387
386
352
335
340
330
312
312
311
308
307
306
301
300
298
297
296
297
299
300
299
297
297
296
296
295
294
297
297
298
298
287
274
267
259
258
252
237
234
232
214
199
197
187
183
182
182
183
183
181
176
169
172
172
174
179
179
180
178
177
177
179
188
192
201
203
203
203
198
195
191
189
178
173
162
153
151
147
125
116
112
104
99
96
89
82
77
74
69
57
56
55
54
52
48
48
47
47
48
50
47
57
57
49
50
50
53
57
62
65
63
58
59
59
66
70
73
75
78
79
87
94
102
103
109
111
115
121
131
146
154
164
166
166
178
180
183
186
191
204
213
213
205
202
195
189
187
182
186
189
192
195
200
202
202
201
198
197
197
206
208
215
217
221
223
221
226
229
233
249
250
251
253
260
263
268
277
280
286
289
289
289
286
285
287
291
317
316
315
311
310
308
308
308
324
327
330
333
341
341
341
344
348
350
353
353
354
354
358
355
358
361
365
366
363
361
354
353
338
342
343
344
344
378
377
375
388
393
387
385
384
383
378
374
374
375
375
369
358
357
359
364
366
372
372
373
376
378
379
386
391
392
403
407
411
413
413
415
417
420
421
421
422
423
424
425
425
432
434
435
456
463
493
495
498
511
527
550
554
561
559
568
575
578
580
582
584
587
588
591
592
594
596
602
608
608
610
613
652
663
678
679
692
696
702
704
733
740
764
767
769
770
769
767
766
765
765
763
759
759
761
763
736
732
724
720
715
712
705
700
690
688
677
677
676
675
674
666
664
663
659
654
653
645
643
637
635
630
628
624
623
618
616
609
608
607
601
600
599
588
582
579
577
576
574
574
574
574
575
574
573
572
573
572
570
572
560
554
528
528
523
493
440
436
432
432
353
352
352
352
352
353
352
345
345
345
344
340
339
338
333
333
344
336
335
335
336
329
329
326
326
337
343
357
361
362
362
319
313
297
295
295
295
295
295
295
295
296
292
293
294
294
294
293
292
292
292
294
294
293
291
291
292
300
303
306
319
315
311
310
309
309
309
309
309
308
305
302
302
296
302
302
297
296
286
281
279
276
275
273
270
270
268
268
268
268
268
269
268
268
267
267
267
268
269
269
269
268
267
267
267
267
267
267
268
274
277
277
277
279
283
284
289
290
290
291
292
292
286
283
277
274
275
276
277
279
271
272
275
276
277
280
285
289
280
278
275
275
276
286
286
286
285
282
282
279
276
271
266
260
260
258
258
258
257
256
256
256
256
256
255
254
253
252
252
252
252
252
252
252
252
253
258
264
265
269
271
268
261
256
253
253
253
253
253
254
266
270
279
275
257
259
261
256
258
255
255
255
253
252
251
248
248
248
252
253
258
258
254
253
251
251
250
250
257
264
270
277
285
280
277
275
275
274
273
270
252
252
252
247
251
257
260
264
265
267
267
266
272
281
285
282
277
279
292
293
296
301
303
299
301
308
306
304
300
299
300
309
310
309
308
310
311
320
323
330
330
329
327
322
326
333
329
330
331
319
315
309
306
305
302
301
287
285
283
283
281
280
274
273
270
268
267
267
268
268
271
269
271
273
275
276
277
279
282
281
282
275
276
276
276
276
280
282
285
292
295
298
300
301
301
301
302
302
311
314
314
318
322
323
324
324
323
321
315
315
312
308
307
306
303
301
297
292
287
287
287
287
290
291
294
297
299
300
304
304
306
307
307
309
316
323
312
308
305
312
313
313
313
312
311
310
305
304
309
306
302
299
296
294
294
296
299
299
298
299
300
301
304
304
304
302
301
301
298
296
292
292
292
292
296
297
301
305
304
302
302
302
301
301
301
302
303
311
310
308
304
305
306
307
311
312
312
315
323
329
317
317
316
316
317
317
321
323
332
332
327
331
331
333
329
325
328
330
330
330
331
331
330
330
330
331
331
331
332
333
334
335
338
339
340
340
339
341
343
350
351
349
349
353
355
355
355
355
354
354
352
352
350
349
348
349
352