0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
6
9
9
9
12
15
15
21
24
27
30
33
33
33
33
33
33
33
33
33
33
33
33
33
34
34
34
34
34
34
34
34
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
36
36
36
36
36
36
37
38
38
38
38
39
39
39
39
39
39
40
41
41
41
41
41
41
42
42
42
42
42
43
43
43
43
43
43
44
44
44
44
44
44
44
44
44
44
44
44
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
49
53
53
58
59
62
63
66
70
74
77
79
83
87
90
90
90
90
90
95
100
104
107
110
112
115
115
115
115
115
116
117
120
123
126
132
139
139
146
149
150
157
157
158
159
160
160
160
161
162
163
163
163
163
163
164
164
165
165
165
165
165
166
166
166
166
166
166
166
166
167
167
167
168
169
170
170
170
170
170
170
171
172
172
172
172
172
173
174
175
175
175
175
175
175
176
176
176
177
178
179
179
179
179
179
179
180
181
181
181
181
181
181
181
181
181
181
181
181
181
181
181
181
181
181
181
182
182
183
184
185
185
185
186
186
186
187
188
188
188
189
189
189
189
189
189
189
189
189
189
189
189
189
189
189
189
193
196
198
201
203
207
212
214
217
221
221
221
224
227
229
233
233
236
238
238
239
239
240
241
241
241
241
242
243
243
244
244
244
245
246
247
247
248
248
248
248
248
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
250
250
251
255
258
258
258
261
264
264
267
270
274
277
280
280
280
280
281
281
281
281
281
281
281
281
281
282
282
282
282
282
282
282
282
283
283
283
283
283
283
283
283
283
283
283
284
285
285
285
285
286
286
286
286
286
286
287
288
288
288
288
289
289
289
289
289
289
290
291
291
291
291
291
291
292
292
292
292
292
292
292
292
292
292
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
297
300
301
306
308
310
311
311
311
313
315
315
315
317
319
319
319
319
319
324
329
333
336
339
341
344
344
345
345
345
346
347
350
353
356
363
365
368
376
379
380
385
385
386
387
388
388
388
389
390
391
391
391
392
392
393
393
394
394
394
394
394
395
395
395
395
395
395
395
395
396
396
396
397
398
399
399
399
400
400
400
401
402
402
402
402
402
403
404
405
405
405
405
405
405
406
406
406
407
408
409
409
409
409
409
409
410
411
411
411
411
411
411
411
411
411
411
411
411
411
411
411
411
411
411
411
412
412
413
414
415
415
415
416
416
416
417
418
418
418
419
419
419
419
419
419
419
419
419
419
419
419
419
419
419
419
423
428
429
432
434
438
443
446
448
450
453
455
455
458
461
465
466
469
471
471
472
472
473
474
474
475
475
476
477
477
478
479
479
480
481
482
482
483
483
483
