135
134
133
132
129
123
121
119
110
106
102
99
97
96
91
88
87
86
82
80
79
79
76
73
72
70
68
65
62
62
62
61
61
61
60
60
60
59
59
59
58
56
55
53
53
54
55
56
56
58
58
58
58
57
56
56
55
53
51
47
45
47
50
53
55
57
60
62
64
65
67
68
67
62
59
57
56
56
57
58
58
58
58
59
60
59
59
61
64
67
67
68
71
73
73
73
72
72
72
72
72
72
72
72
72
73
73
75
76
76
78
80
82
83
82
80
78
78
78
79
79
80
82
87
88
93
99
104
104
104
102
100
98
92
89
87
83
82
81
80
78
78
76
71
70
69
69
69
69
69
69
69
69
69
70
70
70
70
70
72
73
75
79
83
84
85
88
89
93
95
97
97
97
99
102
106
110
110
110
110
110
111
112
114
119
125
130
131
128
124
123
124
125
126
127
127
126
125
124
123
122
121
120
119
118
116
113
110
108
108
109
111
114
115
114
113
118
120
114
110
110
110
109
109
106
105
105
106
106
106
106
106
106
106
104
103
102
97
97
96
97
98
95
94
93
92
91
91
90
89
89
89
90
91
91
91
91
91
92
93
96
97
100
103
106
108
110
111
112
112
114
115
116
118
122
126
126
126
127
127
126
126
127
128
132
135
134
133
130
130
129
129
129
132
135
136
137
139
139
139
138
135
135
134
133
133
133
133
133
133
133
133
133
133
132
131
130
130
130
130
130
130
131
131
131
131
130
130
130
130
130
130
130
130
130
129
129
128
128
129
131
132
133
136
136
134
133
133
133
132
131
130
129
128
127
126
126
126
124
123
123
122
122
122
122
122
123
124
125
126
128
128
128
126
126
126
125
121
120
120
115
119
120
121
123
127
132
137
138
142
146
150
153
158
160
165
171
171
173
174
175
175
176
176
177
179
179
181
182
183
183
182
181
179
178
178
177
174
174
174
174
174
175
175
175
174
174
174
174
175
176
176
183
188
191
193
193
194
196
196
198
198
199
199
199
199
200
204
206
209
211
211
211
211
212
213
215
216
212
216
221
224
225
224
222
216
213
213
218
220
222
224
225
227
229
229
230
231
231
231
231
231
233
236
236
236
238
239
240
240
240
242
242
243
243
247
250
251
256
260
264
267
267
269
269
269
271
274
277
277
278
279
282
286
292
294
295
298
299
300
301
303
303
302
302
302
305
307
311
315
318
320
324
326
327
335
337
340
341
344
346
348
350
353
353
354
357
362
366
368
368
368
368
371
373
369
368
368
367
367
367
367
367
367
369
371
375
377
378
382
386
391
395
403
408
409
411
411
412
413
414
416
416
416
417
417
417
417
418
420
420
423
425
426
426
431
437
442
447
450
459
464
472
478
480
486
489
491
493
496
497
497
500
501
502
502
502
504
510
516
518
518
518
518
518
521
522
524
528
528
529
529
530
532
534
536
538
540
542
546
549
553
554
555
556
557
558
559
564
569
572
573
574
576
580
581
584
585
587
589
591
594
596
599
606
606
602
602
606
611
615
619
623
632
640
642
641
639
637
633
632
638
642
649
649
650
650
651
651
651
651
653
656
660
664
671
673
674
674
675
680
682
684
685
687
689
693
697
700
703
706
708
710
716
719
722
724
725
729
730
732
735
739
741
743
745
745
746
746
747
747
747
746
746
746
746
746
746
745
743
741
739
741
745
748
749
750
751
752
749
749
748
752
756
757
759
761
762
766
768
771
772
773
777
779
782
786
789
790
794
796
795
793
793
797
801
807
811
813
817
832
836
833
834
835
836
836
837
838
845
848
853
860
869
877
879
882
883
884
887
892
894
899
901
903
906
911
919
925
928
934
937
938
938
938
939
939
939
941
942
942
943
944
946
949
957
962
966
968
973
981
983
985
987
991
991
992
993
993
996
1003
1005
1009
1011
1014
1019
1025
1031
1032
1032
1033
1038
1040
1044
1048
1052
1062
1063
1066
1067
1072
1078
1080
1081
1083
1084
1087
1088
1088
1089
1090
1092
1098
1098
1098
1098
1098
1096
1093
1089
1088
1087
1087
1086
1086
1081
1080
1076
1074
1070
1064
1058
1057
1055
1053
1045
1042
1036
1031
1028
1024
1024
1024
1023
1020
1016
1010
1001
999
995
993
988
986
985
985
984
984
979
977
974
972
966
962
960
953
946
942
941
941
941
941
941
941
940
940
940
938
935
932
926
920
915
913
910
904
899
897
896
893
888
885
881
875
873
871
866
864
857
854
848
841
839
835
834
834
834
834
834
835
828
817
816
811
806
801
797
794
795
796
795
792
789
781
779
776
774
774
773
773
770
767
764
763
760
760
756
753
751
751
752
754
754
750
746
744
743
743
741
742
742
744
745
745
744
744
744
744
744
744
744
743
743
743
743
743
742
739
735
733
729
726
724
722
719
717
715
712
709
703
700
698
695
693
689
685
679
676
673
673
673
673
673
673
673
670
661
650
650
651
651
652
652
652
650
649
646
641
636
630
628
625
625
624
624
623
622
622
621
621
620
617
614
613
612
612
611
610
610
608
608
607
606
605
602
601
599
598
597
595
593
592
591
590
589
589
589
588
588
586
584
577
573
572
571
569
567
565
563
561
559
557
554
551
547
545
544
542
541
541
541
540
540
538
536
534
533
530
521
518
518
517
517
516
514
513
512
510
508
506
505
501
499
497
493
491
488
488
488
487
484
482
481
481
476
470
468
466
464
463
458
456
455
452
447
440
430
424
423
419
415
410
409
405
403
403
402
401
400
397
396
396
392
392
392
392
393
395
395
393
391
391
391
390
388
386
386
386
386
386
386
386
385
383
381
378
378
378
378
378
378
378
378
379
381
381
382
385
389
393
396
399
401
403
404
406
410
410
410
410
410
410
410
408
405
402
401
399
397
395
392
391
391
390
387
383
382
380
376
374
374
374
369
365
358
356
356
357
357
358
359
361
362
364
360
359
353
353
353
353
353
353
352
351
351
349
345
341
337
336
335
334
333
333
333
333
333
333
332
330
328
327
322
322
322
322
323
324
324
325
325
326
326
326
325
324
324
323
320
319
319
319
320
320
321
321
323
325
326
328
332
332
333
334
335
336
339
342
345
349
349
349
349
349
349
350
352
360
369
369
369
368
366
364
364
361
361
360
357
355
354
353
349
348
347
346
346
344
344
343
342
340
338
338
337
338
339
340
341
341
341
339
338
338
331
325
323
323
322
322
321
321
319
317
315
312
311
306
303
300
298
297
297
296
295
294
292
291
291
287
286
288
289
289
288
286
284
284
284
284
284
282
281
279
275
273
273
273
273
273
271
271
270
269
269
268
267
267
267
267
262
257
254
251
247
244
242
241
240
240
241
242
242
241
239
237
235
234
232
231
229
228
228
227
226
225
225
225
225
225
225
225
222
218
216
213
210
205
204
203
204
204
205
205
204
203
202
201
200
200
200
200
199
199
196
194
193
192
190
189
189
187
183
180
180
177
177
175
174
172
172
171
168
164
164
163
161
160
155
151
151
151
153
154
155
156
156
156
153
151
151
149
148
147
144
142
142
141
141
141
142
142
143
144
144
144
144
144
144
144
144
144
144
144
145
146
146
145
145
145
145
144
144
144
144
143
143
142
139
134
133
133
133
134
135
136
134
132
129
128
127
128
129
132
132
127
125
125
125
126
128
127
125
127
129
130
132
133
134
135
138
142
143
143
145
147
149
152
155
156
157
160
164
165
165
163
162
161
160
159
159
159
158
158
157
156
154
153
153
151
150
148
146
143
141
139
138
137
137
137
138
138
138
141
143
144
146
148
150
151
153
155
160
167
175
175
176
178
182
188
191
191
192
192
192
192
194
196
199
200
200
200
199
199
199
200
202
204
204
204
204
204
204
204
205
205
207
209
210
212
213
214
215
217
219
220
221
221
224
229
232
234
235
235
235
236
236
236
236
235
231
225
218
211
207
203
198
196
192
191
191
191
187
182
181
179
177
177
177
177
178
178
179
180
187
189
190
191
191
193
193
193
193
193
193
194
194
196
197
195
194
193
192
189
184
180
180
180
180
180
180
179
178
178
179
180
181
181
179
176
175
175
176
177
178
178
178
178
178
178
179
181
182
182
182
182
182
182
182
182
181
181
179
178
178
178
178
178
178
178
178
178
178
178
179
179
180
180
180
180
180
180
180
181
181
181
181
181
178
177
176
176
176
177
177
177
180
180
181
183
183
182
180
179
179
179
179
179
179
179
178
178
178
178
178
178
178
179
179
181
182
183
183
184
185
187
189
190
191
192
194
195
195
195
195
195
196
197
197
197
199
200
203
203
204
204
205
205
205
205
205
205
205
204
204
204
203
203
205
207
207
208
209
211
213
214
215
216
216
216
218
219
220
221
222
222
223
224
225
226
226
229
230
231
232
232
233
234
238
240
242
243
248
249
251
253
254
256
259
265
268
270
270
271
274
276
277
279
283
287
289
290
292
294
297
300
300
301
301
301
302
303
304
306
306
307
310
314
315
318
319
321
322
325
326
329
333
333
332
331
330
330
329
326
328
332
333
334
339
340
341
341
342
342
345
346
346
347
352
355
356
357
357
359
360
361
362
363
363
366
369
369
369
369
369
369
372
373
375
376
378
380
381
384
385
385
386
387
394
395
396
397
397
398
399
405
407
410
417
425
428
428
430
430
429
428
428
428
428
430
431
432
436
441
440
439
439
438
438
437
437
438
439
439
446
448
451
455
458
459
460
463
464
465
467
468
470
472
475
476
477
479
485
490
492
496
502
505
506
508
513
518
521
524
525
527
530
534
536
540
541
542
543
543
545
546
547
548
554
557
562
563
564
565
572
573
574
575
577
582
584
588
594
601
603
604
605
606
609
611
615
616
619
622
629
629
630
631
633
634
636
643
644
645
647
651
654
657
663
664
665
667
672
674
677
678
680
686
688
695
700
703
705
711
713
719
724
730
732
735
736
739
744
745
747
757
759
761
761
761
763
770
772
774
775
777
779
783
784
787
790
793
797
800
801
803
810
812
814
818
821
826
831
831
831
831
831
831
831
831
832
832
833
834
834
835
835
835
835
835
834
832
830
829
831
834
834
835
836
841
844
848
852
853
854
855
858
860
861
863
864
874
878
881
891
897
899
901
902
902
903
903
903
903
903
903
902
901
901
905
908
921
923
926
929
933
933
932
930
929
929
929
931
937
938
939
941
942
944
946
949
951
952
953
953
954
954
958
959
959
959
962
962
960
959
959
958
957
954
952
945
944
944
941
936
936
935
935
934
933
930
928
929
930
931
932
932
933
933
919
916
915
911
904
900
901
902
902
903
903
904
903
902
901
900
898
896
895
894
892
891
889
887
885
878
873
867
858
856
852
844
844
842
842
841
838
838
837
836
834
831
830
829
829
830
831
834
835
835
835
834
834
833
833
833
832
832
831
831
828
827
825
823
822
821
821
820
817
815
810
805
804
801
800
800
790
784
781
775
770
766
763
761
761
761
761
761
761
761
761
761
757
755
751
746
738
736
726
725
724
721
720
719
717
716
712
707
703
701
688
683
677
675
670
669
667
665
664
662
660
651
647
645
644
638
636
634
632
631
630
630
625
623
622
616
616
614
612
604
603
602
602
600
598
596
592
589
587
582
573
569
565
563
557
555
554
552
551
548
547
547
547
545
544
537
533
530
527
526
525
525
524
524
521
519
514
508
504
503
497
494
490
486
484
483
481
475
471
469
464
462
461
460
460
458
457
455
454
451
448
447
440
439
439
438
438
437
437
437
437
438
439
440
440
439
437
436
434
432
428
428
428
428
429
430
430
430
429
427
418
409
407
406
403
400
396
394
386
384
383
383
382
381
380
373
372
371
370
370
369
369
369
368
368
368
367
364
362
359
358
358
356
353
350
349
349
348
347
346
344
343
343
342
338
334
333
332
331
328
327
327
326
326
326
330
331
332
333
331
328
327
327
326
326
325
321
318
314
313
311
310
308
307
306
305
303
301
301
301
300
299
297
296
295
293
292
290
288
287
284
281
279
273
271
271
271
271
271
269
265
259
257
255
254
251
246
242
241
239
238
237
234
233
232
229
227
225
225
224
224
223
222
221
221
221
220
220
219
218
217
216
214
214
212
212
211
211
209
207
205
204
204
204
204
204
205
205
205
205
205
204
204
203
202
201
200
200
199
199
197
197
196
195
195
195
195
195
195
195
194
193
192
191
190
189
186
184
183
183
183
183
180
179
179
178
178
178
178
179
179
179
179
179
179
180
180
180
181
181
182
182
183
183
180
178
177
177
177
177
179
179
179
178
178
178
178
178
178
177
177
176
176
176
176
176
173
169
166
163
160
156
153
150
150
150
150
150
150
150
149
149
149
149
149
149
148
146
145
145
145
144
144
144
144
142
142
141
141
141
140
140
139
138
136
136
135
135
135
135
135
134
133
131
131
131
127
126
125
125
125
125
125
125
124
123
121
120
121
121
119
119
119
119
118
119
121
123
126
127
129
129
129
134
137
139
142
144
147
151
151
151
151
151
151
151
151
151
151
150
149
148
143
142
142
140
139
138
134
128
121
115
114
113
113
113
112
112
112
112
112
115
118
121
130
137
142
144
145
145
145
146
146
146
145
144
144
143
142
141
141
142
142
142
142
141
140
140
141
147
147
148
149
153
155
155
155
155
155
155
151
150
149
148
142
136
132
132
131
130
130
132
136
139
138
138
138
137
136
135
135
131
130
130
128
126
124
123
122
118
117
117
117
117
117
116
115
115
113
110
108
106
104
102
100
98
96
95
92
91
91
91
93
93
93
91
93
101
103
103
106
106
107
107
113
117
115
108
105
102
101
104
106
107
107
107
108
108
109
109
109
111
114
118
124
129
129
129
128
128
128
128
127
122
119
117
116
116
115
115
115
114
114
112
111
109
110
110
110
113
115
117
120
127
127
128
131
134
134
135
135
136
136
141
147
154
161
163
163
163
163
162
160
159
158
158
159
160
160
160
160
161
162
162
162
163
163
164
166
167
169
171
173
175
180
184
187
188
189
189
189
190
191
192
192
192
195
195
197
201
203
203
201
201
200
197
195
194
194
192
192
194
194
195
195
194
192
189
188
189
189
189
188
188
187
185
184
183
183
181
180
179
177
171
169
168
168
167
168
167
167
163
162
160
157
154
152
151
150
149
148
147
143
140
138
138
137
136
134
132
129
129
129
129
129
129
129
129
129
129
129
129
130
130
131
130
129
127
123
121
120
119
116
114
113
110
107
106
103
98
95
94
90
90
89
88
87
87
87
87
86
85
85
85
84
84
82
82
81
81
81
82
82
81
80
77
76
75
74
74
73
72
72
72
72
72
72
72
73
73
73
72
72
70
67
67
65
63
59
59
59
59
59
58
58
58
58
58
57
57
57
61
65
66
67
65
65
64
62
58
54
48
46
44
44
46
49
52
57
59
59
59
59
59
57
57
57
57
55
55
54
53
54
56
58
59
61
62
62
62
63
63
63
63
64
64
64
64
65
68
70
72
73
77
80
83
83
85
87
89
92
97
102
110
112
115
117
121
124
130
131
133
133
133