47
46
45
45
45
45
44
44
42
42
42
42
39
39
39
39
38
38
38
35
34
33
33
33
33
33
33
33
33
33
33
33
32
32
32
31
30
30
29
29
29
29
29
29
29
28
28
27
27
27
27
23
21
21
23
24
24
25
25
25
25
26
28
29
29
31
32
32
32
33
33
33
33
33
33
32
32
32
32
32
32
33
33
33
33
34
34
33
32
32
32
32
32
32
32
33
34
34
37
37
37
39
39
39
39
39
39
39
39
40
40
41
42
42
42
43
45
46
47
49
49
51
53
53
53
53
53
52
50
48
46
46
46
46
46
46
46
46
46
46
47
48
48
48
48
48
48
48
48
48
48
48
51
51
51
52
52
52
52
52
52
52
52
53
53
53
53
54
54
54
54
54
55
55
55
55
55
56
56
56
56
56
56
56
57
57
57
57
57
57
57
57
57
57
57
57
58
59
59
59
60
60
60
60
60
61
61
66
67
67
68
69
69
69
69
69
69
68
67
65
65
65
65
65
65
65
65
65
65
65
64
64
63
63
62
62
61
61
61
60
59
59
59
59
59
59
59
59
59
60
60
60
60
60
59
59
59
59
59
59
59
59
59
59
59
59
59
59
58
58
58
58
58
57
57
57
56
55
55
52
52
52
52
52
52
52
52
52
52
51
50
51
52
54
54
51
49
46
43
43
43
43
43
43
42
42
42
41
41
41
41
42
42
42
42
42
42
42
42
42
42
41
41
40
40
40
40
40
39
39
40
42
42
42
42
42
42
42
42
42
42
42
42
42
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
42
42
42
41
41
41
42
42
42
42
41
41
41
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
40
40
40
40
40
40
41
41
41
41
41
41
40
40
40
40
40
40
40
39
39
39
39
39
39
39
39
39
39
39
40
40
40
40
40
40
41
41
41
41
41
41
41
41
41
41
41
41
40
40
40
39
40
40
40
40
40
40
40
41
41
42
42
42
43
43
43
44
44
44
44
45
45
45
45
45
45
45
45
45
45
45
44
44
44
44
44
44
44
45
47
48
48
48
49
50
51
51
52
52
53
53
53
53
53
53
53
53
53
54
55
55
56
56
56
56
56
56
56
56
56
57
57
57
57
57
57
57
57
59
60
60
60
61
63
64
64
65
66
66
66
66
66
61
62
62
63
63
63
63
63
64
64
65
66
66
66
66
67
67
67
67
67
67
67
67
67
67
67
67
68
68
68
68
68
68
68
68
68
68
67
67
67
67
67
66
66
64
63
62
62
62
62
62
62
61
61
61
61
61
61
60
60
60
59
59
59
59
59
59
59
60
60
60
60
62
62
62
62
62
61
61
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
59
59
59
59
58
58
58
58
56
56
57
57
55
53
53
53
53
53
52
52
52
52
52
52
52
52
52
51
51
51
51
51
50
50
50
50
51
51
52
52
52
52
52
53
53
53
51
51
50
50
50
49
49
47
46
46
45
45
45
45
45
45
45
45
45
45
45
45
45
44
44
43
42
42
42
42
43
43
43
43
43
43
43
43
43
43
43
43
43
43
42
42
42
41
40
37
37
37
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
35
35
35
35
35
35
35
35
35
34
34
34
34
34
34
34
34
34
34
34
34
32
32
33
33
34
34
32
31
31
30
31
32
33
34
34
35
35
33
33
32
31
31
31
31
31
31
31
31
31
31
30
30
30
29
29
29
29
29
29
29
29
29
29
29
29
29
29
28
24
21
21
26
26
26
26
27
27
28
28
28
28
28
28
28
28
27
27
27
27
27
27
27
26
26
25
25
25
25
24
24
24
24
24
23
22
21
21
20
20
19
18
18
18
18
18
18
18
18
18
18
18
17
17
17
17
15
15
15
15
14
14
14
14
14
14
14
15
16
16
16
16
18
17
17
17
17
16
19
20
20
20
20
20
20
20
21
21
20
19
20
20
20
21
19
20
20
20
21
21
21
21
21
22
22
22
20
20
20
20
20
20
22
21
21
21
21
21
22
22
21
21
21
21
21
21
21
21
21
22
22
22
22
22
22
22
22
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
20
20
20
20
20
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
21
21
21
21
21
21
21
21
21
22
22
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
20
20
20
20
20
19
19
21
21
21
21
20
20
20
20
20
21
21
21
21
21
21
21
21
21
21
21
21
22
22
22
22
22
22
21
21
21
23
23
23
23
22
22
21
21
22
22
23
23
23
23
23
21
21
21
21
21
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
21
21
22
23
24
24
23
23
23
23
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
20
22
24
24
24
23
23
23
23
23
23
24
24
23
23
23
23
23
23
23
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
23
24
24
23
23
23
23
23
23
22
22
22
22
22
23
23
23
23
23
24
26
26
26
26
25
24
24
24
23
23
25
25
26
26
26
26
26
26
26
26
26
25
24
24
24
24
24
24
24
24
24
24
24
24
24
24
25
25
25
25
25
25
25
25
26
26
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
26
26
26
25
25
25
25
25
25
25
25
26
26
25
25
25
25
25
25
25
25
25
25
25
25
25
26
26
26
26
26
26
26
26
25
24
24
23
23
23
23
23
24
24
24
24
25
25
25
25
25
25
24
24
24
23
24
24
24
25
25
25
25
25
25
25
25
25
25
25
24
24
24
24
24
24
24
24
24
24
24
24
25
25
25
25
25
24
24
24
23
23
23
23
24
24
24
24
25
25
25
25
25
25
25
24
24
24
24
25
26
27
27
27
27
27
26
26
26
26
26
26
24
24
24
24
24
24
24
24
25
25
26
27
27
28
29
30
30
30
30
30
30
30
30
30
30
30
30
29
29
29
29
29
29
29
29
29
29
30
31
31
30
29
29
30
31
31
31
31
31
32
32
32
32
32
32
31
30
30
29
29
28
28
28
27
27
27
27
28
28
28
29
29
29
31
31
29
27
27
27
29
30
30
30
29
28
28
27
27
27
27
26
26
26
26
26
26
27
27
27
28
28
29
29
30
31
31
31
31
31
31
31
32
34
34
34
33
31
27
25
24
25
25
26
26
26
26
25
25
25
25
25
25
25
25
26
26
27
27
28
28
29
29
29
29
29
30
30
30
30
30
30
30
29
29
28
28
28
27
26
26
26
27
28
29
33
35
36
37
39
40
41
41
42
42
43
47
49
52
54
56
57
61
63
66
68
73
75
78
81
83
90
91
94
97
98
100
104
106
110
114
116
118
121
128
130
133
137
139
148
153
157
165
183
187
188
190
197
198
198
199
200
200
200
200
200
200
201
202
203
204
204
205
207
208
210
215
216
228
230
231
233
234
238
242
253
259
261
269
275
278
284
290
293
295
297
300
303
304
306
307
308
309
310
313
316
319
327
328
332
340
343
350
353
354
356
357
358
359
359
359
360
360
361
362
362
365
364
362
361
360
359
356
356
355
355
356
357
359
365
367
370
372
377
378
382
385
388
391
393
395
397
398
400
401
402
403
404
405
406
406
406
407
407
407
407
407
406
405
401
400
399
398
396
396
395
395
394
394
394
393
390
388
388
387
386
387
388
389
390
390
391
392
393
395
395
394
393
393
393
392
392
392
391
391
391
390
389
389
389
388
386
381
380
378
377
372
371
369
366
365
362
359
358
356
354
353
349
347
346
346
346
346
345
344
342
342
342
343
343
343
343
343
344
344
345
346
351
356
358
359
360
361
365
367
365
365
364
362
362
361
360
359
358
357
356
356
356
355
355
354
354
351
350
349
344
342
341
339
337
335
331
330
329
327
325
321
318
315
313
313
312
309
308
304
299
298
295
294
293
292
290
289
287
287
286
286
284
283
281
280
280
279
279
278
277
276
275
273
270
269
269
269
269
269
269
269
269
269
270
270
270
272
274
278
280
280
281
282
283
283
284
284
284
284
284
284
284
284
284
284
284
284
274
271
269
266
261
257
255
254
253
250
247
239
234
224
224
222
221
220
219
216
208
207
206
205
205
204
192
189
187
182
181
181
180
176
171
169
168
166
163
161
157
155
153
152
149
145
137
123
121
121
120
120
119
108
108
107
106
103
102
101
95
79
77
75
73
67
59
57
56
55
54
54
52
52
52
47
46
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
43
43
44
44
45
45
44
43
43
42
39
38
37
35
35
34
34
34
33
33
32
32
31
31
33
33
33
34
34
35
35
37
37
39
40
41
40
39
38
36
35
35
35
33
31
31
31
31
34
34
30
29
27
26
29
32
32
36
44
46
47
48
51
53
55
56
61
66
67
69
70
72
78
81
83
85
87
89
92
100
102
104
106
108
111
114
117
125
127
129
148
159
178
179
184
204
207
212
216
217
218
219
221
220
219
218
216
214
212
210
207
204
203
203
205
211
215
214
213
213
213
209
208
207
206
205
203
203
203
203
203
202
202
202
202
202
201
201
201
200
200
199
199
198
197
197
197
196
195
195
195
194
194
193
193
191
190
189
189
188
187
187
186
185
184
182
181
179
178
178
177
177
176
175
173
173
172
171
170
170
169
168
166
164
163
162
160
159
158
157
156
154
153
151
150
141
140
140
139
137
137
136
135
135
135
133
132
132
131
131
129
128
128
127
123
121
120
119
119
119
118
116
114
111
110
109
106
106
105
104
95
93
91
90
88
86
84
80
80
78
76
74
72
70
68
67
65
61
59
56
54
53
51
50
49
46
45
45
45
44
44
40
40
39
38
38
38
38
37
37
36
34
33
33
31
29
29
28
28
28
28
28
28
28
28
28
28
28
28
27
26
23
23
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
23
23
23
23
23
22
22
22
22
22
22
22
22
22
22
22
22
24
24
23
23
22
22
22
22
22
22
22
23
23
23
24
24
24
24
24
24
24
24
24
24
24
24
23
23
23
23
23
23
23
23
22
22
25
27
27
27
27
27
26
22
22
22
22
22
22
23
24
25
25
25
24
24
24
24
24
24
23
23
23
22
22
23
24
24
24
24
24
24
24
24
24
24
24
24
23
23
23
23
23
23
23
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
23
22
22
22
22
22
22
21
21
21
25
25
25
25
23
23
23
23
21
19
21
22
22
22
21
20
20
21
21
21
21
21
21
20
19
18
18
19
19
19
20
21
21
21
21
21
21
20
19
18
18
19
19
19
19
19
19
19
19
19
19
18
18
18
18
18
17
17
17
17
17
17
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
17
17
17
17
17
17
17
17
17
17
17
17
17
17
18
18
18
18
19
19
19
19
19
19
19
19
18
18
18
18
18
18
17
18
18
18
18
17
17
17
17
17
17
19
20
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
23
23
23
23
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
21
21
21
21
21
21
21
21
21
21
21
20
20
20
20
19
19
19
19
19
20
20
21
21
21
21
21
20
19
19
20
21
21
21
21
22
22
22
22
22
22
22
22
22
21
21
21
21
20
20
20
20
20
20
21
21
21
21
21
22
22
22
22
23
23
24
24
24
24
24
21
22
22
22
23
24
24
24
23
23
23
22
22
22
22
22
22
22
22
23
23
23
23
24
24
24
25
25
25
25
22
21
19
18
18
17
17
17
17
17
18
18
19
19
19
19
20
20
20
20
20
20
20
20
21
21
21
21
21
21
20
20
20
20
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
19
19
19
19
19
19
19
19
19
20
20
21
21
21
20
20
20
20
21
21
21
21
22
24
23
21
20
20
20
20
20
20
20
20
20
20
20
20
20
21
21
21
21
21
21
21
21
21
22
22
22
22
21
21
21
21
20
20
20
20
20
20
20
21
22
23
23
23
23
23
24
24
24
23
23
21
17
19
22
24
25
24
23
23
23
22
22
22
23
23
23
23
23
23
23
23
23
23
23
24
24
24
24
24
25
25
25
26
27
27
27
27
27
27
25
25
25
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
25
25
24
24
24
24
25
25
26
26
26
26
25
25
25
25
25
26
25
25
25
25
25
25
25
25
25
26
26
26
26
26
26
26
26
26
26
26
26
25
25
25
25
26
26
25
25
25
25
25
25
25
25
26
26
26
27
29
29
28
28
28
28
28
28
27
27
27
27
27
27
27
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
25
25
25
25
25
27
27
26
26
26
26
25
25
25
25
25
25
25
25
24
23
23
24
24
25
25
25
25
25
25
25
25
25
25
25
25
25
25
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
25
25
25
25
25
25
25
25
25
24
24
23
23
23
23
23
23
23
24
24
25
25
25
25
25
25
25
24
24
24
23
23
23
23
24
23
22
22
22
21
21
21
21
21
20
20
20
19
19
18
18
18
18
21
21
21
21
21
21
21
21
21
21
22
23
23
25
25
25
26
27
27
27
27
27
27
26
26
26
26
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
23
23
20
20
20
20
20
20
20
20
21
21
21
21
21
22
24
24
24
25
25
25
25
25
24
24
24
24
24
24
24
24
24
24
24
24
24
24
23
23
23
23
22
22
22
22
22
21
21
22
22
22
22
22
22
22
22
22
22
21
21
21
20
20
20
20
21
23
23
23
23
23
22
22
22
21
21
21
20
20
21
21
21
21
22
22
22
22
22
22
22
22
22
23
23
23
23
23
23
22
21
20
21
22
22
22
21
21
21
21
21
19
20
20
20
20
20
20
19
18
18
19
19
19
20
20
19
19
17
17
17
18
18
18
18
18
19
20
21
22
22
22
21
21
20
20
20
20
19
18
16
16
16
19
19
19
19
18
18
18
18
18
18
18
18
18
18
18
18
18
19
21
21
21
21
20
20
20
20
17
18
19
19
20
21
22
22
22
22
23
24
24
24
24
24
24
24
25
25
25
24
24
24
24
24
24
24
24
24
24
24
24
23
22
22
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
20
20
20
20
20
20
20
20
20
20
19
19
19
19
19
19
19
19
19
19
19
19
19
20
20
20
20
20
19
19
19
19
19
19
19
19
19
19
19
19
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
19
19
19
19
19
19
19
19
19
20
20
20
20
19
19
18
18
17
17
17
17
17
17
17
17
18
18
18
18
18
18
18
18
18
18
18
17
16
16
16
17
17
18
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
22
22
22
22
22
22
22
22
21
21
21
21
21
22
22
22
22
22
22
22
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
24
24
24
24
23
22
22
22
22
22
21
21
21
22
23
23
23
22
22
22
21
21
20
19
19
19
20
20
21
21
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
23
23
23
23
23
23
23
22
22
22
22
22
22
22
22
22
22
22
22
22
23
24
25
25
26
26
26
26
26
26
26
26
24
23
23
22
22
22
22
21
21
21
22
27
27
27
26
25
24
24
23
23
23
24
25
26
26
24
24
25
24
24
24
24
23
23
23
23
23
23
23
23
23
23
23
25
25
25
26
26
26
26
26
27
27
27
27
27
27
27
27
27
27
27
26
26
25
25
24
24
24
24
26
26
27
27
27
27
27
27
27
27
27
25
25
25
25
25
26
26
26
24
27
27
26
26
26
26
26
26
26
25
25
25
24
23
23
23
23
24
25
26
26
26
26
26
26
26
26
26
25
25
25
24
24
24
28
28
28
28
28
28
28
28
28
28
29
29
29
29
29
29
28
28
28
28
28
28
28
28
28
28
28
28
28
29
29
29
29
29
28
28
28
28
29
29
29
29
30
30
30
31
31
31
31
31
31
32
32
33
33
34
34
34
34
34
33
33
32
32
32
32
32
32
32
33
31
31
31
31
31
32
32
32
32
33
33
34
34
34
34
34
34
34
34
34
34
34
32
31
31
32
33
33
33
33
33
34
34
35
35
35
35
35
35
35
35
36
36
36
36
34
35
35
36
36
37
37
37
37
38
38
38
38
38
38
38
38
39
39
39
39
37
36
36
35
35
35
35
35
35
35
35
33
32
32
32
32
32
32
33
33
34
34
35
35
35
35
35
35
35
34
34
34
34
34
35
35
35
35
35
35
35
35
35
35
37
37
37
37
37
37
36
36
36
34
34
36
36
37
37
37
37
37
37
37
38
40
40
40
40
40
41
42
42
43
43
43
43
43
43
43
43
43
43
43
43
44
45
46
48
48
48
48
48
48
48
48
49
50
50
50
49
49
48
47
47
47
47
47
47
47
47
47
47
47
48
48
48
48
48
48
48
48
48
51
51
52
53
53
53
53
53
53
52
52
52
52
51
51
51
51
51
51
51
51
52
52
53
53
53
53
53
53
53
53
53
53
53
53
54
54
54
54
55
55
55
55
55
55
55
55
55
55
55
56
56
56
56
56
56
56
56
56
58
58
59
59
59
58
58
58
61
62
63
63
64
66
68
68
68
68
68
68
68
68
69
70
70
70
70
71
71
71
71
71
71
70
70
70
69
69
69
69
69
69
69
68
67
68
67
67
66
65
65
65
65
65
65
65
65
65
66
66
66
66
66
66
66
66
66
67
67
67
67
67
69
69
69
69
69
69
69
69
69
69
69
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
69
69
69
69
69
69
69
69
69
70
72
72
73
74
74
75
75
75
75
75
76
76
76
76
76
76
76
76
77
77
77
77
77
77
79
80
84
88
89
90
90
91
92
94
102
102
102
102
104
121
123
122
121
120
119
110
108
105
108
109
110
111
112
123
127
129
131
138
139
141
145
149
149
151
154
157
158
158
159
160
162
162
162
163
163
163
164
164
166
166
167
168
166
163
161
159
158
157
155
154
152
151
148
147
146
144
141
140
138
138
138
137
137
137
136
135
134
134
133
133
134
134
134
135
135
135
135
135
136
137
137
137
138
139
140
140
141
144
148
150
150
152
152
153
154
155
155
156
156
157
157
157
157
157
157
159
159
161
161
162
162
162
162
163
163
164
164
164