10
10
10
15
15
15
18
18
19
20
21
22
22
24
25
25
25
26
26
26
27
28
30
31
32
32
33
42
43
44
48
48
52
54
58
60
61
67
68
71
74
79
82
84
89
95
98
99
100
102
104
109
112
113
113
113
113
113
113
113
113
113
113
113
113
113
114
115
117
118
120
122
125
130
149
154
155
155
155
155
155
155
154
154
153
153
151
151
149
148
147
145
142
141
137
136
135
132
131
131
131
131
131
131
131
131
131
131
131
131
130
129
128
127
125
123
122
121
121
120
118
117
116
115
115
114
112
112
112
111
110
109
107
105
103
101
100
98
97
94
91
90
89
88
87
86
85
84
83
82
80
79
79
79
80
80
80
80
80
80
78
75
73
70
68
63
60
57
55
54
54
53
51
50
47
46
45
48
53
57
58
59
59
60
60
61
62
63
65
76
78
79
81
78
76
73
70
70
71
72
74
76
79
79
79
79
79
79
79
81
83
92
97
103
104
105
108
110
111
111
112
113
115
117
119
121
121
123
129
135
139
144
146
147
148
150
154
154
154
155
158
158
158
159
159
159
159
160
160
160
160
162
163
164
165
166
167
169
170
172
173
176
178
178
179
180
180
181
193
196
200
209
210
211
212
214
218
224
224
227
228
228
229
230
230
231
231
232
232
232
233
234
238
244
246
248
250
252
252
253
254
255
257
257
261
265
271
281
287
293
294
295
297
299
300
301
302
302
303
305
306
309
316
319
327
337
340
341
343
346
347
348
350
351
352
352
352
352
352
352
352
352
352
352
352
352
353
356
358
363
365
367
369
371
372
372
373
380
381
381
383
384
385
386
388
389
390
390
390
391
391
391
392
393
393
394
394
395
395
398
399
399
399
399
400
400
400
400
400
400
401
401
401
402
402
404
404
404
404
404
404
404
404
404
404
403
402
402
402
402
402
404
405
405
406
408
409
409
410
411
412
412
412
411
411
410
409
408
408
407
408
408
409
410
410
412
414
414
414
414
413
413
413
413
411
411
408
407
406
404
403
402
402
401
401
400
396
394
392
391
391
390
389
388
387
386
386
386
386
386
387
387
387
388
388
388
389
389
389
387
384
383
382
378
378
377
375
373
373
373
374
374
375
375
375
375
375
382
387
391
398
398
399
400
401
402
403
408
409
411
412
414
415
416
416
417
420
422
423
423
424
425
426
427
427
428
428
429
430
432
434
440
442
442
445
446
448
452
457
458
460
467
468
469
470
471
471
471
471
471
471
471
471
471
471
475
476
477
478
479
480
481
488
512
520
517
514
514
513
512
511
511
509
506
506
506
506
506
509
513
517
518
519
528
530
532
534
542
544
546
547
547
548
548
548
546
546
546
545
545
547
553
556
557
563
571
573
574
575
579
580
584
591
596
601
604
609
619
620
621
623
623
623
624
624
624
625
625
626
626
627
627
628
634
638
640
648
650
652
663
665
667
667
667
667
667
667
667
667
667
667
668
672
673
674
675
678
679
683
684
688
688
689
690
691
693
693
693
694
694
697
701
704
706
708
710
711
712
717
719
721
723
723
723
723
723
723
723
725
727
729
731
734
739
741
745
748
750
752
761
760
759
757
756
755
753
753
749
749
754
756
758
760
763
766
769
771
772
773
773
773
774
774
775
775
777
777
777
778
778
779
780
782
783
785
786
786
787
788
790
791
794
795
797
799
800
801
803
804
808
810
812
808
807
803
802
800
799
797
795
794
793
791
790
790
789
785
782
780
777
774
770
767
763
760
758
757
754
753
753
753
753
752
752
752
752
751
751
751
750
749
749
749
748
747
746
746
745
745
745
752
753
757
758
761
756
747
736
730
727
739
741
742
752
754
754
757
760
763
763
763
764
764
764
764
765
765
765
766
766
769
770
772
780
787
790
795
800
801
803
810
812
813
813
811
805
804
802
794
792
792
789
792
799
806
809
815
820
823
828
828
828
829
829
831
832
832
833
833
834
837
838
838
839
841
842
843
845
849
844
841
838
836
835
829
823
823
822
821
820
828
831
837
845
844
843
842
842
840
839
838
837
839
840
842
843
843
845
845
844
844
843
842
841
841
840
840
840
840
842
844
846
847
847
847
847
847
847
847
847
847
847
847
850
850
861
864
865
866
868
869
870
874
877
882
886
892
895
898
900
904
905
907
910
911
912
913
914
915
917
921
922
924
925
926
927
929
931
932
932
933
934
935
936
939
940
945
947
948
950
951
952
953
954
954
954
954
955
955
955
955
955
955
955
956
957
958
959
965
967
968
969
974
977
979
986
987
989
990
992
994
995
998
1000
1004
1005
1006
1006
1009
1009
1010
1012
1012
1013
1014
1017
1020
1025
1026
1029
1030
1031
1038
1041
1050
1054
1056
1059
1062
1067
1072
1076
1075
1074
1074
1074
1068
1065
1060
1055
1052
1049
1047
1043
1037
1036
1032
1031
1031
1029
1029
1026
1024
1021
1019
1015
1014
1010
1008
1006
1002
1001
1000
999
996
994
992
991
987
983
982
981
979
972
970
967
962
961
960
958
955
955
955
955
955
955
955
956
956
956
956
956
957
957
957
957
951
949
948
946
944
941
935
934
930
929
927
925
925
924
924
923
922
921
921
920
919
919
916
916
915
914
914
913
913
910
909
907
906
904
903
900
898
893
889
883
880
873
871
869
866
864
862
850
843
840
840
840
840
840
840
840
839
838
837
836
836
835
834
833
833
834
837
837
840
842
843
843
843
843
843
844
844
844
841
839
834
827
820
815
809
802
808
810
813
818
824
831
843
842
839
838
836
836
835
833
829
827
825
821
819
815
810
807
806
804
803
799
796
794
793
792
791
790
789
788
788
788
792
794
794
797
798
799
800
802
796
795
794
789
783
780
776
772
771
770
768
767
767
767
767
767
768
768
768
768
769
769
769
769
769
768
755
754
752
737
726
724
729
733
738
740
739
738
737
732
732
731
729
729
729
729
729
729
728
728
728
728
728
731
738
741
744
747
753
754
756
758
761
763
764
766
765
763
762
761
759
758
757
755
755
754
753
757
763
771
779
788
794
805
813
821
819
805
803
802
800
800
799
799
799
798
797
796
795
795
795
795
795
795
795
795
795
795
795
792
792
791
789
788
783
782
779
776
775
775
774
770
767
765
760
754
752
749
748
746
746
746
747
747
748
748
748
749
752
752
753
753
756
756
757
757
757
759
759
759
758
758
757
756
755
754
754
754
753
751
750
750
749
749
748
746
745
744
739
738
736
734
730
728
728
728
728
728
729
729
729
729
729
729
729
730
731
732
732
733
733
735
738
740
741
743
745
746
748
749
751
752
752
752
753
755
755
755
756
756
756
757
758
758
759
760
761
761
762
762
763
763
764
764
764
764
762
761
761
761
759
759
758
757
757
755
754
752
752
750
749
749
748
748
747
745
745
744
742
742
741
740
739
736
735
732
731
730
730
729
729
728
727
727
727
726
725
723
723
723
723
723
723
723
724
724
724
732
735
737
739
740
743
744
747
751
754
761
763
767
768
769
771
774
775
780
786
790
801
813
820
822
816
812
803
795
786
781
776
776
776
776
777
779
779
784
791
792
794
795
798
799
797
794
793
791
790
789
787
786
782
778
775
772
769
764
762
759
756
750
745
744
738
734
716
697
674
651
644
635
625
622
614
610
601
597
591
585
580
576
556
547
532
524
520
514
509
502
501
499
497
493
491
486
487
491
495
504
506
508
510
511
513
517
518
523
524
525
526
529
528
522
518
511
506
497
478
475
474
471
470
468
467
466
462
461
460
458
458
455
452
449
447
445
442
440
437
435
433
429
426
424
422
418
415
412
409
406
402
399
399
398
398
397
397
396
396
395
395
394
393
392
391
391
390
390
390
388
387
386
384
382
381
379
377
375
374
374
376
378
380
382
386
387
389
390
391
392
395
396
398
401
409
411
415
424
426
430
432
434
434
434
435
436
437
437
437
438
438
439
440
440
441
444
444
445
445
446
446
447
449
451
451
453
454
454
456
458
458
459
462
463
466
467
467
467
468
469
471
474
474
475
476
477
481
487
488
489
489
492
494
494
496
497
499
500
504
505
506
507
508
508
510
513
515
521
521
522
527
529
530
531
532
533
533
534
538
542
546
548
550
553
560
564
565
569
570
571
573
573
575
576
577
579
580
581
582
584
585
586
587
589
589
590
590
591
592
593
593
593
593
593
592
592
592
591
591
592
592
593
593
594
597
597
597
600
600
601
599
599
598
598
597
596
595
593
592
591
591
591
590
590
590
587
585
583
579
574
569
565
558
554
552
549
543
538
534
533
522
518
514
505
503
501
499
463
460
455
450
449
446
443
441
438
433
430
427
427
424
423
421
421
417
415
412
410
408
408
407
405
403
402
394
388
382
367
362
361
356
355
351
348
345
343
342
343
344
344
344
343
332
318
312
308
299
298
296
294
292
290
282
276
274
267
265
263
261
260
257
253
246
244
242
240
237
231
229
229
229
230
230
231
231
232
233
235
226
223
216
210
207
207
206
206
206
205
205
205
204
204
204
203
202
202
202
202
200
197
195
194
193
191
183
182
182
181
180
175
174
173
169
168
167
165
162
157
154
153
152
151
147
145
138
135
135
129
125
124
120
119
119
118
114
92
86
84
81
80
79
76
74
72
70
70
73
77
79
86
86
88
89
90
94
95
97
100
102
104
104
105
106
106
106
107
107
107
107
108
109
110
111
114
114
115
117
118
119
119
120
121
121
122
123
123
126
127
129
130
130
131
133
134
135
136
137
138
139
140
140
142
143
149
151
152
153
154
154
156
157
161
166
169
171
172
173
174
175
176
177
177
178
178
179
179
179
180
181
182
194
202
207
212
214
214
213
213
212
211
207
206
205
202
202
203
212
220
222
224
227
240
240
241
241
241
242
242
242
247
248
249
250
251
252
254
256
266
266
267
268
269
270
272
275
278
279
280
281
293
299
301
301
301
301
301
301
301
302
305
313
314
315
315
317
317
318
318
320
321
322
323
325
325
326
327
327
329
329
330
331
332
333
334
335
335
336
337
337
339
341
341
343
343
343
343
343
343
342
342
341
340
340
340
340
340
341
342
342
340
339
337
337
336
336
338
339
340
342
343
345
346
347
347
349
350
351
349
348
343
339
336
335
331
328
326
325
322
320
319
318
317
316
313
312
310
306
302
299
296
295
294
293
292
290
290
289
287
285
288
289
289
291
294
295
296
298
296
292
281
278
276
271
270
269
268
268
267
266
264
263
262
259
255
244
236
231
229
227
226
223
220
221
221
221
221
221
222
223
224
224
224
222
219
219
218
217
214
211
210
209
208
207
205
204
203
202
200
200
200
200
200
200
200
200
201
203
206
208
211
216
220
223
224
226
228
232
233
235
237
239
240
243
243
245
251
252
253
253
254
256
257
257
258
258
259
261
270
273
281
299
302
305
307
309
310
313
314
316
325
332
334
336
338
345
348
352
353
355
356
360
361
365
367
372
382
388
396
405
406
408
411
412
412
415
418
423
424
429
429
430
431
434
435
437
441
445
447
449
452
452
454
454
455
456
457
457
458
458
458
458
459
463
467
469
489
490
491
492
493
500
508
511
515
517
518
521
524
526
527
528
529
527
525
523
520
519
514
511
513
514
518
527
542
545
551
555
558
565
565
565
565
565
564
564
564
564
564
565
568
570
574
575
576
578
582
585
586
588
589
589
589
590
591
592
594
595
596
597
599
600
601
602
604
605
606
608
609
609
610
610
610
610
611
611
611
611
611
611
611
611
611
611
611
611
611
614
615
616
617
620
622
631
624
619
618
616
614
611
609
608
607
606
605
606
607
608
609
611
612
614
617
624
627
631
630
629
626
626
622
619
618
614
613
612
611
609
604
602
602
601
600
597
596
595
594
593
593
595
596
597
598
599
600
602
604
604
602
598
596
595
594
593
592
590
589
588
584
583
582
582
581
579
578
578
575
573
566
560
552
549
548
539
536
535
534
534
534
534
534
534
534
534
534
534
534
534
534
533
531
529
524
521
516
514
512
508
507
506
505
501
500
496
491
488
484
480
478
476
476
475
475
474
464
457
456
454
450
448
447
447
446
446
445
445
444
444
444
445
446
447
447
445
440
435
429
424
422
418
397
393
393
393
393
394
394
395
393
390
388
380
372
370
368
366
360
358
354
351
350
344
341
338
333
330
327
326
324
321
318
318
317
317
316
314
312
311
310
300
297
266
262
260
256
250
247
250
251
251
256
259
263
278
283
287
289
295
281
277
269
266
262
261
259
253
243
235
199
199
198
198
196
193
193
195
196
197
197
198
200
202
203
204
204
202
198
195
192
186
183
177
170
166
164
164
163
162
161
160
158
156
150
147
144
143
142
141
140
139
138
135
131
128
127
126
124
121
115
115
114
113
112
112
109
108
106
105
105
104
104
103
102
96
91
88
86
80
75
73
73
73
73
74
74
75
75
76
76
76
77
77
78
78
78
79
79
79
80
80
79
78
77
75
75
73
72
72
71
71
68
67
65
64
63
62
62
61
61
63
64
65
66
67
68
68
69
70
65
63
58
54
53
52
50
49
49
47
46
45
43
42
36
36
36
36
37
37
37
38
38
39
40
42
43
44
45
45
47
47
47
47
47
47
47
44
41
40
37
33
31
30
28
26
21
24
25
27
27
26
25
23
22
22
21
23
23
20
20
18
18
17
15
15
16
17
17
18
19
19
20
21
24
25
28
29
29
30
31
32
33
34
34
34
34
34
34
34
34
34
36
42
47
51
53
61
69
69
68
68
67
66
66
65
64
64
64
64
64
64
64
64
64
64
61
58
54
52
50
48
46
45
43
40
39
38
35
33
33
32
32
31
31
30
30
30
29
28
27
27
26
26
25
25
24
24
23
23
22
21
21
21
21
21
21
21
21
21
21
20
18
16
15
15
15
15
15
13
12
12
13
16
16
16
13
11
9
9
9
8
8
8
10
11
12
12
13
12
10
9
10
13
13
14
15
16
16
17
17
17
17
17
17
17
17
17
18
19
21
21
21
22
22
21
20
18
25
25
25
25
24
24
24
24
24
26
28
29
31
34
37
38
42
48
48
49
53
57
60
66
69
72
75
81
84
86
94
95
102
105
110
119
120
123
127
128
129
130
134
136
140
140
142
142
143
144
144
145
146
146
147
147
148
149
151
151
153
155
158
161
164
165
166
172
174
184
198
199
201
202
227
228
230
232
236
231
228
224
223
222
220
221
222
223
224
224
225
226
227
231
232
234
235
246
249
251
253
262
264
272
279
283
287
289
295
298
309
312
315
326
330
333
341
344
346
348
355
358
363
372
386
393
396
399
403
408
413
414
415
416
416
418
420
421
424
426
427
429
432
433
434
435
435
436
437
437
439
440
442
444
446
452
452
453
454
456
459
461
462
464
465
468
471
470
469
468
468
466
466
465
464
464
464
465
465
465
465
466
466
466
469
472
476
479
486
489
491
494
497
499
500
494
492
479
476
475
474
477
481
486
489
491
493
496
496
497
497
497
497
498
498
498
498
498
498
498
497
497
496
495
494
493
492
492
491
491
490
485
483
482
480
478
476
474
471
469
468
467
466
466
464
463
462
462
464
467
468
469
470
470
472
473
476
478
479
480
482
485
486
487
488
489
489
489
488
487
487
487
486
486
486
485
484
483
481
478
476
473
471
467
464
460
451
445
443
442
442
442
442
442
442
442
442
442
442
442
442
441
441
441
441
441
441
441
440
440
440
440
440
440
440
441
442
443
443
444
444
444
440
437
430
425
424
423
421
418
414
411
406
404
402
400
398
395
391
389
384
382
379
376
375
371
369
369
369
370
370
370
371
371
370
369
366
364
363
361
356
354
351
349
347
344
341
338
335
333
331
326
323
320
319
317
316
313
311
305
303
299
296
293
289
285
281
278
275
272
271
267
266
264
262
261
261
260
259
256
249
242
242
240
239
232
228
228
229
229
231
232
232
233
233
234
234
234
234
233
233
232
231
228
224
222
216
214
213
211
209
207
204
202
202
198
195
191
189
185
179
176
174
171
170
169
170
170
171
171
172
172
172
172
172
171
170
168
167
166
166
165
161
159
156
153
151
149
145
143
139
131
129
127
125
124
124
123
123
123
123
121
121
120
119
118
117
116
115
115
113
111
111
109
108
107
107
107
107
107
107
107
107
107
107
107
108
108
108
109
109
109
110
110
111
109
107
106
105
104
104
103
103
103
104
105
110
110
109
109
109
109
108
108
106
105
101
99
99
98
98
98
98
98
97
97
98
99
99
99
98
97
96
96
95
93
91
89
89
87
82
82
81
80
80
80
78
76
76
75
75
76
76
77
78
78
79
79
80
80
81
82
84
87
88
88
79
77
74
72
72
72
71
71
70
71
71
72
74
75
75
75
76
80
87
90
93
100
97
95
92
87
86
85
87
91
100
104
104
104
104
104
104
104
103
102
102
101
100
99
99
98
97
98
100
102
104
104
105
106
107
108
110
111
116
114
113
113
108
106
104
103
102
101
102
111
114
118
131
131
131
131
131
130
130
128
127
126
126
127
131
132
132
132
135
136
138
138
138
138
139
142
143
147
142
140
139
137
136
135
135
133
132
132
132
132
132
133
133
134
135
137
137
138
138
141
144
153
158
158
157
155
153
150
150
149
149
150
151
152
153
154
154
155
156
157
157
157
158
158
158
158
160
164
165
165
169
172
172
174
174
174
175
175
175
176
176
176
176
176
176
175
175
175
175
173
172
172
172
171
171
173
175
190
192
197
206
211
213
221
223
225
228
230
234
236
239
241
247
247
247
247
246
245
243
242
240
236
232
230
230
231
233
240
242
245
252
255
258
265
276
279
282
284
287
304
309
309
310
310
311
311
307
306
305
304
303
306
307
310
318
321
323
327
342
349
353
353
355
357
357
357
357
358
358
359
359
360
360
361
361
362
363
368
369
369
370
371
373
379
379
380
383
386
387
393
394
395
396
397
398
398
399
400
401
402
403
405
407
413
417
422
424
429
432
440
442
442
442
442
442
442
442
441
441
441
441
441
441
441
444
446
447
449
452
455
457
458
461
467
468
469
469
461
459
457
453
451
448
445
444
444
444
444
444
444
444
444
444
444
444
446
447
448
448
449
450
451
451
450
450
450
450
449
449
449
448
448
448
448
450
451
452
455
455
458
459
461
462
462
463
463
464
464
464
464
464
448
447
445
444
434
437
439
442
451
453
455
455
455
455
454
454
454
454
455
456
456
457
457
457
458
459
462
463
465
466
467
468
472
473
474
473
471
468
455
450
446
445
443
442
441
440
440
439
438
437
434
431
427
424
419
410
403
397
390
388
385
381
379
380
381
390
399
399
399
398
398
397
397
397
396
394
394
394
394
395
397
398
398
399
398
393
380
361
357
356
355
354
352
351
348
345
344
343
342
342
342
342
343
343
343
344
344
344
344
343
341
339
337
336
335
334
334
332
329
328
326
322
321
320
319
317
317
317
317
317
316
316
316
316
316
316
316
317
317
318
318
318
319
324
334
334
328
321
312
310
306
306
306
305
305
304
304
303
303
291
287
286
280
274
273
268
265
262
258
259
260
264
265
266
266
267
266
266
265
264
263
259
256
254
253
251
250
248
246
241
236
233
233
233
234
235
236
236
237
237
238
239
239
240
240
241
241
242
242
243
244
245
245
239
233
227
219
212
206
204
203
201
198
196
196
197
197
199
200
201
201
201
197
188
182
177
177
171
170
170
167
166
165
165
165
167
167
168
168
169
169
169
170
165
161
156
152
150
147
142
139
136
133
123
121
118
114
111
105
98
77
69
58
63
65
68
70
74
77
80
83
85
86
84
80
65
61
60
61
62
63
55
52
50
45
40
39
37
37
37
38
38
38
39
39
40
41
41
42
43
43
44
46
48
49
49
49
48
48
47
47
47
48
49
54
56
60
61
62
62
59
58
57
57
56
56
55
55
54
52
51
51
51
49
48
45
44
43
40
39
37
36
35
32
31
31
24
24
20
19
19
22
24
26
27
27
29
30
30
30
29
25
22
21
21
18
21
21
21
21
21
21
21
22
24
28
28
24
23
21
21
20
20
20
20
19
19
18
17
17
17
19
19
26
28
31
34
42
43
44
45
52
56
56
53
51
49
49
47
49
51
53
50
41
38
37
37
38
39
39
31
29
29
29
29
29
30
30
31
32
33
35
35
36
39
45
46
48
50
51
50
53
56
56
56
56
60
60
61
63
64
66
68
69
70
70
70
70
69
68
68
67
65
63
62
58
56
57
59
62
63
67
70
71
73
74
74
74
74
74
74
74
72
69
68
70
76
77
79
82
88
90
91
93
95
96
96
97
98
98
100
101
102
102
102
102
103
103
103
103
103
103
103
103
105
106
107
108
109
110
112
113
119
121
123
126
128
130
137
137
137
136
135
135
135
134
133
133
133
131
130
129
129
127
126
124
122
119
115
109
108
106
101
101
102
102
102
96
92
94
96
100
105
106
105
100
97
94
92
91
100
103
105
111
112
113
114
115
118
120
123
125
132
125
118
112
94
92
90
89
87
81
71
68
65
62
59
58
71
79
88
95
96
98
101
101
99
98
97
97
100
102
103
105
106
108
111
114
115
117
120
121
123
126
128
133
135
139
142
144
148
148
147
146
143
141
137
135
133
122
120
120
121
121
122
122
122
123
123
123
124
125
126
127
128
129
130
132
135
136
137
139
141
143
145
149
152
156
163
169
174
178
178
179
181
183
187
194
198
209
212
221
220
218
216
215
211
207
201
194
190
188
187
195
198
205
207
204
200
196
194
193
194
195
190
187
184
182
178
171
167
165
165
161
154
152
148
147
145
143
141
133
127
123
122
121
121
120
120
120
120
120
122
123
125
125
124
122
121
115
116
117
118
118
119
120
120
120
119
118
117
114
111
102
98
91
89
86
85
88
90
94
96
96
97
98
98
99
100
100
100
100
99
99
99
98
96
92
91
80
80
70
68
66
63
60
59
57
55
55
54
53
52
52
51
51
51
52
53
57
59
60
61
61
61
61
64
62
62
61
59
59
59
59
59
61
71
74
78
82
84
80
78
76
73
70
65
62
55
58
60
64
67
69
70
86
85
84
80
81
84
86
87
89
89
89
89
89
89
89
89
89
89
89
90
91
92
95
95
96
97
100
101
102
98
96
94
86
89
92
94
96
99
100
103
105
110
112
114
112
110
103
99
101
106
108
109
111
112
114
116
117
119
120
123
123
124
132
136
140
143
147
150
156
159
158
157
152
150
149
157
174
180
180
178
173
171
168
160
156
141
138
133
130
132
136
138
139
142
144
144
147
149
154
158
163
167
170
174
186
180
178
176
175
174
174
179
180
182
184
189
190
190
190
190
189
189
189
188
186
184
183
180
178
178
179
181
181
182
186
191
195
199
208
211
214
212
210
208
199
197
197
197
197
195
187
183
181
178
174
176
182
185
188
190
194
196
199
203
204
205
212
211
209
208
207
204
201
196
194
193
192
194
202
206
213
217
221
232
233
233
234
234
236
237
238
238
238
238
238
237
238
239
240
241
253
254
255
256
257
256
253
248
247
242
241
240
238
239
242
246
254
257
262
266
280
280
279
278
276
274
273
273
272
272
272
274
281
282
284
288
291
292
293
302
302
303
304
307
308
309
312
314
313
312
311
310
309
307
304
302
300
299
297
297
297
298
298
298
299
299
300
300
300
301
304
306
315
317
318
319
322
324
326
329
340
347
350
352
366
371
373
377
379
380
382
384
386
388
388
388
387
387
386
386
385
384
384
385
385
387
389
394
395
397
399
401
398
397
396
393
392
391
387
386
385
385
384
384
383
382
382
379
378
377
376
374
372
370
368
367
366
363
362
362
362
362
361
361
358
357
356
352
351
349
348
345
343
342
341
339
338
337
337
337
338
340
343
345
339
337
334
330
326
322
319
318
319
320
325
327
329
329
333
332
330
325
323
320
319
319
318
317
317
315
311
310
312
313
315
315
316
318
319
319
323
324
328
333
341
346
352
354
364
366
366
366
366
365
365
365
365
365
364
364
364
364
364
362
361
360
359
359
358
358
358
357
358
359
361
365
368
370
375
376
378
384
388
392
399
401
402
404
407
419
419
419
418
418
418
418
418
417
417
417
412
410
408
407
407
406
405
404
406
409
410
411
412
413
414
416
425
432
444
445
446
450
451
452
453
457
459
453
451
449
446
443
438
434
436
437
438
441
442
445
447
450
455
457
459
459
460
460
460
459
458
458
457
457
457
454
453
453
452
452
457
458
461
462
462
463
464
468
470
471
473
475
476
479
480
482
483
484
481
479
460
460
461
463
464
465
465
466
466
464
463
462
459
458
456
451
451
451
451
451
451
450
450
450
450
450
449
448
446
444
443
438
436
435
434
431
430
429
428
425
423
421
416
414
414
412
410
409
408
405
404
403
403
401
401
395
391
379
372
369
366
367
368
369
371
372
373
373
369
368
366
360
358
357
353
351
350
348
344
343
341
340
339
337
336
330
328
326
323
321
321
323
325
329
343
349
351
352
352
353
353
353
353
354
372
380
381
378
368
366
362
361
358
357
356
359
363
367
372
380
391
394
403
390
365
350
347
343
338
322
323
323
324
325
326
330
331
332
339
340
341
341
341
347
349
347
344
332
330
320
318
315
314
311
306
305
300
299
298
297
292
289
288
286
285
269
269
271
272
272
274
274
275
275
275
279
281
296
298
298
298
297
297
297
297
300
301
301
302
303
304
305
308
309
311
311
311
312
312
313
322
322
329
330
330
331
334
337
337
338
338
339
339
339
339
338
338
339
339
339
339
340
341
341
342
353
363
368
373
416
426
435
436
437
438
439
444
450
449
449
447
447
446
446
448
449
452
456
454
444
441
438
433
427
423
411
408
399
397
395
395
395
394
394
393
392
393
414
419
421
432
438
442
443
441
438
427
422
417
414
403
401
399
396
391
388
381
378
380
385
391
396
400
402
406
410
414
420
432
428
426
422
419
411
409
405
403
403
402
402
401
399
398
395
394
393
394
394
394
395
395
397
398
399
399
400
403
404
404
401
391
383
359
349
344
341
322
317
314
311
313
314
316
324
329
330
333
337
339
346
353
348
343
342
343
343
344
349
351
354
358
359
359
359
358
358
358
356
356
356
356
361
364
366
367
384
388
386
384
381
379
378
376
375
373
366
363
362
361
359
361
362
362
364
365
365
369
369
369
368
368
368
368
367
367
366
366
366
366
366
366
366
366
366
366
366
366
366
366
360
355
349
347
344
343
342
336
334
330
329
335
341
349
355
365
376
378
382
384
385
387
387
386
386
384
383
374
372
371
370
369
366
360
354
343
341
340
337
336
334
334
336
336
337
337
338
341
343
344
345
347
361
364
366
369
375
395
401
405
410
396
392
389
387
379
377
376
374
371
367
367
367
368
369
369
371
371
361
355
350
340
336
333
321
314
303
306
310
314
320
335
336
334
332
329
327
327
324
323
322
320
313
312
306
299
297
295
293
286
284
282
276
273
270
283
285
292
302
311
315
326
328
330
332
335
338
347
349
349
348
347
346
345
341
339
339
353
356
358
359
363
367
375
374
373
373
372
371
370
368
367
365
362
362
363
364
365
366
369
370
373
374
374
374
375
376
377
380
381
381
382
383
384
385
386
386
387
388
389
390
390
390
390
392
393
395
396
398
404
406
408
409
404
394
388
379
373
367
363
350
348
349
349
349
349
351
352
353
353
352
351
351
347
346
345
344
344
337
336
336
335
334
334
331
330
329
329
329
329
329
317
314
312
310
308
306
293
295
298
300
301
304
311
314
319
321
322
323
325
325
327
329
333
333
334
335
336
337
338
339
341
343
344
345
345
346
346
346
345
343
342
341
340
333
331
330
326
323
323
323
323
323
324
324
324
324
323
323
322
317
315
308
305
303
300
296
291
289
283
279
273
266
266
266
266
266
266
266
266
266
266
266
266
266
266
260
259
256
261
262
263
265
268
270
271
273
273
272
271
269
268
267
264
262
259
256
257
258
260
264
267
270
273
275
276
278
279
280
286
287
288
290
291
291
291
291
292
292
293
293
291
291
290
289
288
287
287
284
286
286
286
287
287
288
288
289
290
291
293
295
296
296
298
298
299
299
299
300
300
300
301
301
303
304
310
316
318
323
324
329
330
331
333
336
337
337
339
342
345
346
347
349
360
368
370
372
374
378
380
381
381
382
384
393
402
406
406
406
406
407
407
407
408
409
410
413
416
418
420
422
425
427
432
441
445
451
451
448
447
446
441
440
439
435
434
433
432
431
430
429
427
427
429
430
432
433
434
438
439
441
443
444
449
450
452
454
459
462
463
463
462
462
461
460
460
460
459
458
458
457
458
459
459
460
461
462
463
465
465
469
468
466
463
459
457
456
451
445
441
440
444
447
449
451
452
454
456
459
459
453
446
442
434
431
429
427
425
421
417
414
412
410
405
401
399
399
399
398
395
393
392
391
389
387
385
384
383
378
378
378
378
377
376
376
376
376
376
375
362
355
354
353
353
349
348
346
344
342
338
337
340
345
346
347
348
349
348
346
345
344
343
342
340
332
328
323
319
307
304
302
299
298
297
296
295
295
298
309
310
312
317
319
305
303
299
290
288
286
277
274
272
270
266
265
260
258
257
252
241
240
239
239
238
238
237
237
237
239
239
241
244
242
239
235
230
229
228
227
225
221
220
214
210
209
210
212
213
214
216
219
218
218
213
212
211
210
210
210
210
211
211
211
211
211
211
211
211
212
212
212
212
212
212
221
229
230
231
233
231
227
223
219
216
217
220
221
222
223
219
217
216
214
213
210
207
204
203
203
203
203
204
204
205
206
206
206
207
207
207
207
206
206
205
205
204
200
200
200
200
199
199
199
196
195
194
193
190
188
189
189
190
190
190
191
191
191
191
191
191
191
191
191
190
188
187
183
183
187
188
191
197
201
199
197
193
191
187
170
169
171
175
178
179
185
189
196
194
193
192
191
188
187
178
177
177
177
177
177
176
176
176
176
176
175
174
173
172
170
169
166
165
163
162
162
162
161
158
157
157
156
155
151
147
144
143
142
141
139
142
144
144
144
144
144
144
155
163
169
169
169
169
171
179
186
202
212
218
224
226
225
224
221
221
221
219
217
220
225
230
233
242
247
251
252
253
260
261
264
256
255
255
255
255
256
262
260
256
255
254
252
255
259
263
265
267
269
270
271
272
275
280
282
284
285
286
288
291
292
293
294
295
295
295
295
296
297
298
298
299
300
301
301
301
303
303
303
308
308
306
301
299
297
294
291
289
286
279
277
270
258
253
252
251
250
250
250
249
248
246
242
241
240
240
240
239
238
238
237
236
236
235
232
231
230
228