104
103
102
99
94
89
87
86
81
81
78
76
75
74
73
73
73
73
74
75
75
75
75
76
76
76
76
76
76
75
75
75
75
75
75
75
76
77
77
77
77
79
81
81
82
82
83
84
84
84
84
84
84
84
84
84
84
84
85
85
85
86
86
86
86
86
86
86
86
86
86
86
87
87
87
88
88
88
88
88
88
88
88
88
91
91
91
91
91
92
92
93
94
95
96
99
101
101
101
101
101
103
104
105
107
108
109
110
110
110
110
110
111
111
111
111
112
112
112
112
115
117
121
121
121
121
122
124
124
126
127
129
130
131
134
135
136
136
135
134
134
133
131
131
131
133
136
137
139
141
142
142
144
145
146
147
150
151
151
151
152
153
154
154
154
154
156
157
158
159
160
161
165
172
172
173
174
174
174
174
175
175
176
176
177
177
178
179
180
180
181
182
184
186
187
187
187
187
185
186
187
188
189
190
191
192
194
195
196
198
199
200
202
203
205
205
206
208
209
210
211
212
213
215
216
217
217
218
218
219
222
224
228
228
229
230
230
232
233
234
235
235
238
239
243
245
246
247
248
249
251
253
254
255
256
260
260
261
262
263
264
266
267
268
270
269
269
267
267
268
270
272
272
272
272
272
272
272
272
272
272
273
274
274
275
276
283
284
288
290
290
290
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
295
296
301
301
302
303
307
311
316
324
327
334
340
343
345
348
349
353
354
359
361
364
373
376
379
380
381
382
383
384
386
393
396
398
401
402
404
408
421
421
430
431
435
448
450
453
455
458
469
473
477
479
481
482
483
484
485
485
485
483
488
491
498
500
502
504
506
508
510
513
514
517
520
521
524
524
525
526
526
526
526
528
535
540
541
541
541
537
537
538
538
539
540
540
540
540
540
540
540
540
540
542
543
543
544
544
545
546
546
547
547
549
549
549
549
549
549
549
550
551
553
554
558
559
559
562
562
564
565
566
566
567
567
567
573
576
579
581
582
582
583
584
585
586
590
591
592
594
593
592
586
584
581
579
577
572
571
570
569
569
568
568
563
563
561
560
558
558
557
557
555
555
554
553
552
552
551
551
551
550
549
541
540
538
532
532
532
532
532
532
532
532
533
533
534
534
535
535
535
535
535
536
538
539
541
543
547
550
551
552
552
552
553
553
554
556
557
557
558
559
567
567
568
562
560
558
558
558
558
558
557
557
557
557
555
555
555
554
552
553
554
557
558
559
559
558
549
548
541
539
537
534
532
531
530
529
527
526
525
525
516
510
509
508
508
507
504
504
499
499
496
496
495
494
494
493
492
490
486
484
483
484
484
481
478
464
462
460
455
454
454
451
451
443
440
436
432
432
434
434
434
434
434
428
426
423
421
417
418
419
421
421
422
426
429
428
428
428
427
427
425
418
416
415
410
407
405
404
401
399
398
396
393
392
392
391
390
388
387
386
381
373
372
371
362
360
359
358
359
361
356
355
354
352
351
349
345
344
344
344
344
343
342
339
336
331
328
328
328
328
328
328
328
328
328
328
327
325
320
320
320
320
320
320
323
325
324
323
322
321
321
320
318
315
314
311
308
306
300
298
295
296
301
303
295
296
297
298
299
299
299
299
299
299
296
295
292
292
297
300
297
293
294
300
302
307
308
311
314
316
318
319
321
321
322
324
326
326
327
327
328
328
329
330
330
330
330
330
330
330
330
331
334
337
345
350
352
353
355
356
357
360
360
360
360
360
360
359
359
359
359
359
361
372
373
373
382
388
389
390
391
393
394
394
397
398
398
400
403
405
408
413
421
423
424
426
427
426
426
426
426
426
424
423
422
422
421
421
420
421
423
425
429
430
431
432
433
435
436
438
442
444
449
450
454
455
456
462
465
467
479
481
488
488
488
487
487
489
490
493
493
492
492
490
490
490
490
490
489
488
477
476
475
474
473
470
470
468
467
466
464
461
460
456
452
449
447
445
445
446
451
452
452
451
451
451
451
452
458
457
456
455
453
452
447
444
443
443
443
443
443
441
441
440
438
436
429
426
424
423
423
424
425
427
425
419
416
408
407
406
403
402
398
397
398
399
404
405
406
402
400
398
395
394
391
388
381
380
374
371
370
370
371
372
372
373
374
375
375
375
370
357
356
356
356
356
357
357
357
354
349
346
343
338
336
334
330
330
328
327
327
327
327
327
327
327
317
314
311
310
302
300
299
296
293
292
290
278
278
275
273
272
264
262
261
258
255
255
253
253
251
251
247
240
232
230
225
224
224
224
224
222
221
222
222
223
222
220
220
220
217
217
216
216
216
215
212
210
204
204
203
200
200
198
197
196
194
194
193
193
192
192
191
191
191
191
191
191
190
190
190
189
189
189
189
189
189
189
195
198
198
198
201
204
210
215
219
218
216
214
213
203
204
205
207
206
205
206
207
208
209
205
205
205
204
203
201
197
201
203
208
216
216
217
217
216
220
220
220
220
223
228
231
233
236
238
239
239
239
239
239
237
236
238
242
243
243
243
252
251
251
251
250
249
249
248
247
247
247
247
247
247
247
247
248
248
249
249
249
241
240
242
241
242
243
244
248
252
253
254
255
255
265
264
264
263
262
261
261
261
261
263
269
269
269
272
272
276
277
278
278
281
288
292
298
305
306
306
305
305
304
303
303
304
303
300
297
296
296
296
296
297
298
299
300
300
300
296
294
293
291
293
296
298
299
299
299
299
311
311
311
311
312
319
319
317
316
315
314
313
313
312
312
311
311
308
303
303
302
302
299
299
304
307
307
307
307
307
307
307
306
306
305
303
303
303
303
303
303
303
303
299
298
298
298
298
298
298
298
298
298
298
298
298
301
301
299
299
299
300
300
301
302
303
303
302
302
301
301
301
301
301
301
302
303
303
304
304
302
300
300
302
302
302
302
302
302
301
301
301
301
301
306
310
311
311
311
311
311
311
310
310
313
313
313
312
312
307
306
306
306
307
308
313
314
316
317
320
322
322
322
322
322
325
326
327
328
330
331
332
334
336
337
338
340
340
341
342
342
343
343
343
343
343
344
344
346
347
348
349
350
351
357
357
357
360
362
363
365
366
368
369
371
373
373
371
371
368
367
367
366
365
364
362
361
360
357
358
359
372
374
375
379
381
383
387
387
385
383
379
380
381
382
383
383
383
384
384
384
384
384
384
383
383
385
386
388
390
390
389
389
389
390
392
392
393
393
393
393
394
394
394
394
394
397
400
401
401
400
400
400
400
400
400
400
400
408
414
415
418
414
415
416
419
417
416
417
418
420
420
420
422
423
424
427
429
429
427
426
425
424
422
422
423
424
425
427
428
432
432
433
435
436
436
436
436
436
436
436
436
436
437
438
440
442
442
442
442
440
440
439
439
439
439
439
439
439
444
445
446
446
453
454
461
463
465
466
467
467
468
469
470
470
470
470
471
471
471
472
474
475
476
477
479
480
481
481
481
480
480
479
479
480
480
480
481
481
481
481
481
482
482
481
481
480
479
478
479
479
480
481
481
481
482
483
483
483
483
482
482
481
481
481
481
481
481
482
483
485
485
487
488
490
495
495
495
495
495
501
503
506
507
511
514
515
516
517
518
519
521
523
523
524
523
523
522
529
534
535
536
537
537
537
537
536
536
537
538
539
541
543
547
550
550
550
549
549
548
548
548
548
548
551
553
555
555
555
555
555
555
557
558
559
560
561
561
561
562
563
564
565
566
567
568
569
574
575
579
580
583
590
591
594
595
596
600
601
601
603
605
605
607
607
608
612
614
616
618
620
624
626
627
629
631
632
634
635
636
637
638
640
661
664
666
667
675
676
677
678
678
682
683
684
686
687
688
689
689
689
690
690
690
691
692
693
695
696
697
698
701
703
714
716
717
720
721
722
700
695
693
691
688
686
683
682
681
674
667
666
664
662
656
654
651
650
650
649
648
648
643
639
637
636
635
635
635
634
634
633
631
630
629
627
626
621
618
613
610
609
609
609
607
606
605
601
599
597
595
592
591
590
589
587
585
583
576
574
572
571
568
564
563
562
561
561
560
558
554
553
553
552
552
552
552
552
552
552
551
551
550
550
549
549
549
551
552
552
549
548
545
544
542
541
541
541
541
541
541
541
541
541
540
539
538
538
536
535
533
532
531
530
529
528
526
525
523
522
521
519
519
519
518
518
517
517
516
515
514
514
513
513
512
511
509
508
507
505
505
504
504
502
498
496
495
492
492
491
484
483
482
477
475
475
474
474
474
473
473
472
471
471
471
470
470
470
470
470
470
469
469
468
468
467
467
467
467
467
467
468
468
469
469
470
472
472
471
470
468
468
468
468
468
468
468
468
468
468
472
475
477
479
480
484
484
484
484
484
485
485
483
483
482
482
482
483
484
484
484
485
486
486
486
486
486
486
486
486
486
486
486
488
489
489
491
492
493
494
495
499
500
500
501
501
502
503
504
505
507
510
511
512
512
513
513
513
515
515
516
525
530
531
531
532
535
536
536
537
543
546
551
559
562
562
561
561
561
561
560
561
562
563
564
565
567
569
570
575
583
585
585
585
585
584
584
583
583
583
582
582
582
581
581
579
578
576
575
574
574
573
572
571
570
568
567
566
565
564
563
561
560
560
559
557
557
556
556
554
551
549
546
544
542
541
538
537
537
536
535
535
535
534
534
534
533
533
533
532
532
526
520
519
517
516
513
512
511
509
508
504
503
503
502
502
503
503
505
505
506
506
506
504
503
502
502
502
500
499
498
496
496
495
487
486
485
483
483
486
488
489
490
487
486
485
486
486
487
488
487
486
485
484
484
483
482
480
474
474
477
478
479
480
471
469
466
466
467
467
467
468
469
469
470
470
471
472
472
472
473
473
473
472
471
470
469
467
466
464
460
459
457
456
454
456
458
459
460
461
462
464
465
467
467
465
463
460
458
455
453
450
445
437
437
437
437
437
437
437
437
435
433
429
426
423
423
420
419
419
418
417
415
414
414
413
412
412
411
411
410
405
403
402
402
398
397
395
394
393
392
385
383
383
382
382
380
380
380
378
377
375
368
368
368
367
367
366
365
364
363
359
359
359
358
354
354
353
353
353
353
354
354
352
352
352
352
354
355
356
357
357
357
358
361
363
364
366
370
371
374
374
375
375
376
377
377
377
377
377
378
380
381
383
385
386
388
390
391
392
395
396
397
397
398
399
399
399
400
402
403
404
406
406
406
405
405
404
407
408
410
411
413
418
422
422
423
425
432
434
437
437
437
437
437
436
435
437
438
441
442
445
446
447
451
452
458
458
459
462
463
466
467
468
469
469
471
472
473
475
479
480
480
480
480
480
480
480
480
480
480
480
491
499
504
502
500
495
492
491
490
493
494
497
503
505
507
509
517
519
523
524
526
526
525
525
524
523
520
523
525
526
528
533
534
538
538
539
541
542
544
545
546
547
549
550
552
553
553
554
555
556
557
558
560
561
561
561
561
561
561
561
561
562
565
576
577
579
584
587
588
587
587
586
585
584
584
582
581
580
580
585
585
586
588
588
588
588
588
588
593
594
595
606
608
614
617
618
617
617
617
616
616
616
615
615
616
619
623
627
630
635
642
642
642
642
642
642
638
637
636
635
634
631
633
637
638
639
640
641
645
646
648
649
650
653
654
654
655
656
656
657
658
658
658
658
658
657
657
657
657
656
656
656
655
654
654
654
647
640
639
638
637
629
628
627
627
626
625
625
623
621
620
620
619
618
618
617
617
617
617
617
618
618
618
618
618
618
618
618
618
618
617
617
617
617
617
617
617
617
617
617
617
617
617
617
616
616
616
614
614
612
612
612
611
607
605
604
603
602
600
591
591
589
588
587
587
586
586
586
593
596
600
602
606
608
608
607
606
606
605
605
603
602
602
601
599
593
589
587
584
583
584
584
584
585
586
587
587
586
586
584
584
582
579
576
568
567
567
566
565
565
565
565
565
565
561
557
554
552
547
546
547
550
553
555
554
551
550
549
542
539
535
526
525
522
521
519
519
518
516
515
512
511
510
510
509
509
509
510
510
510
510
501
498
496
493
490
492
493
493
495
495
496
496
497
498
498
496
494
491
486
486
485
485
485
485
485
485
485
485
484
484
484
484
483
483
483
482
482
482
482
482
482
482
482
482
482
481
480
480
479
478
478
477
477
476
476
475
471
470
465
465
464
463
462
462
458
456
454
454
454
453
453
453
453
453
453
453
453
453
453
453
452
451
450
450
449
448
448
441
439
438
437
436
433
431
428
426
425
425
424
424
424
423
423
423
422
422
421
420
420
419
418
417
416
415
413
412
410
407
404
402
397
394
392
385
384
383
382
382
381
381
381
374
373
372
367
366
365
364
361
360
359
358
358
357
357
355
354
354
353
353
352
350
350
350
348
347
347
344
344
344
344
343
343
342
342
342
341
341
341
341
341
339
339
338
336
337
340
340
342
343
344
345
345
339
338
337
333
332
327
327
323
322
320
320
320
320
317
316
316
311
310
310
307
306
306
306
307
307
308
309
309
309
308
307
300
300
300
300
300
300
300
299
299
295
295
294
294
293
292
292
288
287
284
283
283
282
281
281
282
282
282
282
276
274
273
273
273
275
275
280
280
285
286
287
289
290
293
295
298
299
301
301
302
303
305
307
308
312
317
319
318
312
312
311
311
312
314
318
321
323
325
328
328
324
322
319
318
312
312
312
312
311
310
310
308
307
305
304
288
286
278
278
277
277
277
277
277
277
277
276
276
275
275
273
272
269
268
264
264
263
262
261
261
261
261
260
260
258
247
246
247
247
246
243
245
254
254
254
254
254
254
254
254
254
254
255
256
256
258
259
262
263
263
264
265
267
268
278
278
279
279
280
280
280
280
280
279
279
279
279
278
265
261
260
260
260
259
259
260
262
262
261
261
260
260
260
260
262
264
264
263
263
264
264
256
254
254
254
253
244
242
242
242
242
241
243
245
247
247
247
247
247
247
247
248
248
248
248
248
248
249
250
250
250
251
251
253
255
243
240
239
237
237
237
237
239
240
239
238
237
235
234
231
229
227
222
222
222
222
222
216
216
216
215
215
201
197
196
196
204
205
205
205
205
205
208
208
207
206
206
208
206
203
202
201
218
217
216
214
212
208
204
200
199
198
198
198
193
189
189
189
189
187
186
184
183
183
183
184
185
185
186
187
188
189
189
190
191
191
191
193
195
195
193
191
190
189
190
191
192
193
191
191
188
186
185
184
183
182
175
174
172
171
171
171
171
169
168
167
168
167
166
164
164
163
161
161
160
160
159
157
159
159
157
157
155
154
153
153
153
154
154
154
154
155
165
167
166
164
161
154
147
145
145
144
142
141
137
136
132
131
129
128
121
118
118
118
117
117
117
117
116
115
113
108
107
106
104
102
100
99
98
98
98
98
98
98
98
98
98
98
98
97
97
97
96
96
95
95
94
94
94
94
94
94
94
93
93
93
93
92
92
92
93
93
92
88
86
86
86
86
86
86
86
86
86
86
86
86
85
85
83
83
83
83
83
83
83
84
84
85
85
84
83
81
82
82
81
80
78
77
77
78
77
75
74
74
75
75
75
75
75
75
76
76
76
76
76
75
75
74
74
74
74
74
74
75
76
77
77
79
82
83
87
88
89
93
94
96
98
109
110
112
113
114
118
119
120
123
128
129
130
137
138
144
142
142
141
141
138
136
134
131