0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
2
5
8
12
15
18
21
24
24
27
31
35
40
51
60
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
76
76
77
77
77
77
77
77
77
77
78
79
79
79
79
79
79
79
79
79
80
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
82
82
82
83
83
84
85
85
86
86
87
87
89
93
93
93
94
94
97
97
101
104
109
114
114
114
114
117
120
122
123
126
126
130
139
145
158
164
179
181
191
191
191
192
192
192
192
192
192
192
193
193
193
193
193
193
194
194
194
195
195
195
195
195
195
195
195
195
195
195
195
195
195
196
196
196
196
196
196
196
196
196
196
197
197
198
198
199
200
200
201
201
201
201
201
201
202
202
202
202
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
204
205
205
205
205
205
205
205
209
213
218
218
220
223
227
232
232
236
238
242
247
251
255
255
260
264
265
265
266
267
267
267
268
269
269
270
271
272
272
273
273
274
275
275
275
275
275
275
275
275
275
275
275
275
275
276
276
276
276
276
276
276
277
280
283
287
290
292
296
299
301
301
305
308
312
322
329
338
338
338
338
338
338
338
338
338
339
339
339
339
339
340
340
340
340
341
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
343
343
343
343
343
343
343
343
344
344
345
345
346
347
347
348
349
349
350
351
352
352
352
352
352
352
352
352
353
354
354
354
354
354
354
354
354
354
355
356
356
356
356
357
357
357
357
357
357
357
358
358
360
361
362
363
365
368
371
374
377
377
381
383
387
390
391
394
397
401
406
411
415
420
425
429
429
429
432
436
440
443
445
450
454
457
461
468
480
494
507
511
518
518
518
519
519
519
519
519
519
519
520
520
520
520
520
520
521
521
521
522
522
522
522
522
523
523
523
523
523
523
523
523
523
524
524
524
524
524
524
524
525
525
525
526
526
527
527
528
529
529
530
530
530
530
530
530
531
531
531
532
533
534
534
534
535
535
536
537
537
538
539
540
541
542
542
543
544
545
545
545
545
545
545
545
546
547
547
547
547
548
549
549
549
549
549
549
550
550
550
550
550
551
552
552
552
552
552
553
554
559
563
568
568
570
575
579
584
584
589
594
599
604
609
614
614
619
624
625
625
626
627
627
627
628
629
629
630
631
632
632
633
633
634
635
