0
0
1
1
1
1
1
1
2
2
2
3
4
5
6
6
6
7
8
8
9
12
12
17
18
20
24
28
32
36
40
40
44
53
63
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
74
74
74
74
74
78
78
78
78
79
81
81
83
83
83
85
87
87
90
95
100
100
114
128
133
135
146
146
146
146
146
146
146
147
147
148
148
148
148
148
148
148
148
148
148
148
148
148
148
148
148
148
148
148
148
148
148
149
149
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
150
151
151
151
151
151
152
153
154
155
155
155
155
155
155
155
155
155
155
155
155
155
160
160
160
161
163
163
163
166
170
174
179
183
187
187
188
189
189
189
190
191
191
192
193
193
194
194
194
194
194
194
195
195
195
196
197
198
199
199
199
200
201
201
202
205
209
214
216
219
224
229
234
238
242
250
257
267
277
289
289
289
289
289
289
289
289
289
289
289
289
289
290
291
292
292
292
292
292
292
292
292
292
292
292
292
292
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
293
294
294
294
295
295
295
296
297
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
299
300
301
302
302
302
302
302
302
302
302
302
303
304
305
305
305
305
305
305
306
306
306
306
306
309
313
318
323
328
333
333
335
335
337
341
343
348
348
348
352
353
355
360
365
370
380
394
407
419
427
438
438
438
438
438
438
438
439
439
440
440
440
440
440
440
440
440
440
440
440
440
440
440
440
441
441
441
441
441
441
441
442
442
443
443
443
443
443
443
443
443
443
443
443
443
443
443
443
444
444
444
444
444
444
444
445
446
446
447
447
447
448
449
450
451
452
453
453
453
453
453
454
455
455
455
455
455
456
456
461
466
471
474
479
484
489
493
498
503
508
513
518
518
519
520
520
520
521
522
522
523
524
