11
17
17
17
16
27
29
21
26
26
28
31
32
42
30
25
38
35
37
39
53
43
30
37
35
42
31
30
31
37
43
34
41
35
38
57
49
62
68
50
63
84
88
103
122
111
136
146
193
230
255
262
312
315
381
388
415
453
505
499
593
584
640
706
747
781
869
871
922
972
1052
1083
1205
1189
1255
1317
1364
1258
1387
1450
1439
1525
1457
1463
1505
1474
1431
1453
1421
1513
1506
1431
1466
1489
1524
1621
1668
1928
2124
2328
2582
3040
3322
3876
4437
5093
5720
6446
7701
8643
9810
11102
12304
13712
15436
17056
18502
20368
21969
23388
25036
26436
27509
29135
29981
31223
31708
32351
32915
33061
32479
32358
31958
31286
30237
29123
28231
26647
25655
24307
22784
21786
20211
18878
17792
16338
15268
14214
12889
12147
11119
10093
9297
8337
7608
7086
6302
5765
5034
4557
3928
3734
3224
2938
2542
2368
2108
1927
1712
1571
1328
1303
1287
1156
1092
1081
958
963
919
951
915
958
919
921
936
1024
1041
1035
1044
1026
1053
1077
1146
1169
1098
1214
1169
1166
1205
1167
1237
1266
1280
1236
1287
1341
1308
1346
1310
1341
1375
1379
1426
1385
1340
1312
1384
1472
1459
1352
1365
1330
1373
1376
1363
1365
1347
1496
1502
1502
1578
1585
1619
1650
1771
1689
1772
1826
1884
1936
2002
2080
2039
2143
2247
2243
2253
2265
2398
2432
2442
2398
2353
2501
2425
2440
2444
2316
2351
2388
2318
2151
2220
2126
2118
2011
2052
1905
1940
1842
1809
1825
1641
1674
1651
1569
1542
1506
1482
1528
1471
1420
1461
1482
1468
1493
1517
1564
1687
1671
1751
1904
2026
2162
2332
2490
2620
2836
3143
3445
3688
4174
4200
4688
5061
5503
5878
6213
6876
7181
7528
7928
8350
8907
9239
9673
9979
10317
10594
10846
10942
11124
11066
11087
11055
10945
10946
10886
10607
10167
9830
9627
9258
9024
8545
8027
7707
7076
6750
6272
5831
5422
4939
4491
4194
3794
3579
3194
2789
2593
2391
2125
1975
1780
1538
1444
1277
1099
1059
959
887
823
722
697
702
657
628
610
587
518
522
545
471
524
498
466
516
485
476
502
467
524
505
502
488
562
518
501
496
510
547
508
523
492
507
558
516
582
552
546
562
564
531
599
585
526
605
614
643
659
626
658
723
716
718
717
770
857
844
895
831
947
1037
1074
1087
1081
1174
1194
1249
1285
1354
1363
1427
1431
1461
1556
1489
1577
1501
1599
1627
1571
1539
1711
1677
1707
1711
1658
1620
1620
1624
1568
1601
1597
1476
1476
1440
1424
1356
1338
1235
1238
1237
1175
1091
1089
1035
995
953
909
906
827
791
771
690
713
650
630
617
620
581
522
524
512
498
485
462
471
453
454
419
408
369
421
397
395
376
382
368
385
384
409
396
371
363
350
391
373
378
363
382
353
388
392
406
425
390
350
380
378
396
409
415
401
391
394
406
404
388
398
418
405
389
422
414
419
411
405
400
439
390
435
422
391
429
432
382
420
415
440
421
405
377
432
456
426
411
399
448
414
430
437
450
419
447
432
467
419
459
441
431
439
443
438
413
412
453
434
430
453
452
425
476
455
443
464
438
435
468
454
396
467
420
458
473
434
451
454
468
471
453
457
457
411
503
484
537
453
510
514
500
517
530
523
578
498
550
541
564
516
575
593
540
595
544
536
576
542
644
571
593
535
589
562
562
589
530
584
579
548
517
535
534
525
523
488
511
512
458
526
509
499
499
484
442
463
479
442
476
443
446
427
431
432
433
427
424
445
381
402
409
371
413
400
374
391
403
362
379
393
420
359
361
370
397
394
370
387
390
389
370
373
387
364
411
370
370
378
373
373
427
355
369
392
343
399
366
376
361
351
361
387
386
362
340
364
389
358
372
381
402
376
391
380
340
376
405
411
370
389
348
371
378
379
351
401
374
351
410
361
362
371
348
387
372
362
398
397
394
374
371
364
362
379
371
386
374
352
384
369
354
377
361
360
378
345
339
358
366
362
323
324
401
343
365
361
328
321
323
376
347
323
363
339
358
341
347
330
325
365
303
315
315
319
314
295
307
279
305
333
310
287
297
305
284
294
321
292
280
303
275
292
287
267
258
266
270
256
221
259
268
273
279
240
238
245
273
239
232
241
237
244
233
265
257
269
247
233
223
221
230
257
245
220
205
228
227
259
233
248
222
219
244
246
226
210
235
228
217
249
240
219
234
227
218
216
227
225
220
242
224
266
230
216
214
228
215
224
249
217
216
202
234
190
224
224
209
202
207
195
211
198
175
201
184
179
181
192
191
164
190
175
178
171
195
192
192
167
161
187
183
166
176
175
189
146
169
166
146
163
169
131
164
168
154
178
158
159
149
145
157
164
154
140
148
147
153
149
158
165
125
130
138
125
128
145
115
136
149
124
116
131
130
146
139
146
137
137
151
142
140
129
123
130
129
105
125
128
138
131
131
135
116
141
121
127
115
120
125
130
133
138
125
129
107
108
144
118
128
111
108
106
141
125
126
122
135
123
97
102
128
120
133
114
136
116
124
108
121
128
137
125
136
123
133
136
119
136
142
111
127
147
153
171
186
162
183
184
197
188
188
174
196
209
227
212
237
271
227
208
260
296
273
304
319
302
328
305
304
345
348
346
366
412
401
387
361
435
420
383
393
390
404
404
439
409
412
418
440
429
410
401
462
440
421
405
396
387
430
375
407
378
371
380
355
350
361
325
351
298
335
307
281
277
295
271
277
265
235
229
235
216
220
225
227
204
216
203
177
204
190
199
194
228
186
200
197
214
222
230
224
225
229
240
275
286
262
264
311
281
337
332
333
330
391
408
427
445
461
474
487
521
527
541
558
545
592
612
694
639
661
730
738
720
722
744
779
809
827
809
820
835
859
815
903
862
871
829
932
887
898
842
901
911
925
916
857
838
813
878
813
823
786
782
745
772
699
701
750
692
642
594
612
587
588
562
540
534
497
460
482
493
459
392
377
385
397
348
361
336
298
275
304
266
244
255
214
209
207
190
190
198
162
186
177
152
168
155
152
166
144
120
129
140
138
142
139
138
129
136
148
111
106
128
143
122
122
139
170
156
134
164
166
152
137
154
146
170
170
183
184
175
212
181
203
242
214
208
247
220
212
235
236
244
268
230
247
240
234
259
234
262
241
296
271
319
274
313
310
305
330
275
313
269
304
303
271
317
335
329
342
303
321
353
330
366
334
364
350
370
397
403
410
464
439
466
490
496
540
568
569
620
563
647
658
695
717
776
801
833
869
869
866
945
990
1078
1083
1193
1139
1202
1265
1357
1319
1371
1444
1595
1473
1639
1591
1713
1606
1726
1756
1785
1800
1905
1903
1950
1955
1969
1954
2075
2008
2019
2026
2067
2079
2075
2080
2065
2142
2065
1997
1993
2028
1994
1915
1988
1950
1961
1901
1867
1806
1768
1792
1691
1733
1608
1546
1609
1517
1476
1350
1414
1252
1229
1240
1169
1152
1083
1006
1033
967
975
889
843
793
796
724
666
689
649
602
565
569
550
509
504
454
463
432
414
403
410
384
374
378
362
349
370
348
349
350
344
349
309
355
339
385
384
382
369
398
397
410
386
414
419
441
438
483
497
521
498
552
514
589
622
575
594
559
608
641
625
606
619
676
668
705
711
721
717
719
689
730
753
764
712
760
720
680
699
744
723
696
731
783
746
699
709
700
697
706
712
650
664
620
632
634
617
599
602
542
569
542
525
549
530
512
476
437
431
439
407
411
356
348
341
334
347
289
298
306
266
272
259
255
226
237
200
198
193
177
179
179
170
148
167
131
122
153
113
114
109
119
113
107
109
113
93
81
96
92
101
85
99
74
84
79
116
80
94
70
94
97
88
99
66
77
99
79
92
90
72
74
97
85
78
97
94
108
86
101
105
110
93
93
99
116
109
107
115
100
108
100
98
91
96
113
108
108
106
94
85
101
89
104
92
123
117
94
119
105
87
107
97
102
113
98
109
89
120
104
101
113
90
100
122
118
119
113
103
108
110
152
128
111
105
140
105
129
133
128
164
127
137
167
133
153
157
155
166
173
155
164
149
196
169
202
181
171
186
191
189
200
191
195
220
202
223
187
205
172
213
195
186
180
201
180
179
181
176
170
159
171
181
158
172
149
154
159
169
169
134
162
154
151
135
131
128
126
118
122
131
109
115
99
111
92
98
121
94
90
81
72
64
74
78
55
70
62
62
50
45
49
60
38
42
42
42
42
39
38
43
25
28
34
25
35
31
26
13
25
18
21
20
14
22
22
25
16
28
28
16
18
21
11
22
18
21
18
22
16
14
25
22
26
23
25
31
16
26
13
25
28
26
23
16
23
29
29
21
34
28
24
36
17
21
26
26
23
33
23
31
26
27
22
18
17
22
31
20
16
31
29
26
19
21
28
24
19
24
14
13
14
22
20
19
16
18
25
15
13
15
15
21
15
10
8
10
10
8
13
10
12
17
11
8
7
12
12
9
3
6
5
6
3
6
9
3
6
5
9
6
5
3
3
9
3
5
4
3
2
4
3
3
4
4
3
2
1
4
2
4
2
2
4
3
3
1
1
1
2
5
3
2
1
4
3
5
2
2
1
0
4
4
3
3
3
3
0
3
2
3
4
1
2
7
2
0
4
2
6
3
1
6
5
1
2
4
3
3
1
2
3
2
3
3
6
4
2
3
3
1
1
3
5
3
3
3
2
2
3
3
2
4
2
0
1
2
1
2
1
0
3
1
3
2
2
2
3
2
4
4
6
4
1
4
1
2
2
0
1
2
6
1
3
5
5
1
0
3
3
1
2
3
0
0
3
0
0
2
3
2
2
3
1
1
1
0
0
1
2
3
5
0
0
0
3
0
1
3
3
4
2
1
2
0
0
2
4
2
3
3
1
0
1
2
0
0
1
2
2
1
3
2
1
0
1
0
0
1
2
0
1
1
0
0
2
1
2
0
4
1
0
0
1
1
2
0
2
2
2
2
0
1
3
0
2
1
0
1
1
2
1
1
2
0
1
2
1
1
1
1
1
1
2
1
2
0
1
2
1
1
3
0
1
0
1
1
0
0
2
0
1
1
1
1
1
2
2
0
0
1
2
2
1
0
1
0
2
1
1
1
0
1
1
0
2
3
2
1
1
0
1
0
2
1
0
0
1
1
2
1
0
0
2
0
0
1
2
0
1
3
2
1
1
0
0
1
1
0
2
0
3
1
0
1
1
1
1
0
1
1
1
1
0
1
2
0
0
2
0
1
0
0
3
0
0
0
1
0
0
2
0
0
1
1
0
0
1
0
0
0
0
1
4
0
2
2
0
1
0
0
2
1
2
0
0
1
0
1
1
1
1
0
1
1
2
2
1
1
1
1
2
0
4
0
0
2
3
1
1
1
1
0
3
2
1
0
1
1
2
0
1
0
3
0
2
1
1
1
0
2
0
0
0
1
2
0
1
3
0
0
1
3
1
1
0
2
0
0
0
4
0
1
1
1
0
1
1
0
2
0
0
3
0
0
0
0
1
2
1
2
0
1
0
1
0
0
0
1
0
1
1
1
1
0
1
0
1
1
0
0
0
1
2
1
1
0
1
0
2
0
1
2
0
0
0
3
1
3
0
0
0
0
0
0
0
1
0
0
0
1
0
3
2
0
2
1
0
2
0
1
2
0
0
0
3
0
1
3
0
0
1
2
0
1
0
1
2
0
2
1
0
1
0
0
3
1
0
0
4
1
2
2
0
1
3
3
1
1
0
1
2
2
3
0
1
2
0
1
0
0
0
2
0
2
0
1
1
2
2
2
1
1
1
1
0
1
0
3
0
1
0
1
0
2
0
0
1
0
0
0
0
0
4
1
1
0
2
1
1
2
1
2
0
1
1
0
1
0
4
2
0
0
0
0
2
1
3
1
0
0
1
0
0
1
2
0
0
2
3
0
0
2
1
2
1
0
2
1
1
0
1
2
2
3
1
0
2
2
1
1
0
1
2
0
1
0
1
0
0
0
0
1
1
0
1
1
0
2
1
0
0
0
2
1
1
0
2
0
0
0
1
0
0
2
0
1
0
0
0
0
2
0
3
2
1
3
1
0
0
1
0
0
0
0
1
2
0
0
0
1
1
1
0
1
2
1
0
1
1
0
1
0
0
0
0
1
0
1
0
2
1
0
0
1
1
1
0
1
0
2
0
1
2
0
0
1
2
1
1
0
1
0
2
2
1
0
0
3
0
1
0
1
1
0
1
0
0
0
1
1
2
0
0
0
1
1
0
0
0
1
0
1
0
0
1
1
0
0
1
0
0
1
2
1
0
1
1
1
2
0
0
0
1
1
1
0
0
0
1
2
1
1
2
2
1
2
0
0
1
0
1
0
1
2
0
0
1
1
2
1
0
2
0
2
1
4
1
0
1
1
4
0
1
1
1
1
3
1
1
1
0
1
0
1
1
0
0
1
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
1
0
0
1
0
1
0
0
0
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
0
0
0
0
0
2
2
0
0
1
0
0
1
0
2
1
2
0
2
0
0
0
0
0
0
0
0
1
1
0
0
1
0
1
0
1
1
1
1
0
1
0
1
0
0
1
0
0
0
1
1
1
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
1
0
0
0
0
0
0
0
0
0
1
1
1
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
1
0
0
1
1
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
2
0
1
1
1
0
1
0
0
0
2
0
0
0
1
1
0
0
0
1
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
2
0
0
0
0
0
0
0
2
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
2
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
1
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
1
0
2
0
0
0
0
1
0
0
0
0
0
0
0
0
2
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
2
1
0
0
2
0
1
1
2
2
1
0
1
1
3
1
1
3
2
2
2
5
3
4
4
1
3
1
3
1
2
0
4
2
2
1
1
1
2
0
0
1
0
0
0
2