4
4
4
9
9
10
10
11
11
12
12
14
17
18
19
19
25
25
27
27
28
30
31
32
34
34
38
39
40
40
40
39
39
39
39
38
38
41
42
44
46
46
46
47
48
49
50
55
55
54
51
47
46
45
44
43
42
41
41
41
42
46
41
37
33
22
19
20
22
26
25
25
24
18
16
15
15
15
15
15
15
15
15
18
20
22
23
23
24
24
24
24
24
24
23
23
23
23
23
23
23
23
23
23
23
22
21
21
21
25
26
29
31
35
35
34
34
35
35
36
36
36
37
37
37
37
38
38
43
44
45
45
46
48
49
50
52
51
51
51
51
51
51
52
52
53
41
40
39
38
37
37
38
39
41
42
42
40
41
56
58
59
61
62
65
66
67
68
72
74
75
76
76
77
78
79
79
77
76
76
78
80
81
82
84
84
84
84
84
80
73
66
63
61
58
57
56
60
53
53
53
53
53
53
53
53
53
55
57
59
61
62
65
67
69
72
74
78
79
81
84
85
84
81
76
74
73
70
71
76
78
80
79
78
78
78
76
75
73
71
66
65
64
63
60
59
57
56
55
40
40
40
40
41
41
42
42
42
42
43
43
54
53
53
53
53
53
53
54
54
54
50
50
50
49
48
47
45
43
38
38
38
38
38
38
38
38
44
46
47
47
47
48
49
50
53
53
52
52
52
52
52
52
53
53
41
41
40
40
40
40
40
41
41
41
40
41
56
57
59
61
63
66
67
68
69
74
76
78
78
78
78
79
80
79
77
75
74
76
78
80
81
85
85
84
83
81
78
73
67
64
62
59
58
56
59
53
51
50
48
46
44
43
42
39
38
37
35
34
33
33
32
32
32
32
32
32
32
32
32
32
32
33
45
49
49
47
43
39
40
41
42
43
42
41
40
40
39
36
35
35
35
35
35
29
27
24
22
22
21
21
21
21
21
22
22
22
22
22
23
26
27
29
28
27
23
21
22
23
23
24
26
26
27
29
30
32
33
35
36
37
41
42
44
53
53
57
58
58
59
59
59
60
60
60
60
52
51
50
49
48
45
45
45
45
45
45
44
44
37
35
33
29
29
28
27
25
22
22
21
21
20
20
20
18
18
18
18
18
18
19
23
24
24
24
24
23
22
21
21
14
14
14
14
14
15
15
15
15
15
15
15
16
16
16
17
16
16
16
16
17
17
17
17
14
11
8
8
7
7
7
6
4
4
4
5
5
5
13
14
14
14
14
15
15
15
15
15
15
15
15
14
14
13
13
14
14
16
19
20
22
23
23
24
26
26
26
26
26
25
24
29
31
31
33
36
38
40
44
47
47
47
48
48
48
49
49
51
51
52
52
53
53
53
53
53
53
55
55
55
56
58
58
60
62
66
80
80
102
105
110
112
112
112
112
112
112
115
117
119
121
126
136
150
152
158
162
169
170
171
179
181
182
183
183
186
187
198
199
201
203
203
203
202
202
201
201
201
200
200
198
197
196
195
195
195
195
195
195
195
196
201
204
218
230
235
243
249
262
267
270
273
279
279
279
279
280
280
280
281
281
281
282
282
282
283
288
296
302
309
321
345
347
349
358
363
366
369
370
372
375
375
374
374
387
374
368
381
381
355
341
333
323
316
292
285
276
273
271
268
268
266
259
258
257
257
256
259
261
258
256
255
255
254
252
251
252
252
244
227
215
209
196
186
188
189
189
192
194
195
194
192
190
189
187
187
187
186
185
185
185
185
185
188
185
183
181
179
177
175
170
159
157
157
156
149
136
127
123
123
123
122
121
119
119
120
121
122
123
127
127
128
130
132
132
136
140
146
146
147
151
156
155
151
151
150
146
146
146
146
146
146
144
143
142
142
143
143
144
141
138
137
136
135
133
133
133
129
127
125
125
125
126
128
128
128
130
130
131
132
134
135
136
138
142
149
155
155
152
154
158
160
165
165
165
166
166
159
151
145
145
145
146
150
151
152
152
152
152
152
151
151
151
151
151
151
151
151
150
150
150
150
150
150
150
150
151
151
154
155
155
152
152
152
152
153
154
155
163
168
174
179
183
180
179
177
174
172
172
171
170
169
168
169
173
178
184
186
188
187
186
185
183
183
183
182
181
181
169
168
156
156
150
150
150
150
150
150
150
150
150
150
149
149
149
149
149
148
149
149
149
149
149
149
149
148
148
148
148
148
148
148
148
148
149
149
150
150
150
151
151
152
152
153
153
153
154
157
157
172
172
172
170
170
171
171
173
173
173
173
173
178
179
185
190
195
204
204
213
215
215
216
216
217
219
219
220
220
220
221
221
225
230
229
229
231
231
230
230
229
229
228
228
228
228
228
221
221
221
221
221
217
217
215
213
212
210
208
207
207
207
207
207
210
213
214
214
213
212
210
210
209
209
209
209
209
209
209
208
208
207
207
208
209
210
210
214
213
212
210
215
220
230
234
235
236
236
236
237
238
240
241
242
241
240
240
242
248
249
250
254
256
258
259
261
262
262
263
268
269
271
273
274
276
277
282
280
276
275
272
268
267
264
263
260
256
253
251
247
247
246
236
236
235
235
234
230
229
228
226
226
226
226
227
227
227
228
228
228
228
228
224
223
222
221
219
223
223
223
223
223
218
206
205
204
203
201
200
198
194
191
189
188
188
188
188
182
182
180
180
180
180
180
180
180
182
182
184
185
187
187
187
187
191
191
191
192
192
191
187
186
186
185
185
184
183
182
181
178
178
177
174
172
170
178
180
181
181
181
182
182
182
182
182
182
182
183
183
180
181
181
181
182
183
184
184
185
185
185
184
185
189
189
189
190
190
191
191
191
191
192
192
193
196
196
196
201
201
206
207
207
208
210
211
211
210
209
209
208
208
208
208
214
214
213
213
212
217
218
219
222
223
224
224
224
223
224
224
226
228
231
231
230
230
230
230
230
230
230
229
227
226
216
215
213
212
211
220
220
221
222
243
242
241
244
244
244
244
243
243
245
246
247
247
247
248
250
251
255
256
257
259
264
266
270
271
278
280
281
279
278
277
274
274
274
274
274
285
289
290
290
300
300
300
300
299
298
297
298
299
305
304
304
303
305
308
317
321
324
329
341
348
348
348
346
345
344
344
341
340
342
344
346
348
349
351
348
346
345
344
343
344
345
346
347
351
352
353
360
361
361
365
366
367
367
368
369
369
369
380
386
396
405
413
412
411
410
409
408
404
402
405
409
411
416
418
404
401
399
397
394
394
396
399
401
402
413
413
413
412
411
409
409
409
410
410
413
413
416
412
410
408
410
411
412
413
416
422
425
427
428
429
431
433
435
443
444
445
446
448
448
448
447
447
447
446
446
446
446
449
449
451
454
456
466
468
470
470
470
470
469
469
469
469
469
469
469
468
467
467
471
475
481
495
495
497
497
498
498
495
497
498
498
506
514
523
523
522
521
519
516
516
515
515
517
525
527
529
533
536
540
543
546
553
551
543
541
536
528
532
534
541
556
560
565
551
550
550
556
555
550
547
545
544
543
541
537
537
536
552
590
588
582
580
577
572
574
578
586
590
594
597
597
598
598
598
598
598
599
600
600
601
601
602
623
625
620
617
615
620
622
623
620
619
627
626
617
615
612
610
608
608
608
607
605
600
589
589
594
597
601
588
594
592
591
589
588
587
581
580
580
578
566
565
570
576
579
581
588
575
555
549
546
545
545
544
542
540
539
539
541
544
546
548
551
555
558
561
564
566
569
570
571
571
566
559
557
555
555
552
550
538
536
534
533
530
534
538
543
548
551
563
563
564
566
569
572
574
575
569
550
544
545
545
546
549
559
564
567
566
565
564
563
560
560
560
561
562
563
577
586
587
588
589
587
584
583
582
581
577
575
575
576
576
576
576
576
574
573
572
571
570
570
569
568
567
565
563
559
560
561
562
562
561
561
560
559
559
558
559
559
556
555
553
552
551
549
547
546
542
540
540
540
540
540
542
542
543
543
543
543
544
544
550
565
564
560
555
553
551
543
541
539
540
541
544
546
546
547
548
548
549
549
547
541
538
526
524
522
521
521
519
527
531
542
544
543
543
543
543
550
552
557
555
553
542
547
547
549
554
555
554
553
550
547
545
544
541
541
540
540
546
547
550
556
559
564
570
566
563
561
565
569
566
565
563
561
559
557
558
558
559
560
563
568
583
584
584
584
584
584
584
588
588
589
590
590
590
590
591
593
596
598
602
602
601
601
599
598
597
593
593
590
589
588
577
575
574
573
572
572
573
574
574
575
576
576
577
577
577
577
576
576
577
578
579
564
559
555
545
547
553
546
542
539
540
540
541
541
541
539
538
534
534
530
528
526
524
513
512
513
513
513
515
517
521
525
522
517
514
514
506
496
491
489
489
487
485
481
479
476
476
476
476
477
471
471
465
462
463
462
461
460
457
457
457
457
457
456
454
453
452
451
440
436
435
434
433
432
427
426
422
421
419
419
419
419
419
419
417
415
413
411
409
397
383
378
374
362
352
355
359
363
367
368
364
362
361
360
359
359
357
355
354
353
352
351
349
345
340
338
336
334
333
330
324
320
319
319
319
319
319
319
319
319
326
328
330
331
331
332
332
325
323
322
323
324
327
326
325
325
324
321
321
321
322
325
326
327
327
328
325
323
321
317
308
308
304
303
302
301
300
301
302
303
304
306
306
306
305
305
305
304
299
293
291
289
288
281
280
273
270
267
259
260
262
263
265
268
270
273
273
272
272
272
270
270
267
267
266
266
264
263
262
242
241
240
239
239
239
239
239
239
240
240
240
240
240
239
236
239
247
257
264
271
274
279
274
272
261
257
254
247
238
225
217
212
210
210
209
209
209
210
200
201
196
192
191
189
189
192
184
183
182
181
179
180
180
184
191
195
199
202
207
206
205
203
202
202
200
198
198
197
194
194
194
194
194
194
194
194
194
194
194
193
184
182
179
175
169
165
163
163
160
159
158
158
163
164
168
175
180
187
198
198
203
203
203
203
202
202
202
201
201
199
200
201
202
204
210
213
220
222
223
222
221
219
218
214
195
187
181
184
196
199
199
198
190
187
184
183
181
182
184
185
185
185
185
185
185
185
183
183
182
181
181
181
180
180
171
171
172
174
175
175
174
173
171
170
169
167
183
186
188
190
195
197
200
200
201
201
201
210
208
211
215
217
220
241
241
245
246
247
249
250
247
247
246
246
244
243
243
243
245
246
246
247
247
247
247
246
246
245
245
244
244
244
243
243
242
242
241
223
220
219
218
218
215
212
209
195
194
194
195
196
197
197
197
198
198
185
182
177
162
163
165
165
165
165
164
164
164
164
164
164
163
163
159
151
146
146
145
144
143
142
142
142
142
141
141
140
141
146
150
148
147
147
147
146
146
147
141
137
126
119
118
109
97
97
91
93
94
92
83
80
75
74
73
73
63
60
60
60
60
58
58
59
60
67
72
72
74
76
77
77
77
77
77
77
77
77
77
77
76
76
75
79
76
76
76
76
78
81
90
90
91
88
86
85
83
82
76
73
74
74
74
74
69
69
68
67
67
67
67
66
62
63
70
70
69
68
72
78
79
80
80
81
82
73
70
69
69
70
70
71
72
73
77
77
78
78
79
77
74
73
72
70
70
69
69
69
70
70
71
72
76
75
74
71
70
63
62
61
60
59
59
60
64
66
67
63
50
52
53
54
54
45
45
45
45
46
46
47
47
46
44
36
30
30
32
33
33
34
34
35
35
36
36
37
40
47
47
47
47
47
47
49
49
45
40
39
39
38
40
42
42
42
46
48
51
53
55
56
52
53
57
57
57
57
56
56
56
56
57
57
57
61
63
73
75
76
75
74
70
71
72
72
73
77
77
77
76
76
75
74
72
72
71
70
69
68
65
73
75
77
79
79
82
85
86
90
92
91
90
97
97
96
96
96
96
97
98
102
102
106
111
111
110
108
106
105
102
97
94
93
93
97
102
107
107
106
106
105
104
104
104
104
103
103
105
111
117
117
114
113
113
112
115
109
100
101
103
105
108
112
142
139
133
113
98
95
90
89
90
90
93
100
104
109
111
111
130
134
145
146
148
136
123
123
123
122
122
120
119
118
117
114
114
113
111
110
108
107
115
118
119
105
102
100
99
97
91
90
89
90
90
90
95
97
98
111
111
92
90
90
91
91
91
90
90
90
90
90
89
84
84
79
77
75
74
73
72
69
67
65
62
62
60
58
57
56
56
55
54
53
52
51
45
43
43
42
42
41
35
32
31
31
31
27
22
22
22
22
22
22
21
21
21
20
20
20
20
19
18
16
16
12
10
9
9
8
7
7
5
5
5
5
5
5
5
6
5
5
5
5
5
5
5
4
4
4
4
0
0
0
0
0
0
0
0
0
0
0
1
1
2
2
2
2
2
3
3
3
3
3
2
2
1
8
8