0
1
1
1
1
2
2
2
3
4
5
6
7
8
9
9
9
10
11
12
13
13
13
17
19
23
23
23
24
27
32
32
34
38
42
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
48
48
48
49
49
49
49
50
50
50
50
50
51
51
51
51
51
51
51
51
51
52
53
53
53
53
53
53
53
53
53
53
53
54
55
55
55
56
56
56
56
56
56
56
56
56
56
56
57
57
57
57
58
59
60
60
60
60
60
60
60
60
60
60
60
61
62
63
64
64
65
66
67
67
67
67
67
67
67
67
70
70
70
70
70
70
75
76
78
78
82
82
83
85
87
88
89
93
98
99
102
107
111
117
130
136
138
144
152
152
152
152
152
152
152
152
152
152
152
152
152
152
152
152
152
152
152
152
152
152
152
152
153
153
154
154
155
155
156
156
157
158
158
158
158
158
158
158
159
159
160
160
160
161
162
162
162
163
164
164
164
165
166
166
166
167
167
167
167
167
167
167
167
167
167
168
169
169
169
169
169
169
169
169
170
171
172
172
172
172
172
173
174
178
181
183
188
193
198
203
208
208
210
214
215
218
223
223
224
224
225
226
226
227
228
229
230
231
232
233
234
234
234
234
234
235
235
235
236
237
238
239
240
241
242
242
242
243
244
245
246
246
248
252
254
259
259
261
262
266
271
271
278
287
292
292
292
292
292
292
292
292
292
292
292
292
292
292
293
294
294
295
295
296
296
297
298
298
298
298
299
299
299
300
300
301
302
302
302
302
303
304
304
305
305
306
307
307
307
308
308
308
308
308
309
310
310
311
312
313
314
314
314
314
314
314
314
314
315
316
317
318
319
320
320
321
322
323
323
323
323
323
323
323
324
325
326
327
328
329
330
331
332
333
334
335
335
335
335
335
335
336
336
340
340
340
340
340
340
345
345
350
354
358
358
362
367
369
369
372
377
380
384
389
394
399
407
421
421
421
421
432
432
432
432
432
432
432
432
432
432
433
433
433
434
434
434
434
434
434
434
435
435
435
435
436
436
437
437
438
438
439
439
440
441
441
441
441
441
441
441
442
442
443
443
443
444
445
445
445
446
447
447
447
448
449
449
450
450
450
451
451
451
451
452
453
454
454
455
456
457
457
457
457
458
459
459
459
460
461
461
461
462
463
464
465
470
474
479
484
489
494
499
504
504
505
508
508
510
514
514
515
515
516
517
517
518
519
520
521
522
523
524
525
