0
0
0
1
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
22
22
22
22
22
24
26
26
28
30
31
31
33
35
38
43
48
54
64
69
85
85
85
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
87
87
88
89
89
89
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
91
91
92
92
92
92
93
93
93
94
94
94
95
95
96
97
98
98
98
98
98
98
99
99
100
100
101
101
102
102
103
104
104
104
104
105
105
105
106
106
106
107
107
107
107
108
108
108
108
108
108
109
109
109
109
110
110
110
110
112
113
113
113
113
113
113
114
116
117
119
124
129
132
132
133
133
136
138
142
145
150
150
153
153
153
157
157
159
159
159
160
160
161
163
175
180
192
204
211
211
211
211
211
211
211
211
211
211
211
211
211
211
211
211
211
211
211
211
211
211
212
213
213
213
213
214
215
215
215
215
215
215
215
215
216
217
217
217
217
218
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
220
221
221
221
221
221
221
221
221
221
221
221
221
221
224
229
233
238
243
247
247
251
255
259
260
261
262
263
263
263
264
264
264
264
265
266
267
267
268
269
269
269
269
269
270
271
271
272
273
274
274
275
275
276
277
277
278
279
280
281
281
281
282
285
285
287
288
288
290
294
299
302
305
308
308
311
314
317
322
327
337
349
354
366
366
366
367
368
369
369
369
369
369
369
369
369
369
370
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
372
372
373
374
375
376
377
377
378
379
380
381
382
383
383
384
385
386
386
386
386
386
387
387
388
388
388
388
389
389
389
390
390
390
391
391
392
393
394
394
394
394
394
394
395
395
396
396
397
398
399
399
400
401
402
402
403
404
405
406
407
407
408
409
410
410
411
412
413
413
413
413
413
414
414
414
414
415
415
415
416
421
424
427
427
430
433
438
443
446
451
454
459
464
467
472
475
480
485
488
493
496
501
506
509
514
517
522
527
530
530
534
538
542
545
555
567
579
589
599
611
611
611
611
611
611
611
611
611
611
611
611
611
611
611
611
611
612
613
613
613
614
615
616
616
616
617
618
619
619
619
619
619
619
619
620
621
622
622
622
623
623
624
624
624
624
625
626
626
626
627
627
628
628
628
628
629
630
631
631
631
631
631
631
631
632
632
632
633
633
634
638
643
647
652
657
662
662
667
672
677
678
679
680
681
