4
3
3
3
3
3
3
3
3
4
4
4
3
3
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
2
1
1
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
2
2
2
7
9
9
8
8
7
6
6
4
4
3
2
2
1
1
2
2
2
2
4
6
7
5
1
1
1
1
0
0
0
2
3
2
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
0
0
0
0
0
0
0
6
3
4
4
4
6
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
9
10
12
11
10
9
8
8
12
15
15
15
15
15
15
12
9
8
4
3
3
2
2
1
1
1
1
1
1
2
2
2
2
2
0
1
1
3
3
3
3
3
3
3
2
2
1
1
0
0
0
0
0
0
0
2
7
10
12
13
6
5
2
2
2
2
2
2
2
2
2
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
6
6
8
8
9
13
13
14
14
14
15
15
15
15
16
16
17
16
17
18
18
18
19
19
19
19
19
20
21
21
22
22
22
21
19
19
20
21
20
17
17
16
16
16
16
16
16
16
16
16
17
18
18
19
19
20
20
21
25
25
25
25
25
26
26
26
26
26
27
27
27
27
26
26
26
26
27
27
28
29
31
31
29
28
27
27
26
25
23
23
24
24
31
42
44
45
47
48
49
52
52
50
53
57
60
65
67
69
69
68
67
66
65
64
63
63
62
69
74
83
79
75
71
67
66
64
64
76
78
81
84
86
89
92
89
83
65
67
78
79
80
81
82
84
85
86
90
94
91
89
87
86
85
80
78
75
71
73
81
86
100
106
110
99
97
94
92
85
82
81
78
77
76
74
74
74
74
75
75
75
78
79
82
83
83
83
84
85
87
91
93
95
97
98
102
106
114
118
121
125
129
129
129
129
132
138
144
147
147
147
146
146
145
145
145
145
146
146
146
146
147
148
149
149
149
151
154
154
156
163
169
172
184
174
161
141
136
132
131
126
120
117
121
130
138
135
128
120
111
102
91
78
90
71
71
81
91
108
121
128
128
131
138
138
127
119
114
122
129
133
133
138
148
169
180
177
170
164
158
154
152
150
150
149
149
148
148
146
146
146
145
145
145
145
145
146
146
147
147
148
153
156
158
162
168
174
182
171
153
138
131
127
127
123
118
122
130
137
140
136
131
117
107
99
95
90
79
69
73
135
166
151
146
147
148
149
149
149
138
134
118
111
103
98
96
93
84
83
82
82
82
76
71
68
65
54
53
48
44
52
58
65
68
70
70
67
64
64
67
77
60
57
59
63
70
73
71
78
81
83
83
85
90
106
106
107
107
109
110
101
96
105
120
105
105
105
105
105
99
90
75
70
70
75
79
81
73
69
65
63
59
51
44
46
41
35
33
31
28
27
27
27
27
27
27
27
27
27
27
27
27
27
27
26
26
26
26
26
26
26
26
25
26
27
28
28
28
28
28
31
32
32
37
37
37
37
39
42
42
42
47
46
45
45
45
45
45
46
47
48
48
49
49
49
50
50
51
51
52
52
53
53
53
53
54
55
56
56
56
57
63
65
65
62
62
62
65
66
66
67
69
69
69
68
65
67
70
75
77
79
82
83
81
79
73
72
71
70
68
67
70
72
74
76
78
78
78
78
71
70
69
67
68
69
72
74
77
78
78
79
84
79
75
70
67
65
65
66
67
68
67
67
67
66
64
64
64
64
63
64
67
67
59
58
54
52
52
52
51
51
51
50
50
50
50
50
50
50
50
49
48
48
46
46
46
45
45
46
47
48
49
49
50
51
41
40
39
37
37
37
37
37
31
29
29
28
27
26
26
24
24
19
20
20
17
17
16
16
16
16
15
14
14
13
13
13
13
13
14
14
15
17
18
20
20
20
20
20
23
28
35
44
43
43
48
63
64
65
77
81
86
94
124
123
125
130
136
140
143
149
154
168
167
172
177
182
182
184
190
192
197
201
200
198
197
195
188
181
181
182
183
183
183
184
186
195
197
200
205
215
221
216
208
190
189
188
187
187
186
186
186
185
185
184
183
182
181
181
181
181
181
181
181
181
192
201
207
214
225
235
242
241
241
238
238
240
241
241
237
236
233
230
230
230
230
230
226
221
217
208
204
200
201
208
232
244
242
240
236
231
224
221
219
215
213
211
210
208
206
205
203
200
198
193
191
187
186
183
171
168
168
169
169
170
168
166
161
155
153
154
159
166
169
172
175
180
183
186
197
195
190
187
182
179
177
178
181
181
175
173
171
169
166
155
150
147
143
130
127
125
116
116
116
116
115
103
102
101
88
86
79
77
75
70
70
70
70
71
71
72
72
72
67
65
61
61
61
60
59
59
58
57
57
57
57
57
58
58
61
62
63
63
62
60
47
47
42
46
48
43
36
32
32
33
34
34
58
64
68
68
72
76
78
78
74
72
70
68
67
67
69
69
70
71
72
72
73
78
80
85
69
67
64
63
61
58
57
57
57
57
62
59
60
68
80
83
82
80
81
82
82
87
90
95
101
104
106
106
107
108
109
104
107
106
106
106
106
107
108
110
111
114
117
120
123
127
143
146
173
176
189
193
196
195
215
200
186
180
179
177
189
172
152
149
152
151
150
149
144
142
136
132
125
120
116
115
117
125
147
152
147
132
133
125
123
130
133
142
146
138
134
130
127
123
120
118
109
107
104
104
122
139
137
136
134
133
133
133
134
134
136
136
129
125
122
118
113
111
109
108
106
122
118
118
116
114
114
114
114
114
114
116
116
120
121
123
124
129
126
125
124
123
133
143
147
147
146
139
126
124
135
138
140
147
156
157
155
154
153
152
152
152
149
129
129
128
128
129
132
136
138
140
144
147
153
156
167
171
173
179
181
182
184
172
166
160
161
167
169
172
171
169
168
166
165
164
165
170
177
189
190
185
182
178
176
177
180
205
207
208
209
209
208
191
185
183
181
180
182
183
185
188
192
196
201
217
213
206
207
209
211
214
214
214
213
213
223
229
233
239
243
247
249
245
240
230
230
230
231
230
233
238
244
250
261
268
275
280
281
282
271
274
278
282
285
285
285
286
288
295
304
314
319
327
327
323
320
317
315
319
321
324
328
327
325
323
322
324
330
338
342
346
351
352
353
355
355
357
362
367
365
362
360
362
366
371
389
394
400
400
402
406
412
418
423
426
442
454
469
481
508
515
521
523
522
519
516
514
514
510
509
512
514
517
519
520
521
521
517
514
512
513
516
527
537
543
545
544
543
542
542
541
541
541
541
549
552
552
553
554
543
543
549
553
554
553
551
549
547
542
541
533
490
489
488
488
502
531
530
529
509
501
489
474
468
465
464
467
473
479
499
505
527
531
535
545
539
522
515
509
503
494
496
498
503
523
529
535
537
538
538
533
517
514
514
514
514
515
521
521
522
523
527
529
530
531
539
539
543
544
545
548
550
551
551
551
551
552
555
572
577
584
586
587
589
589
589
590
592
593
594
598
593
589
597
603
611
613
617
617
614
615
612
608
610
589
584
578
576
571
571
572
574
575
575
575
574
574
574
575
576
576
577
577
576
576
576
576
575
575
575
574
574
575
576
577
579
580
581
582
585
585
585
585
585
583
583
583
583
583
584
586
587
589
591
594
595
600
601
601
600
595
592
589
588
586
586
586
586
586
586
586
586
587
589
591
592
593
595
596
596
597
597
598
598
597
597
595
594
592
591
591
592
592
595
595
595
594
594
587
584
581
571
571
570
570
570
569
572
573
574
574
575
576
577
576
576
575
572
571
570
569
564
564
562
563
569
566
563
557
550
550
549
549
547
548
548
549
549
553
562
568
578
578
579
586
590
592
591
589
587
575
575
573
571
569
567
566
583
586
589
592
594
598
599
602
605
608
612
614
615
615
616
615
613
610
608
607
604
603
596
593
591
587
552
548
545
541
538
535
534
533
532
531
537
539
542
542
542
542
512
508
503
493
504
500
505
506
507
501
500
498
498
501
505
508
508
500
496
490
485
486
487
482
478
475
472
468
465
455
453
453
453
453
453
457
459
467
467
467
473
475
476
480
486
502
504
493
483
480
475
472
465
462
461
464
467
470
464
460
457
453
452
456
458
464
466
466
467
468
468
463
456
451
450
450
450
450
450
450
450
450
450
449
448
445
444
444
428
429
430
430
429
429
429
428
424
422
421
420
431
432
432
431
431
431
431
431
431
431
431
431
427
426
425
426
418
412
406
399
392
382
374
368
360
328
324
314
311
311
312
314
311
308
305
303
301
294
290
286
283
280
278
275
271
268
267
265
264
252
247
245
244
236
233
230
226
221
221
221
221
221
217
211
206
208
205
202
199
196
193
185
183
181
178
177
177
176
176
176
171
168
168
169
169
169
168
166
165
161
162
164
168
168
168
169
169
170
171
176
176
173
170
167
164
159
159
159
160
162
162
162
162
162
164
165
165
166
167
167
167
167
168
172
173
175
175
176
177
182
187
188
189
190
192
192
191
191
191
193
193
194
194
187
215
223
231
239
238
237
238
245
252
255
253
247
238
227
224
223
220
206
185
174
133
129
123
119
104
103
101
93
91
89
86
86
84
83
78
81
82
95
95
95
102
102
123
117
115
109
103
85
85
85
79
78
78
78
72
68
73
76
75
73
65
63
61
61
60
60
59
60
60
67
73
78
80
81
81
80
85
88
90
92
94
95
95
95
93
93
81
85
86
88
87
86
85
85
85
85
85
85
85
85
85
86
86
82
80
84
85
88
88
88
86
84
84
83
83
75
73
68
59
58
52
50
47
40
39
38
37
33
32
31
28
26
24
24
23
23
22
23
23
23
21
21
20
19
18
19
18
18
18
31
33
33
34
35
35
31
28
24
23
23
27
28
29
31
34
31
29
27
25
23
22
22
20
17
16
17
17
17
17
17
16
16
22
21
21
22
22
19
19
20
20
20
20
20
20
20
19
19
19
18
18
17
16
15
15
14
11
10
10
10
10
10
12
12
10
10
10
11
12
12
13
13
13
13
13
13
13
13
18
16
12
11
10
10
8
6
4
3
3
3
3
3
2