0
0
0
0
1
1
1
2
3
4
4
5
6
6
6
6
6
7
8
8
9
10
11
11
12
12
13
14
14
15
16
17
18
18
18
19
20
20
20
20
20
22
22
23
25
26
28
28
30
32
35
38
42
49
61
66
81
81
81
81
81
81
81
81
81
81
81
81
81
81
82
82
82
82
82
82
82
82
82
82
82
82
82
82
82
82
82
82
82
82
82
82
82
82
82
82
82
82
82
82
83
83
83
84
84
85
86
87
87
87
87
87
88
88
88
88
88
88
89
89
89
89
90
90
90
90
90
90
90
91
91
92
93
93
93
93
93
93
93
93
93
93
93
93
93
93
93
94
95
95
96
97
98
98
98
99
99
99
100
100
100
100
101
101
101
102
102
102
102
102
102
102
103
103
103
104
104
104
105
105
105
105
106
106
107
109
114
119
122
122
122
122
122
123
124
125
125
125
125
125
127
132
137
140
140
141
141
142
144
144
144
144
145
146
146
146
146
150
152
164
166
178
183
190
202
202
202
202
202
202
202
202
202
202
202
202
203
204
204
204
204
205
206
206
206
206
206
206
206
206
206
206
206
206
206
206
206
206
206
206
206
206
207
208
208
208
208
208
208
208
208
208
209
210
210
210
210
210
210
210
210
210
210
210
210
210
210
210
210
210
210
210
210
211
212
217
222
222
226
231
235
239
243
247
251
252
253
254
255
255
255
255
256
256
256
257
258
259
259
260
261
261
261
261
261
262
263
263
264
265
266
266
267
267
268
269
269
270
271
272
273
273
273
274
274
274
274
277
277
277
282
286
289
292
295
295
299
302
305
305
305
312
319
323
323
323
323
323
323
324
324
324
324
324
324
324
324
325
326
326
327
327
327
328
328
328
328
328
328
328
328
328
328
328
328
328
328
328
328
328
328
328
328
328
328
328
328
328
329
329
329
330
330
331
332
333
333
333
333
333
334
334
334
334
334
334
335
335
335
335
336
337
338
339
340
341
341
342
342
343
344
345
345
346
347
347
348
349
350
351
352
353
354
355
356
357
358
358
359
360
361
361
361
362
362
362
363
363
363
363
364
364
364
365
365
365
365
365
365
365
366
367
368
369
369
370
371
372
373
374
375
375
378
381
386
391
394
395
399
402
407
412
415
418
422
422
425
430
433
438
443
446
450
453
458
463
466
468
470
473
478
481
484
489
494
499
502
514
522
534
541
543
555
555
555
555
555
555
555
555
555
555
555
556
557
558
558
558
558
559
560
560
560
560
561
562
562
562
563
563
564
564
564
564
564
564
564
564
564
565
566
567
567
567
568
569
569
569
569
570
571
572
572
572
572
572
572
572
572
572
573
574
574
574
574
575
576
576
576
577
577
578
579
584
589
589
593
598
602
607
612
617
622
623
624
625
626
