0
1
2
3
4
5
5
5
6
7
8
8
8
8
9
10
10
10
10
10
10
10
10
10
10
11
11
11
12
13
13
16
20
21
22
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
27
27
27
27
27
27
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
31
32
33
36
38
42
47
50
53
57
61
63
67
72
73
74
74
75
75
75
75
76
76
76
79
84
85
86
98
106
110
111
112
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
117
117
118
118
119
120
121
122
122
122
123
123
124
125
126
127
128
128
129
130
131
132
132
133
134
135
136
137
137
138
139
139
140
140
141
142
143
144
145
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
146
151
154
159
164
169
171
175
180
181
182
186
186
187
189
190
191
192
192
193
194
194
195
196
197
198
199
199
200
201
202
203
204
205
205
205
206
207
208
208
208
208
209
210
210
210
210
210
210
215
220
221
222
227
227
227
227
227
227
232
237
238
239
244
244
244
245
246
247
248
248
249
249
249
250
251
251
251
251
252
252
252
253
254
254
254
254
255
256
257
257
258
258
258
258
259
259
259
259
260
261
262
262
263
263
263
263
264
264
264
264
265
265
265
265
266
266
266
267
267
268
269
270
271
272
272
273
274
275
276
276
276
276
277
278
278
278
278
278
278
278
278
278
278
278
278
278
278
278
278
278
279
280
280
285
290
294
295
296
300
305
310
315
318
323
328
332
334
338
342
343
344
344
345
345
345
345
346
346
346
349
353
354
355
367
375
380
381
382
387
388
389
390
391
392
393
394
395
395
395
395
395
395
395
396
397
398
399
400
401
402
403
403
404
405
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
421
422
423
423
424
425
426
427
428
429
430
431
431
431
431
431
431
431
431
431
431
431
431
431
431
431
431
431
431
431
431
431
431
431
431
431
431
431
431
431
431
431
436
439
444
449
454
456
460
465
466
467
471
471
472
473
474
475
476
476
477
478
479
480
481
482
483
484
484
485
