0
0
0
0
0
0
1
2
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
5
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
24
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
30
30
30
31
31
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
33
33
33
34
34
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
40
45
50
50
55
60
64
64
64
64
64
64
64
64
64
64
65
66
67
67
67
67
68
69
69
69
70
70
70
70
70
70
71
72
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
75
80
80
80
80
80
80
83
86
90
93
93
93
93
93
94
94
95
95
95
95
95
95
95
96
97
97
97
97
97
97
97
98
99
99
99
99
99
99
100
100
101
101
101
102
102
102
102
102
103
104
105
105
105
105
106
107
108
108
108
108
109
110
111
111
111
111
111
111
111
111
112
112
112
112
112
112
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
114
114
114
118
123
128
129
129
134
139
139
139
143
148
148
151
153
157
157
160
163
163
164
164
164
165
166
170
174
178
193
198
198
201
204
218
218
219
219
220
220
221
221
222
222
223
223
224
225
226
226
226
226
226
226
227
227
228
228
229
229
230
231
232
233
234
235
236
237
238
238
238
238
238
238
239
239
240
240
241
241
242
243
244
245
246
247
248
249
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
253
258
263
268
268
273
278
282
282
284
287
287
291
295
296
297
297
298
299
300
301
301
302
303
304
305
305
306
