0
1
2
3
3
3
3
3
3
3
3
3
3
4
4
4
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
8
8
8
9
9
10
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
12
13
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
15
15
15
15
15
15
15
15
15
15
15
16
16
16
16
16
16
16
16
16
16
16
16
16
18
18
18
18
18
20
21
21
23
25
25
25
29
29
29
29
32
36
38
38
38
38
38
38
38
38
38
38
39
41
43
43
43
43
43
43
43
43
43
43
43
43
43
44
45
45
45
45
45
45
45
45
46
47
48
49
49
49
50
50
50
50
50
51
51
51
51
51
52
53
54
55
55
56
56
57
58
59
59
59
59
59
59
59
59
59
59
59
59
60
60
60
60
60
61
62
62
62
63
64
64
64
64
64
64
65
65
65
65
65
65
65
65
65
65
65
65
65
67
68
69
69
72
73
73
74
76
78
80
80
80
80
81
81
81
82
82
82
83
84
84
84
85
86
87
87
87
88
89
89
89
89
89
89
89
89
90
91
92
93
94
95
96
96
96
96
98
99
101
102
103
103
103
104
105
105
105
105
105
105
105
106
107
108
109
110
110
110
110
110
110
110
110
110
110
110
111
111
112
113
114
114
114
115
115
115
116
117
118
119
120
120
121
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
123
124
124
124
125
125
125
125
125
125
126
126
126
127
128
128
129
130
131
131
131
131
131
131
131
132
133
134
134
135
135
135
135
135
135
135
135
135
135
135
138
140
142
142
142
145
145
148
149
149
151
153
153
153
157
157
157
158
161
165
168
168
168
168
168
168
168
168
168
168
169
171
173
173
173
173
174
175
176
176
177
178
179
180
181
181
182
182
183
184
184
184
184
184
185
186
187
188
188
188
189
189
189
189
189
190
190
190
190
190
191
192
193
194
195
196
197
198
199
200
200
200
200
200
200
200
200
201
202
203
204
205
206
206
206
206
207
208
208
208
209
210
210
210
210
210
210
211
211
211
211
211
211
211
211
211
211
211
211
211
214
215
216
216
219
220
221
225
228
230
233
233
233
233
234
235
235
236
236
236
237
238
238
238
239
240
241
241
