157
157
157
157
157
158
159
159
158
158
158
159
160
160
160
160
160
161
162
164
166
167
169
170
170
170
169
169
168
169
168
169
169
168
168
168
171
172
172
174
174
174
177
177
177
183
185
185
185
186
186
187
195
199
204
204
211
211
218
219
219
220
221
222
223
223
224
224
225
225
224
224
226
229
231
231
230
229
228
228
227
226
226
224
219
218
218
217
216
215
215
214
213
213
211
210
209
207
206
205
202
201
199
197
196
194
194
194
194
194
195
196
196
198
200
198
197
197
198
198
198
198
199
199
200
200
202
203
203
203
203
203
205
207
208
209
209
210
212
212
214
214
214
214
214
214
215
215
216
218
218
219
219
219
219
219
232
233
235
235
235
231
230
233
233
231
231
231
231
232
233
233
234
237
238
238
236
236
236
236
236
236
236
236
238
238
238
239
240
243
245
246
247
247
247
247
248
249
251
251
252
253
258
260
262
272
275
275
276
276
276
276
276
276
277
277
277
277
278
278
279
280
282
284
284
280
279
279
279
289
309
318
338
347
351
355
357
360
363
366
376
384
390
399
399
399
401
401
401
417
421
426
435
442
452
456
461
464
466
469
469
472
475
477
479
479
479
480
480
480
480
478
478
477
477
472
470
468
471
475
480
480
481
481
485
490
499
500
501
505
507
512
515
516
521
521
520
515
515
514
514
514
514
514
514
511
509
508
505
519
519
531
535
536
537
535
534
533
532
531
528
526
526
523
522
521
521
521
521
523
527
530
533
533
533
533
536
539
539
539
540
542
543
543
544
548
551
552
550
549
549
548
551
553
557
558
559
560
563
567
577
584
589
599
599
599
600
600
599
599
599
600
601
603
607
610
611
609
608
600
598
598
598
597
597
597
596
595
594
593
592
589
588
587
580
579
576
576
577
580
586
591
594
599
607
610
614
626
623
616
609
607
604
601
599
595
592
590
590
585
575
575
575
575
575
575
576
577
574
568
564
564
563
563
562
562
562
560
559
558
558
558
556
553
551
548
525
525
524
524
523
521
519
518
514
515
516
516
517
517
516
514
511
513
514
518
518
513
509
504
501
497
488
484
475
467
460
457
452
441
438
435
434
419
418
414
414
414
414
413
413
414
415
416
415
412
411
397
396
392
377
373
367
366
363
358
354
353
349
348
347
344
343
342
342
340
340
340
339
338
338
337
337
337
337
337
337
336
334
333
330
326
324
323
322
318
314
310
309
304
303
302
299
298
298
297
297
296
295
295
295
294
291
274
267
264
264
263
263
263
264
264
264
264
264
264
265
265
265
265
265
266
270
271
272
273
273
273
273
273
273
272
272
272
272
272
272
273
273
273
273
273
273
273
273
273
274
274
274
275
277
278
280
281
283
284
285
285
286
286
286
288
290
291
291
291
291
291
291
291
291
292
292
293
295
297
298
299
300
300
303
303
306
308
311
313
319
324
326
326
327
327
327
329
331
334
341
342
341
337
330
329
329
329
329
327
327
332
336
336
334
333
333
333
333
334
334
334
335
337
342
347
344
345
346
348
348
347
343
342
339
339
339
339
339
342
348
348
348
346
347
347
348
349
352
352
353
355
355
357
359
360
361
362
362
361
361
360
360
359
359
359
359
360
360
361
361
362
362
361
359
359
356
355
355
355
356
358
358
358
359
360
369
370
370
371
372
373
378
379
380
380
380
380
379
381
381
381
381
381
380
378
376
375
375
375
375
376
377
378
379
380
381
382
382
385
385
385
385
384
384
383
384
384
384
384
384
385
385
387
387
388
388
389
389
389
389
389
387
387
387
390
390
391
391
392
393
394
395
396
396
397
398
399
401
403
403
404
406
407
408
408
410
410
412
412
414
420
422
428
429
432
434
435
440
441
444
445
452
454
460
461
462
465
462
462
465
466
471
474
474
474
474
477
484
485
485
485
484
484
485
486
488
489
489
489
489
489
489
490
492
498
503
515
518
521
527
531
537
539
549
551
551
551
551
551
551
554
555
558
574
576
579
580
581
581
581
587
588
589
589
590
590
590
589
589
587
586
585
598
600
603
605
606
607
608
608
610
612
612
610
608
606
604
606
613
619
646
653
656
656
656
656
656
656
651
647
644
641
638
633
632
632
632
632
634
636
637
638
639
641
642
643
651
652
654
656
658
659
661
690
695
701
702
703
705
708
710
714
715
716
714
712
709
707
706
705
706
707
708
709
710
714
715
717
718
718
718
717
716
714
708
707
708
710
710
710
710
711
711
711
711
711
711
712
712
713
714
719
722
726
728
730
732
735
738
742
745
739
734
730
729
730
730
739
747
749
751
752
750
748
750
754
760
766
768
767
751
748
746
747
751
762
763
763
763
759
755
751
748
738
737
746
746
745
743
744
746
750
753
753
756
758
759
761
761
763
763
762
761
758
754
744
741
740
744
745
746
745
742
733
720
717
714
712
702
699
697
699
702
705
706
708
704
701
699
701
702
706
709
711
714
715
713
711
699
706
708
710
712
716
716
716
710
705
701
696
686
708
709
707
702
702
704
704
704
704
701
699
692
689
685
671
660
656
652
655
658
665
670
656
633
624
621
620
611
595
591
589
583
580
575
573
572
570
570
569
568
567
566
565
560
558
556
555
554
553
553
552
554
556
561
563
569
577
583
596
614
617
620
621
623
625
626
628
629
625
620
615
611
607
602
599
598
597
596
591
586
581
576
567
565
564
562
560
562
565
569
577
579
580
574
566
549
526
516
512
509
507
497
490
485
480
474
472
467
464
460
454
450
447
443
443
442
442
443
451
452
454
455
456
456
450
449
446
444
440
439
439
438
437
436
435
435
435
435
440
443
445
448
448
450
455
455
455
455
459
488
493
498
504
508
511
518
518
520
522
527
534
555
563
564
565
566
567
566
559
557
571
584
597
611
599
603
619
618
641
662
669
661
660
660
660
660
660
660
682
686
688
684
680
671
669
675
688
706
710
734
746
756
759
762
762
762
762
768
774
773
772
767
766
764
764
764
763
763
763
763
761
757
753
748
734
731
729
724
720
717
717
715
713
708
699
692
692
692
693
703
707
707
708
709
706
704
704
704
731
742
740
740
740
740
741
741
740
740
738
727
722
718
715
714
713
712
711
709
705
706
676
649
639
633
611
592
580
584
587
587
567
563
555
534
525
523
518
518
518
518
518
521
524
526
526
529
536
538
540
541
542
542
541
540
538
538
539
540
539
536
533
535
540
540
537
538
542
553
562
575
585
589
583
569
558
554
548
546
550
554
559
561
556
550
547
551
575
579
578
577
580
582
582
582
582
584
585
587
590
603
609
616
617
619
626
637
644
647
667
669
670
672
675
678
703
708
708
708
708
702
676
674
672
674
679
686
689
688
687
687
684
684
685
690
702
698
692
685
673
666
662
652
639
624
624
622
618
616
612
597
592
584
574
565
553
532
529
527
526
525
523
522
519
513
510
509
509
509
509
508
507
507
506
506
505
503
498
495
489
486
484
473
462
459
457
454
452
450
449
448
447
447
447
447
447