223
223
224
224
224
226
226
226
226
226
226
226
226
226
226
228
229
229
230
234
243
245
245
246
246
250
250
249
248
248
247
248
251
251
251
250
250
250
249
255
255
262
255
254
252
251
249
245
244
244
243
242
241
240
239
238
238
235
226
226
227
227
227
227
227
227
228
228
228
228
224
224
221
219
217
217
214
211
208
202
199
199
197
198
203
205
204
202
198
196
195
194
199
200
201
202
202
202
202
201
201
200
200
199
198
197
196
195
193
189
190
190
187
182
178
181
183
212
225
226
226
225
222
220
218
217
216
216
215
213
212
211
210
208
206
200
193
185
184
183
182
181
174
168
162
153
148
135
130
128
126
124
124
123
122
122
123
123
123
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
125
126
127
128
131
132
133
136
138
143
146
147
147
147
146
145
145
144
143
140
137
133
133
133
134
138
138
139
139
140
140
141
142
142
142
142
139
138
137
133
133
133
133
136
141
143
142
140
140
143
143
142
141
141
141
140
139
139
138
138
141
142
144
144
143
142
140
140
140
145
145
141
140
136
136
136
135
135
134
134
134
134
134
137
148
153
155
170
167
150
148
148
153
160
164
166
168
171
176
146
145
146
148
150
153
162
170
174
171
176
180
186
196
195
200
215
232
248
264
270
275
254
210
190
191
191
189
187
184
181
176
175
176
177
182
187
193
194
191
188
187
186
189
194
202
193
194
196
197
200
202
203
203
203
204
204
204
198
204
209
214
231
230
228
223
223
223
223
223
223
223
221
218
216
214
213
215
217
218
219
224
226
230
230
230
230
230
231
232
233
233
234
239
241
243
254
255
259
260
261
261
261
263
272
295
328
309
297
297
296
295
294
265
262
259
258
256
258
260
264
265
267
269
273
275
278
279
279
283
292
297
302
301
300
299
299
300
300
303
303
303
302
302
305
309
311
313
315
316
320
321
323
331
333
334
336
336
337
338
338
337
336
333
333
333
333
333
331
322
318
317
314
313
313
312
314
317
319
323
323
322
322
322
322
323
323
323
324
324
323
321
319
314
312
312
311
310
310
311
311
312
313
314
314
316
316
313
313
313
313
313
314
314
314
316
317
318
321
322
323
324
328
328
327
327
327
331
335
341
343
347
346
342
340
341
344
348
351
354
357
359
363
363
363
364
364
364
364
365
369
370
371
372
373
374
376
377
377
378
379
383
386
386
386
386
386
386
387
387
388
390
392
394
404
408
410
414
417
420
419
417
416
415
413
413
415
421
423
424
426
429
436
438
438
439
439
440
440
441
441
441
442
444
445
446
447
448
449
450
456
460
465
468
471
475
475
475
475
475
475
475
478
481
487
498
497
496
495
492
502
506
514
515
517
517
519
522
525
525
526
526
526
525
525
524
524
523
523
525
529
531
534
537
539
540
542
545
546
550
551
556
557
558
557
556
556
553
551
550
550
549
558
559
565
568
570
573
577
579
579
582
582
583
583
585
585
585
585
585
585
585
585
586
586
586
593
594
600
601
607
608
609
612
613
614
618
623
623
623
624
624
624
625
626
626
627
629
632
633
633
634
634
632
632
632
632
633
633
635
641
643
645
651
653
654
657
659
660
661
663
664
665
673
675
675
675
675
675
675
675
683
686
687
690
692
691
690
686
685
684
683
681
680
680
679
681
682
684
684
684
685
686
687
687
688
692
694
694
695
697
698
699
700
702
704
705
706
707
707
707
707
707
707
707
709
714
717
720
728
735
739
737
729
724
725
729
732
735
736
738
744
747
748
751
752
755
753
752
752
751
751
750
750
755
763
764
768
773
773
774
775
776
777
777
776
775
774
774
777
779
779
779
779
779
779
779
780
781
781
782
782
778
775
773
768
756
755
753
751
750
749
748
745
743
742
740
732
730
726
722
722
722
721
721
720
720
712
709
702
699
697
692
689
687
686
685
684
682
678
677
677
676
676
675
675
674
663
660
659
658
650
637
637
636
634
633
632
631
630
630
629
628
628
628
627
626
625
620
617
617
615
614
607
604
606
610
611
612
616
613
610
590
589
589
588
585
583
572
565
558
557
557
556
556
553
552
552
552
550
549
549
550
551
552
553
554
558
557
557
556
555
553
552
548
546
545
543
541
539
538
536
533
530
526
525
523
520
518
508
503
502
500
498
496
494
491
483
478
477
477
476
475
475
475
475
476
479
480
470
465
451
445
444
443
441
440
439
436
437
439
440
441
442
442
443
444
442
440
438
437
436
431
426
423
422
422
420
419
419
416
415
414
413
412
412
411
411
410
410
408
406
403
402
384
377
369
363
363
362
362
360
349
341
339
336
336
334
334
333
331
329
326
325
316
314
310
307
306
305
304
303
303
302
302
302
302
302
302
302
302
302
301
301
301
301
300
300
300
300
300
301
302
304
305
307
316
316
317
310
308
301
300
298
297
298
304
300
298
290
284
283
281
280
279
278
278
277
277
278
280
280
282
282
282
282
281
281
280
282
284
289
290
290
290
286
283
276
276
276
276
277
281
285
290
290
290
297
299
301
303
310
312
313
313
312
312
312
312
312
314
315
316
316
316
317
317
318
320
326
327
338
348
353
356
359
365
364
363
363
363
362
362
360
359
356
355
354
354
356
359
370
378
379
379
379
381
385
387
390
391
391
391
390
389
389
389
397
399
402
404
401
400
400
398
395
393
396
411
418
423
427
434
441
448
451
457
453
448
438
435
435
434
434
434
433
433
431
430
427
427
427
429
429
430
431
433
434
438
439
439
444
447
450
451
452
452
453
455
455
456
456
457
457
457
456
455
453
451
449
445
443
441
439
436
434
432
430
427
426
424
424
417
415
408
403
399
394
391
389
383
380
380
380
381
381
381
381
379
378
376
374
372
366
358
354
347
348
349
349
350
350
350
349
348
347
341
339
338
332
318
316
314
312
312
312
312
312
312
312
311
307
304
301
299
297
293
291
287
282
281
281
281
281
281
281
281
281
281
281
280
277
275
269
266
263
262
257
256
256
256
256
256
256
256
256
257
257
257
257
258
258
260
260
260
262
263
263
264
263
263
263
263
265
268
269
265
263
262
262
262
264
274
272
269
266
266
269
273
276
278
280
279
277
271
271
273
274
276
276
274
269
272
274
276
280
281
281
281
282
285
287
289
289
289
289
290
290
290
290
288
288
287
290
292
295
292
289
288
290
292
293
294
295
297
304
306
306
306
316
317
318
319
319
322
324
325
321
313
302
302
303
303
303
303
302
301
299
299
297
299
307
310
318
314
311
304
304
304
307
308
312
314
316
318
320
322
324
327
327
328
328
332
332
329
327
325
321
322
323
326
324
323
322
321
321
320
318
319
328
332
337
348
352
352
343
337
337
337
337
341
340
339
338
337
336
335
334
332
332
340
343
348
355
355
355
355
355
353
345
343
342
342
343
343
345
346
346
348
349
349
352
357
360
364
367
371
359
355
354
352
367
366
364
362
354
353
349
349
350
350
353
355
358
360
364
366
365
364
361
356
357
360
364
367
372
373
376
377
378
379
372
371
369
369
369
370
370
371
371
371
370
371
373
375
377
374
372
371
369
367
361
361
363
365
369
372
376
395
396
396
396
396
396
396
397
397
395
384
380
376
365
378
379
380
381
382
386
385
385
382
380
378
378
382
384
386
388
388
393
397
404
408
418
416
395
394
394
393
393
393
393
392
391
393
398
398
398
404
406
408
410
406
400
398
397
397
406
408
410
412
414
412
411
411
408
408
408
427
422
420
418
413
411
408
413
416
421
425
425
425
424
419
417
416
416
416
426
426
424
423
422
422
427
428
429
430
425
423
427
429
430
430
434
437
438
441
442
443
444
453
459
464
468
468
469
470
472
474
476
477
478
479
482
483
482
481
482
486
487
489
491
492
492
491
491
490
489
485
484
483
481
481
486
489
490
492
493
495
496
498
504
506
511
523
532
545
549
553
559
561
566
567
568
569
571
573
576
577
578
582
588
588
588
587
584
586
588
590
594
598
601
606
608
611
616
620
624
630
632
633
634
635
636
637
637
638
641
644
651
653
654
658
659
660
661
661
662
664
665
666
666
668
670
671
672
673
674
675
677
678
679
682
682
682
681
680
680
679
679
681
687
692
698
703
704
707
713
715
717
716
714
712
710
708
707
708
708
709
711
712
713
713
716
727
729
730
742
745
746
748
749
751
752
753
755
756
767
777
780
774
770
767
765
764
774
782
792
801
803
807
808
810
815
818
819
821
824
824
824
825
825
824
821
820
817
816
815
816
817
818
820
821
822
823
824
827
830
832
836
837
837
837
837
837
836
836
836
835
835
835
835
835
835
835
836
836
836
835
835
834
833
831
829
824
822
819
818
816
812
809
806
802
800
807
811
813
815
816
814
811
808
802
800
786
772
770
765
764
764
763
763
763
763
765
765
766
767
769
770
772
773
775
777
781
773
764
757
746
742
740
739
738
731
729
728
727
728
728
729
730
730
726
724
717
718
718
720
721
721
718
716
711
708
706
703
701
697
693
687
687
688
688
688
678
676
673
671
661
655
651
648
644
647
649
656
659
669
662
654
654
652
650
650
649
648
646
645
643
642
642
641
639
636
634
633
633
629
628
627
624
623
623
622
619
617
616
613
610
608
604
602
603
605
607
609
610
610
611
610
610
609
608
606
606
606
606
607
607
607
607
608
608
605
602
599
598
594
592
590
589
587
584
582
580
578
577
577
577
577
577
577
576
576
575
575
575
575
572
571
570
569
568
566
564
557
555
551
546
545
543
541
539
537
536
535
531
529
528
527
525
523
521
520
518
515
509
506
503
503
503
502
502
502
502
502
494
492
490
488
479
479
479
479
479
479
479
475
471
469
468
469
469
469
469
463
455
452
450
447
446
446
446
446
446
445
444
437
434
434
434
434
433
433
432
432
432
431
430
430
429
427
426
425
422
421
420
416
415
415
415
409
407
406
405
406
406
404
402
395
395
397
399
406
402
397
390
382
380
377
376
375
372
372
371
371
371
371
372
372
372
372
371
371
371
371
371
371
372
381
375
369
362
355
349
339
338
338
338
336
335
335
329
329
328
322
321
320
321
319
317
317
318
318
318
319
319
319
318
317
317
316
315
314
314
314
314
313
311
309
307
307
306
302
300
299
297
297
296
296
296
296
296
296
296
296
296
298
299
305
305
306
305
303
301
301
301
301
302
302
303
303
302
301
300
300
299
299
299
297
291
292
294
293
291
289
275
279
281
283
284
281
279
279
279
278
279
278
278
277
276
275
275
274
274
273
275
276
276
273
271
270
271
272
272
272
270
269
266
266
266
266
266
266
265
265
265
263
265
272
276
277
277
280
278
278
276
277
280
282
282
284
285
286
287
288
290
292
292
285
281
281
280
280
280
280
280
283
283
286
287
285
280
279
276
275
274
272
271
270
268
267
265
265
263
260
260
260
257
256
255
254
251
251
251
251
252
253
253
254
254
255
258
260
270
272
275
274
270
269
269
267
265
265
264
263
263
261
258
263
267
268
269
272
273
272
268
267
267
266
266
265
265
264
263
262
259
265
258
259
260
261
263
266
268
270
272
272
269
267
256
254
256
258
258
259
259
260
260
261
261
261
261
258
257
255
248
258
264
267
244
243
242
232
232
230
229
229
228
228
227
227
227
226
226
226
226
227
227
227
227
227
226
225
225
225
227
227
228
227
226
224
224
223
225
226
226
226
227
228
230
231
233
234
234
231
227
225
220
219
219
219
219
220
220
220
220
220
220
219
218
217
217
217
217
218
216
216
216
216
216
216
216
216
216
216
214
213
214
214
213
213
214
214
215
216
217
217
217
217
217
217
217
216
216
216
216
216
216
217
217
217
217
217
217
217
217
218
218
219
219
220
221
221
225
226
228
229
230
231
234
239
241
242
243
243
243
241
242
243
249
253
262
261
260
259
259
259
261
264
266
266
266
266
268
271
275
279
287
290
295
298
301
303
305
310
323
324
323
322
321
320
320
318
321
323
325
326
328
329
331
334
336
341
345
347
348
352
352
352
353
355
355
355
356
356
357
361
363
364
366
368
370
370
370
370
369
369
369
369
371
372
373
373
373
374
374
374
374
374
374
374
375
375
375
376
377
377
378
379
385
391
395
398
401
403
402
401
399
400
402
404
410
413
415
421
436
437
436
436
435
435
434
433
433
434
434
434
435
435
436
436
437
437
438
438
439
439
439
439
439
455
456
455
455
454
453
452
452
464
471
481
481
478
477
475
474
472
472
472
473
474
474
475
476
478
480
481
488
493
499
499
503
508
510
511
513
514
516
518
523
524
524
525
525
525
525
522
519
516
516
516
517
517
517
517
517
516
516
512
511
510
509
506
505
503
495
493
492
491
489
489
488
486
484
476
471
466
462
458
458
459
459
461
461
460
459
458
458
442
410
416
420
424
427
431
435
440
440
439
439
439
437
434
429
424
414
414
414
414
405
375
362
360
363
367
374
377
378
378
374
369
363
344
343
342
340
339
338
336
332
328
333
338
340
342
345
344
343
341
339
337
336
335
341
345
349
353
352
350
348
346
344
342
338
329
320
313
311
311
311
303
301
300
299
296
295
289
275
273
273
273
274
276
276
276
270
274
275
276
277
280
279
277
274
272
271
270
269
266
266
266
265
265
263
262
261
261
260
254
253
253
253
253
251
247
246
247
248
251
255
259
257
256
254
248
247
245
240
238
236
233
232
231
226
223
221
221
221
220
223
222
213
213
213
211
209
209
209
206
205
205
204
204
203
203
204
205
206
205
205
204
203
202
202
202
202
201
201
201
201
201
201
201
201
201
202
202
203
204
204
204
205
205
205
206
208
209
211
206
204
211
219
221
223
215
205
202
208
209
210
212
220
224
234
239
242
251
253
259
261
262
262
263
263
264
264
264
264
264
264
264
264
264
264
271
273
275
281
282
282
283
284
287
289
289
290
291
292
292
292
292
293
296
297
298
300
301
301
302
304
307
309
315
319
318
318
317
316
315
315
314
313
314
315
316
316
321
324
326
328
328
328
327
327
328
328
329
332
339
346
350
353
361
367
362
353
351
340
337
336
335
334
332
331
332
332
332
334
335
335
335
335
335
335
335
334
334
336
342
346
348
351
352
353
355
357
360
362
365
369
364
363
360
359
358
359
365
367
375
375
374
374
374
374
374
374
376
377
377
379
380
374
371
370
370
370
370
370
370
370
371
373
374
373
370
368
363
363
363
363
363
362
362
362
355
350
346
344
339
335
332
329
327
326
325
321
319
317
315
314
313
312
309
308
307
303
300
291
289
286
282
280
273
273
269
266
264
261
256
249
248
244
240
239
242
242
242
243
243
244
242
235
229
222
216
211
208
209
210
213
217
222
226
224
219
216
214
213
209
205
204
203
202
200
193
191
188
186
184
184
183
178
177
176
175
173
171
168
155
145
146
149
148
147
147
148
148
145
142
142
143
144
176
179
182
183
187
193
185
184
185
184
182
181
180
179
181
183
185
186
190
192
193
207
221
230
233
234
235
236
236
241
248
248
248
249
253
278
278
278
278
278
277
277
277
277
277
283
286
290
294
297
299
300
303
305
307
308
309
314
318
319
322
309
306
303
304
307
313
319
317
302
296
291
294
296
303
311
315
323
326
329
332
332
343
345
347
351
351
352
359
364
365
361
361
363
365
367
368
377
375
372
383
378
373
372
371
370
383
386
386
384
384
384
384
385
385
385
385
385
385
383
378
375
371
369
369
369
369
354
351
348
344
324
323
323
323
324
349
351
351
352
352
352
352
352
352
352
350
342
337
334
330
328
326
317
314
309
291
286
283
283
282
280
277
273
249
249
249
249
249
250
250
250
250
250
250
250
251
251
251
251
251
251
251
251
257
269
269
264
263
248
249
250
252
253
254
255
257
258
261
261
262
263
264
264
264
258
257
248
246
243
243
243
243
242
242
242
242
242
241
240
240
239
239
239
238
238
237
236
233
229
228
226
225
225
225
225
225
225
225
225
225
225
226
226
225
225
225
225
224
224
224
224
223
222
221
221
221
221
221