2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
2
3
4
5
5
5
7
6
7
9
9
9
9
9
9
9
9
8
7
7
6
6
5
7
6
5
5
4
4
4
3
3
3
3
3
3
5
7
7
7
10
9
8
9
10
14
14
14
14
16
15
16
16
16
16
16
16
16
18
19
24
28
42
52
53
80
80
91
87
85
82
81
83
83
83
83
83
83
88
90
90
92
94
100
101
103
106
102
104
111
110
108
102
99
98
102
103
102
101
107
126
130
139
139
139
136
124
144
168
168
167
169
169
169
165
161
170
174
190
210
207
196
200
202
193
197
204
210
195
192
196
191
195
199
201
203
202
199
197
197
202
201
197
197
206
211
220
221
233
233
233
239
245
246
248
250
253
253
254
257
267
270
271
267
273
277
291
288
284
283
282
282
279
278
278
282
289
294
296
297
301
303
311
314
302
293
293
266
257
254
254
255
255
254
252
251
251
249
246
246
254
254
253
252
252
251
250
241
241
241
241
241
240
233
235
237
237
237
236
233
233
234
235
235
236
236
228
228
228
228
228
228
226
225
224
223
223
227
232
233
233
232
232
234
236
238
240
240
239
239
238
238
237
241
244
245
241
238
230
231
231
232
229
225
222
220
218
215
212
212
212
212
212
210
208
208
208
208
207
207
207
206
199
194
194
193
193
193
193
192
190
190
190
193
196
199
198
196
194
190
188
186
186
186
186
186
187
189
191
193
193
193
184
181
179
177
176
174
172
172
172
174
173
171
170
169
169
169
167
163
163
162
162
163
163
162
161
158
160
159
158
159
160
159
157
156
156
156
156
155
154
153
153
154
155
155
155
156
156
156
156
157
158
159
161
162
162
157
158
168
168
180
183
186
188
190
190
190
190
189
189
191
195
198
199
198
197
196
194
213
217
219
220
223
230
247
280
298
305
310
315
326
333
333
333
333
333
331
318
314
310
306
298
295
295
295
299
303
308
315
320
326
331
337
349
354
364
369
376
391
389
387
385
388
397
403
412
416
421
422
424
421
420
421
427
435
435
434
431
430
422
419
409
406
406
406
406
406
406
407
408
423
424
423
421
421
427
438
466
469
465
462
459
448
421
414
410
426
446
455
455
455
456
469
476
486
491
495
494
492
476
470
466
463
459
458
458
457
456
455
454
455
471
468
466
462
457
410
409
409
410
409
409
411
413
414
415
416
417
420
423
427
427
427
427
427
426
425
425
425
426
426
426
426
426
426
426
426
430
441
453
454
455
456
457
466
468
470
478
481
485
493
502
504
505
506
511
513
514
520
532
538
545
550
556
568
571
576
591
593
596
597
603
605
607
609
610
610
611
614
620
625
633
641
648
657
674
669
665
662
660
657
655
650
652
660
667
675
676
678
680
685
690
693
699
706
708
712
714
716
718
721
726
732
737
743
751
751
751
751
751
751
751
748
738
734
726
718
724
730
737
743
756
762
769
773
780
787
797
808
815
815
815
815
820
823
826
832
836
844
849
858
873
866
873
874
883
890
897
902
907
911
915
920
919
917
916
914
913
921
929
937
941
945
954
956
956
957
959
961
963
966
969
975
981
1001
1006
1006
1009
1018
1024
1045
1053
1058
1060
1062
1064
1066
1067
1070
1071
1071
1074
1076
1079
1081
1083
1096
1102
1108
1118
1124
1125
1126
1127
1128
1129
1131
1133
1141
1143
1149
1152
1154
1152
1150
1150
1153
1157
1164
1165
1175
1185
1188
1190
1193
1199
1200
1200
1200
1200
1201
1206
1210
1213
1214
1217
1216
1216
1222
1224
1228
1230
1231
1230
1229
1227
1225
1223
1219
1223
1228
1232
1235
1251
1265
1274
1286
1286
1284
1287
1289
1290
1291
1291
1291
1289
1289
1288
1287
1287
1298
1307
1311
1314
1320
1328
1331
1346
1348
1351
1356
1359
1361
1361
1347
1339
1342
1345
1349
1353
1355
1361
1386
1406
1425
1425
1425
1425
1425
1427
1432
1434
1435
1437
1441
1444
1448
1450
1452
1451
1450
1444
1440
1432
1430
1427
1434
1455
1467
1472
1471
1471
1463
1454
1446
1426
1421
1425
1429
1440
1443
1445
1446
1446
1445
1443
1440
1437
1437
1437
1437
1437
1437
1435
1431
1430
1429
1424
1406
1387
1360
1346
1343
1340
1346
1353
1360
1360
1361
1360
1358
1356
1351
1348
1347
1317
1308
1291
1288
1290
1292
1298
1305
1302
1300
1297
1294
1289
1286
1285
1285
1284
1283
1278
1268
1265
1259
1256
1245
1231
1230
1228
1226
1226
1235
1239
1235
1231
1230
1229
1226
1222
1218
1217
1215
1215
1217
1212
1210
1206
1201
1198
1198
1198
1201
1205
1207
1196
1192
1186
1181
1174
1167
1164
1158
1156
1154
1151
1149
1148
1143
1141
1137
1135
1129
1128
1125
1122
1120
1117
1114
1111
1101
1088
1082
1079
1074
1074
1074
1074
1073
1070
1069
1068
1066
1064
1061
1058
1054
1049
1041
1037
1023
1019
1012
1003
995
988
971
967
964
962
960
958
957
955
955
955
954
943
939
935
928
922
916
914
912
911
908
905
894
883
872
860
854
859
865
872
872
878
848
836
829
825
819
816
811
809
806
801
804
805
811
807
797
787
780
774
770
765
760
749
744
738
733
728
741
753
759
772
770
764
759
753
747
740
736
723
721
719
717
715
712
709
707
705
700
695
680
669
669
669
669
669
669
669
664
659
653
653
660
664
668
671
669
665
660
648
645
639
631
624
619
614
608
603
598
590
576
572
571
567
566
565
563
559
558
558
555
553
546
539
531
517
509
507
505
497
494
492
488
474
470
467
465
460
460
459
454
453
453
452
451
440
430
426
426
426
426
426
426
426
426
425
425
425
426
426
426
425
425
424
420
418
419
422
425
426
423
420
417
415
437
442
447
450
474
471
468
467
465
455
455
455
455
460
466
471
477
488
489
490
492
488
481
477
474
472
467
463
456
454
452
451
450
428
410
413
420
449
460
463
465
469
466
434
423
416
416
418
419
418
407
407
407
407
413
416
423
427
432
437
438
442
442
439
437
432
418
412
414
418
429
415
409
403
399
392
390
390
388
385
383
379
355
345
341
338
337
333
330
324
316
311
306
302
299
296
304
309
318
318
317
317
318
329
329
328
326
325
322
316
307
302
292
279
252
222
220
219
213
210
207
200
195
196
197
198
198
197
195
192
190
190
189
189
189
189
186
185
183
180
167
167
162
156
161
159
157
158
160
161
161
159
157
156
154
154
154
153
153
153
154
155
156
156
156
156
157
159
161
159
158
160
159
158
161
163
165
163
162
163
165
166
167
169
169
169
171
175
175
174
172
173
174
176
177
178
184
182
184
191
188
186
186
186
186
186
187
187
187
187
189
192
195
193
190
189
189
190
191
192
193
192
192
193
194
195
195
196
200
207
207
207
207
206
206
206
206
211
214
213
213
212
212
215
219
221
223
226
226
228
229
230
235
236
236
236
237
237
237
234
234
233
232
231
231
231
232
233
231
230
230
229
227
222
225
225
226
227
227
228
228
229
229
230
232
232
232
232
232
232
232
232
236
237
237
237
235
233
242
243
244
244
245
245
254
253
253
252
252
251
251
249
249
249
250
251
254
255
255
255
255
255
264
279
302
315
303
311
309
303
304
304
297
290
288
284
280
279
279
283
283
284
289
289
281
276
272
263
271
269
262
255
253
252
254
250
248
245
239
230
228
235
231
221
217
208
201
200
200
200
199
196
196
199
202
198
193
189
189
190
194
194
196
209
201
195
193
197
214
226
200
191
171
164
159
154
169
170
165
179
168
160
161
129
125
136
135
133
138
128
124
108
101
107
105
101
98
101
105
109
111
109
104
107
109
105
102
100
94
91
89
88
85
84
84
84
84
83
84
81
83
85
87
92
80
79
54
52
42
27
17
16
16
16
16
16
16
16
16
17
15
14
15
15
15
15
8
7
10
10
10
4
4
4
3
3
3
3
3
3
3
4
4
4
5
5
6
5
6
7
7
7
7
8
9
9
9
9
9
9
9
8
6
7
6
5
5
5
4
3
2
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
1
1
2
2