32
32
32
32
32
32
32
34
36
37
38
39
41
43
44
44
46
47
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
47
45
39
37
35
34
32
30
29
28
27
24
22
20
18
15
15
14
13
12
11
11
11
10
9
8
7
7
6
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
7
7
7
8
11
13
14
16
16
15
14
14
13
13
13
15
15
17
18
21
22
24
26
28
32
34
37
38
39
40
40
42
43
44
45
47
48
49
51
52
53
54
55
53
51
48
45
44
41
38
37
31
26
21
18
18
18
20
27
31
34
36
36
35
35
47
54
63
63
55
48
41
34
34
36
37
38
39
41
42
44
44
43
41
41
40
42
47
50
55
59
62
63
63
64
64
57
52
42
37
31
28
24
22
18
17
17
17
17
17
16
16
15
15
15
16
18
20
23
23
25
26
27
28
29
30
30
31
32
32
32
32
32
32
32
33
33
31
30
26
25
25
29
31
33
33
32
32
31
29
27
25
22
22
22
22
22
22
20
19
18
17
17
17
18
18
18
16
14
12
12
12
12
12
12
12
13
14
17
16
14
11
8
7
8
8
9
10
10
9
9
8
8
10
11
12
13
13
14
14
15
14
11
8
6
4
4
4
4
4
4
4
5
5
6
6
6
6
6
7
9
9
11
12
14
16
18
20
21
21
21
21
21
21
21
21
21
21
21
20
19
17
16
15
14
13
12
11
9
9
9
9
9
9
9
9
9
10
10
12
13
14
14
14
14
14
14
14
14
14
14
13
13
13
13
13
13
13
12
12
12
12
12
14
14
15
16
16
16
16
16
15
14
14
13
13
12
12
13
14
14
15
15
15
15
15
15
15
13
13
12
11
11
11
10
10
10
10
10
11
11
11
10
9
8
6
6
6
5
5
5
5
5
5
6
6
6
6
6
6
6
7
7
7
7
7
7
7
6
6
6
6
6
6
6
7
7
8
8
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
8
8
7
7
7
8
8
10
11
11
11
10
10
10
10
9
8
8
8
8
8
8
8
9
10
11
11
12
12
12
11
11
11
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
11
11
10
10
9
8
7
6
6
5
5
6
6
6
7
7
8
8
10
11
13
14
15
15
14
13
11
10
8
7
6
5
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
6
7
7
11
13
17
20
22
24
25
28
29
29
28
27
24
23
22
22
20
20
18
18
17
15
15
16
18
21
22
22
21
21
20
20
21
22
23
24
23
22
20
18
18
19
19
20
20
17
14
12
10
10
10
10
10
10
9
8
6
5
4
4
4
4
5
5
5
5
5
5
5
6
6
6
7
10
11
14
15
17
18
19
19
21
22
22
22
22
22
23
25
27
28
30
31
29
27
24
22
21
21
20
20
20
23
29
32
34
37
38
37
35
34
32
32
30
29
27
26
26
26
26
27
27
28
28
30
31
32
33
31
30
28
26
24
22
20
18
17
16
15
15
14
13
13
13
13
13
13
13
12
9
7
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
2
2
2
2
2
2
3
4
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
5
5
5
5
5
5
5
6
7
7
7
7
7
6
6
6
7
7
8
9
10
10
12
12
13
14
16
16
16
16
16
16
16
16
13
12
11
9
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
9
10
10
12
13
14
14
13
12
11
10
9
8
7
7
6
5
5
5
4
4
4
3
3
3
2
2
2
2
2
2
2
2
3
3
4
4
4
4
4
4
4
4
4
4
5
6
6
7
8
8
9
11
13
13
14
14
15
16
16
16
17
17
17
17
18
18
19
19
19
20
20
20
20
20
20
19
19
19
18
18
18
17
17
16
15
15
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
13
13
13
13
13
13
13
14
15
15
15
17
17
19
19
21
21
21
22
22
22
23
23
23
22
22
22
22
22
22
22
22
22
22
22
24
25
27
28
30
31
31
32
32
33
33
34
34
34
34
33
33
32
32
32
32
32
33
33
34
34
35
35
36
36
37
37
37
37
36
36
35
35
35
35
36
36
37
38
38
38
38
38
38
39
39
40
41
42
42
43
43
44
44
45
45
46
46
46
46
46
46
47
47
48
48
48
48
48
48
49
49
50
52
53
53
54
55
56
57
57
58
59
59
59
59
58
58
57
57
57
57
57
57
58
58
58
58
58
58
58
58
58
59
59
60
60
61
61
62
62
62
62
62
63
64
64
64
64
63
63
63
61
58
57
55
55
55
55
55
56
56
57
57
57
57
57
57
57
57
56
56
55
55
55
54
54
54
53
53
53
52
52
51
51
51
51
51
51
51
51
51
51
50
49
48
48
48
48
48
48
49
49
49
49
49
47
47
47
46
46
46
45
45
45
44
44
39
36
34
34
33
33
32
31
31
31
31
30
30
30
30
30
29
29
29
28
28
28
28
28
28
28
28
28
28
28
28
27
27
27
27
27
27
27
27
28
28
28
28
29
29
29
29
29
29
28
27
26
26
27
28
28
29
29
29
29
29
29
29
29
29
29
30
30
30
30
30
30
30
29
29
29
29
29
29
29
29
29
29
30
30
31
31
30
30
29
28
28
28
28
28
29
29
29
29
29
30
30
30
30
30
30
30
30
31
31
31
31
31
31
31
31
31
30
30
29
29
29
29
30
30
31
31
32
32
31
30
30
29
29
30
31
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
33
33
34
34
35
35
36
36
37
37
38
39
39
40
40
40
40
40
40
40
44
47
49
52
53
54
57
57
59
59
60
61
63
63
62
61
59
58
57
56
56
56
56
56
55
55
55
55
55
55
55
55
57
57
59
59
61
62
63
64
66
67
68
69
71
72
73
75
76
77
80
80
80
79
79
78
78
77
77
75
73
72
71
71
71
71
71
71
71
71
71
72
73
74
75
76
77
78
79
79
80
82
82
83
84
86
86
87
88
89
90
90
91
92
93
94
95
95
95
95
95
95
95
94
94
94
94
94
95
96
97
99
100
101
103
104
106
107
108
108
108
108
109
109
109
110
111
111
111
112
113
114
115
116
116
116
117
117
118
118
118
117
117
116
116
115
114
114
113
113
112
112
111
111
111
112
112
113
114
115
115
115
115
115
115
115
115
115
115
115
115
115
115
116
116
117
117
118
118
118
118
118
118
117
117
117
117
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
115
115
115
115
115
115
115
114
114
114
114
114
114
114
115
117
118
119
119
120
121
121
121
120
119
119
118
118
117
117
117
116
116
115
115
114
114
114
114
113
113
113
113
114
114
114
115
115
116
117
117
118
118
118
119
119
120
120
121
121
122
123
124
124
125
125
126
126
127
127
128
129
129
129
129
128
128
127
127
127
126
125
125
125
125
127
129
131
132
134
136
139
141
146
148
150
152
153
156
158
160
161
162
162
160
159
158
157
157
155
155
154
153
154
156
159
163
164
167
169
171
172
174
173
172
171
170
170
169
169
168
169
172
173
175
176
177
179
183
185
186
187
187
186
186
185
185
185
184
183
183
183
184
186
187
188
189
191
192
193
196
197
198
199
200
200
201
201
202
202
202
203
203
204
204
205
207
208
210
211
213
214
215
216
216
214
214
213
212
212
213
214
215
216
217
220
221
223
224
225
226
227
228
234
238
239
241
243
244
245
247
248
250
251
249
249
248
247
246
245
244
242
241
241
239
239
239
240
240
243
244
244
245
246
247
248
249
250
251
252
253
254
255
255
257
258
259
259
257
255
253
251
249
248
246
244
242
241
240
241
241
243
243
245
246
249
250
251
252
252
254
255
256
257
258
259
261
261
259
258
257
256
255
254
253
253
254
255
257
258
260
261
262
263
265
267
267
267
267
267
267
267
267
267
265
264
264
263
262
261
260
259
259
260
262
265
267
271
273
274
277
278
278
278
277
277
277
277
276
276
275
275
275
274
274
274
277
279
281
284
286
289
291
291
291
291
291
291
291
291
290
290
290
290
289
289
289
288
288
288
288
290
295
297
300
301
302
304
305
307
308
309
309
309
309
309
308
308
308
307
307
307
309
310
311
313
314
317
320
322
324
326
326
327
327
328
328
329
330
331
332
333
333
333
334
335
336
336
336
337
338
338
339
339
339
340
340
340
341
341
342
342
342
341
340
339
338
337
336
335
333
333
331
330
330
330
330
331
341
347
358
362
361
360
360
358
357
356
355
355
353
348
346
345
343
341
340
341
343
345
346
349
351
353
355
357
358
361
362
360
359
355
352
349
351
353
356
358
360
361
357
355
349
346
347
348
350
351
351
350
349
348
348
347
347
347
347
347
347
348
349
352
353
355
356
357
358
358
359
362
363
364
366
367
367
369
369
369
368
368
368
368
368
367
367
367
367
367
367
367
367
367
367
367
367
368
368
368
368
368
368
368
368
368
365
358
356
352
352
354
357
360
360
360
360
358
350
347
336
332
332
332
331
326
319
315
306
305
312
315
314
312
310
306
298
295
290
288
289
290
292
294
295
297
288
283
280
280
276
274
272
269
265
260
256
251
245
242
240
237
235
233
230
229
229
228
227
225
224
223
224
225
226
219
215
205
198
195
193
192
192
192
189
186
179
176
171
171
170
170
169
168
168
167
167
167
165
162
160
158
154
152
149
149
149
150
150
151
151
151
151
151
151
151
151
150
150
149
148
148
149
153
155
156
158
159
160
160
160
160
160
159
159
158
157
156
156
154
154
153
152
151
150
149
148
148
144
142
137
135
132
127
122
117
114
112
108
105
102
101
101
99
97
95
94
93
93
93
93
93
93
94
95
95
95
93
88
87
85
84
84
85
85
86
87
87
88
88
88
88
88
87
87
86
85
85
85
85
85
85
85
85
84
84
83
83
83
83
83
83
82
82
82
82
82
82
82
82
83
84
84
85
85
85
84
83
81
81
78
77
77
76
74
72
70
69
67
65
64
63
63
62
61
61
61
61
62
63
65
67
69
70
70
70
70
65
63
59
57
54
52
46
38
35
35
41
44
48
49
45
44
40
37
34
33
33
32
31
29
25
18
16
15
14
14
13
12
11
11
10
10
9
9
8
7
6
6
6
5
5
5
5
5
4
4
4
4
4
4
3
3
3
3
3
3
2
2
2
2
2
2
3
3
4
4
5
6
7
7
7
7
7
7
7
6
5
4
2
2
2
2
2
3
3
3
3
3
3
2
2
1
0
0
0
0
1
1
1
2
3
4
6
7
10
12
15
17
17
17
17
16
16
16
16
17
17
18
19
24
27
30
31
31
31
31
30
28
26
24
21
21
23
26
27
29
30
31
32
28
22
19
14
12
10
9
9
9
9
9
9
8
8
7
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
6
5
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
5
5
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
4
4
5
5
6
6
7
11
15
21
27
29
28
27
26
25
25
24
23
22
19
18
15
12
11
8
7
5
5
3
3
3
4
4
5
5
5
5
5
5
5
5
5
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
3
4
4
5
6
6
6
6
7
7
7
7
7
8
8
8
9
9
9
10
10
11
11
11
11
10
10
9
6
6
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
6
5
4
3
3
3
4
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
2
2
1
1
1
1
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
5
6
7
8
8
8
9
9
9
10
11
11
11
11
11
11
11
11
11
10
9
9
9
8
7
7
7
6
6
6
6
6
6
6
6
7
8
9
10
11
12
15
16
18
19
19
17
15
13
12
10
9
9
7
7
6
6
6
7
7
7
7
7
7
7
7
7
6
6
6
6
6
6
6
6
6
6
6
5
5
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
4
4
4
4
4
4
5
5
5
5
5
5
5
5
4
4
3
3
2
2
2
2
2
2
2
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
6
6
7
8
9
10
11
13
15
17
21
24
25
25
25
25
26
28
29
31
33
33
33
33
32
32
31
30
29
27
26
27
28
30
32
34
36
37
38
34
26
21
20
20
20
22
26
29
31
30
28
25
23
23
23
22
22
20
19
18
16
14
12
11
7
6
6
6
6
5
5
5
5
5
5
5
5
5
4
4
4
4
4
4
4
5
5
5
6
6
7
8
10
13
17
20
20
19
19
19
19
20
21
22
22
21
20
19
19
20
21
22
23
23
24
25
26
25
22
19
16
16
17
19
20
21
23
25
27
29
29
28
27
26
24
20
17
14
12
9
6
5
5
5
5
4
4
4
4
4
4
4
4
4
4
6
6
8
8
11
13
16
16
15
15
14
13
10
9
7
6
5
5
5
5
5
5
5
6
7
7
7
8
8
8
8
9
9
9
9
10
10
10
10
10
11
11
11
11
11
9
8
7
7
7
7
7
7
9
10
11
11
11
10
10
9
8
8
8
7
7
7
7
8
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
8
8
8
8
8
8
9
9
9
9
9
9
8
8
7
6
6
6
6
6
6
7
7
7
7
6
6
6
6
6
6
6
6
6
5
5
5
5
5
6
6
7
8
10
11
12
12
12
12
12
11
11
11
11
11
11
11
13
14
14
14
14
14
14
13
13
13
13
13
13
12
12
12
12
12
13
14
14
14
14
14
14
13
12
12
12
12
12
12
12
13
14
14
15
15
15
15
15
15
15
15
15
15
15
16
16
17
18
18
17
16
15
14
14
13
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
13
13
13
13
13
13
13
14
14
14
14
14
14
14
14
14
14
14
14
14
14
13
13
13
13
13
13
13
13
12
12
12
11
11
11
10
9
9
9
9
9
9
9
9
9
9
9
9
9
9
10
11
12
13
14
15
16
17
17
18
18
19
19
19
19
20
20
20
20
20
20
20
20
17
16
15
13
11
9
7
6
6
6
6
5
5
5
5
4
4
4
4
4
6
7
9
12
12
14
14
15
15
12
11
9
7
7
7
7
8
8
8
8
8
8
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
7
7
8
10
13
15
18
18
16
15
12
12
12
12
12
13
13
14
14
14
17
18
20
22
22
22
22
21
21
21
21
21
23
28
30
31
28
21
18
19
20
23
25
26
29
30
31
29
28
27
25
24
23
22
23
24
27
28
23
19
16
14
14
14
14
15
16
17
24
28
36
41
52
57
64
68
66
59
44
40
41
44
44
43
43
41
38
33
33
46
53
62
62
61
62
65
67
59
44
34
25
22
19
18
18
19
19
21
24
26
29
32
35
36
36
35
34
34
33
32
32
33
34
35
38
38
41
43
46
47
51
53
56
54
50
48
42
39
35
33
28
25
23
22
21
20
20
21
23
24
26
26
28
30
32
32
32
32
32
32
32
32
32
32
32
32
35
35
35
36
36
36
37
38
38
39