0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
3
4
4
4
6
6
8
11
11
12
13
15
15
15
15
15
15
15
15
15
17
17
17
23
23
28
39
39
39
39
39
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
50
52
52
52
52
52
52
52
52
52
52
52
52
52
52
53
53
53
53
53
53
53
53
53
53
53
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
56
56
60
64
64
64
64
64
64
64
65
65
65
66
66
66
66
68
68
68
70
70
70
72
72
72
72
72
72
72
72
72
72
73
73
73
73
73
73
78
78
78
78
78
78
82
82
82
82
82
82
82
82
82
90
90
90
90
90
98
98
98
98
98
106
106
106
106
106
108
120
124
138
146
157
167
167
167
167
167
167
167
167
167
167
167
167
167
167
167
167
167
167
169
169
169
169
169
172
172
172
172
172
172
172
172
172
172
172
172
172
172
172
172
172
172
174
174
174
174
174
174
174
174
174
174
174
174
174
174
174
175
175
175
175
175
175
175
175
175
175
175
179
179
179
179
179
179
179
179
179
179
179
179
179
179
179
179
179
180
189
192
196
196
200
200
200
204
213
219
219
221
226
231
236
241
246
251
251
251
251
251
251
251
251
251
252
252
252
252
253
253
253
253
253
253
254
254
254
254
255
257
259
260
261
262
263
267
270
271
274
276
279
279
279
279
279
279
282
282
282
288
296
306
316
323
333
343
343
352
355
374
404
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
453
454
454
454
454
455
459
464
464
464
464
464
464
464
464
464
464
464
464
464
464
468
472
472
473
474
476
479
479
480
481
481
482
485
485
486
486
489
489
489
489
490
492
493
498
503
508
513
518
523
526
531
536
536
536
536
536
539
540
541
542
543
545
549
551
554
558
562
566
570
572
576
581
581
581
581
581
582
582
585
585
587
590
590
590
592
592
603
614
616
616
616
616
622
635
639
639
639
639
641
654
669
684
699
706
716
727
735
749
759
773
786
799
813
822
836
850
864
876
909
940
975
1008
1041
1072
1072
1072
1072
1072
1072
1072
1072
1072
1072
1072
1072
1075
1079
1079
1079
1079
1080
1085
1085
1085
1086
1089
1093
1093
1093
1094
1094
1096
1096
1096
1096
1096
1096
1096
1096
1096
1096
1096
1098
1102
1107
1107
1107
1108
1108
1108
1108
1108
1109
1110
1110
1110
1110
1110
1111
1112
1112
1112
1112
1112
1112
1112
1112
1112
1114
1119
1124
1124
1124
1124
1127
1129
1129
1129
1129
1129
1129
1129
1129
1129
1129
1129
1131
1134
1144
1153
1162
1171
1179
1182
1196
1209
1224
1239
1253
1268
1273
1278
1283
1288
1293
1298
