0
0
1
1
1
2
2
2
2
2
2
2
2
3
4
4
4
5
6
6
7
10
10
14
16
16
17
20
20
20
25
26
26
29
33
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
36
36
36
36
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
38
38
38
38
38
38
38
38
38
39
39
39
39
39
39
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
41
41
41
41
41
41
41
41
41
41
41
41
42
42
42
43
44
45
45
45
45
45
45
45
48
48
48
50
50
55
59
60
60
64
69
69
69
70
72
73
73
74
78
80
88
94
99
100
105
105
105
105
105
105
105
105
105
105
106
106
106
106
106
106
106
106
106
106
106
107
107
107
107
107
108
108
108
108
109
109
109
109
109
109
109
109
109
109
110
111
111
111
112
112
113
113
114
114
115
116
117
117
117
117
118
118
118
118
119
120
120
120
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
122
122
122
122
122
122
124
125
127
129
133
138
141
145
150
153
157
158
160
161
162
163
163
163
164
165
166
167
168
169
169
170
171
172
172
172
172
172
173
173
173
173
173
173
173
173
174
175
175
175
176
177
177
178
181
181
185
187
189
190
193
193
195
200
203
208
214
218
221
222
223
223
223
223
223
223
224
225
226
226
226
227
228
228
228
228
228
228
228
229
229
229
229
230
230
230
230
230
230
230
230
231
232
233
234
235
236
236
237
237
237
237
237
237
238
238
239
239
239
239
239
239
239
240
240
240
240
240
241
242
242
242
242
242
243
244
244
244
245
246
246
246
246
246
247
248
249
249
249
249
249
250
250
250
250
250
251
251
252
252
252
256
260
262
265
265
265
265
265
265
270
270
270
274
276
281
286
287
289
294
299
299
302
305
307
307
307
311
313
317
330
340
347
349
352
352
352
352
352
352
352
352
352
352
353
353
353
353
353
353
353
353
353
353
353
354
354
354
354
354
355
355
355
355
356
357
357
357
357
357
357
357
357
357
358
359
359
359
360
360
361
361
362
362
363
363
364
364
364
364
365
365
365
366
367
368
368
369
370
370
370
371
371
372
372
372
372
373
373
373
373
374
375
376
376
376
376
377
377
380
383
386
389
394
399
404
409
414
417
421
423
427
429
430
431
431
431
432
433
434
435
436
437
437
438
439
440
