2
2
2
2
3
4
23
24
24
21
18
18
17
11
11
10
9
8
2
13
15
16
17
18
25
25
27
28
29
33
44
46
47
49
51
52
52
52
52
49
48
41
38
37
35
32
31
31
30
34
45
47
47
47
47
41
33
37
40
41
46
52
65
57
52
54
65
84
89
93
93
95
97
109
113
113
113
113
115
117
125
123
119
117
114
114
114
115
115
117
119
121
124
127
128
130
148
151
152
152
147
145
138
130
126
121
119
118
114
111
108
108
107
105
102
100
100
99
99
95
92
88
87
86
81
80
79
78
77
75
73
72
72
71
68
66
65
63
61
55
52
52
52
50
51
53
54
56
70
76
76
82
82
83
83
83
83
85
83
81
72
68
71
71
71
70
66
57
58
59
61
63
68
70
72
74
78
79
77
76
74
70
67
67
67
68
70
62
59
56
64
76
83
87
90
90
90
90
90
91
92
93
93
94
95
96
99
100
101
101
102
110
112
113
114
115
108
105
101
101
98
95
94
90
89
94
95
95
105
108
110
112
117
118
117
121
127
137
148
150
150
149
138
140
143
146
151
164
166
169
170
171
172
183
183
183
183
183
183
187
190
192
198
205
221
228
240
246
250
246
235
232
228
212
210
206
207
208
210
219
221
251
265
275
275
275
274
273
271
263
261
261
258
261
267
269
272
276
278
280
281
283
284
286
292
300
303
304
306
306
306
306
306
307
312
315
316
317
316
316
315
315
328
333
338
340
340
344
347
350
351
352
352
353
353
353
353
353
350
349
347
344
344
341
335
332
330
328
321
306
281
255
247
242
239
236
229
229
224
219
218
217
217
222
225
227
231
238
238
244
249
251
252
253
242
224
212
203
207
221
218
210
199
197
191
190
189
189
188
186
181
179
172
168
162
162
162
162
162
162
161
161
160
157
154
153
150
147
145
145
144
143
142
142
139
136
134
134
133
132
131
135
135
139
139
139
133
125
118
115
115
99
99
99
99
99
100
101
101
99
95
93
91
90
77
74
72
67
61
60
60
60
58
55
54
54
54
54
54
54
54
54
54
53
53
53
53
53
53
53
53
53
53
53
54
58
58
58
56
55
55
55
56
56
58
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
65
68
76
77
79
79
79
79
79
79
81
83
86
87
88
89
90
90
93
99
100
100
100
100
102
107
110
130
133
138
141
143
145
147
149
153
154
151
150
147
147
147
152
156
165
172
172
172
171
170
169
168
169
173
176
178
181
186
197
198
198
197
192
185
182
188
190
190
192
195
196
197
198
198
198
199
199
199
198
198
197
196
196
196
196
195
195
195
195
195
194
194
192
192
192
192
192
191
191
191
192
192
192
192
190
188
186
185
185
185
185
185
191
198
208
215
209
201
200
204
216
224
236
245
247
250
252
257
261
261
261
262
268
273
276
280
280
280
280
280
280
280
279
277
276
275
272
269
269
285
293
294
294
294
294
295
307
325
333
345
345
345
348
359
362
361
368
368
369
373
383
386
391
392
395
397
401
407
413
421
426
429
437
442
445
452
457
458
460
461
462
460
451
452
453
461
490
491
491
490
487
483
479
474
477
477
478
478
484
498
519
537
537
542
539
521
521
522
523
525
526
530
535
544
567
593
602
600
599
597
579
570
565
568
570
572
574
582
609
630
630
630
630
630
623
618
616
614
615
616
617
619
621
627
635
646
652
653
655
655
656
656
657
657
657
657
657
657
656
653
653
653
653
653
653
654
655
657
665
679
692
705
712
716
717
718
713
711
710
708
707
707
707
709
710
714
718
720
722
726
729
733
735
740
750
753
754
762
767
769
772
772
772
773
775
775
774
770
773
774
775
776
777
780
791
791
792
793
793
793
793
793
802
803
804
804
806
807
808
809
809
809
816
819
822
829
831
828
829
829
829
829
829
829
831
833
822
815
811
811
809
807
807
806
804
803
800
800
799
798
793
793
793
791
791
791
791
791
789
771
768
768
768
769
769
772
775
774
773
772
772
772
772
767
764
758
744
735
730
727
724
721
718
715
712
709
709
708
706
704
705
711
713
715
718
717
716
714
710
710
702
688
675
660
650
647
646
644
643
641
639
634
633
630
625
623
618
610
607
603
598
594
591
586
583
582
581
579
577
576
575
560
555
553
547
545
544
542
539
535
527
523
521
520
520
521
542
537
531
510
489
481
477
476
476
476
479
485
489
491
492
492
493
483
453
449
451
452
463
459
457
456
456
455
453
451
446
437
434
430
423
420
416
408
402
396
392
389
386
385
381
378
370
368
366
366
360
362
354
346
346
346
340
326
316
299
293
293
295
291
282
272
273
273
277
277
277
277
277
277
277
277
277
277
277
277
279
281
282
292
299
304
306
306
306
306
307
307
308
308
309
309
309
309
310
312
314
315
317
318
318
319
319
319
319
319
321
322
320
318
316
310
310
307
306
307
308
309
308
306
292
284
282
278
275
272
274
274
275
276
278
280
284
290
291
291
291
292
293
296
302
309
314
318
319
321
321
321
321
323
337
338
337
336
334
330
328
327
326
325
322
320
319
321
323
324
326
332
337
338
336
335
334
333
329
328
328
327
327
324
322
321
321
322
325
330
335
336
336
336
336
336
336
341
343
344
345
348
349
350
350
350
351
352
352
351
349
347
344
343
340
340
351
357
357
356
355
355
354
354
354
360
361
363
365
368
375
376
377
379
380
376
373
369
367
361
356
355
358
362
367
377
381
379
378
377
370
368
368
369
371
372
373
377
377
376
369
365
365
367
369
370
371
372
373
373
372
372
372
396
396
397
398
402
402
405
405
406
409
417
418
420
420
416
413
416
437
441
443
443
443
446
450
454
465
464
462
461
459
457
453
462
463
463
463
462
462
462
461
460
461
461
463
464
457
455
453
451
444
441
438
424
420
416
419
434
446
453
465
474
474
479
483
487
490
489
489
488
488
487
488
489
491
492
492
492
486
484
481
480
477
477
476
476
473
468
467
467
466
466
466
462
462
466
472
472
472
471
474
478
481
481
481
481
478
473
470
465
460
448
451
456
461
468
469
473
476
477
481
485
487
490
486
483
477
472
470
468
465
458
456
454
454
454
455
455
452
433
433
411
404
405
411
413
419
426
435
433
430
427
426
424
423
423
422
422
419
416
412
398
379
379
375
371
372
373
367
366
366
365
363
355
353
350
356
354
354
353
352
352
349
345
340
337
338
342
345
350
350
350
349
348
346
343
343
340
339
337
337
337
336
335
331
329
326
329
326
313
314
314
315
317
316
310
305
297
296
295
294
293
291
289
288
288
287
285
283
282
281
279
278
277
276
276
280
284
303
311
317
316
311
306
291
286
289
292
293
295
296
295
292
286
283
280
278
273
270
269
265
264
263
262
261
261
261
261
259
259
258
257
257
256
256
253
250
247
245
240
239
236
234
233
231
229
226
225
225
223
221
218
218
218
218
219
219
220
220
220
220
220
220
219
218
215
213
206
201
199
197
196
196
196
195
195
194
193
193
192
192
192
192
192
185
181
178
171
169
167
164
159
155
152
145
137
137
134
126
130
136
142
146
148
150
153
154
153
145
140
136
128
122
117
113
100
99
99
99
100
102
105
108
110
111
109
107
100
97
97
97
97
97
96
95
94
91
85
78
78
78
78
78
77
77
77
77
77
77
77
77
76