119
117
117
123
124
123
122
122
123
126
127
133
135
140
142
143
145
148
149
150
151
152
155
156
156
158
160
163
166
170
174
187
203
208
208
210
211
215
216
217
223
229
230
247
248
250
251
253
254
255
279
283
285
285
282
280
280
279
279
279
278
273
273
273
273
274
274
275
274
274
274
274
274
275
276
276
280
283
285
286
289
293
294
294
295
295
295
295
297
298
298
302
300
300
300
296
291
288
288
287
287
283
279
276
276
274
274
272
272
270
268
268
275
274
273
273
273
275
277
277
277
278
279
281
289
292
294
293
291
292
294
295
297
299
299
300
301
304
306
308
309
311
312
313
313
314
315
313
313
312
309
308
303
303
303
303
302
301
301
299
298
297
297
297
297
298
297
295
293
292
287
287
287
287
286
286
287
289
288
287
286
283
281
277
276
276
274
271
270
269
269
268
268
269
267
264
262
261
263
264
263
262
262
262
260
258
256
256
256
255
249
247
247
247
244
244
244
244
243
242
242
242
242
242
243
247
244
243
243
245
249
253
250
241
238
232
232
226
224
224
221
221
221
221
219
224
215
215
215
215
217
221
221
222
222
222
222
222
222
223
224
225
226
226
226
225
224
227
228
229
231
232
232
234
235
238
246
248
251
252
257
257
256
253
251
251
251
251
255
256
258
259
259
260
260
260
260
260
260
258
260
262
272
273
273
270
270
268
268
268
268
269
270
271
276
276
276
277
278
279
280
281
284
284
286
290
297
300
301
301
302
308
310
312
325
324
323
323
323
324
325
326
326
327
327
327
327
328
330
331
333
335
337
338
338
340
338
336
334
334
335
333
333
338
352
354
351
342
339
339
336
335
335
334
334
333
333
334
333
332
332
332
332
332
331
330
330
329
326
325
321
319
317
315
315
316
316
313
311
310
307
303
295
294
293
291
290
292
294
299
303
312
313
315
315
316
317
317
320
321
324
326
328
329
330
331
332
334
336
339
344
346
348
350
353
357
359
360
363
367
368
372
375
379
379
382
383
383
383
383
383
382
379
378
375
375
370
369
366
364
361
361
361
361
355
355
355
355
355
355
355
355
354
349
347
345
344
343
339
339
337
337
336
337
334
334
333
332
331
331
330
329
328
327
327
328
327
324
319
319
318
318
318
317
316
314
313
312
310
310
313
325
329
330
330
339
341
342
343
337
338
325
323
320
320
320
324
329
332
333
334
334
334
334
336
342
348
349
350
358
361
378
386
392
392
392
392
392
392
392
392
395
402
402
402
394
380
378
377
376
374
371
370
359
359
358
358
358
357
350
342
339
337
334
333
332
328
327
326
322
316
311
308
308
307
304
304
304
305
305
305
306
307
308
310
312
318
323
326
329
335
343
349
356
358
352
345
343
341
341
340
335
333
334
334
337
337
337
337
337
323
319
341
345
357
353
349
347
347
346
353
356
359
357
344
346
350
348
343
341
341
338
337
332
331
330
330
331
331
332
332
332
332
333
336
331
317
307
306
304
300
300
300
302
302
308
312
314
303
302
302
304
305
308
318
321
337
340
342
342
348
351
355
354
355
368
368
372
379
381
380
376
378
384
388
387
386
392
391
388
386
386
385
383
382
382
382
370
367
364
358
351
347
349
344
341
341
341
341
340
339
334
333
334
334
334
336
338
341
346
346
345
345
360
362
366
371
383
384
384
385
388
389
393
393
393
393
394
394
395
398
399
400
400
402
404
405
405
406
407
412
413
416
416
415
414
412
413
414
414
414
414
414
416
419
419
420
423
423
423
422
422
422
422
422
423
425
426
426
426
426
428
430
430
430
431
431
435
438
440
440
441
441
442
450
450
450
450
450
450
450
450
450
450
449
448
448
448
448
450
457
462
463
462
461
461
465
468
471
472
485
485
490
493
500
508
511
508
512
511
518
496
483
474
473
463
461
454
447
430
428
422
418
416
413
409
404
400
398
397
395
395
395
396
398
399
402
405
407
416
423
423
425
425
424
422
420
412
411
411
411
414
421
430
431
431
434
451
451
451
452
454
459
470
473
474
477
477
474
468
465
462
460
462
464
464
467
466
464
465
466
467
467
468
468
465
462
458
457
457
458
455
453
450
447
443
441
436
434
429
423
417
409
408
407
414
417
419
419
419
421
423
422
418
418
419
419
419
418
418
416
416
417
418
419
419
419
421
421
420
420
421
423
427
432
435
427
426
425
426
427
428
429
431
431
431
432
432
432
432
433
433
434
434
435
436
437
441
444
445
448
447
447
448
450
454
455
455
456
456
456
466
469
474
475
477
478
481
482
482
482
482
483
483
483
483
483
485
486
489
490
491
493
493
492
508
511
523
521
523
524
524
525
527
530
532
533
533
533
532
529
522
506
505
502
503
503
504
503
501
496
494
490
490
489
488
470
447
409
391
388
387
378
374
363
345
342
341
339
338
338
338
338
337
331
330
329
329
330
329
329
329
327
324
327
329
326
324
324
325
325
325
325
325
324
324
321
320
316
315
316
316
316
316
316
315
315
316
318
316
317
319
318
318
318
317
315
316
336
337
338
338
339
343
353
353
355
359
359
357
357
357
356
356
356
358
360
361
362
362
364
371
377
386
396
397
405
408
409
411
414
417
424
422
421
421
422
424
423
423
423
424
430
435
435
440
445
447
447
444
452
455
454
452
449
445
443
444
445
447
447
447
445
444
437
438
439
440
441
442
443
453
453
452
453
453
457
461
464
470
469
470
471
471
473
475
475
478
479
481
482
486
488
489
489
490
496
508
512
522
529
534
535
548
552
552
552
554
558
556
554
561
561
554
549
547
546
545
539
533
526
524
494
490
488
485
481
480
480
473
469
468
523
525
528
528
528
528
529
531
530
529
526
523
529
538
538
531
526
523
520
517
506
504
499
498
498
498
498
498
505
504
501
498
493
492
480
479
479
479
478
475
471
471
471
471
473
476
476
477
477
478
482
490
492
492
493
493
493
500
502
500
500
500
498
496
495
494
494
489
486
482
481
475
470
468
465
464
462
456
453
450
450
450
450
448
447
444
436
434
433
427
413
401
400
399
398
398
395
396
382
382
382
381
373
373
364
359
354
350
342
313
299
293
286
285
281
281
281
281
281
281
281
274
269
258
258
256
254
254
252
255
255
255
256
258
258
258
252
251
251
250
248
244
244
244
244
245
246
246
246
246
248
248
248
249
250
251
251
251
251
251
253
258
258
257
257
252
248
248
248
248
245
248
248
248
247
246
246
246
247
247
248
248
248
248
248
248
249
249
249
249
249
249
249
249
249
251
252
252
252
252
254
256
256
256
256
256
256
256
256
257
259
259
259
259
260
261
261
260
260
262
262
257
258
261
261
263
265
266
268
268
268
269
271
271
271
271
271
271
271
272
285
284
274
271
272
272
274
281
283
278
278
281
284
290
277
278
280
277
275
271
271
271
272
272
274
282
300
301
280
270
281
278
273
271
272
272
272
273
278
278
278
280
282
278
276
275
282
283
284
287
282
279
279
279
279
279
279
280
283
287
292
300
300
303
304
304
304
305
306
306
306
307
308
310
312
324
342
363
366
400
403
429
431
446
485
496
517
558
580
584
589
562
554
537
527
512
503
483
461
457
445
435
432
407
407
406
406
406
404
401
396
393
393
393
397
406
406
408
410
410
413
415
417
430
428
434
437
434
430
430
435
450
452
451
451
462
466
466
469
479
488
489
490
491
500
503
506
507
507
508
509
510
512
513
514
514
515
522
524
536
551
560
557
555
555
561
565
568
568
567
566
567
569
572
587
584
584
585
588
589
569
549
549
549
552
552
538
527
527
522
512
510
508
500
494
491
489
487
486
484
481
473
470
467
437
415
410
408
403
402
400
400
400
400
400
400
403
404
407
410
415
415
421
433
436
437
440
443
444
445
449
450
453
455
459
464
478
481
483
486
492
503
503
504
506
508
511
511
526
532
534
536
538
538
539
541
543
546
546
546
546
546
548
560
563
565
568
569
570
570
576
576
577
580
583
598
604
603
602
601
615
618
620
621
623
628
629
634
636
637
629
631
633
638
641
638
645
651
654
658
668
674
677
676
675
674
672
671
671
671
671
662
651
661
667
670
672
674
676
682
689
696
697
697
698
702
704
705
706
707
707
707
712
719
726
728
731
732
732
731
729
728
727
727
729
734
742
742
742
742
742
747
748
750
751
758
760
762
763
769
770
770
770
770
770
769
769
771
775
777
778
779
783
787
792
796
796
797
801
814
817
817
827
835
832
835
840
840
839
838
840
844
847
849
854
860
862
864
866
872
882
893
905
909
914
916
918
919
922
923
925
926
930
933
934
934
934
934
933
929
940
947
945
948
951
954
958
965
979
980
968
961
967
970
973
975
977
980
985
988
988
984
984
981
977
974
970
968
966
964
961
965
977
986
973
958
952
949
946
946
947
950
951
928
933
934
931
930
929
928
926
923
921
920
918
917
915
914
912
908
901
897
886
874
866
863
858
853
848
843
841
841
840
838
840
839
837
833
832
833
829
817
817
811
800
796
796
794
788
784
782
780
776
775
774
770
769
770
770
770
770
770
770
765
759
753
752
751
749
743
743
743
743
742
739
737
735
733
728
730
731
732
732
732
729
728
727
725
720
715
707
707
707
705
703
702
701
700
699
694
692
691
689
684
676
667
664
660
657
654
655
666
673
672
672
673
673
674
677
677
675
673
667
664
648
644
643
639
633
635
634
628
630
633
637
628
627
627
627
624
624
624
624
624
619
616
605
587
580
583
576
568
547
545
541
533
528
520
517
514
510
493
489
487
478
476
473
470
469
472
475
472
473
470
465
455
454
453
452
452
451
448
448
448
448
446
445
443
443
433
430
430
430
427
425
423
418
418
418
414
413
409
403
401
398
395
394
394
392
392
393
393
393
390
390
382
379
372
371
371
372
373
372
372
372
371
370
370
370
370
369
367
365
365
362
361
360
361
363
360
358
356
356
356
355
353
353
354
354
353
347
355
352
350
347
345
345
347
343
341
339
342
340
340
338
339
339
335
334
333
333
333
333
334
334
331
331
331
330
329
327
328
329
329
338
340
339
338
339
339
339
335
335
331
328
329
330
330
330
328
325
326
326
325
323
322
322
321
321
317
315
312
312
313
313
313
313
311
311
307
308
307
306
306
309
308
318
308
308
306
304
303
303
303
305
305
305
305
305
305
306
307
308
310
312
314
312
312
314
312
317
318
319
319
324
327
325
327
331
331
333
330
325
324
316
316
314
307
304
303
296
294
292
291
288
288
288
295
314
310
300
294
292
293
295
295
296
298
295
294
294
294
294
289
287
282
279
279
282
295
298
298
300
298
302
311
314
317
317
321
322
320
318
315
313
312
307
300
292
290
284
283
283
283
280
280
280
278
271
270
268
267
265
265
265
265
265
266
266
267
267
267
265
269
268
268
268
268
268
267
267
267
267
267
267
268
268
264
264
260
257
256
255
255
253
255
252
252
251
250
250
252
254
252
252
251
250
250
251
250
252
251
250
250
250
250
250
250
250
250
250
249
249
250
249
250
249
249
249
253
255
259
264
264
265
265
266
266
265
264
267
272
282
282
282
282
282
279
277
275
274
273
281
277
265
267
268
269
265
265
267
270
270
270
265
262
257
257
257
257
257
257
256
255
258
257
259
262
261
261
258
260
261
260
261
262
262
262
265
267
267
268
268
268
268
268
272
273
281
291
303
306
310
313
317
326
325
323
334
339
342
347
347
354
356
359
358
356
361
362
363
363
366
369
379
388
401
399
413
421
431
442
469
475
478
478
488
492
495
499
501
515
533
539
545
548
554
558
559
562
572
588
593
594
595
601
599
599
595
590
589
588
586
582
568
565
560
556
556
556
556
554
553
539
529
524
523
522
508
506
504
503
499
491
490
489
488
490
491
492
494
494
488
467
445
432
382
352
350
348
345
334
326
323
322
322
323
323
322
301
300
300
300
300
304
298
296
294
294
293
292
291
289
287
286
285
285
285
288
288
286
286
290
296
297
304
306
309
308
308
301
299
291
286
283
283
283
296
298
259
272
285
261
280
265
262
248
240
240
239
238
238
238
238
238
237
233
233
232
231
230
229
227
227
240
243
239
233
231
237
234
236
246
240
229
221
220
218
220
224
226
227
231
234
236
246
250
266
273
276
280
285
287
286
292
309
314
319
327
329
341
349
352
355
356
359
359
361
364
358
354
351
345
345
345
344
352
355
355
356
356
356
357
350
338
334
330
323
315
314
314
313
311
309
308
306
305
302
301
298
299
298
298
296
293
290
287
287
288
288
288
288
288
288
288
287
288
289
288
289
291
294
295
298
308
308
307
307
312
314
319
322
323
326
326
325
325
322
318
316
310
298
296
294
291
287
279
274
269
268
267
267
261
255
245
240
216
208
192
182
173
169
178
200
194
191
185
181
186
190
186
184
176
172
168
168
169
172
172
169
157
151
151
150
147
153
146
168
168
142
133
133
140
143
134
138
141
131
144
150
140
129
143
134
142
141
132
134
131
130
131
141
133
134
135
132
126
133
129
132
133
132
130
132
126
130
130
127
132
128
126
129
137
128
130
127
138
137
127
123
120
123
126
141
129
120
130
127
135
128
139
137
130
128
126
126
126
126
126
127
127
126
125
124
124
127
131
133
130
126
132
130
128
136
136
134
134
132
126
126
124
128
127
126
128
128
128
130
133
135
139
142
139
135
133
134
148
149
146
141
137
134
133
134
136
137
137
136
135
134
132
132
134
135
136
136
135
135
137
141
143
143
143
142
142
147
162
165
166
161
148
152
155
159
159
159
160
185
188
191
190
188
185
201
206
201
201
201
204
218
217
215
217
223
227
230
238
238
244
267
274
274
273
273
286
289
288
279
277
272
270
270
271
277
284
288
283
281
290
294
280
281
283
293
293
293
292
292
296
301
298
291
294
297
302
306
310
313
315
320
319
318
317
317
322
324
323
322
321
312
313
316
316
323
325
326
329
339
340
342
342
343
343
340
328
327
324
323
321
319
318
318
317
317
315
313
312
316
308
308
300
309
307
302
297
295
295
294
290
290
290
285
283
281
280
283
277
274
273
271
257
258
258
259
260
258
251
249
247
246
246
243
243
242
237
222
222
222
222
221
220
220
221
221
218
213
201
198
196
194
193
195
200
203
205
206
206
206
223
231
230
230
230
229
229
233
240
242
243
245
246
248
249
247
232
240
243
247
250
261
264
268
275
278
278
278
278
279
280
281
282
283
282
274
275
278
280
282
283
287
289
299
301
303
305
306
308
309
309
310
311
312
313
317
324
327
326
321
320
318
318
316
313
311
311
310
310
310
310
309
309
308
308
310
311
311
315
320
320
319
310
310
317
316
298
294
292
283
281
279
271
271
271
265
265
265
263
255
253
248
234
229
227
226
217
215
210
205
205
205
205
205
205
205
205
205
205
204
204
203
202
202
203
203
203
202
200
200
200
201
201
202
208
212
221
221
221
222
222
226
226
226
215
212
210
209
208
207
186
183
180
179
176
166
164
163
162
162
162
162
162
161
154
145
144
139
133
132
129
125
125
125
124
125
128
131
134
135
133
133
134
137
138
137
136
135
132
131
131
131
134
136
136
135
134
128
124
126
122
117
117
117
117
116
116
115
116
115
116
117
119
119
120
123
129
130
135
138
128
127
128
128
128
116
116
116
116
116
116
116
115
114
114
114
113
113
114
116
116
116
124
120
120
121
121
118
116
115
114
114
118
111
111
114
123
113
119
122
122
116
117
126
115
115
116
119
123
121
121
122
127
125
123
125
127
127
121
123
124
122
120
121
120
119