325
325
325
325
325
324
324
323
321
320
319
318
318
318
318
318
318
317
317
318
318
318
318
318
318
318
318
318
318
319
319
319
319
319
319
319
319
319
319
319
319
318
317
317
317
317
316
316
316
315
315
315
315
315
315
315
316
316
316
316
317
323
324
325
325
325
325
325
324
322
318
318
318
318
318
318
318
318
317
317
315
315
316
316
317
318
319
319
322
323
326
328
331
330
330
329
328
327
327
327
327
328
329
330
331
330
329
328
328
328
333
332
333
334
335
336
346
344
340
334
330
329
329
329
327
325
325
325
325
325
327
327
328
328
328
328
328
328
328
328
328
328
327
327
327
326
326
326
327
329
329
329
330
331
331
332
332
332
334
336
338
340
341
342
346
349
354
356
356
356
356
356
355
354
354
351
350
349
348
347
347
345
345
345
345
345
349
352
355
357
360
363
378
382
384
383
380
379
378
377
373
370
367
362
363
363
363
363
364
365
365
365
365
364
358
356
352
347
336
334
327
327
327
326
326
326
326
326
331
331
330
327
325
324
323
322
322
321
321
321
321
321
320
319
318
317
313
312
311
311
313
313
313
314
315
316
316
317
317
316
315
315
315
317
318
319
319
319
320
321
323
324
325
325
325
325
326
327
327
327
323
324
325
326
327
328
328
328
328
330
339
341
341
340
338
334
332
334
335
335
335
335
335
335
335
334
334
334
334
334
335
336
336
336
336
333
333
333
333
333
333
333
333
332
332
332
332
332
332
332
333
334
334
335
336
335
335
334
334
334
333
334
333
332
331
334
339
342
344
343
341
342
341
339
338
338
338
338
338
338
339
341
346
350
353
356
362
362
361
360
357
354
350
347
345
343
341
339
341
343
343
343
344
346
345
346
350
349
349
349
349
349
349
349
350
350
350
350
346
346
346
346
345
345
343
343
342
342
342
342
341
340
340
340
340
341
343
344
344
344
344
345
345
345
345
346
348
349
351
357
361
365
374
383
388
390
393
395
398
399
400
393
389
391
391
390
389
388
390
393
396
396
396
398
395
400
405
400
405
412
411
411
412
412
412
412
412
412
415
422
425
425
426
426
427
426
424
425
430
431
435
437
432
431
431
430
430
429
429
429
429
429
428
426
425
423
422
422
422
421
419
417
416
413
412
407
405
403
401
399
394
392
389
386
386
386
386
386
386
387
390
394
398
397
395
392
388
377
366
364
360
357
354
353
352
350
349
346
343
343
343
342
342
342
342
341
341
339
339
337
337
337
337
337
337
340
339
336
336
336
335
334
334
332
332
332
332
332
333
333
333
333
333
333
332
332
333
333
334
335
335
336
336
336
336
336
335
335
336
337
338
338
339
339
339
339
339
339
339
339
339
343
345
348
351
351
352
354
356
359
365
374
377
377
378
378
377
376
376
374
373
372
370
369
369
369
369
366
363
367
369
372
370
368
367
363
359
357
354
352
350
350
349
349
349
348
347
346
343
341
339
337
334
333
330
328
327
325
324
322
321
321
320
319
318
318
318
318
318
318
317
317
316
313
305
301
300
299
294
293
293
292
292
298
294
292
292
292
292
292
292
293
294
295
294
295
299
301
305
306
299
298
298
297
298
299
300
300
305
305
303
305
302
301
300
297
296
295
294
294
294
294
294
294
294
294
295
297
298
301
304
305
307
310
311
313
313
313
309
303
313
318
321
322
324
325
329
332
334
334
344
348
354
364
374
385
389
389
389
388
385
382
381
383
391
391
397
403
407
411
412
410
415
418
418
418
419
419
420
420
420
423
427
430
433
434
428
425
424
424
424
425
425
425
427
430
432
435
437
444
447
450
453
454
456
457
458
459
457
455
454
452
448
450
456
458
459
460
461
471
480
484
485
487
487
486
484
483
483
484
489
490
490
491
491
492
492
490
491
493
493
487
479
476
474
472
469
469
469
470
469
468
470
470
478
478
478
482
481
480
480
480
479
480
482
478
479
479
478
477
477
477
477
477
477
477
477
477
481
482
487
487
487
486
485
485
485
484
484
486
487
487
488
488
489
492
495
497
501
501
501
501
501
499
497
496
494
492
493
495
498
499
507
504
494
494
496
497
497
496
496
495
494
494
494
493
493
493
492
492
492
492
492
492
492
492
492
506
509
509
509
509
510
511
513
510
509
513
515
517
515
514
509
508
508
507
507
506
506
508
509
511
513
516
522
524
526
530
535
536
537
541
543
547
546
545
544
542
542
542
543
544
546
546
547
547
547
546
545
543
541
539
539
539
540
540
541
542
543
544
547
548
548
548
547
549
551
553
554
559
561
559
557
555
555
555
555
555
555
555
558
560
562
564
566
569
569
569
569
569
569
569
569
569
569
569
569
569
570
571
573
573
575
577
580
585
589
593
596
596
582
594
599
608
611
610
606
605
603
604
616
627
632
638
639
641
644
650
653
654
656
658
664
666
669
672
675
679
682
684
687
690
694
699
703
706
710
713
715
718
719
720
721
732
740
761
762
764
765
760
755
754
756
760
762
763
765
769
771
771
770
770
770
771
772
773
776
778
780
785
786
788
789
791
792
793
797
799
800
802
798
797
796
796
797
798
799
799
799
807
815
818
823
824
827
828
829
829
829
829
829
831
833
836
850
852
852
853
854
855
855
855
855
855
857
859
860
862
864
864
866
863
862
861
860
859
858
857
856
842
841
841
840
840
842
843
844
846
846
846
847
846
845
844
845
847
849
850
851
852
853
853
852
848
847
845
840
845
847
850
853
855
857
858
863
867
869
872
868
868
865
864
866
866
864
857
855
854
853
852
852
853
856
859
877
880
880
880
880
880
878
874
870
870
865
863
864
865
879
879
879
879
878
878
877
877
876
876
876
874
879
880
881
881
882
885
886
886
887
884
883
882
881
882
883
884
885
888
890
895
895
896
895
895
895
897
899
902
903
902
902
901
901
902
902
902
902
902
902
901
901
900
900
902
907
910
912
913
910
902
900
900
900
901
901
902
902
903
904
896
892
893
893
895
895
895
894
894
893
890
885
884
884
884
884
885
885
885
885
885
885
885
885
886
886
887
886
883
879
878
876
876
876
876
876
874
873
871
869
868
868
868
867
866
863
859
856
853
849
843
843
843
843
847
849
851
849
847
843
840
838
831
830
830
831
832
841
845
849
852
855
858
855
847
840
845
845
835
837
842
832
831
831
834
834
836
836
835
835
833
828
821
820
809
811
823
829
828
821
814
800
773
772
770
767
765
764
762
759
754
753
754
754
747
736
728
722
718
711
707
705
695
695
683
666
662
652
650
651
652
652
653
654
655
654
653
649
635
622
618
618
619
621
621
623
623
624
628
630
633
645
640
636
641
644
635
633
630
627
625
618
614
609
605
614
627
628
622
613
606
591
583
577
562
550
546
538
550
559
567
576
564
551
537
536
536
536
537
533
522
514
514
515
515
514
514
505
495
484
471
470
468
462
458
453
451
437
433
431
424
422
420
430
433
430
427
417
411
400
399
404
409
398
395
393
389
384
378
365
364
364
364
360
356
352
348
344
341
339
338
337
337
336
336
335
334
333
332
332
332
331
331
331
330
328
325
324
322
317
313
308
307
305
303
281
274
274
275
276
279
281
285
289
292
294
286
280
277
273
266
266
266
266
265
262
262
261
246
233
231
229
226
224
222
220
220
219
219
217
215
201
200
198
198
198
197
196
195
193
192
190
188
181
163
155
149
146
142
140
138
123
114
112
109
109
109
109
108
108
108
107
106
105
104
104
104
107
107
107
107
107
108
108
107
108
108
111
111
110
110
109
110
110
110
110
110
110
111
111
110
113
111
110
110
109
109
109
109
109
109
109
109
110
110
111
111
111
111
113
115
116
117
123
124
125
125
123
124
125
127
127
128
130
130
129
125
124
123
124
125
123
123
123
123
124
124
124
122
121
121
121
121
123
126
129
127
128
129
130
130
129
128
127
126
123
121
114
111
110
109
109
109
108
106
104
104
105
105
106
107
109
110
110
109
109
109
109
109
110
111
116
115
115
116
118
116
115
114
113
111
111
114
118
121
123
121
117
112
112
112
113
115
117
123
125
129
139
141
143
144
146
147
147
147
148
148
149
153
156
157
157
158
160
161
161
162
163
163
161
155
155
155
155
155
156
156
158
159
159
160
160
159
157
156
156
156
156
156
156
158
159
161
161
160
155
154
153
152
151
150
148
148
147
147
147
146
145
145
152
158
165
172
171
170
169
168
174
175
176
176
180
181
183
184
185
186
184
182
178
177
177
179
176
173
172
172
172
172
172
172
170
170
169
169
169
167
164
157
155
153
150
148
147
145
143
140
140
139
139
139
135
126
124
122
120
119
120
119
118
119
121
123
126
127
127
127
128
129
130
130
130
130
133
138
140
143
147
152
158
157
156
153
153
153
153
145
143
135
129
129
128
127
126
124
121
120
111
109
109
107
105
101
100
100
98
97
97
98
98
99
99
99
100
100
101
101
102
103
103
98
93
90
88
88
87
87
87
87
86
84
86
86
86
84
81
79
79
79
79
79
78
78
77
77
76
76
76
76
75
74
73
71
70
70
70
72
73
75
70
69
69
69
69
67
67
67
69
69
67
62
61
60
59
60
62
66
65
64
64
64
66
67
67
80
81
82
84
84
88
94
100
105
110
113
114
111
109
115
119
123
123
123
123
124
124
124
125
120
119
118
117
116
115
115
115
115
115
115
115
115
112
111
111
111
110
110
110
107
107
107
108
108
109
108
107
107
107
107
107
107
107
108
111
110
110
109
108
108
108
108
108
108
108
107
107
107
107
107
107
107
107
107
107
107
107
105
103
101
99
99
98
98
98
98
98
97
97
97
97
96
96
96
95
96
96
95
95
95
95
95
95
96
96
97
98
98
99
97
96
96
95
97
92
92
92
90
89
88
88
87
87
87
87
87
87
88
88
88
88
88
88
88
88
88
88
88
88
88
88
88
88
88
88
88
88
88
86
86
85
85
85
85
85
85
86
86
81
79
75
67
66
62
61
60
61
75
77
77
82
82
83
83
84
84
85
85
85
84
83
84
86
87
88
88
89
89
89
89
89
89
91
92
93
95
95
95
96
96
107
109
110
111
111
112
112
113
114
114
114
114
114
115
115
116
119
123
126
126
126
125
125
125
127
129
129
130
131
132
141
143
145
145
145
145
144
143
143
145
146
147
148
149
150
152
158
158
157
157
155
154
153
152
152
153
155
158
169
170
171
172
172
172
172
171
168
167
167
167
167
167
168
168
163
159
157
157
157
157
156
155
154
154
157
157
157
156
156
156
156
159
161
163
170
172
173
174
175
177
180
183
188
189
187
187
188
190
191
191
194
196
201
206
211
218
219
221
222
223
224
224
224
226
228
233
237
239
240
238
238
236
229
226
224
221
222
224
227
230
231
233
233
233
233
233
233
231
231
230
229
227
227
230
231
231
232
234
235
237
237
239
242
240
239
237
236
235
234
230
229
227
222
215
214
213
208
203
199
196
194
192
190
189
188
188
189
189
190
192
197
200
201
207
213
217
222
230
224
224
224
224
224
224
224
225
228
232
234
235
235
236
241
246
248
249
252
253
253
251
251
250
250
250
249
249
249
248
247
247
247
247
247
248
250
252
252
249
244
245
246
247
248
250
256
258
259
263
264
266
266
277
277
281
284
285
286
287
287
288
289
289
290
290
290
290
290
290
292
293
293
293
292
292
296
297
297
297
296
295
293
293
292
291
288
280
278
274
271
268
263
258
257
254
252
249
246
241
239
238
237
237
235
234
232
230
225
216
214
193
192
192
192
192
197
196
194
193
192
193
193
194
194
194
194
192
190
189
184
183
182
180
180
178
175
174
173
171
171
169
159
157
154
151
148
147
147
147
147
147
147
147
147
147
147
147
147
146
145
145
144
145
146
146
147
147
148
148
148
147
146
144
142
141
140
139
138
136
136
133
130
127
126
120
120
119
119
119
118
117
117
116
115
112
111
111
109
110
115
117
118
120
121
122
123
123
123
124
123
123
122
122
122
121