342
341
340
340
339
339
338
338
338
338
338
338
338
338
339
340
341
341
342
342
344
344
344
344
344
344
343
341
341
340
339
339
339
337
337
335
333
331
329
326
325
302
302
302
302
302
302
301
300
300
300
299
299
301
302
303
303
304
304
303
303
303
302
302
301
299
300
304
297
292
293
297
301
302
305
303
299
292
288
286
280
281
281
282
282
282
281
279
277
276
274
273
270
269
267
266
261
261
261
261
261
261
261
263
265
266
267
269
272
273
277
281
283
289
292
292
298
300
301
306
309
311
313
316
317
318
316
306
298
294
292
284
283
283
281
281
281
275
277
280
286
292
292
292
292
292
292
289
288
271
267
265
267
271
272
273
273
277
280
282
284
283
275
275
278
276
275
270
268
267
267
267
268
268
268
262
260
258
256
252
246
243
240
239
238
233
231
232
232
233
233
233
233
233
231
230
230
230
231
230
230
229
229
229
229
230
231
230
229
229
229
231
232
232
234
236
237
238
243
244
245
246
246
246
250
251
252
252
252
253
254
255
256
258
260
262
265
269
272
277
283
285
287
291
294
300
305
311
314
314
315
315
318
319
321
321
319
316
316
322
328
331
338
343
349
352
351
351
357
361
370
371
373
373
375
374
368
369
371
372
374
378
379
384
386
388
391
391
391
391
390
390
391
392
394
395
397
397
404
408
410
414
418
420
423
425
426
427
433
432
432
431
431
432
433
434
435
437
438
439
439
439
440
441
445
445
444
441
440
440
440
440
440
438
435
433
430
429
427
428
432
433
431
426
420
417
414
412
407
406
408
409
409
408
406
405
404
404
398
386
384
382
379
376
374
372
371
368
367
365
364
359
357
356
355
351
350
349
345
334
322
315
315
313
310
308
305
303
296
294
292
291
288
287
286
284
283
279
278
277
277
277
277
276
276
274
267
267
267
267
270
274
276
278
283
285
285
284
282
274
271
274
276
272
269
269
270
271
269
269
271
272
272
274
277
276
275
275
274
273
272
275
277
292
288
290
293
294
291
288
285
282
279
277
280
282
297
301
296
294
292
291
290
290
289
288
287
287
286
288
290
292
296
301
300
295
291
289
287
287
287
288
289
291
296
298
298
298
298
301
304
306
306
298
298
299
300
300
302
304
305
306
305
304
304
303
303
303
303
303
304
306
307
307
304
303
301
302
302
302
303
304
306
307
310
311
311
311
309
308
305
305
305
303
303
303
304
317
318
318
317
317
323
323
326
326
327
332
337
342
345
342
339
336
335
334
340
348
347
345
344
343
342
337
337
336
334
332
329
328
327
327
327
327
330
331
331
334
334
336
335
334
333
335
336
336
336
338
340
345
344
336
343
343
341
341
342
346
348
352
351
349
349
350
352
351
348
348
346
346
345
345
345
346
346
350
354
355
357
358
359
356
359
360
362
363
362
361
360
359
359
359
359
359
359
361
363
365
365
366
366
367
367
367
368
369
369
370
372
373
376
385
390
404
420
424
428
428
429
431
433
436
446
452
460
468
473
473
474
474
485
489
506
522
526
527
529
530
535
536
537
536
532
538
544
544
545
547
545
544
544
548
548
547
547
547
547
547
548
548
549
550
550
556
557
557
562
562
562
562
562
563
563
559
556
554
549
552
556
551
550
548
547
547
546
544
543
542
539
536
534
534
534
535
536
537
538
538
537
536
535
531
528
524
521
519
514
510
509
508
507
504
504
504
503
502
501
501
502
502
503
504
504
488
486
485
480
476
471
469
466
464
463
461
461
459
458
457
456
456
456
456
456
456
455
454
453
451
451
451
450
449
448
447
446
446
446
446
447
448
449
451
454
455
457
460
460
461
462
463
465
466
468
473
481
483
485
488
496
501
504
505
506
507
507
509
511
512
514
514
523
525
525
526
526
527
529
529
529
528
528
527
527
526
521
520
519
519
519
520
525
525
525
525
525
525
525
527
528
529
520
519
517
516
516
517
518
519
517
514
511
510
510
510
509
507
505
502
499
499
496
495
494
494
494
494
494
495
495
498
498
500
500
508
510
514
516
519
523
526
540
537
534
541
556
555
554
552
551
550
550
550
543
538
533
540
540
535
536
545
550
552
557
559
560
564
564
571
576
579
582
578
576
573
572
571
570
569
574
576
579
581
581
580
578
567
564
563
565
566
568
573
577
578
579
580
581
583
578
578
578
574
573
571
570
580
582
586
587
594
595
596
596
597
597
596
594
592
591
590
590
590
588
584
582
582
582
583
583
584
588
591
593
600
604
604
604
604
604
604
604
604
607
608
611
617
618
618
618
618
618
618
616
615
614
609
608
608
608
608
607
606
604
604
607
609
612
614
616
619
618
617
617
617
616
616
614
613
609
607
606
603
597
594
587
592
593
596
600
603
604
605
602
596
596
595
596
596
596
587
583
588
596
600
600
597
591
596
601
605
607
607
607
607
607
607
607
607
606
606
606
607
607
608
608
608
606
604
603
601
597
594
591
588
586
583
582
581
578
577
577
577
577
577
577
577
577
579
580
584
588
587
586
585
584
584
584
584
583
582
581
580
579
579
578
574
572
570
569
568
567
566
565
563
562
562
562
563
563
564
564
565
566
566
567
568
571
574
577
576
575
571
561
557
552
549
548
548
548
548
548
548
546
543
542
535
532
531
532
534
534
534
534
534
534
534
534
537
539
543
548
551
553
554
554
554
554
556
557
560
562
563
565
566
567
570
571
574
576
578
580
581
582
584
585
585
584
581
579
575
574
573
572
572
571
570
570
570
570
570
570
571
574
575
577
579
583
584
582
581
580
580
579
573
572
571
570
570
568
567
564
561
560
566
566
563
563
564
565
565
565
565
565
564
563
562
562
566
566
560
563
566
569
570
571
571
572
573
579
580
581
582
583
583
582
577
575
574
573
570
571
574
575
577
577
579
578
578
577
577
577
577
577
580
582
583
583
583
583
583
583
580
578
576
573
568
564
563
562
561
559
557
557
557
557
556
554
551
550
549
546
542
541
538
536
534
533
534
534
534
533
533
531
531
534
537
543
544
548
548
548
549
549
549
550
552
554
557
560
565
567
568
570
571
571
572
573
574
574
574
570
567
558
554
553
552
551
551
549
544
541
543
532
520
523
524
533
544
548
551
553
557
556
556
555
554
554
554
554
552
549
542
536
533
530
529
528
527
526
526
529
530
530
528
526
522
518
516
515
513
509
505
502
500
499
495
493
491
491
492
497
500
507
506
505
494
467
466
463
461
459
455
451
450
444
443
442
439
434
420
410
407
403
403
403
401
399
398
397
387
385
381
373
371
358
350
346
344
344
344
343
343
342
342
336
329
297
293
292
291
293
294
295
296
298
299
301
304
303
302
301
300
297
297
297
298
300
308
311
307
302
296
296
293
291
288
287
286
285
284
285
286
294
296
298
300
302
303
307
308
309
309
309
306
309
312
316
319
322
325
326
323
322
320
319
318
318
320
322
324
329
332
341
342
353
355
357
359
359
359
359
360
361
361
358
357
356
355
355
357
359
361
366
366
366
366
367
367
368
368
369
369
369
368
367
362
361
358
356
351
347
348
351
358
360
362
364
365
367
375
377
379
380
381
383
383
384
384
384
385
385
388
388
388
388
388
388
393
394
398
397
397
397
397
397
398
399
400
405
405
406
407
408
409
412
412
411
412
415
416
418
419
420
421
421
421
424
428
428
428
428
428
428
428
428
429
430
433
443
443
443
444
444
445
445
446
446
446
447
448
449
449
450
450
452
453
453
453
454
457
460
462
465
468
468
468
469
469
469
469
469
469
468
468
468
467
467
466
464
462
458
458
458
458
458
456
453
450
447
443
446
447
446
427
425
419
418
418
419
415
412
399
397
391
388
386
381
380
379
378
377
376
376
375
371
365
365
361
343
342
338
337
334
326
324
321
316
307
297
295
293
292
290
285
290
291
289
288
286
285
283
275
271
267
263
263
263
263
262
262
262
261
256
257
255
258
240
239
239
238
240
244
246
246
245
245
243
243
243
241
237
235
235
235
235
234
233
233
232
232
232
231
231
230
230
230
230
230
230
230
230
230
229
229
229
229
228
228
228
228
228
227
226
225
225
223
223
223
222
222
222
221
221
220
220
220
219
219
218
217
217
217
217
217
217
218
219
219
220
221
221
226
228
230
230
228
227
222
220
223
225
225
225
221
218
215
216
214
214
213
210
209
208
208
208
208
208
208
205
205
203
203
204
204
204
203
202
205
208
212
215
218
220
220
218
218
220
224
226
227
229
232
243
244
245
246
247
248
248
248
245
244
242
240
239
237
236
237
240
240
240
243
247
251
256
255
261
264
271
276
282
280
279
286
296
299
311
328
332
337
340
340
333
327
322
317
314
309
302
301
301
302
304
303
300
299
298
298
298
298
298
299
299
294
292
283
281
279
279
278
278
278
278
278
278
275
273
270
264
263
260
258
254
253
244
243
244
244
244
243
238
224
223
219
214
214
214
214
214
215
215
215
215
215
215
215
215
214
210
207
204
204
204
204
201
199
197
195
193
190
187
180
173
165
156
149
144
142
140
139
139
139
141
144
150
162
162
158
157
159
161
163
164
165
165
165
167
168
169
173
174
175
175
177
177
178
183
185
187
190
190
191
193
190
185
184
183
186
187
190
196
207
223
239
254
240
221
228
241
247
256
256
246
241
243
241
236
233
235
245
256
261
261
262
264
273
279
277
261
237
246
258
254
244
240
237
233
234
242
248
248
248
244
236
238
240
238
234
232
232
231
230
230
230
230
230
230
230
231
232
234
235
239
240
239
239
240
247
253
273
273
273
273
273
273
273
274
275
276
277
278
279
282
286
287
287
288
289
290
295
297
298
299
299
299
299
296
295
294
291
289
290
290
290
289
286
280
277
281
285
283
281
279
274
272
270
268
270
271
275
288
306
306
305
305
305
303
302
297
287
285
287
289
291
293
291
290
288
288
286
285
279
277
275
275
266
258
257
256
254
254
253
253
253
253
254
255
255
256
254
251
248
243
241
238
237
235
230
227
226
225
224
224
225
226
225
220
222
223
230
231
233
233
232
231
230
226
225
224
223
220
216
214
212
211
208
204
200
198
195
194
192
192
190
190
190
190
190
188
186
186
184
179
179
174
171
167
166
155
155
155
154
149
147
144
144
145
145
145
139
134
126
119
117
116
114
115
116
118
118
117
114
113
112
112
109
107
106
104
103
103
103
103
103
104
104
106
108
108
108
108
109
111
112
112
112
113
114
118
118
116
113
109
108
107
106
106
104
104
103
103
104
106
107
107
106
103
102
101
99
98
100
101
101
101
101
100
98
97
95
95
95
95
95
95
95
94
93
92
92
91
91
91
91
91
91
91
91
91
92
92
92
92
92
92
92
92
92
91
91
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
90
91
91
92
93
93
93
92
91
88
88
88
87
87
87
86
86
86
86
85
85
85
86
88
88
93
94
95
94
94
91
87
86
86
86
86
99
101
103
104
87
85
80
79
79
78
79
80
80
79
79
79
79
79
78
78
78
78
78
77
77
77
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
75
75
75
75
75
75
75
75
75
74
74
74
74
74
75
76
79
80
81
84
86
90
96
97
97
96
95
95
95
95
95
96
96
96
96
96
92
89
87
79
78
75
75
75
71
67
62
62
61
61
61
62
62
64
69
68
67
67
83
80
81
82
83
83
81
75
63
62
61
60
59
58
57
56
56
56
56
54
53
53
53
53
53
53
54
54
54
54
55
55
55
56
58
59
60
60
59
59
58
58
58
58
59
58
58
58
59
60
61
61
62
63
66
66
67
67
68
68
68
68
68
67
67
65
64
63
63
63
62
62
63
66
67
67
68
70
71
72
73
75
77
81
82
82
82
82
82
82
82
82
82
82
82
83
88
96
97
98
98
99
99
99
100
101
102
102
104
105
106
108
110
111
113
113
113