0
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
4
6
7
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
12
12
12
12
12
12
12
12
12
12
12
12
12
13
14
14
14
14
14
15
15
16
16
16
16
16
16
16
17
17
17
17
17
17
18
18
18
18
18
18
18
19
21
21
21
23
26
26
28
30
30
30
32
32
33
34
34
35
36
36
37
38
38
39
40
41
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
43
43
43
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
46
46
46
47
47
47
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
49
49
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
52
52
52
52
52
53
53
53
53
55
55
55
55
55
55
55
55
57
57
57
57
57
57
57
57
59
59
63
67
69
73
73
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
79
79
79
79
80
80
81
81
81
81
81
81
81
82
83
83
84
84
85
86
86
87
87
87
87
87
87
87
88
89
89
90
90
91
92
92
92
92
92
92
92
95
98
99
101
103
106
106
109
112
114
116
118
120
121
122
122
123
124
124
125
126
126
127
128
129
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
132
132
132
133
133
133
133
133
133
133
138
138
141
141
144
144
144
145
146
146
147
147
147
147
147
147
147
147
147
148
148
148
148
148
148
148
148
148
149
149
149
150
150
151
151
151
152
152
152
153
153
153
153
153
153
153
153
153
153
153
153
153
153
153
153
154
154
155
155
155
156
156
156
156
156
156
157
157
157
157
157
157
158
158
158
158
158
158
159
159
159
159
159
159
159
159
159
159
159
159
159
159
160
160
160
162
165
168
170
170
173
174
174
176
176
179
179
182
182
185
185
188
188
190
190
193
193
193
193
193
193
193
194
197
197
202
208
214
219
222
225
226
227
227
227
228
229
229
230
231
231
232
233
233
234
235
236
236
237
237
238
238
239
239
240
240
241
241
241
241
241
241
242
242
243
244
245
246
247
247
248
248
249
249
250
250
251
251
251
251
251
252
253
253
254
255
256
257
257
258
258
259
259
260
260
260
261
262
262
263
263
264
265
265
266
266
267
268
268
271
274
277
280
283
286
288
291
294
297
300
303
306
307
308
308
309
310
310
311
312
313
314
315
