187
186
186
184
183
181
180
179
177
174
172
171
169
166
164
162
159
159
155
152
151
149
147
146
144
144
144
141
141
142
141
142
140
140
139
140
141
140
141
141
141
140
139
137
138
138
138
139
138
139
136
131
128
126
125
123
123
122
119
118
116
116
117
117
118
119
121
124
126
127
128
129
129
130
131
134
134
136
136
136
138
142
144
147
147
149
150
151
153
155
157
157
160
163
165
166
169
171
173
174
177
178
180
182
181
183
183
182
183
185
185
187
187
190
189
190
189
190
190
190
190
191
192
194
195
195
195
195
197
197
198
200
200
199
200
203
203
204
204
206
207
207
208
208
207
207
206
206
206
204
204
203
202
204
203
202
204
204
205
206
207
207
208
210
211
212
210
209
208
208
209
207
207
206
205
204
204
203
203
204
202
202
201
203
203
203
204
204
204
205
206
206
206
205
205
208
208
206
207
207
205
206
206
204
204
202
203
202
200
200
199
200
200
199
198
200
203
205
207
208
208
210
210
211
212
214
216
218
219
221
223
226
229
231
229
234
192
183
176
163
157
148
165
175
172
159
183
183
181
184
175
180
175
176
166
142
160
171
178
183
180
186
183
179
182
179
179
181
176
172
163
145
140
143
147
159
171
175
175
175
172
170
171
173
173
174
174
172
178
183
180
181
181
181
180
175
171
170
176
186
185
185
183
182
182
180
178
179
174
173
171
168
164
163
162
160
160
155
152
150
150
147
148
147
145
145
141
140
142
141
140
140
140
140
141
140
140
139
139
139
141
139
138
138
138
138
136
137
137
136
132
127
125
124
123
122
122
119
118
117
115
116
117
118
121
123
124
128
128
128
127
128
131
130
132
136
138
137
137
140
142
143
145
146
147
150
153
153
157
157
159
162
163
166
167
169
171
172
174
177
178
178
180
180
183
182
181
181
184
185
186
187
188
189
189
189
188
190
190
190
191
191
193
195
195
195
195
196
197
198
199
201
199
200
202
202
203
204
207
206
207
207
208
207
207
206
208
207
207
207
206
206
205
203
205
205
203
204
206
208
208
209
209
209
210
209
209
208
208
208
207
207
207
207
204
203
203
203
203
202
202
202
204
203
203
204
205
204
205
207
206
206
204
206
209
208
208
208
207
206
207
206
206
204
203
203
203
201
200
202
201
200
200
201
203
204
205
207
208
208
209
211
212
214
215
216
218
219
223
224
226
230
229
231
214
170
171
149
158
162
172
180
182
182
167
179
187
179
176
174
172
175
172
163
151
157
171
179
180
183
184
178
177
174
174
176
179
174
171
151
147
144
137
130
140
158
169
173
175
173
174
173
173
172
176
175
172
172
175
177
180
180
178
177
174
172
169
172
187
185
184
185
182
181
180
179
180
177
174
170
167
165
164
161
161
160
155
152
151
152
149
148
147
147
145
142
141
141
139
139
140
140
139
139
139
139
139
140
138
139
140
139
138
139
137
137
136
135
136
129
127
125
124
124
122
121
119
115
116
115
116
118
119
122
124
124
127
127
125
127
129
131
133
135
135
138
138
139
142
143
146
147
147
148
150
154
154
157
159
162
163
162
166
167
169
171
174
175
177
178
177
179
180
181
179
181
182
184
184
186
187
186
189
189
189
189
189
188
190
191
191
193
194
194
194
197
196
196
198
197
199
200
201
203
205
206
206
207
206
208
209
208
206
208
207
208
207
206
207
207
206
206
205
205
206
205
204
204
207
209
209
207
207
209
209
209
209
209
209
209
208
208
207
205
205
203
202
203
203
204
203
203
203
202
203
205
206
205
206
206
206
205
207
209
208
208
208
209
208
208
207
207
205
204
204
204
204
204
203
203
201
200
203
206
206
206
209
209
208
210
211
211
214
217
218
221
222
223
225
226
231
233
231
194
143
156
180
191
183
185
183
181
184
178
184
185
178
175
183
167
173
166
164
170
164
167
177
180
183
184
177
173
172
173
175
175
172
167
145
157
163
160
165
166
158
157
162
166
169
175
174
170
172
174
172
170
171
172
173
174
175
175
173
170
168
165
165
187
185
185
185
185
182
180
179
179
176
173
170
168
164
163
162
160
159
156
154
153
149
149
147
147
147
145
142
141
139
138
139
138
139
139
139
140
140
141
139
137
138
139
140
138
138
138
136
135
134
134
129
127
125
123
122
122
120
118
117
117
115
115
118
121
123
122
123
126
126
128
128
130
130
131
134
136
136
137
140
140
142
144
145
148
150
152
155
156
157
158
159
161
164
167
167
170
172
174
175
177
177
178
178
180
179
180
180
181
182
183
185
185
185
188
188
188
188
188
188
189
190
190
192
192
195
194
195
196
197
199
199
200
200
201
203
203
203
205
209
207
208
208
208
207
209
208
208
208
207
208
208
207
208
207
205
205
205
204
205
207
208
209
208
208
209
210
210
210
210
211
210
208
207
205
204
204
204
204
202
203
203
203
202
204
203
204
205
207
206
205
206
206
205
207
208
209
209
209
208
207
208
209
207
206
204
204
205
206
205
205
203
201
201
204
206
206
207
209
209
209
211
213
213
214
217
218
221
223
225
228
229
230
239
198
167
153
188
209
200
192
186
184
184
190
183
178
177
176
172
163
161
169
170
174
179
174
166
169
178
178
179
177
174
172
172
174
174
174
159
144
163
167
167
169
173
180
175
166
162
162
165
169
169
169
170
169
169
171
170
170
170
170
170
167
164
161
157
157
187
186
186
183
182
182
181
179
178
176
172
170
168
164
162
162
160
159
157
155
154
150
150
149
147
148
147
142
140
139
138
138
137
137
137
137
137
139
138
137
138
138
138
137
138
138
136
134
135
133
131
130
129
126
125
122
121
121
120
119
118
115
115
118
121
123
122
124
123
125
127
129
130
132
133
134
135
136
138
139
141
143
146
148
151
150
153
153
155
156
159
161
165
164
166
168
169
171
176
177
176
176
176
178
180
180
179
178
180
181
183
185
184
185
186
186
187
187
188
189
190
191
191
192
193
194
193
194
196
198
198
200
201
201
201
203
202
204
206
208
207
208
207
208
208
208
208
208
208
207
206
207
207
208
208
208
206
205
204
206
207
207
208
209
209
207
209
210
209
209
210
209
208
207
205
204
204
204
203
202
203
202
204
203
204
205
204
205
206
207
206
207
209
207
206
207
208
209
206
207
207
207
208
208
207
206
204
202
202
202
202
201
201
202
204
203
205
207
209
208
210
212
213
214
215
217
219
220
223
226
227
229
232
210
160
161
181
193
188
193
196
194
188
181
183
181
168
171
168
167
172
174
181
179
182
184
181
178
175
176
176
180
180
176
174
175
178
175
169
159
159
167
167
169
172
177
180
177
179
177
173
167
164
166
165
167
169
170
171
170
168
167
167
162
160
158
158
158
160
185
185
185
183
182
181
180
179
178
176
171
169
167
165
164
162
161
159
157
156
155
153
149
148
146
146
145
141
139
138
138
138
136
136
137
136
136
136
137
137
137
137
138
137
137
137
135
134
133
131
129
128
128
126
122
122
121
119
120
119
118
115
113
116
118
121
121
122
124
125
127
127
128
130
132
134
135
136
139
141
141
144
144
148
150
152
153
154
155
158
160
161
164
167
169
170
170
171
174
176
176
177
177
178
179
179
179
178
180
180
181
182
184
184
184
184
186
187
187
188
189
190
192
192
192
193
192
194
196
197
197
199
201
200
201
202
204
205
206
207
208
208
208
208
207
208
208
208
208
208
207
208
208
207
208
208
207
207
205
205
206
208
208
209
209
208
208
209
208
208
209
208
209
208
206
204
204
204
203
202
203
202
203
203
204
205
205
206
207
207
208
208
208
207
207
208
208
207
208
209
207
206
207
208
209
206
206
203
202
202
202
202
202
202
203
203
205
207
208
208
210
211
212
214
214
217
219
220
225
227
228
228
232
171
176
178
186
178
190
188
179
201
201
189
182
180
166
171
174
177
186
186
184
182
187
180
183
183
181
180
181
183
181
175
174
174
171
172
166
154
164
165
167
175
169
172
176
178
178
179
178
181
178
173
169
169
169
170
169
167
164
162
158
155
154
154
156
162
160
186
186
185
183
183
181
180
178
178
174
171
169
167
165
165
163
161
161
159
157
155
155
151
148
146
146
145
141
140
139
138
137
136
135
134
135
136
136
138
137
136
138
138
139
138
136
135
134
134
132
130
128
126
126
121
120
120
120
119
117
118
116
114
116
119
121
120
122
124
124
127
127
127
129
131
134
136
137
139
140
139
142
145
147
150
152
153
155
155
158
161
162
165
167
169
171
170
173
175
177
176
177
177
178
179
178
179
178
179
182
180
181
183
184
185
184
185
186
186
188
188
190
191
192
192
192
192
194
195
197
198
200
200
200
202
202
205
207
208
208
209
208
207
209
208
208
208
208
209
210
208
209
210
209
209
208
208
207
207
206
208
206
208
209
209
209
210
209
208
208
209
209
209
208
206
204
204
203
203
203
204
203
204
203
203
204
206
206
207
207
208
208
209
208
209
208
208
208
209
208
206
208
207
208
209
207
204
202
202
202
203
203
203
202
204
205
207
208
209
208
211
211
212
214
216
217
218
220
222
226
228
234
195
156
190
172
185
182
191
176
187
207
187
166
163
159
172
185
189
193
186
187
188
180
185
183
189
186
184
183
182
186
176
174
171
169
167
161
161
159
170
170
173
176
171
174
175
175
175
175
178
178
179
177
176
172
171
170
169
167
162
156
153
152
153
153
154
166
182
186
185
184
185
183
182
181
180
175
171
170
169
166
165
165
165
162
161
159
158
158
156
152
148
145
143
141
141
139
139
139
136
135
135
135
135
135
135
136
135
134
136
137
137
137
135
134
132
131
131
129
127
125
122
121
119
121
120
119
120
118
116
114
117
120
121
120
121
124
123
125
127
128
130
132
134
137
139
140
142
142
145
148
147
150
152
153
154
157
160
161
163
164
167
169
172
172
175
174
176
176
177
176
177
177
177
178
178
179
179
180
182
183
183
183
184
185
185
186
188
189
190
191
190
192
193
195
194
195
198
196
199
199
199
202
202
205
206
207
207
208
207
207
209
209
207
209
208
208
209
208
208
209
210
210
209
210
209
207
207
207
207
208
209
210
209
209
209
209
209
209
209
209
208
206
206
204
203
203
203
202
201
201
202
203
205
206
207
208
207
208
207
208
209
208
208
209
208
209
209
208
208
207
207
206
205
204
203
203
202
203
202
203
205
206
206
206
208
209
209
211
212
213
215
217
217
218
221
224
224
228
224
163
163
181
165
186
184
181
182
203
212
183
155
157
171
178
187
193
196
192
188
191
186
185
187
191
189
186
185
178
177
180
177
172
168
166
156
162
173
171
169
178
175
172
173
177
176
176
174
172
173
174
175
175
172
171
171
168
165
162
159
157
159
161
158
160
160
161
186
186
185
184
183
183
180
177
175
171
169
168
166
166
164
164
162
159
159
158
158
155
153
149
146
142
140
140
138
137
138
137
135
134
135
135
134
135
136
135
135
136
137
137
137
135
135
132
131
130
127
126
126
124
120
120
120
119
120
117
116
116
115
118
119
119
120
122
123
125
126
128
128
130
132
134
138
139
140
141
143
146
149
148
151
152
155
156
158
159
161
164
164
166
169
173
175
176
175
176
177
176
175
177
176
178
179
179
180
179
180
180
181
183
183
184
184
186
187
188
189
190
191
191
192
193
195
195
195
197
196
199
198
199
203
205
207
206
206
207
208
208
208
209
209
208
209
208
210
210
209
208
209
210
210
209
208
210
209
208
207
208
208
208
209
208
209
209
208
209
208
209
209
209
207
205
205
203
202
203
204
201
202
203
203
204
206
206
207
207
208
208
208
210
209
209
209
208
209
210
209
208
208
206
206
205
205
204
203
203
204
204
204
205
208
208
208
209
209
210
212
212
213
214
216
217
220
222
225
222
232
202
163
157
163
173
173
177
198
209
214
212
175
162
163
171
180
183
189
198
201
191
191
193
194
191
189
191
190
187
182
175
172
166
172
171
166
171
173
174
175
178
175
172
173
174
175
171
171
172
170
170
171
171
172
171
169
169
167
164
163
160
159
163
163
160
159
160
159
187
185
184
183
183
182
180
177
173
172
171
170
168
166
166
163
162
160
160
158
155
154
155
151
146
142
141
140
139
138
137
135
136
134
134
133
134
135
135
135
135
135
136
137
136
135
135
132
132
131
128
126
127
124
121
118
121
120
118
117
117
117
117
118
117
118
120
123
122
124
125
127
128
131
132
136
138
140
142
141
143
146
149
151
152
152
155
155
157
159
161
164
165
168
169
173
174
175
176
176
177
175
176
177
177
178
178
180
178
180
179
181
180
184
182
183
185
187
188
188
189
191
191
191
191
194
195
195
196
197
197
197
200
201
204
204
206
206
207
208
209
209
208
209
209
208
209
210
209
208
208
207
209
209
210
210
210
210
209
208
209
208
208
208
208
208
210
210
209
209
209
210
210
210
208
205
204
205
205
204
203
202
203
203
203
206
208
208
209
209
208
208
208
208
209
211
210
209
210
210
208
209
209
207
206
206
205
203
205
205
204
205
206
206
208
208
209
209
209
210
211
212
212
214
215
217
217
221
222
224
230
196
168
155
160
175
182
210
211
211
219
208
166
160
164
169
178
187
184
196
191
197
194
198
196
192
192
188
188
187
185
178
173
172
181
175
173
176
182
182
176
177
177
179
176
171
173
173
172
171
170
170
169
170
169
170
170
169
168
163
158
153
155
153
153
158
158
156
156
187
186
185
184
182
181
179
175
173
171
169
168
169
166
164
163
163
162
159
157
157
155
154
151
148
144
143
141
138
137
137
135
134
132
133
133
133
134
134
135
134
133
135
134
135
135
133
131
131
129
128
127
125
124
119
119
120
120
119
117
115
116
117
118
118
118
121
120
122
123
124
127
129
132
134
136
137
139
141
141
143
146
149
151
152
153
154
155
156
160
162
164
166
167
169
172
172
173
175
176
175
176
177
177
177
177
178
178
179
179
180
180
179
180
181
182
185
186
186
187
190
190
191
191
192
193
194
196
195
196
197
198
200
202
205
205
206
207
207
208
208
208
209
208
209
208
209
210
209
208
209
209
208
209
210
210
211
209
208
209
210
208
208
209
209
210
210
210
210
209
209
209
209
209
208
208
207
206
205
204
202
203
204
204
206
207
207
208
209
209
209
209
209
209
210
210
209
209
210
209
210
210
208
208
206
205
205
205
205
205
206
205
207
208
208
208
210
211
210
211
212
212
213
214
214
217
218
219
221
227
232
190
159
153
170
191
199
210
206
210
219
206
160
165
171
174
183
190
183
188
194
194
192
200
191
183
190
186
187
183
179
171
172
179
184
198
183
180
186
184
181
177
172
176
174
173
172
174
172
171
171
170
170
171
171
169
170
170
166
162
153
152
149
150
148
149
151
151
153
187
186
186
184
182
181
179
175
172
170
170
168
168
167
165
164
163
162
160
158
156
154
154
152
149
147
143
140
138
136
137
135
134
131
132
133
133
134
135
134
133
133
134
134
136
136
132
131
131
129
128
127
126
123
119
119
118
119
118
116
116
115
116
117
117
117
119
119
120
122
124
126
131
132
133
137
140
140
141
142
145
146
148
150
152
153
154
156
157
161
162
164
165
168
170
171
173
173
174
175
175
175
178
176
177
178
178
177
178
178
179
180
179
180
182
182
183
185
186
188
188
189
193
193
193
193
194
196
196
198
198
199
200
202
204
204
205
207
208
209
209
208
209
209
209
210
210
209
210
210
209
209
209
209
209
209
210
209
209
210
211
210
210
210
210
210
210
210
210
211
210
210
211
209
209
209
208
206
204
205
203
204
205
206
207
207
208
208
207
209
209
209
209
210
210
210
210
210
210
209
210
209
209
208
207
206
206
205
206
205
206
206
207
208
210
210
211
212
212
212
213
213
212
214
215
216
218
220
221
227
234
188
157
177
192
199
208
211
203
212
213
207
167
172
173
178
185
189
188
176
194
191
191
195
180
174
186
183
177
172
169
164
161
187
192
200
200
189
193
188
181
182
185
183
179
177
179
181
176
173
172
173
172
172
173
173
167
163
162
157
150
148
144
146
149
150
149
150
149
188
187
186
184
183
181
179
174
173
171
169
169
167
166
165
163
161
161
161
159
157
154
154
154
150
147
144
142
139
138
136
135
133
133
133
134
134
135
135
132
134
134
133
134
135
135
133
132
131
129
128
126
126
122
120
118
117
118
116
116
115
114
115
116
118
118
118
119
121
123
124
124
130
133
135
137
138
139
142
143
146
146
148
150
151
153
155
156
159
161
163
164
166
167
169
172
173
174
175
175
177
177
177
176
177
176
176
177
177
177
179
179
181
182
182
182
182
185
187
188
188
190
192
193
193
193
193
196
196
198
199
201
203
204
205
206
206
207
208
209
209
210
209
210
209
208
210
208
210
211
210
210
210
210
210
211
212
211
211
211
211
211
211
210
210
210
210
210
211
211
211
211
211
209
209
209
209
208
206
206
205
204
206
207
208
208
207
209
209
209
209
211
211
211
211
210
210
210
210
209
208
209
207
207
208
206
206
205
206
206
207
207
208
208
211
210
211
212
212
212
213
213
214
214
215
217
220
221
225
224
237
189
158
202
196
200
212
199
200
212
208
207
181
170
178
179
193
171
204
169
188
191
195
190
186
170
171
172
161
149
153
150
169
173
189
199
198
198
187
189
189
185
183
185
186
186
186
185
182
177
177
177
180
178
179
178
169
164
164
152
139
144
152
153
153
156
151
151
149
189
186
184
184
183
180
177
173
174
172
171
169
168
167
165
164
163
161
160
160
160
156
155
153
150
148
145
143
140
138
135
134
133
132
133
134
134
133
133
131
133
134
133
134
133
134
132
131
129
129
128
126
125
122
120
119
118
118
116
116
115
114
114
115
117
117
118
120
121
121
124
127
129
133
136
137
140
142
143
144
145
146
148
149
150
152
155
156
159
160
164
165
167
169
170
173
174
174
175
175
177
176
176
177
178
177
177
177
177
178
179
179
181
181
181
182
182
184
189
188
188
189
190
192
194
193
194
196
198
199
201
203
204
204
205
206
207
207
209
209
208
210
209
209
209
209
209
209
210
209
210
211
210
210
211
211
212
210
210
211
212
212
211
210
210
209
211
211
211
211
211
210
210
209
209
209
209
208
207
206
204
204
206
207
208
207
209
209
210
211
211
212
211
211
211
211
211
211
210
209
209
209
208
207
208
206
205
206
206
207
208
208
208
208
211
210
211
212
212
212
213
214
216
215
215
218
220
221
225
224
228
173
172
200
197
195
203
193
203
204
208
207
202
174
175
180
192
169
209
171
185
188
195
193
187
170
166
171
165
154
155
156
168
179
187
185
186
192
190
190
188
189
184
184
183
183
184
188
180
178
177
175
175
164
163
158
154
152
146
136
132
145
157
157
156
156
152
155
154
188
186
183
183
182
179
176
175
173
170
169
170
169
168
166
165
163
163
162
159
159
157
156
153
152
148
146
144
142
139
135
135
134
131
132
132
134
133
133
133
133
134
134
134
133
133
131
129
129
130
128
127
126
124
122
120
119
118
118
115
116
115
115
115
117
116
117
121
122
123
124
126
130
132
136
136
138
143
143
145
145
146
149
150
152
152
153
156
157
160
163
166
167
169
172
171
174
174
177
176
176
175
177
177
177
178
177
176
177
178
179
178
179
180
181
182
184
185
187
188
190
190
190
191
194
194
195
195
198
199
202
204
204
205
206
207
208
209
210
209
209
208
208
208
209
211
210
210
209
209
211
212
210
211
211
212
213
211
211
210
212
213
213
213
212
211
212
211
211
211
211
210
210
209
210
211
211
208
208
207
205
205
206
207
208
208
208
209
211
211
210
212
212
212
212
211
212
212
211
210
210
211
210
208
208
207
206
207
206
207
207
208
209
209
211
212
212
212
213
212
214
215
215
216
217
220
221
222
223
225
209
166
175
191
191
185
197
184
203
200
209
209
206
184
170
176
180
174
183
189
175
189
193
194
184
178
172
172
166
160
158
161
164
181
185
180
184
184
181
181
185
187
184
181
175
173
174
176
178
177
171
173
172
162
155
148
143
135
132
133
147
159
159
156
157
156
154
154
154
188
187
185
183
181
179
175
173
172
171
170
171
168
168
166
166
164
164
162
161
159
156
155
154
153
151
148
144
142
140
137
137
135
134
134
133
133
133
133
133
132
134
132
132
130
131
130
128
129
129
127
127
126
123
122
120
121
118
116
114
113
115
116
115
115
117
118
120
120
121
123
126
128
133
136
138
139
141
142
143
145
146
146
149
151
152
156
157
158
160
163
164
167
169
169
172
174
175
176
176
177
176
177
177
176
176
177
176
177
178
179
180
181
181
181
182
185
187
187
187
189
191
192
193
193
194
194
196
199
201
203
205
205
207
207
208
208
209
209
209
208
209
209
209
208
210
210
209
210
210
210
211
211
211
212
212
214
213
213
213
213
214
213
212
212
211
212
211
211
211
210
210
210
210
209
209
210
208
208
208
207
206
207
207
209
209
210
210
210
212
211
212
212
213
213
212
211
211
212
211
210
210
209
207
208
208
207
207
208
209
209
209
209
211
211
213
213
213
213
212
213
213
214
216
218
220
220
220
222
223
201
171
179
183
182
176
194
189
197
199
203
210
194
200
178
177
178
189
179
200
170
179
187
191
187
186
182
177
170
168
164
170
169
168
184
186
181
182
184
179
185
184
179
176
178
179
179
178
179
182
177
172
159
147
148
146
136
137
141
146
163
162
158
157
158
155
156
153
152
188
187
185
182
180
179
176
175
172
173
171
170
168
168
166
166
164
165
162
161
159
157
156
155
154
153
152
146
143
142
137
137
135
135
133
133
133
133
133
133
132
132
133
132
129
129
129
128
129
129
127
126
127
125
125
122
120
119
118
116
115
116
115
115
117
119
119
120
122
122
123
126
131
135
136
138
139
139
140
143
144
144
145
149
151
152
155
157
158
161
163
166
166
169
171
173
174
177
176
176
177
177
177
178
177
177
176
176
177
178
179
180
180
181
181
183
185
187
188
188
188
191
190
193
193
194
195
197
199
202
204
204
205
206
207
208
208
209
210
210
210
209
209
209
209
211
210
210
210
210
209
211
211
212
212
212
214
212
213
212
212
214
214
213
213
212
211
210
211
211
211
212
211
210
209
208
209
208
209
209
207
207
208
209
210
210
210
210
211
212
212
212
213
213
213
213
213
213
213
215
213
212
211
209
208
209
210
209
209
209
210
210
210
210
211
212
214
213
215
216
214
216
217
217
218
219
222
220
222
227
196
172
173
173
176
174
200
196
218
200
206
209
187
203
183
170
181
180
179
196
192
176
179
174
187
185
191
199
188
183
179
173
176
178
171
172
190
188
183
184
182
180
179
179
176
178
180
174
172
164
167
157
152
156
156
151
148
150
144
154
156
159
160
158
157
154
155
149
148
188
186
184
181
180
178
176
174
172
174
172
170
169
167
166
167
165
164
163
162
159
158
157
155
154
153
152
148
145
143
138
137
135
135
134
134
133
135
134
133
133
132
133
132
129
129
128
128
129
128
127
127
126
125
124
121
119
119
117
116
117
114
115
115
118
118
119
119
121
123
124
126
131
134
136
138
139
139
140
142
142
144
145
148
151
152
154
157
157
160
163
166
168
170
170
174
175
177
176
177
177
177
177
177
178
177
176
177
177
178
178
179
179
180
181
183
185
185
186
188
189
191
191
191
193
194
197
197
200
202
204
205
205
207
208
210
208
208
208
210
210
209
209
209
211
210
210
209
210
211
211
211
212
213
213
213
214
213
212
214
213
214
214
214
214
213
211
211
211
211
211
211
211
211
210
210
209
209
209
209
208
208
208
209
211
211
212
210
210
211
211
212
214
212
212
212
213
212
214
215
213
214
212
210
208
208
208
210
210
209
208
210
212
211
212
214
215
213
214
214
215
215
216
218
219
217
219
220
223
228
203
174
172
169
168
182
199
194
209
211
215
206
193
198
188
168
185
176
186
179
190
180
178
168
173
177
172
183
190
196
195
192
179
186
180
169
160
170
182
180
183
185
189
181
179
176
175
170
167
158
152
153
153
165
161
156
150
144
152
161
158
156
156
159
160
156
150
142
125
187
186
184
183
179
177
174
174
174
172
170
172
168
167
166
166
166
165
162
163
160
161
159
156
156
154
154
152
148
145
140
138
138
136
135
134
134
136
135
135
134
134
134
132
129
129
129
129
131
131
128
126
127
125
124
121
121
120
119
119
118
117
117
117
118
119
120
121
122
123
124
128
132
135
136
138
138
139
140
142
142
146
147
147
150
151
154
155
159
160
162
164
167
169
170
173
174
176
177
178
177
177
178
177
176
176
177
176
177
177
179
179
180
180
182
183
184
185
187
188
190
191
192
194
195
197
197
200
202
204
205
207
208
208
207
208
209
209
210
209
208
209
209
210
209
209
211
210
211
211
212
213
212
213
214
214
214
215
215
214
213
214
214
214
214
214
212
212
211
212
212
211
210
209
207
208
208
209
210
208
209
209
210
210
211
211
212
211
211
212
212
213
215
214
213
213
213
212
213
213
213
213
211
211
210
210
210
210
210
210
210
212
213
212
213
214
213
217
217
216
216
217
218
220
221
221
223
222
223
225
214
177
163
160
172
188
189
202
207
217
212
213
204
190
197
173
178
185
186
180
174
171
165
161
171
187
190
172
173
183
195
200
202
190
186
190
179
160
152
154
164
174
172
176
168
178
172
166
161
157
160
165
165
162
159
153
154
156
162
165
166
163
161
158
154
141
132
120
98
185
186
183
182
178
176
175
174
174
172
171
172
169
169
166
166
164
164
161
162
163
162
160
159
157
156
157
152
149
145
140
140
139
137
137
136
136
136
136
136
135
135
133
132
129
128
131
132
132
132
128
127
126
125
124
120
121
119
118
119
117
117
117
118
119
119
120
121
123
124
125
128
134
136
136
138
139
140
139
142
141
144
148
148
150
150
154
153
157
160
163
166
166
168
170
172
174
175
178
177
176
177
175
176
177
177
176
175
177
178
180
180
180
180
183
184
184
186
188
189
191
191
192
193
194
195
199
199
203
205
206
207
208
208
210
207
208
208
210
209
208
209
210
210
211
210
211
210
211
210
210
211
212
214
213
213
213
214
214
213
213
213
214
216
216
215
213
213
212
212
211
209
208
208
209
208
210
209
210
210
209
209
211
212
211
211
210
212
213
213
214
214
216
216
215
215
215
215
213
214
214
213
212
213
211
212
212
208
211
216
219
219
219
215
216
221
223
225
224
223
224
226
226
228
229
230
231
230
229
234
217
172
167
173
176
197
202
206
211
215
217
206
206
186
184
184
175
185
179
180
170
175
176
167
172
176
178
177
178
177
171
178
185
184
187
187
183
185
169
151
151
168
162
142
156
173
174
172
169
165
162
165
164
161
157
155
161
169
160
162
162
138
114
110
93
90
83
83
85
188
186
184
181
178
175
174
173
173
172
172
171
169
168
168
167
165
164
163
162
162
161
161
160
159
158
157
153
152
150
144
142
139
138
138
138
138
137
136
136
135
135
135
134
131
130
132
133
132
132
129
128
126
125
124
123
121
122
120
121
119
117
116
117
120
119
121
123
124
125
126
129
134
137
137
139
138
139
141
142
143
145
147
149
149
151
153
154
156
159
161
164
167
169
171
170
175
175
176
177
176
177
177
178
177
177
177
177
178
177
178
180
180
182
184
184
187
185
187
190
190
191
193
193
194
198
200
201
204
206
206
207
208
208
208
209
210
210
210
210
209
210
211
212
211
210
211
211
212
211
211
211
212
213
213
214
214
215
215
215
214
215
216
215
216
216
215
213
212
212
212
210
208
207
209
210
211
209
209
211
210
211
212
211
211
213
213
214
214
215
215
214
215
217
216
215
215
217
215
214
215
217
218
219
220
220
218
217
218
219
221
220
219
222
217
218
218
222
222
222
220
216
215
215
215
215
217
220
216
208
216
185
183
183
191
205
206
207
211
216
208
200
198
184
176
178
171
169
170
177
174
175
174
173
176
182
185
184
177
171
174
178
174
180
169
170
171
167
171
168
167
167
175
173
168
157
165
167
163
162
162
165
164
157
158
168
160
154
135
119
101
90
79
85
80
81
79
82
86
188
188
184
181
177
177
175
174
172
172
171
170
170
168
168
167
166
165
164
165
163
162
162
161
161
159
158
157
156
153
146
145
143
141
139
138
138
136
137
137
137
135
135
134
132
131
133
134
131
130
130
128
128
126
127
126
125
123
123
123
122
120
120
119
121
120
121
124
125
127
130
134
134
136
138
139
140
141
141
142
142
144
146
148
147
151
152
153
156
160
160
165
166
167
170
172
174
174
174
176
176
176
176
175
176
174
176
178
178
177
178
181
181
181
182
184
186
185
187
189
190
192
192
194
194
198
201
203
204
206
209
210
209
210
209
211
210
210
211
211
211
212
212
212
211
211
212
212
213
211
213
212
212
213
215
215
215
215
215
216
215
215
214
216
218
217
217
215
212
213
212
211
208
208
209
210
209
209
208
208
210
210
209
212
214
216
221
220
219
222
222
222
223
224
222
221
220
220
221
219
218
221
218
218
214
213
210
207
201
195
197
205
196
191
192
192
192
198
202
199
206
206
203
205
203
196
191
187
181
173
203
196
190
185
204
199
200
202
210
213
209
197
190
183
177
172
169
166
157
168
175
173
173
172
177
181
181
182
184
174
179
175
172
170
175
168
158
148
156
165
160
166
162
162
153
154
169
161
163
161
164
161
160
156
144
134
124
120
101
81
75
78
80
75
77
77
80
80
79
188
186
183
180
177
177
175
173
173
171
171
171
170
170
168
168
167
166
165
166
165
164
162
161
161
160
159
159
157
156
148
147
145
143
142
141
140
139
138
137
137
135
134
133
134
133
133
132
131
131
130
129
128
127
127
126
126
125
124
124
124
122
121
121
121
122
122
124
126
128
132
134
136
138
138
141
141
140
140
142
142
145
145
146
148
150
151
153
155
158
159
164
166
167
168
170
173
173
174
176
175
175
175
177
176
176
178
178
177
178
178
181
182
181
183
184
187
187
189
190
189
192
193
194
196
198
202
203
205
208
210
211
209
208
209
211
210
211
212
211
211
213
212
213
211
211
211
212
213
212
213
212
213
213
216
216
216
216
216
219
216
215
216
219
219
218
217
217
214
213
211
211
209
211
212
210
211
211
212
212
215
216
215
218
222
225
223
224
224
224
224
220
218
215
212
211
210
214
214
207
203
205
201
202
206
209
205
205
200
195
194
193
189
188
189
191
198
201
206
201
192
193
186
186
175
168
169
175
184
183
198
189
183
173
193
192
200
205
208
204
202
191
178
178
176
175
183
167
143
159
168
171
171
175
177
181
185
184
182
178
178
181
179
175
173
163
156
157
153
160
161
164
164
155
142
106
72
89
109
124
127
121
113
113
104
90
83
82
76
70
73
72
79
74
73
73
77
77
78
188
187
183
181
176
176
174
174
173
173
172
171
168
169
168
169
167
167
167
166
166
166
165
163
161
162
162
161
161
158
153
151
146
144
144
143
141
141
139
139
138
137
137
134
133
133
133
132
131
130
130
130
129
128
128
127
128
128
127
126
126
122
122
122
124
123
124
126
126
128
131
135
138
138
140
140
141
141
142
143
144
144
145
146
148
149
151
152
154
159
159
161
164
165
167
169
173
173
174
176
175
174
176
177
176
176
176
176
176
179
178
179
181
182
183
183
186
187
189
190
190
192
192
195
198
200
201
202
205
208
210
211
209
208
210
210
210
212
212
212
212
211
213
213
212
212
213
213
212
216
216
215
216
215
217
218
216
217
217
215
218
218
219
217
217
219
220
218
218
214
214
213
210
211
211
211
216
219
223
225
221
221
224
220
220
229
231
232
224
210
208
207
206
205
204
202
202
204
206
207
208
210
212
206
201
192
187
185
181
179
179
182
184
181
182
186
189
193
194
192
188
185
181
177
180
179
182
187
190
191
194
182
169
173
177
186
205
206
206
204
201
191
179
177
175
175
183
179
147
149
169
171
171
174
175
176
181
182
180
179
169
165
171
162
155
158
149
150
157
158
158
159
156
158
148
114
87
74
74
70
73
69
67
64
73
76
71
71
74
71
71
69
79
76
71
71
73
71
71
188
187
185
181
177
176
175
176
175
174
173
171
171
169
169
169
169
168
168
167
167
167
167
165
164
164
163
162
163
160
156
153
150
147
145
145
143
142
140
137
138
138
138
135
135
135
131
133
131
130
131
129
129
129
129
129
129
128
128
128
126
124
124
125
125
126
125
127
128
129
134
137
138
140
140
140
142
141
141
145
146
146
148
149
149
150
152
153
154
156
159
161
162
165
167
168
171
173
172
174
174
174
175
176
177
176
177
176
177
179
179
180
182
184
184
186
187
188
189
190
191
192
193
197
201
203
205
206
206
207
210
212
210
208
209
210
211
212
211
213
213
212
213
214
213
214
214
214
213
214
215
216
218
217
216
217
220
218
215
215
218
219
219
217
216
217
218
221
223
225
227
226
222
222
225
224
217
216
217
222
226
228
233
231
230
225
220
219
214
214
214
212
210
210
209
208
208
208
205
205
204
204
204
202
195
191
184
175
173
175
178
179
180
182
181
181
181
182
185
187
192
198
205
201
199
199
193
190
193
181
180
183
179
184
180
191
207
205
208
201
201
186
179
183
179
180
185
191
174
142
162
173
176
174
171
173
173
173
178
178
161
145
146
151
143
140
138
160
165
163
159
156
151
144
142
137
113
91
69
64
70
71
73
68
60
62
72
69
68
72
70
69
73
72
70
72
74
71
68
187
186
184
182
179
177
176
176
176
174
172
172
172
170
171
170
170
170
170
169
168
170
169
168
168
167
167
166
165
164
160
157
153
150
147
147
144
141
140
140
138
138
136
136
135
135
134
132
132
131
131
131
131
131
131
132
131
130
130
129
127
126
126
126
127
127
127
130
130
132
136
138
139
142
142
142
143
143
145
145
147
147
148
149
151
153
152
154
154
156
158
160
163
164
166
168
171
171
172
173
173
174
175
176
177
177
177
176
177
177
178
180
182
182
184
185
186
187
188
189
190
194
197
198
201
204
206
208
208
210
211
209
209
209
210
212
212
212
212
212
213
212
213
214
213
216
214
214
216
214
215
219
220
217
220
218
215
218
222
225
222
219
222
230
232
233
233
235
234
229
230
234
232
234
228
220
223
230
232
231
231
231
223
217
217
214
216
217
216
216
215
214
215
217
218
217
210
207
205
208
207
207
205
199
192
187
181
179
180
178
173
176
181
183
183
185
188
185
188
191
189
197
210
213
207
204
202
194
191
182
184
196
183
190
185
195
211
203
200
202
200
190
185
186
186
188
188
190
189
166
149
169
172
171
170
167
167
169
168
164
152
150
137
144
162
153
152
153
154
163
163
162
154
146
139
132
107
82
79
62
62
63
65
70
67
57
56
62
60
66
69
73
73
72
70
71
73
71
71
188
186
184
182
181
179
178
175
176
174
171
173
172
173
172
171
171
171
172
171
172
173
172
171
170
171
170
168
168
166
164
162
155
150
147
146
145
143
141
140
138
138
136
135
135
135
134
133
134
134
133
133
133
132
132
133
132
132
132
129
129
128
127
127
128
128
129
130
132
133
139
139
142
142
143
143
144
143
146
147
146
148
149
150
151
154
153
156
156
156
157
160
162
163
164
166
169
172
171
172
174
175
174
175
177
176
177
176
177
179
179
181
183
183
184
185
187
188
188
191
193
195
199
200
203
205
207
208
211
210
210
211
208
210
210
211
214
214
211
212
216
214
215
217
213
214
216
217
218
223
220
216
214
217
224
220
219
224
223
224
228
235
240
239
235
232
228
224
225
227
224
223
224
225
222
222
224
228
229
232
227
218
216
214
212
210
212
214
214
212
213
214
215
217
217
210
204
205
207
207
208
207
205
203
197
190
182
180
179
182
186
187
189
190
191
191
191
190
190
191
189
187
188
188
195
208
208
205
204
191
183
207
194
186
191
192
209
207
197
199
199
193
196
192
183
187
189
186
189
174
149
165
169
173
174
166
161
162
160
158
147
151
154
141
149
158
160
163
162
165
164
160
153
148
143
138
115
67
79
80
71
58
54
61
62
64
64
65
58
59
70
71
67
67
69
72
73
69
75
188
185
184
182
182
179
178
176
175
174
173
173
173
174
173
173
173
173
173
173
173
174
174
173
173
173
172
171
170
168
164
163
157
151
148
148
145
143
143
140
138
138
137
136
136
136
136
135
136
135
135
135
135
133
133
133
133
132
132
131
131
130
130
130
131
130
131
131
132
134
139
141
142
142
143
145
143
145
146
146
148
146
149
150
152
152
153
153
155
157
160
159
162
164
164
165
168
171
172
172
171
173
173
174
176
175
178
177
178
180
180
181
183
184
184
185
186
188
188
190
194
197
199
201
203
204
205
208
211
211
209
210
212
213
213
213
216
216
216
215
219
214
216
219
219
217
217
217
217
218
216
220
222
211
208
213
219
223
230
233
236
237
239
231
229
233
231
227
222
217
210
210
211
212
212
211
211
210
210
213
215
219
219
216
213
211
210
210
211
213
212
211
212
213
212
208
205
207
210
209
211
210
205
199
200
198
192
190
186
189
191
190
190
189
189
189
189
188
188
188
188
183
182
182
187
199
204
205
199
189
181
205
202
190
188
194
200
200
204
200
198
193
188
194
177
182
182
183
181
168
159
158
170
170
166
167
159
157
157
153
155
139
155
160
140
145
158
161
155
161
167
162
153
148
141
130
112
84
72
68
75
74
59
57
63
63
68
68
68
70
73
70
68
65
67
72
72
82
85
188
186
183
182
180
179
180
177
176
176
173
173
174
176
174
175
175
174
175
175
176
175
176
175
176
176
176
173
172
167
164
163
156
150
151
149
146
144
143
142
139
138
136
136
136
137
136
136
136
135
135
135
135
134
134
133
133
131
131
131
132
131
130
130
131
132
133
132
133
137
141
143
144
145
144
146
144
145
145
146
146
147
149
151
151
151
154
155
157
157
158
161
161
162
164
165
170
169
170
171
171
172
173
175
175
177
178
177
180
180
181
181
183
183
183
185
186
187
189
192
194
197
200
201
205
208
208
210
210
209
212
212
213
213
212
217
215
218
223
221
222
222
218
215
215
220
221
219
223
221
217
214
202
208
217
218
219
218
221
219
214
210
216
223
228
231
222
209
195
188
188
196
201
203
202
201
199
197
197
201
202
203
207
210
211
214
216
217
216
215
211
210
208
204
203
204
206
207
205
206
205
205
202
198
193
188
184
186
189
189
187
190
191
191
190
190
190
188
186
185
184
182
180
179
186
198
204
204
201
203
200
202
218
204
184
186
208
202
206
199
198
193
189
189
180
174
172
171
174
166
167
160
154
157
163
158
159
156
149
146
141
144
146
167
159
150
147
154
154
153
156
156
155
149
150
140
110
91
75
68
69
69
74
74
73
68
62
67
74
77
76
76
74
77
82
98
98
96
98
187
185
183
182
180
178
179
177
177
176
174
175
176
177
177
178
177
176
176
178
179
177
177
177
177
176
174
172
173
168
166
162
157
154
151
148
146
144
143
143
141
139
137
137
137
137
137
136
137
136
135
135
136
135
136
134
134
135
132
133
131
130
132
131
131
131
132
133
136
139
142
143
145
147
146
146
146
147
146
146
147
149
149
151
151
152
153
153
156
158
158
160
161
162
164
165
167
166
168
171
172
174
173
175
174
177
177
177
178
180
182
181
183
183
184
185
187
188
192
193
196
199
200
204
207
209
207
209
210
211
212
217
221
216
223
219
218
231
232
230
228
219
220
219
215
220
219
211
209
207
212
211
213
214
215
212
206
204
207
212
207
205
209
212
209
205
198
189
182
184
191
197
202
206
202
196
197
195
197
200
199
199
203
207
209
212
215
215
210
205
202
201
201
201
200
195
192
192
194
193
194
195
194
193
184
181
186
183
180
183
188
191
190
188
183
181
181
181
181
181
180
177
176
175
182
189
193
199
197
189
183
188
217
198
187
183
203
218
206
200
199
190
185
186
180
167
167
166
168
166
169
164
159
149
153
156
158
158
144
143
141
148
148
159
166
162
147
147
151
153
154
151
143
138
143
142
147
123
89
74
62
62
64
77
74
76
75
74
85
81
76
84
86
93
101
116
123
138
152
189
186
184
184
181
180
179
178
178
178
178
177
178
178
179
179
179
179
180
179
180
180
179
178
176
175
174
173
172
170
169
166
160
155
151
149
148
145
143
144
142
139
137
137
136
137
136
136
136
137
137
137
137
136
137
137
136
133
134
132
131
130
131
132
131
131
132
134
137
140
144
143
146
148
150
148
149
149
149
148
149
151
150
151
151
153
152
155
156
157
158
159
161
162
163
165
166
167
168
169
171
172
173
175
177
176
177
178
178
181
181
181
182
182
185
186
188
191
196
198
200
202
204
206
204
206
211
210
209
215
221
220
211
224
225
215
228
226
221
220
220
226
221
215
214
219
216
216
221
218
219
214
214
214
208
208
204
205
206
205
200
200
203
202
196
193
191
189
193
196
200
201
199
197
194
194
197
198
200
203
204
201
203
207
208
209
208
205
202
199
198
200
198
195
194
190
189
188
188
187
192
194
189
182
181
184
184
181
185
189
189
188
187
186
181
181
182
180
174
166
164
164
166
168
171
176
181
183
185
186
182
176
195
191
191
191
190
210
206
203
202
193
183
181
176
172
170
169
165
164
167
164
164
156
146
154
159
151
150
142
146
149
166
163
153
168
167
149
148
154
154
152
145
144
130
122
129
130
123
108
83
79
82
73
98
114
111
101
109
109
131
113
115
108
107
120
122
134
139
189
185
183
183
181
181
180
178
178
177
177
179
179
179
181
180
181
180
181
180
181
180
179
177
175
174
174
170
169
169
168
166
162
158
153
150
149
148
146
144
145
140
139
138
138
138
137
137
138
137
138
137
137
137
136
137
136
133
133
133
130
129
132
133
131
132
133
135
137
139
143
144
146
149
149
148
149
149
149
148
150
151
150
152
150
152
152
155
155
158
159
159
160
162
163
164
166
168
168
170
171
172
174
174
175
175
177
178
178
180
181
180
183
183
185
186
188
194
197
199
200
201
203
204
205
209
212
218
219
217
220
222
219
220
214
215
220
216
216
220
217
218
220
217
220
219
219
219
220
217
220
211
216
214
205
207
208
206
202
196
195
199
200
193
190
192
190
194
200
198
198
197
195
192
194
198
200
201
202
200
199
196
193
191
193
193
198
201
201
198
194
196
194
188
189
191
191
190
190
191
192
193
190
188
188
183
183
188
188
188
188
183
184
186
182
182
182
177
165
157
166
171
169
167
168
173
180
178
178
184
188
184
185
195
193
201
204
194
205
201
202
191
180
180
174
169
169
168
163
163
163
164
163
153
148
148
162
155
157
154
150
158
160
173
173
169
164
168
166
165
164
163
157
158
127
89
94
94
93
95
82
73
75
67
90
126
147
133
125
125
166
157
99
93
97
91
81
79
91
189
185
184
184
183
181
181
179
179
180
181
181
181
181
182
182
182
181
182
182
180
180
181
177
176
175
172
169
169
168
165
164
162
161
157
155
151
150
150
147
146
143
142
140
138
138
137
138
139
138
139
138
138
138
138
137
137
136
135
135
133
132
133
131
133
134
133
135
137
139
143
146
149
151
150
149
149
150
150
150
151
152
153
153
152
153
153
154
156
158
159
158
159
161
164
166
166
168
170
170
169
172
174
176
175
175
176
177
177
179
178
181
182
183
186
187
188
193
199
200
200
206
204
214
217
222
228
232
225
221
220
220
217
215
218
222
222
220
218
218
216
217
218
218
220
222
221
217
212
214
217
212
214
210
203
205
207
202
195
195
194
193
195
194
193
191
191
193
198
198
192
191
197
202
201
202
203
205
197
186
190
195
199
197
196
197
200
200
199
197
194
193
194
195
191
191
192
195
194
194
191
190
192
192
189
188
191
193
191
189
189
184
181
181
176
177
179
172
176
187
187
180
176
176
179
183
184
180
176
168
163
156
157
187
198
213
208
199
194
201
195
183
180
177
176
169
169
168
165
165
165
165
161
153
147
155
167
174
172
171
173
177
170
170
162
158
156
153
155
157
162
164
166
153
145
102
93
89
84
78
73
70
68
64
80
119
134
128
85
130
149
192
148
96
78
74
74
59
57
188
186
183
185
181
182
181
180
182
181
182
183
182
182
183
184
183
183
183
182
181
181
181
178
177
176
174
172
172
170
167
164
163
163
160
158
155
151
152
150
148
148
146
142
141
140
139
140
138
141
141
139
138
139
139
137
138
139
136
135
135
134
133
131
133
134
135
136
138
140
142
146
149
150
150
150
152
153
153
153
152
153
154
153
154
154
155
155
156
158
158
160
162
161
163
164
166
167
168
170
170
172
173
173
175
174
176
175
177
179
179
179
181
181
186
189
192
196
200
197
198
209
212
227
236
235
227
225
223
221
222
221
224
226
225
225
224
222
221
218
218
219
219
217
216
216
214
212
211
211
211
212
211
207
206
205
201
195
192
189
190
191
191
189
187
186
197
203
196
193
195
200
200
198
201
205
199
193
192
195
199
198
194
191
193
195
192
192
192
194
195
192
194
198
194
192
192
193
192
189
191
189
189
190
191
191
191
192
191
190
189
183
179
180
178
180
183
187
184
179
175
181
184
186
183
181
177
171
165
158
153
148
143
169
192
225
204
198
198
202
194
178
176
167
170
169
170
170
168
165
165
161
155
150
143
154
169
173
176
186
177
185
178
179
178
158
150
153
165
165
167
167
166
137
119
95
94
87
84
80
77
74
67
67
75
97
97
131
87
112
128
166
160
162
114
68
62
54
53
191
187
184
184
184
183
184
183
183
183
182
184
184
184
186
185
184
185
182
181
181
179
180
180
178
177
177
174
174
172
170
169
166
165
164
163
159
155
156
154
152
149
147
145
142
141
141
140
141
141
142
140
141
140
139
139
138
140
138
136
137
135
133
133
134
133
133
136
139
142
144
147
150
149
149
151
153
154
155
156
154
153
154
155
156
154
154
155
155
158
159
160
161
162
165
165
166
168
169
171
172
172
174
175
176
175
176
176
176
178
180
180
183
185
188
190
193
199
202
209
212
223
234
232
223
226
233
230
220
219
225
228
233
234
230
228
226
223
222
221
220
220
219
213
211
208
207
209
211
207
207
206
206
203
202
203
201
195
189
183
186
189
187
186
188
194
197
192
189
197
202
202
204
205
203
197
194
197
198
196
191
190
190
193
200
199
195
193
194
197
196
194
194
195
192
192
191
190
187
185
186
190
194
194
191
192
193
191
189
186
182
176
175
177
176
180
180
170
169
174
184
183
182
182
184
185
181
177
173
166
160
154
150
167
198
226
207
206
200
201
188
173
179
172
169
168
170
170
166
161
156
153
148
150
145
151
162
176
179
181
176
179
184
178
162
160
158
159
168
163
159
167
167
164
137
106
93
83
79
77
75
72
69
68
67
69
68
114
97
116
84
138
137
162
168
112
91
80
63
191
189
186
185
183
184
186
184
185
186
185
186
187
186
185
186
183
184
183
181
182
182
182
180
180
181
179
178
175
174
173
172
169
167
169
166
162
160
157
155
153
153
150
148
144
143
143
142
142
144
144
144
143
143
141
141
141
139
139
138
137
136
135
135
134
133
134
136
140
142
146
149
150
150
152
153
153
156
157
157
156
154
155
157
156
155
156
158
158
159
160
159
161
163
163
166
167
168
169
171
172
174
174
174
174
175
176
176
179
181
183
183
187
189
194
199
199
201
211
224
230
235
226
226
223
228
234
226
220
224
235
237
234
233
231
229
225
223
222
221
219
218
214
207
205
204
205
205
203
202
202
199
201
202
201
199
195
191
188
187
188
185
184
188
192
194
187
187
197
202
202
201
199
195
193
194
196
198
199
194
193
198
199
200
201
201
198
195
194
197
197
198
195
189
191
191
189
186
186
187
188
191
191
192
192
192
191
190
190
188
186
181
178
177
174
175
176
177
185
189
181
180
182
185
184
182
181
178
175
174
173
169
162
158
189
223
211
200
198
206
197
178
172
168
170
172
164
163
159
155
148
146
150
141
149
168
169
175
176
177
179
184
183
183
168
159
162
162
164
164
166
164
163
162
154
122
79
76
77
77
75
74
71
66
64
68
73
90
98
88
57
104
133
133
160
143
146
117
105
189
188
186
186
184
185
187
186
185
185
185
186
186
186
187
187
185
186
184
182
183
182
183
181
181
182
180
178
175
177
177
176
173
169
170
168
165
162
159
156
155
155
152
150
147
147
144
145
145
146
144
145
145
146
143
142
140
142
140
140
139
139
136
134
134
135
135
137
140
142
146
149
150
153
152
153
153
155
157
157
158
157
156
157
158
156
156
158
158
160
160
160
161
162
163
165
167
166
168
169
172
172
172
172
176
177
176
179
181
180
178
195
207
212
212
212
223
227
230
230
231
230
228
230
231
231
230
228
231
235
239
236
234
233
229
228
225
222
220
222
217
216
212
202
208
207
209
206
202
201
197
199
202
201
198
191
187
186
188
187
187
185
184
186
191
193
193
197
201
200
202
198
193
194
200
204
202
200
200
199
200
202
201
198
197
196
198
197
196
200
201
199
195
190
188
187
184
182
184
188
191
189
186
188
188
187
188
190
192
191
186
180
179
178
180
179
178
181
182
181
178
181
181
183
182
183
181
177
176
172
165
160
155
156
177
216
223
213
204
215
219
190
175
169
167
167
169
157
163
150
140
131
145
154
158
171
170
173
173
176
178
180
179
182
179
166
163
163
164
166
166
165
162
159
158
151
129
79
72
76
73
72
70
67
69
72
83
91
83
70
56
69
122
123
158
144
132
121
80
190
188
186
186
186
186
187
185
187
185
187
187
186
186
188
187
187
186
186
186
185
184
184
183
182
183
181
177
178
179
178
178
176
173
171
171
168
165
161
159
158
157
154
152
150
150
148
147
147
148
146
146
147
147
146
146
145
143
142
142
141
139
137
137
135
136
137
137
140
142
146
150
152
152
151
152
155
156
157
158
157
156
158
157
158
157
158
159
159
160
160
161
161
163
165
165
166
167
169
170
171
171
174
176
176
175
178
179
182
192
213
232
227
228
228
227
229
227
228
231
232
232
231
232
235
235
235
236
239
239
240
234
233
232
230
224
220
222
221
220
220
218
217
208
211
207
210
211
204
200
200
199
202
199
196
189
189
189
189
188
186
185
186
188
190
195
203
205
201
197
198
192
192
207
211
208
204
201
202
204
206
204
201
200
199
198
194
195
199
198
196
196
194
189
183
182
181
181
184
189
187
185
186
189
189
189
189
190
189
187
184
182
180
181
184
187
185
179
178
179
179
180
183
179
180
179
173
170
167
164
164
159
158
152
160
202
220
214
219
220
227
201
173
173
161
160
171
142
162
148
127
126
135
155
161
167
169
170
175
174
175
181
178
188
172
169
164
166
165
161
161
163
163
158
152
126
112
97
85
69
72
76
75
76
78
80
88
86
76
65
59
66
93
102
134
166
122
145
77
188
188
187
186
186
188
188
189
189
189
190
189
189
189
188
189
188
188
188
186
185
186
186
185
184
183
184
180
179
180
179
179
178
176
174
174
171
168
165
162
161
159
156
155
154
152
150
149
147
147
148
146
147
146
147
147
147
145
145
143
143
142
138
137
136
136
136
137
141
143
147
149
152
153
153
154
156
156
156
156
157
156
157
159
160
159
158
160
161
161
161
162
162
163
165
165
168
168
170
171
170
171
172
174
175
180
182
180
205
234
236
237
232
231
229
223
223
224
228
229
229
234
236
236
237
240
241
241
241
240
238
233
231
228
225
223
219
217
220
223
219
217
217
210
208
205
213
209
202
194
199
199
203
197
193
191
189
190
189
187
187
188
189
191
197
201
203
203
201
197
195
201
208
211
209
206
204
206
211
213
208
206
202
199
196
196
195
195
195
195
194
195
192
187
182
182
181
180
182
185
188
189
193
193
189
186
186
188
188
188
187
187
187
189
190
189
184
178
180
183
181
173
180
184
177
171
163
166
177
178
169
161
155
151
151
189
218
217
228
220
224
209
175
176
172
156
158
147
154
150
126
122
125
147
165
173
170
176
177
178
175
177
180
178
178
174
169
169
168
167
165
163
162
161
149
124
109
78
67
85
74
70
75
80
81
84
93
84
74
60
64
70
74
77
120
167
127
135
104
191
189
189
189
188
190
191
192
191
191
191
190
189
188
190
190
189
188
188
188
188
187
188
187
186
184
185
181
182
185
184
183
181
180
178
177
174
171
167
166
163
162
159
156
156
155
153
151
149
147
149
148
150
147
147
147
147
147
145
145
145
144
140
138
137
137
136
139
142
143
147
149
151
154
154
155
158
156
158
157
159
158
159
160
161
161
160
162
161
161
162
163
163
164
164
164
167
168
169
169
170
171
172
173
178
181
198
222
244
238
235
233
231
227
220
219
219
220
223
229
236
242
242
241
242
244
243
242
242
238
235
233
231
225
221
223
220
217
220
232
221
221
218
215
205
212
212
210
197
191
196
198
198
194
195
192
190
192
190
189
190
191
194
199
202
204
205
202
196
196
205
210
213
213
207
209
212
213
208
204
202
202
200
198
197
195
199
198
194
196
195
194
190
185
182
181
181
182
185
188
190
191
190
184
180
181
182
188
191
194
196
195
192
191
191
190
190
192
182
175
179
185
188
180
172
173
173
174
174
164
152
151
154
151
157
165
207
219
225
229
221
210
190
173
164
157
153
153
151
152
137
129
122
121
145
164
167
174
177
177
177
178
181
175
173
170
164
171
168
169
168
163
160
159
155
137
121
94
68
63
72
77
68
71
77
88
86
81
76
64
67
73
78
82
89
136
123
123
126
192
191
191
192
191
191
193
192
193
192
191
192
192
191
189
190
190
189
190
188
188
188
188
189
187
187
188
184
184
187
185
185
183
183
183
181
176
173
170
167
164
162
160
157
156
156
154
151
149
148
150
149
150
149
149
149
149
149
147
146
147
145
140
138
137
137
138
139
141
142
147
152
153
153
154
156
157
158
158
159
159
159
159
159
161
161
160
162
162
162
162
163
163
164
165
165
167
168
168
170
170
171
173
177
185
215
237
244
239
235
232
232
221
217
226
226
213
217
232
238
244
246
246
245
248
249
244
241
242
237
232
233
231
227
227
225
220
219
231
227
214
218
216
218
206
217
213
208
197
199
201
202
194
194
202
195
193
194
194
192
193
195
199
204
205
204
204
201
198
202
213
212
215
215
210
212
209
205
202
199
197
200
203
202
199
200
199
198
198
195
194
191
186
183
182
180
181
184
188
189
187
190
189
185
185
187
190
191
192
194
194
196
196
196
195
194
191
191
184
182
182
180
171
174
177
176
174
169
166
165
166
174
180
178
176
156
159
222
226
232
228
210
202
176
159
163
161
152
153
167
152
138
141
129
128
156
166
168
172
175
174
177
176
177
169
160
160
166
170
171
166
162
160
159
153
147
131
102
70
68
67
65
73
74
72
90
84
82
76
72
75
79
83
86
76
123
139
115
92
192
193
192
193
193
192
193
193
194
193
192
192
192
192
191
191
190
190
189
189
189
189
189
189
188
189
190
189
189
189
188
188
186
185
183
181
178
177
174
171
169
166
164
161
161
159
155
153
151
150
149
151
150
150
150
149
150
150
149
148
148
145
142
141
140
138
139
139
139
142
144
149
152
152
155
155
156
154
157
159
160
159
160
160
160
159
159
161
162
161
162
161
162
163
165
165
167
166
164
172
174
166
179
207
231
245
239
240
234
233
231
226
220
225
225
215
218
235
243
244
246
247
247
249
250
250
243
241
237
232
233
232
230
231
231
227
222
225
232
222
214
214
216
219
214
215
215
204
198
200
198
190
198
201
198
199
196
194
194
191
193
197
203
206
207
205
202
200
203
208
213
213
210
211
213
210
202
200
201
201
201
202
201
201
201
200
200
197
195
194
193
191
189
187
186
188
186
181
179
179
181
188
192
193
190
185
186
188
191
195
195
196
197
193
187
184
182
184
183
180
171
162
175
182
180
179
174
179
182
182
183
181
181
177
173
160
153
191
230
231
221
207
196
167
164
164
163
163
159
168
169
144
148
144
137
138
160
166
167
167
169
174
170
168
162
149
164
165
167
167
164
160
157
154
151
142
133
105
73
63
64
69
67
69
72
77
68
75
74
75
78
82
85
86
83
107
118
74
77
192
191
193
194
194
196
195
194
194
194
194
194
193
191
190
192
191
191
190
191
191
191
191
192
191
192
192
191
192
190
190
190
188
187
185
181
180
179
175
173
169
166
163
162
162
161
157
154
152
153
152
151
152
152
152
151
149
151
150
150
150
145
144
142
139
139
140
139
140
142
143
147
150
152
153
154
155
155
156
157
158
158
159
159
159
160
158
160
159
161
161
161
164
165
162
165
164
165
164
165
178
185
222
243
245
243
239
241
234
229
227
224
226
222
223
234
238
241
246
248
250
249
249
250
248
245
240
241
236
233
235
234
231
230
227
224
223
234
224
219
218
218
219
219
217
215
211
205
198
197
188
191
199
201
207
199
196
194
191
190
193
199
203
204
204
206
202
200
204
207
211
207
205
211
211
206
201
200
201
201
201
201
201
201
201
200
198
194
191
190
193
192
189
186
183
180
181
185
190
193
195
193
194
190
186
185
188
197
201
199
196
196
194
191
192
192
195
193
186
180
178
179
180
177
179
187
184
183
181
180
179
180
180
175
172
160
150
153
205
234
217
206
209
168
166
158
165
167
172
177
176
160
149
152
146
139
134
157
166
168
170
168
165
158
138
143
159
168
169
172
164
158
157
153
145
135
122
103
70
61
63
66
65
68
70
71
67
62
63
71
79
83
85
87
85
87
86
80
80
193
192
194
195
196
197
196
195
197
196
196
193
194
192
192
192
192
191
191
191
192
192
193
193
194
195
196
193
192
190
191
192
190
189
187
183
181
179
176
174
170
169
165
164
163
162
157
156
154
153
153
153
153
152
150
152
152
153
151
151
151
148
144
142
142
141
142
141
142
142
146
147
150
152
153
153
154
155
156
158
158
159
159
159
159
160
159
161
159
160
161
162
163
162
163
164
162
166
171
192
221
237
242
236
239
236
230
232
229
228
224
223
226
231
235
238
242
241
247
249
251
250
250
249
247
243
239
240
236
233
234
233
229
225
227
222
226
236
224
220
218
217
220
220
217
216
208
208
200
196
195
206
204
208
207
195
196
193
190
196
202
210
213
212
212
209
206
204
209
213
202
203
214
210
205
203
201
201
202
202
201
201
201
201
201
200
195
191
191
191
191
190
189
190
189
189
192
195
195
193
192
189
188
185
184
193
198
197
195
194
193
193
196
195
194
196
191
191
188
186
184
184
182
181
180
177
179
183
186
187
184
180
172
162
169
170
176
169
157
221
214
201
207
188
172
166
172
172
177
176
178
175
155
151
150
152
143
138
159
171
169
165
156
147
126
135
154
161
167
171
168
162
156
143
131
118
104
86
68
59
60
60
60
65
72
71
70
64
54
54
65
79
83
86
89
88
90
88
85
194
195
194
198
198
198
197
197
198
196
195
195
194
193
193
193
193
192
192
192
194
194
194
195
195
197
197
196
195
193
193
193
191
190
188
185
182
180
178
176
172
170
166
166
164
162
158
157
154
153
154
154
154
153
153
153
154
153
152
151
153
151
147
144
144
141
142
141
142
144
145
145
150
153
152
153
154
155
156
156
157
158
157
158
159
159
161
161
160
161
161
161
163
163
163
163
164
174
211
240
246
241
240
240
236
231
236
236
232
230
223
229
229
234
238
237
236
247
253
252
250
247
247
250
249
242
240
236
231
231
232
232
228
226
229
225
230
227
221
219
215
214
220
225
222
215
212
202
201
201
202
205
202
210
195
198
200
195
198
205
207
211
214
212
206
204
204
204
207
205
205
215
213
205
202
202
202
203
203
200
201
201
201
201
202
200
196
195
197
195
193
190
188
187
187
187
189
191
190
188
186
187
185
192
205
203
193
187
187
190
190
189
189
190
195
196
193
191
189
189
188
187
181
181
180
180
180
183
179
177
186
190
193
189
187
186
177
145
129
167
216
199
203
216
194
167
175
174
171
177
179
178
160
150
150
146
154
154
143
154
161
158
156
148
126
118
133
155
160
159
159
152
146
132
120
97
88
75
65
60
59
55
57
67
69
64
67
70
66
59
56
58
66
79
84
86
88
88
87
195
196
196
198
198
199
200
199
199
198
197
197
195
194
193
194
194
194
193
194
195
196
197
197
196
198
198
198
196
196
197
196
192
191
191
187
184
181
179
177
174
172
168
167
166
165
161
159
155
154
154
153
154
153
153
155
154
155
154
153
155
153
147
146
146
144
143
143
143
146
146
148
149
152
152
153
154
155
155
156
157
157
158
158
159
158
159
160
161
161
161
162
164
163
164
161
173
222
245
246
241
242
240
235
232
235
236
231
227
227
233
231
232
237
240
239
246
251
253
253
251
248
248
250
249
241
239
225
227
234
236
235
233
233
225
228
230
223
218
217
217
219
222
224
223
220
212
205
198
196
203
206
207
192
200
208
199
203
210
214
213
211
210
204
199
201
205
206
206
208
217
218
209
204
200
201
200
202
199
196
200
201
201
201
202
201
197
197
198
191
189
185
184
182
183
188
189
188
188
187
183
180
182
186
186
189
189
187
188
189
191
192
194
196
192
195
198
195
192
192
190
185
182
178
179
180
185
183
182
183
184
183
183
178
176
171
140
135
145
151
173
197
198
194
213
173
169
176
176
174
180
188
171
150
151
149
153
155
154
141
131
126
130
130
120
118
111
125
140
141
145
137
125
110
94
84
76
71
64
59
57
59
59
62
65
64
63
66
68
68
64
61
61
58
54
66
74
83
83
196
196
199
200
201
200
200
199
198
198
198
196
195
195
196
196
196
196
197
196
197
197
199
199
199
199
199
198
198
199
199
199
196
194
192
189
185
184
182
178
175
173
170
167
166
163
162
160
156
155
154
153
155
154
154
155
156
155
154
155
154
152
150
148
146
146
145
144
145
147
147
149
152
151
152
153
153
155
154
155
156
156
158
158
159
158
160
160
162
164
163
164
161
159
162
184
228
248
245
240
241
242
234
233
235
236
230
232
229
233
234
235
243
243
242
249
253
251
252
254
251
252
249
249
248
241
235
230
236
238
239
236
235
233
222
232
225
221
221
221
221
224
222
223
229
218
213
210
201
204
202
205
207
190
209
211
204
211
215
219
218
213
205
199
201
201
204
207
210
217
217
211
206
201
198
197
198
199
197
198
200
201
197
199
202
202
200
199
195
188
186
183
181
181
181
183
184
185
186
183
179
181
185
187
192
198
196
192
191
192
195
197
197
195
197
196
195
198
198
195
189
186
183
184
186
189
185
179
177
177
183
185
187
191
186
173
168
157
140
152
140
198
173
166
215
203
162
163
170
170
172
180
188
181
163
149
151
153
155
147
141
134
126
121
122
119
118
105
107
118
120
119
108
96
88
78
77
67
63
61
58
60
59
57
57
60
59
59
62
65
67
69
70
65
57
51
48
55
66
196
198
200
202
202
202
201
200
200
198
198
197
197
198
197
197
197
197
198
198
199
199
200
200
200
201
199
199
200
200
200
199
198
196
195
191
188
185
183
181
177
173
171
170
165
162
162
161
160
157
155
153
156
156
156
156
156
157
155
154
153
151
152
149
148
147
146
147
146
146
149
150
153
152
153
155
153
155
155
156
157
157
157
156
158
158
161
162
163
161
160
161
160
164
188
229
247
246
247
244
239
235
235
241
233
218
229
227
229
237
230
244
244
245
246
250
253
253
251
253
251
253
247
248
245
240
236
236
238
239
241
234
232
229
224
233
221
226
222
224
222
220
220
221
229
214
211
210
212
209
199
208
203
203
215
214
212
213
216
221
216
210
206
202
200
203
208
212
216
214
213
207
202
200
197
196
197
197
200
201
200
194
195
198
198
194
193
195
194
193
188
181
176
178
179
179
181
187
186
180
181
184
187
191
197
197
196
199
200
198
198
199
200
199
196
195
195
198
197
193
189
188
187
188
187
188
180
178
184
184
184
185
186
184
178
166
146
108
128
167
168
177
168
137
181
208
174
164
162
169
170
174
178
179
174
159
149
148
150
147
135
125
122
119
121
120
120
109
102
109
117
118
103
91
77
72
69
62
61
65
61
61
60
56
56
59
59
59
62
63
64
64
67
68
63
63
59
49
46
199
201
203
203
203
203
203
201
200
200
199
199
199
200
200
198
198
199
200
200
200
200
201
202
202
203
202
201
202
202
200
200
198
197
196
192
190
187
186
184
180
178
174
170
166
165
163
162
161
159
157
156
157
157
157
158
158
159
158
156
155
154
153
150
149
147
148
148
147
147
151
150
152
153
154
154
155
154
156
156
159
158
158
158
158
159
161
161
164
162
161
167
165
198
238
246
247
249
248
240
239
240
235
224
216
231
229
221
236
237
239
245
249
250
250
251
254
253
251
252
252
251
249
243
239
237
238
238
237
239
235
232
232
223
226
229
224
228
220
222
222
219
220
225
225
214
210
213
213
207
204
212
206
216
220
220
219
220
221
217
215
211
206
203
202
204
206
210
215
212
207
204
201
197
195
194
193
196
199
201
195
189
196
194
187
188
192
192
188
183
179
179
182
189
195
195
197
198
196
189
186
187
189
192
197
198
198
203
204
201
198
197
197
197
197
195
196
194
189
187
187
192
193
192
187
184
181
176
181
181
181
182
177
174
165
133
103
123
167
183
174
164
155
130
155
187
191
174
159
165
163
175
190
179
165
162
159
153
143
141
139
129
121
124
120
121
115
109
109
102
106
118
113
104
78
64
64
61
59
59
61
62
62
58
56
57
54
58
60
60
60
62
65
66
64
66
65
64
64
202
203
204
204
203
203
203
202
202
201
200
200
201
201
200
200
199
199
200
200
200
201
200
201
202
203
203
201
202
202
201
201
199
198
196
193
191
190
187
186
183
180
176
172
170
167
164
163
163
161
159
160
158
158
158
160
160
161
158
158
158
156
154
152
150
148
150
150
150
149
150
150
151
152
154
156
156
156
157
156
158
158
158
159
159
161
162
162
157
161
164
174
206
244
250
249
250
245
243
245
246
236
218
217
234
227
218
231
242
241
248
245
251
252
251
252
252
249
249
252
251
249
245
238
238
237
240
242
235
231
226
233
227
217
229
224
227
221
218
223
224
223
221
227
217
213
213
213
206
208
210
211
213
222
218
220
224
225
223
220
216
208
203
202
201
200
207
208
207
208
205
201
199
198
196
192
192
194
195
196
189
194
196
187
185
189
188
186
184
179
183
183
185
190
187
186
187
189
184
180
188
189
192
195
197
201
202
201
201
201
202
202
199
197
196
193
192
190
189
192
195
195
195
193
189
185
184
179
181
178
178
182
177
175
157
130
135
174
179
179
159
164
113
124
151
170
185
175
158
155
161
182
187
187
184
181
163
155
153
139
136
127
122
126
118
114
111
107
105
99
92
99
122
111
80
64
64
58
56
62
63
63
62
59
54
55
58
54
56
62
61
62
63
66
64
63
67
69
66
203
204
204
204
205
206
204
203
203
204
203
202
204
203
202
200
198
198
200
201
202
202
201
202
202
203
204
203
202
201
201
201
199
198
197
193
191
191
189
188
186
183
178
173
169
169
168
164
164
163
161
161
160
159
161
161
160
161
158
159
159
156
155
154
152
150
150
150
150
150
150
151
152
154
154
156
156
157
157
158
157
158
158
161
161
162
160
166
165
164
183
228
247
246
240
249
250
249
249
244
232
224
225
230
229
225
233
243
250
246
249
251
249
249
248
249
249
246
250
252
244
243
240
235
236
234
239
238
226
221
223
232
216
216
225
222
225
219
216
217
224
224
220
225
213
214
217
205
215
217
211
211
220
220
218
223
228
225
221
218
212
207
204
202
200
202
209
211
207
203
202
200
198
195
193
192
193
192
191
189
192
194
187
186
189
188
183
183
185
184
186
182
181
184
188
191
194
191
185
184
190
191
192
197
200
202
201
201
201
200
200
199
195
190
190
192
193
196
198
196
194
196
194
191
189
187
187
193
197
193
195
196
197
198
192
185
188
184
172
158
158
113
97
124
151
162
148
148
155
143
150
176
189
188
180
172
168
168
166
153
136
126
121
131
129
118
106
101
95
92
85
76
88
103
77
63
58
59
59
60
65
62
62
57
64
60
57
53
56
53
59
60
58
61
64
61
66
63
71
204
205
206
205
205
206
205
205
204
205
204
205
204
203
203
201
201
201
202
201
202
203
202
203
204
203
204
204
204
202
200
201
199
198
196
195
191
190
189
189
188
185
181
176
173
172
169
167
165
164
164
163
161
161
161
160
161
161
160
161
160
157
156
154
152
152
150
149
149
150
150
151
152
155
154
156
157
156
156
156
158
158
158
159
162
163
163
161
162
196
241
248
245
244
243
242
243
245
244
231
220
226
232
230
226
225
244
248
247
245
250
251
248
247
246
247
245
248
250
247
237
238
237
234
232
232
237
233
218
218
222
222
207
219
222
218
220
220
217
222
226
224
223
223
218
216
216
210
222
213
216
220
220
212
223
228
226
223
218
215
212
207
204
206
205
203
207
210
210
205
201
198
195
192
192
192
190
188
185
188
196
188
184
189
189
189
189
187
184
185
184
184
182
178
177
179
183
185
188
198
199
198
201
201
197
197
200
202
202
200
199
199
197
201
203
200
191
184
186
192
196
196
193
195
196
196
196
194
193
186
190
191
191
192
191
187
184
172
168
179
137
112
131
140
128
108
108
130
138
141
161
178
180
179
179
167
172
157
153
150
151
141
133
142
143
132
116
99
87
87
84
76
71
79
71
60
57
60
65
60
59
64
62
60
63
60
57
56
56
54
54
60
59
57
59
60
61
63
63
206
206
206
204
205
207
205
205
205
206
205
206
204
203
205
204
202
202
203
203
203
204
204
205
205
205
205
204
204
203
202
201
198
198
195
194
192
190
190
189
189
186
182
179
174
173
172
169
166
165
165
164
163
163
162
161
163
163
160
161
160
157
157
156
154
152
151
149
148
150
151
152
154
154
156
157
157
156
157
157
159
159
156
158
159
159
162
170
203
244
247
249
250
247
238
236
242
238
222
214
228
232
229
223
223
239
249
247
247
250
252
248
246
247
245
245
246
249
247
242
232
237
232
232
231
233
236
222
214
214
223
214
211
223
221
219
219
220
221
227
221
221
229
226
223
216
216
219
214
209
221
223
218
221
236
228
223
222
218
214
214
211
208
204
203
203
204
207
206
201
199
194
191
192
191
189
191
184
180
184
182
183
189
188
190
192
189
185
184
185
180
176
174
173
177
179
191
198
203
208
205
200
198
200
199
200
202
201
201
202
204
204
198
187
178
172
176
181
187
192
197
198
196
198
199
196
190
190
192
187
191
196
196
189
186
189
181
175
175
150
145
163
146
79
100
107
116
128
123
131
149
161
172
173
166
160
160
168
165
153
151
150
146
145
138
131
128
112
92
87
83
77
71
63
61
56
58
58
57
61
58
58
62
61
60
59
62
58
62
58
52
57
56
56
55
56
57
62
59
206
207
206
205
207
207
207
208
207
207
206
206
207
207
205
205
203
204
204
205
206
206
207
207
206
207
206
205
204
202
202
202
198
196
194
194
193
192
191
187
187
187
183
180
177
175
173
170
169
167
165
166
165
164
163
164
164
163
161
161
161
160
158
156
153
150
151
147
148
150
151
153
153
155
157
156
156
156
159
160
157
158
159
158
162
164
178
216
244
245
248
250
247
242
239
241
238
225
220
230
225
225
228
221
232
252
249
250
251
252
251
247
245
247
243
244
244
244
242
237
231
239
230
234
233
234
230
215
215
210
220
217
216
224
218
215
213
218
227
220
214
222
232
221
221
220
221
214
212
223
224
224
223
227
231
223
221
220
221
218
218
213
206
207
207
204
202
201
202
200
197
192
190
191
192
188
184
179
183
184
184
189
189
190
191
190
184
187
184
175
174
172
174
177
180
185
200
209
208
202
197
199
201
202
201
199
199
201
201
198
192
187
185
188
191
192
195
193
189
189
195
196
196
197
195
190
186
185
187
188
197
197
193
194
192
192
185
183
179
163
165
139
122
138
159
145
143
135
128
128
127
142
160
158
153
153
166
167
165
169
168
158
154
138
139
134
128
126
115
101
90
85
69
66
57
57
58
55
57
55
56
58
61
61
62
57
61
58
63
55
55
63
51
56
56
57
56
57
59
205
206
206
206
208
208
208
210
209
208
207
207
207
208
206
206
205
206
207
208
209
208
208
208
208
208
206
205
204
202
201
202
199
196
195
197
193
193
191
188
188
187
186
183
180
177
173
170
170
168
167
167
167
164
164
163
163
162
160
161
161
160
159
156
152
150
150
147
149
150
151
153
154
156
155
156
157
157
160
156
160
159
160
161
164
187
224
245
245
249
251
246
241
240
237
228
215
218
226
229
226
224
220
228
247
252
249
252
253
252
251
250
247
244
245
243
238
240
241
236
234
240
230
235
232
232
221
220
215
205
216
214
224
224
212
210
215
223
226
218
213
230
227
214
219
226
225
215
221
227
225
232
231
227
227
224
221
224
223
222
215
210
212
211
205
203
202
200
199
200
197
192
191
192
191
184
175
182
187
184
189
190
190
190
185
185
190
185
175
174
173
176
175
178
189
202
201
199
201
204
205
201
201
200
199
199
198
196
195
196
196
199
197
189
188
191
185
180
185
191
193
191
193
194
193
192
194
194
195
191
195
197
191
190
192
192
182
169
167
159
161
169
169
155
149
159
154
146
142
123
90
112
134
134
135
147
167
168
165
163
165
162
157
142
131
129
121
119
113
102
89
84
72
67
60
57
59
54
54
56
50
55
57
61
57
54
61
60
60
58
60
65
59
55
56
57
59
51
54
206
207
207
209
209
210
210
209
210
209
207
206
207
207
207
207
206
206
208
208
208
208
209
209
208
208
207
206
204
202
200
198
197
196
197
197
193
193
192
191
189
186
187
184
181
178
175
173
171
169
169
169
167
166
165
164
164
162
162
160
159
161
160
156
152
152
151
150
149
150
150
151
152
154
153
156
158
158
157
160
161
159
164
165
199
240
248
249
249
252
248
239
241
238
233
222
217
223
222
222
220
215
225
243
249
247
250
252
254
253
252
250
245
242
243
239
238
235
236
233
232
237
234
229
231
229
224
225
210
212
212
218
222
212
207
212
221
223
218
219
215
236
221
219
222
224
223
223
223
223
233
237
228
228
224
223
223
226
225
224
217
213
216
208
204
206
204
198
194
196
196
194
193
190
187
181
180
183
181
180
183
187
189
185
186
191
186
181
179
175
174
175
175
182
195
200
197
203
205
204
205
198
195
197
197
195
195
197
195
193
192
187
189
197
199
194
192
188
187
188
191
196
198
196
195
197
193
189
189
188
193
188
193
196
196
180
177
178
179
177
169
161
167
167
157
153
157
163
160
133
79
74
103
120
123
122
144
167
167
164
159
151
151
148
126
120
112
98
98
91
81
78
70
72
67
54
56
55
56
57
57
58
59
54
58
58
56
55
59
61
61
60
58
57
55
56
55
52
52
207
208
208
211
211
211
211
210
210
208
208
206
206
208
207
208
208
208
209
209
209
209
210
209
207
207
206
207
204
201
199
197
197
196
195
195
194
194
193
191
188
188
188
185
182
181
177
174
172
170
170
169
167
166
166
165
164
162
161
162
162
161
160
157
153
151
150
151
149
150
150
149
150
152
152
155
157
160
157
162
158
160
159
208
242
247
245
245
250
245
241
239
242
237
231
226
228
218
216
214
216
226
236
247
248
246
252
252
253
253
252
247
241
240
238
235
237
232
232
232
229
233
233
224
231
227
230
224
206
216
218
219
221
209
210
219
223
218
220
218
217
234
222
227
225
223
221
224
221
228
238
232
223
224
225
223
226
229
228
223
220
214
206
207
208
209
202
197
193
196
195
194
192
187
188
184
183
174
174
185
191
191
183
185
188
188
185
184
179
177
179
174
175
186
193
199
200
202
202
198
195
197
198
195
190
190
189
187
188
189
191
192
198
204
200
197
189
183
181
188
201
200
198
198
197
199
199
197
196
193
191
193
201
189
180
187
196
187
180
179
184
194
195
181
170
167
166
161
150
131
97
72
58
76
91
103
116
146
166
159
161
154
143
142
123
116
114
97
82
79
75
74
72
68
69
65
62
58
58
57
60
59
57
53
57
56
56
58
56
59
61
59
55
55
57
57
53
55
57
209
210
210
212
211
212
211
211
211
210
207
207
207
207
207
209
208
210
211
211
210
210
209
208
208
207
206
204
201
200
197
198
197
195
195
195
194
192
192
191
189
188
187
186
184
182
177
175
173
172
171
170
167
165
165
165
165
164
162
163
161
160
159
158
154
152
151
152
151
152
153
152
152
153
153
157
159
162
159
159
161
172
213
247
250
248
242
249
247
241
241
240
239
232
226
225
216
206
212
223
222
227
235
245
249
246
250
251
252
252
249
243
240
240
236
232
234
229
233
231
228
232
232
222
233
225
226
220
208
220
222
220
215
206
209
222
228
218
217
217
230
229
225
224
223
226
226
223
222
232
242
221
223
225
224
228
230
232
228
221
210
209
210
212
216
206
197
197
198
194
194
190
189
192
187
174
171
181
188
184
185
186
193
192
186
185
184
182
178
171
166
168
179
191
194
199
205
207
200
197
200
198
193
191
187
187
188
189
191
195
198
201
201
196
196
194
191
189
194
196
191
188
188
195
198
196
193
190
184
188
191
192
179
189
201
198
184
193
203
200
196
181
170
161
156
155
153
135
109
98
89
76
47
37
53
83
104
120
143
150
155
148
147
137
122
117
111
101
83
79
77
75
73
68
69
66
58
60
69
69
61
58
62
57
58
59
56
58
59
59
59
57
54
53
55
53
54
56
59
210
210
209
211
211
211
210
210
209
208
208
208
206
207
207
207
208
208
210
210
208
209
208
207
208
208
207
203
200
199
199
197
197
196
196
196
194
194
193
191
190
189
187
188
185
184
181
177
174
173
171
171
168
166
166
165
165
164
163
162
161
159
158
155
154
154
153
152
153
154
156
156
153
156
155
157
161
162
163
164
181
222
248
250
249
242
242
244
243
244
243
241
240
234
225
222
206
215
219
218
220
235
228
247
248
247
250
251
251
250
246
239
241
241
235
234
234
228
234
232
230
232
231
222
232
223
230
226
221
224
222
220
213
212
217
229
229
219
218
221
236
223
225
226
231
227
215
222
231
238
234
213
227
225
221
232
232
227
223
215
212
215
214
212
206
200
199
196
197
195
192
193
190
183
178
185
186
184
187
189
187
190
193
191
187
181
176
172
168
170
180
183
187
194
199
201
205
202
197
200
201
196
190
189
191
188
188
192
195
197
200
198
197
201
193
185
191
194
187
181
185
188
190
194
197
196
197
193
190
190
188
191
197
195
191
199
205
210
205
191
171
155
158
162
162
156
152
150
148
145
134
117
80
57
42
45
69
99
125
140
157
156
159
156
151
125
110
103
90
71
78
76
75
72
73
74
69
61
61
65
69
69
68
64
61
62
61
60
58
57
60
58
56
57
57
56
56
56
59
210
209
210
210
210
210
209
209
209
208
209
209
208
206
205
207
209
209
209
209
208
208
207
206
206
206
205
202
201
198
198
197
197
197
197
196
194
193
192
190
189
189
187
188
185
185
183
177
174
173
172
171
170
168
167
166
166
165
165
162
161
158
158
155
153
153
153
153
155
156
157
158
154
154
155
157
162
161
169
174
225
248
245
249
246
244
243
246
247
246
245
239
235
230
223
222
227
221
215
218
224
227
232
243
250
250
250
252
251
247
245
241
240
239
232
232
235
230
233
232
227
227
236
222
226
226
231
227
224
226
222
221
218
214
220
225
215
213
217
227
233
224
224
227
230
225
219
227
236
238
217
223
229
224
224
236
232
221
218
217
219
214
211
210
203
192
190
195
201
199
194
185
177
184
192
191
187
189
190
192
196
191
186
183
173
167
175
183
188
188
189
187
188
193
199
204
203
200
201
204
201
198
197
197
193
188
186
189
190
191
191
193
197
195
192
198
193
183
186
189
189
192
195
195
195
196
195
190
186
184
190
188
180
194
208
212
207
193
173
170
172
187
193
189
182
169
159
151
139
128
113
97
78
69
54
49
49
62
95
128
137
149
160
169
173
161
120
103
96
83
79
75
75
73
73
72
70
68
63
54
47
53
62
68
70
69
68
64
62
61
60
57
54
58
58
58
56
60
63
211
211
211
212
211
210
210
211
210
209
209
209
209
208
207
207
208
209
207
208
208
208
207
207
207
207
206
202
199
198
199
198
197
196
196
195
194
193
192
190
190
190
189
188
186
186
182
179
176
174
173
171
170
169
168
168
167
165
163
164
162
161
158
154
154
153
154
155
157
159
160
161
158
157
159
159
163
164
181
224
245
249
246
247
245
242
245
245
244
243
243
237
233
232
227
228
223
214
220
237
240
245
247
249
252
253
250
249
246
241
241
243
234
237
231
234
236
229
228
230
226
229
240
222
220
227
228
225
227
221
220
221
219
216
221
218
208
216
219
238
233
228
230
231
228
219
227
234
244
230
225
228
226
227
229
234
225
219
220
220
216
213
215
208
196
196
201
198
192
184
185
183
187
190
191
188
188
191
193
195
190
181
178
177
183
189
189
188
182
179
180
183
189
194
199
202
202
205
204
201
202
200
200
200
194
186
182
185
185
187
188
190
190
192
200
196
183
183
187
191
191
191
190
187
188
193
190
186
188
185
183
194
206
211
211
187
167
167
185
201
202
189
183
178
170
167
160
145
130
126
118
103
80
69
59
65
70
76
81
94
99
132
141
151
170
174
160
120
100
94
78
69
73
72
70
68
71
70
66
65
60
51
47
52
57
61
67
71
71
68
66
65
63
59
62
61
63
62
63
211
211
211
212
212
211
211
210
210
209
209
209
210
207
208
208
209
209
208
209
210
209
207
208
208
206
204
203
200
199
199
199
198
198
197
195
194
194
192
192
191
190
189
189
187
186
183
180
178
175
174
171
170
168
168
166
167
167
165
164
163
160
159
157
153
153
156
160
161
160
160
161
163
161
162
163
164
208
231
248
245
245
245
244
244
244
242
240
239
241
238
234
232
232
226
221
220
214
230
242
241
245
245
248
253
250
247
246
241
237
242
243
236
240
231
233
234
226
226
228
230
234
238
224
214
229
233
231
227
220
220
223
220
214
227
210
214
219
223
239
233
228
233
229
226
221
237
241
242
232
229
227
224
229
231
228
223
224
224
221
217
211
213
209
203
204
198
196
182
183
187
187
187
193
198
200
199
197
192
182
183
184
185
188
187
186
185
182
183
187
183
183
187
192
198
201
205
203
201
201
204
202
199
197
192
185
181
183
184
189
189
188
195
197
194
191
187
186
190
192
190
187
190
190
193
195
188
188
194
194
202
210
213
195
178
171
190
204
199
186
184
192
190
183
175
165
155
146
138
133
128
120
105
96
87
83
73
67
80
100
61
73
94
117
144
140
137
120
93
83
75
75
72
71
69
67
72
71
68
66
64
60
62
60
56
58
50
38
54
68
70
67
66
65
68
64
68
62
62
211
210
211
211
212
210
210
210
210
210
210
209
210
209
209
208
209
209
210
209
210
208
208
206
205
205
204
201
201
200
199
200
197
197
196
194
193
193
192
192
191
191
191
190
189
187
185
181
179
175
175
174
169
168
168
170
168
168
167
165
166
164
161
158
155
154
156
160
160
161
162
163
163
163
165
166
194
243
250
247
250
246
245
246
246
241
236
235
235
236
234
232
232
226
224
221
221
224
241
241
245
249
246
249
246
244
248
245
236
233
242
241
230
233
231
232
231
226
225
230
232
233
233
228
219
228
233
230
223
226
225
225
224
213
232
211
219
222
231
232
225
222
227
228
226
231
238
239
238
233
228
227
230
232
229
228
225
223
220
218
213
216
212
207
210
207
200
189
186
188
190
195
196
196
199
198
198
193
182
181
182
182
185
184
184
186
189
190
189
182
186
187
189
192
193
199
201
201
201
202
205
203
199
194
191
189
189
187
185
184
187
190
191
192
194
192
191
192
190
182
182
192
199
198
195
188
182
185
196
206
210
196
172
176
195
203
200
192
194
202
196
185
181
173
166
164
165
163
156
150
145
137
126
121
124
125
128
139
144
140
112
98
74
61
93
116
110
94
85
79
78
81
75
74
72
69
70
70
69
71
70
65
68
70
70
71
64
57
47
47
48
46
48
54
65
65
69
76
86
210
211
210
210
209
209
209
209
209
209
210
210
210
210
212
210
210
210
211
210
210
209
208
207
207
206
203
203
201
201
200
199
199
198
194
194
194
195
193
192
192
191
191
190
190
189
187
184
181
177
176
176
172
172
172
171
170
169
170
168
167
165
161
157
154
155
157
159
160
163
165
164
164
162
168
193
235
249
250
251
246
245
242
243
240
235
232
233
233
232
233
232
227
223
221
222
226
231
244
243
250
253
249
249
238
243
246
240
237
239
238
242
234
231
231
227
230
227
226
231
230
231
225
225
224
232
233
227
223
226
220
223
217
215
232
211
219
223
231
225
222
225
224
225
226
236
236
238
239
234
229
227
230
231
229
230
224
221
222
217
218
219
208
206
211
211
201
188
187
190
195
197
198
195
192
199
200
181
177
182
181
182
187
189
191
189
185
188
192
189
186
187
191
195
194
199
201
200
201
202
203
202
198
193
190
191
190
186
180
176
180
184
184
189
185
190
192
187
177
184
200
206
200
195
186
181
181
192
201
196
181
173
196
205
196
194
196
202
203
190
192
190
188
182
175
165
160
154
152
150
148
146
137
128
129
140
149
151
141
125
108
105
89
74
67
67
83
88
88
79
78
77
79
79
75
76
76
73
70
71
72
70
73
80
79
75
67
63
53
53
59
56
52
54
67
72
77
74
77
210
211
209
208
208
208
209
208
208
209
209
208
207
209
209
210
210
210
211
210
208
209
209
208
207
205
204
205
203
202
200
199
199
198
196
196
196
194
194
192
192
192
190
189
189
190
187
185
184
181
178
177
176
174
173
171
171
170
169
170
168
167
163
161
159
156
156
158
158
161
166
165
162
168
189
234
248
246
251
249
250
246
242
241
238
234
235
237
235
231
232
226
224
223
219
226
227
236
245
248
248
247
251
249
240
248
240
241
241
241
232
239
239
234
235
230
241
228
227
232
229
226
219
226
227
231
226
224
225
231
219
221
211
226
221
216
226
228
231
225
224
226
220
226
228
237
234
240
237
233
227
228
231
229
225
221
223
224
226
219
215
217
216
210
209
208
196
191
196
196
190
189
191
193
195
189
175
178
182
182
185
188
189
189
191
192
193
193
194
195
196
191
188
192
195
197
200
201
201
201
200
199
197
195
193
193
192
186
178
174
176
179
184
189
196
187
178
182
201
208
206
198
191
190
185
188
196
197
191
187
196
200
196
193
196
202
201
199
198
198
195
190
186
178
170
165
165
163
158
154
152
148
145
137
131
134
142
149
151
145
124
80
58
71
84
89
86
87
86
80
80
82
80
81
82
84
82
77
76
72
70
77
81
80
79
72
63
52
50
65
65
61
59
54
57
71
92
92
91
212
211
208
208
210
209
208
207
207
209
209
210
210
211
211
211
212
211
211
210
208
208
210
208
207
207
205
204
202
201
200
199
199
198
197
196
197
195
195
194
193
193
192
192
189
190
188
186
185
183
179
178
177
176
174
174
172
172
173
173
170
168
165
162
158
155
155
156
159
160
160
166
166
190
232
251
251
252
252
252
251
245
245
242
240
235
234
235
234
236
228
217
221
222
217
233
233
240
248
249
247
246
249
244
242
241
234
239
239
233
227
237
239
233
237
234
239
224
230
228
224
219
218
232
229
227
222
225
229
229
223
223
222
232
214
220
228
233
228
223
225
222
226
229
233
233
236
241
232
229
222
225
229
226
226
222
223
225
221
219
214
215
217
214
212
202
196
199
194
189
188
187
192
195
182
168
179
185
185
190
195
192
192
194
193
196
198
198
198
199
199
194
193
195
196
196
201
203
202
198
198
197
198
197
198
194
190
185
179
179
182
190
192
190
184
188
205
214
213
209
202
195
190
189
188
189
191
192
196
197
196
197
202
203
197
194
197
197
196
198
191
184
179
172
170
167
166
161
158
156
152
150
148
136
127
131
140
144
146
150
143
100
81
100
113
119
116
109
102
89
82
80
77
84
91
95
94
94
97
95
91
89
89
86
76
61
48
53
70
76
75
73
71
64
59
57
76
84
91
211
210
210
209
211
211
210
208
209
209
209
210
211
210
212
211
211
212
211
209
208
209
208
207
208
205
204
204
203
201
201
200
199
197
198
197
197
195
195
194
194
192
192
192
191
191
190
187
185
183
180
180
179
178
176
175
174
174
175
173
173
170
167
164
161
157
155
158
161
160
163
169
191
235
250
249
253
251
250
248
248
244
241
239
240
239
238
231
235
230
221
220
219
216
223
240
242
243
251
249
245
251
245
243
241
233
237
242
234
237
227
238
237
233
234
229
229
224
229
225
224
220
222
231
228
224
223
227
226
226
222
224
226
217
216
226
229
239
222
218
219
222
228
234
234
231
241
239
227
223
220
225
230
225
222
225
225
220
220
225
217
214
219
215
206
201
200
194
190
192
187
189
196
190
183
184
181
191
197
200
200
200
195
196
200
198
197
198
198
194
193
197
202
202
198
196
201
205
200
195
195
197
199
201
202
198
192
186
181
180
185
188
189
187
196
210
211
211
208
204
201
199
195
190
190
189
189
192
194
195
200
203
199
200
201
196
192
189
189
190
190
182
176
169
164
162
161
159
158
156
150
145
138
131
127
134
148
157
158
146
141
130
127
136
131
127
120
114
112
102
96
91
77
68
58
54
56
64
68
73
71
66
61
50
42
37
41
55
62
72
78
83
79
73
68
68
76
82
88
209
210
211
210
210
210
209
210
211
210
209
210
211
210
211
211
212
213
212
210
209
209
209
208
207
206
206
203
201
202
201
201
199
199
198
197
198
195
196
195
194
193
192
192
191
191
191
190
189
186
182
183
182
180
176
176
175
174
174
173
173
171
169
165
162
157
154
157
160
159
173
186
235
250
250
252
251
253
250
250
248
245
241
241
242
241
233
237
236
219
220
219
218
215
237
242
244
242
249
248
245
249
241
246
241
238
241
236
227
235
222
239
233
234
235
234
228
226
222
226
225
223
227
230
232
227
224
227
225
225
221
223
221
210
221
233
233
235
215
222
216
226
231
233
228
236
242
234
226
220
219
228
231
225
225
224
221
215
222
221
221
221
224
217
203
196
196
195
193
186
182
185
182
176
182
191
193
199
199
202
203
187
192
198
206
205
197
191
187
191
195
200
201
202
200
201
200
196
191
194
194
194
198
200
198
192
187
184
185
186
185
183
187
198
206
206
205
207
205
201
199
197
197
196
193
192
190
193
201
207
203
199
194
191
190
190
186
185
185
182
177
169
162
156
155
158
159
161
146
130
118
123
137
148
153
158
163
159
164
163
156
138
127
130
136
135
126
123
117
108
108
106
96
88
68
47
43
48
48
54
57
54
50
50
54
55
56
59
62
66
70
75
73
72
70
75
82
98
108
211
211
213
213
212
211
210
212
212
212
210
210
211
210
212
212
211
210
211
210
209
209
208
208
207
206
205
203
203
202
201
201
199
200
198
198
197
196
196
195
195
194
193
193
192
194
192
191
189
187
186
185
183
182
180
178
176
176
176
174
175
171
170
166
162
160
154
153
160
166
175
225
248
249
253
253
253
251
252
249
246
240
238
245
241
235
234
232
225
225
213
219
221
222
243
244
246
245
248
243
248
250
239
240
244
241
241
230
227
233
225
233
232
237
232
232
229
229
220
222
220
222
227
230
229
227
222
225
226
221
228
223
213
211
229
234
236
233
221
222
214
228
233
232
231
243
234
230
227
222
220
229
232
226
223
221
215
216
221
224
221
220
215
204
195
198
196
194
188
184
180
187
188
186
189
198
199
196
200
208
203
194
197
205
202
185
181
191
196
195
199
201
201
202
203
202
195
191
190
194
199
195
193
199
196
190
189
186
183
183
184
187
193
199
202
202
202
204
202
200
200
198
197
193
191
191
195
205
207
204
198
188
187
190
190
189
185
183
178
175
174
173
169
164
161
155
153
152
143
143
151
156
154
151
149
153
160
161
163
158
146
144
144
142
139
134
133
131
123
113
114
114
107
103
93
76
74
77
83
85
85
91
86
86
91
98
109
121
121
123
127
137
143
150
153
155
159
168
172
212
212
213
212
213
212
212
212
212
211
211
211
211
211
212
212
213
212
212
210
210
209
210
208
206
207
206
203
202
202
202
200
201
199
200
199
199
196
197
197
195
195
195
194
193
193
194
193
193
191
188
186
185
186
184
182
181
179
176
175
175
173
170
168
165
160
155
157
160
187
227
250
250
251
251
252
253
253
250
246
245
242
247
243
234
234
234
228
222
217
214
220
226
236
251
248
246
249
245
244
249
248
241
244
243
241
233
228
229
233
232
236
224
236
236
236
231
233
221
220
215
227
226
225
227
223
221
224
229
220
223
217
210
217
234
243
237
233
226
217
222
232
233
230
239
240
232
229
224
218
217
230
234
226
221
218
216
218
226
223
217
212
207
199
195
193
190
195
192
193
186
182
191
193
192
191
189
202
213
209
202
209
211
202
188
189
196
191
191
200
198
200
203
202
201
198
194
194
197
201
196
192
194
196
193
191
186
182
179
178
179
185
188
192
200
202
202
203
200
199
198
190
186
186
191
200
207
206
202
196
191
190
190
191
190
188
186
184
180
178
178
174
166
161
163
169
169
165
166
161
156
152
149
150
153
156
158
160
160
156
151
155
157
149
136
132
138
135
124
111
112
113
109
110
104
98
109
119
120
128
125
122
137
142
154
163
161
163
162
160
163
165
170
175
172
172
169
171
170
214
213
214
214
214
213
214
212
213
211
212
213
212
213
214
213
213
212
212
211
210
210
209
208
207
205
205
203
203
202
201
202
201
200
201
198
199
199
198
197
196
196
197
196
196
195
196
195
194
191
191
189
188
186
184
184
182
180
177
176
175
173
171
169
166
159
155
155
188
233
251
249
251
252
251
252
251
251
244
246
244
247
243
237
238
236
229
225
216
215
222
224
237
246
250
247
247
249
244
247
250
247
245
242
239
239
232
225
229
231
229
231
227
234
241
233
229
226
221
223
218
222
230
221
224
223
221
226
224
225
217
208
212
220
237
242
235
230
225
217
229
233
228
234
243
233
232
228
222
216
219
232
233
223
218
217
220
223
225
221
213
207
199
193
193
197
199
200
196
191
184
184
186
180
183
199
212
205
201
201
209
214
210
202
195
195
188
191
193
190
200
203
204
204
204
203
199
192
195
199
199
198
194
191
191
191
190
185
181
179
180
184
191
194
197
198
197
200
199
198
200
198
199
201
202
204
202
202
199
196
198
198
194
190
190
192
191
184
177
171
171
166
162
161
162
166
164
162
159
158
159
155
152
153
154
157
159
161
158
155
154
158
163
159
150
141
136
133
121
108
107
108
102
99
103
113
127
135
145
151
151
159
174
181
179
174
173
169
173
173
172
176
179
178
173
170
173
175
169
214
213
214
214
214
214
214
214
213
213
213
212
213
213
214
214
214
214
211
211
210
209
209
209
209
207
204
204
204
203
203
202
201
200
200
200
199
200
198
199
199
199
198
198
198
197
196
195
194
192
193
191
190
186
186
184
185
181
180
178
177
174
173
168
162
160
161
191
238
247
251
248
251
253
253
253
251
244
246
245
247
243
235
239
238
231
226
221
212
215
227
234
248
246
242
245
248
250
243
249
244
245
242
242
241
238
231
225
230
231
229
224
231
237
235
231
232
222
224
219
218
217
225
220
231
223
222
229
226
233
211
214
218
227
239
235
236
226
223
222
226
226
228
240
237
231
232
228
222
221
225
234
230
219
213
218
224
223
224
220
208
199
195
198
203
198
198
192
190
182
182
187
189
199
213
202
180
197
202
218
218
214
211
198
191
192
191
188
191
196
196
201
205
203
198
197
195
197
199
199
195
194
197
198
190
185
184
181
179
181
180
181
188
193
197
201
201
204
206
210
212
213
209
204
202
203
200
199
203
203
194
197
199
199
193
184
180
178
175
175
174
172
173
172
173
169
161
150
152
150
148
147
152
155
156
153
152
158
159
164
171
171
173
169
163
155
142
134
122
110
108
108
112
115
123
136
133
141
149
166
179
182
182
179
182
179
176
175
175
174
175
175
176
177
179
176
171
165
166
216
215
215
215
215
214
214
213
214
213
213
215
214
214
214
213
215
213
211
211
210
210
209
208
210
208
207
205
204
204
205
203
203
202
202
203
203
202
201
199
199
201
200
199
199
199
197
194
194
193
192
191
191
189
188
186
186
183
182
179
177
176
172
166
166
169
193
233
249
250
253
253
253
253
252
250
247
246
248
242
247
243
242
242
235
228
223
218
214
225
229
234
247
246
243
249
250
249
244
240
243
243
242
242
237
235
224
227
229
224
228
225
234
229
229
229
234
226
223
221
221
217
221
221
228
221
218
229
225
227
207
211
218
236
240
242
235
223
225
225
221
223
233
239
234
231
231
230
224
218
232
236
221
213
218
226
228
220
230
210
198
195
203
206
199
199
203
195
191
192
197
196
205
215
190
170
194
218
215
216
213
202
198
198
196
197
193
190
189
192
193
194
199
192
196
199
200
203
199
194
192
195
194
187
183
185
189
183
181
186
188
189
193
198
200
206
208
207
209
212
212
207
203
198
200
205
200
206
208
200
198
198
198
196
188
188
181
179
178
179
176
171
166
162
166
169
169
166
165
164
157
149
146
140
136
140
149
161
169
175
176
173
170
166
158
152
136
124
111
110
108
109
119
128
136
138
144
152
175
179
184
176
182
183
184
182
183
182
178
174
175
175
177
178
174
171
173
175
175
217
216
217
217
216
216
215
215
215
216
216
216
216
216
216
214
214
214
213
212
211
211
209
210
210
209
209
207
206
206
205
207
206
204
204
204
204
204
203
203
202
202
203
202
202
202
199
196
195
195
194
192
192
191
188
188
187
185
182
182
180
177
174
169
174
195
240
248
251
252
251
251
250
250
249
248
248
247
241
243
244
242
241
234
228
224
219
205
215
236
232
239
245
246
239
248
246
246
247
236
246
245
237
242
236
234
229
231
228
228
232
230
227
230
232
229
232
224
220
221
220
225
220
227
224
216
222
226
223
220
207
218
230
227
237
234
225
219
225
217
218
227
232
233
231
231
231
228
225
223
230
226
217
216
226
219
224
234
209
194
198
204
210
207
204
207
205
198
194
197
201
207
206
180
182
205
211
214
215
212
205
203
206
205
201
194
192
192
191
190
193
196
199
199
201
202
200
197
198
202
201
189
183
193
196
190
186
181
180
185
187
189
196
199
202
203
202
205
208
207
204
195
192
200
206
203
211
209
203
205
197
202
194
191
189
179
172
165
172
162
155
158
159
163
168
166
162
158
157
151
142
136
141
147
155
165
172
174
172
171
170
171
169
164
156
151
137
121
114
115
116
118
126
134
141
152
154
169
178
184
178
190
199
194
196
194
190
187
185
176
172
176
173
171
174
175
174
173
174
218
218
219
217
217
217
216
216
216
217
216
216
217
216
216
216
216
215
214
213
212
211
210
210
211
210
210
209
208
207
208
207
207
206
206
206
206
206
206
206
206
205
205
205
204
203
200
198
198
197
195
194
194
192
190
190
187
187
185
182
180
177
175
175
192
237
247
249
252
250
254
253
251
248
247
246
245
246
242
239
248
242
238
229
223
219
205
200
221
242
237
245
250
247
238
242
243
248
247
239
242
243
235
241
234
236
231
234
234
229
231
232
232
234
233
229
222
218
218
220
221
229
224
231
221
212
217
214
220
224
220
223
227
226
235
233
231
228
216
214
223
228
230
230
230
233
232
228
223
226
224
215
214
218
221
226
228
201
197
211
206
213
213
205
209
208
205
201
199
202
203
198
181
186
201
216
220
215
216
217
214
209
206
205
196
189
191
192
194
194
196
199
197
201
202
200
201
202
204
200
187
191
203
201
192
187
183
179
179
183
188
192
196
195
196
198
201
201
197
193
192
194
198
200
203
211
206
203
208
204
201
188
192
197
193
187
171
171
175
160
146
140
134
134
137
140
143
140
140
144
147
147
151
157
159
159
160
162
164
168
170
172
174
169
162
158
146
132
124
119
122
127
125
131
138
160
181
197
201
184
182
196
198
196
194
205
199
188
174
177
181
178
180
177
174
173
177
184
180
220
219
220
218
218
217
217
217
216
217
217
218
218
216
216
216
216
215
215
214
213
213
212
210
211
212
210
210
209
208
209
208
209
208
207
208
207
207
209
206
207
207
206
205
204
202
200
199
199
198
196
195
196
194
193
192
189
190
189
185
182
182
182
184
232
249
252
252
253
251
250
248
251
246
243
243
244
245
242
243
242
237
232
225
218
205
194
219
230
241
237
245
248
245
239
238
244
246
243
242
242
240
243
244
234
235
228
236
236
231
230
232
234
233
231
237
221
217
215
215
218
234
225
226
220
218
221
209
224
224
221
221
222
231
232
234
228
222
215
215
220
230
237
228
231
231
231
225
221
225
220
212
213
218
228
219
207
198
212
213
211
210
208
211
209
208
205
202
198
193
183
169
186
207
208
215
215
215
213
210
201
197
191
190
194
196
199
200
201
202
201
199
196
201
200
200
203
203
201
203
207
206
202
196
188
183
182
181
183
185
190
194
193
191
194
196
197
203
201
197
199
204
208
208
209
211
211
206
206
200
194
194
195
203
199
198
198
191
172
164
160
152
152
152
150
149
150
149
150
150
151
150
152
157
158
159
161
163
168
171
172
171
170
166
159
156
144
141
135
128
130
131
135
147
161
175
193
202
192
186
190
205
197
199
202
201
184
176
183
183
180
179
176
177
179
181
181
181
180
221
221
221
220
220
219
220
218
219
218
218
219
218
217
217
216
216
216
217
215
214
212
212
213
212
211
212
212
212
211
211
211
211
210
210
209
210
211
210
208
208
209
209
207
204
202
201
201
200
199
199
198
196
195
195
193
193
191
190
188
186
185
192
229
249
250
252
250
251
249
249
246
244
241
239
237
242
238
238
237
230
231
223
211
210
203
208
223
240
236
238
248
244
243
236
242
247
241
241
243
241
244
240
242
234
237
229
238
239
235
230
235
233
232
232
234
223
220
214
216
224
227
224
221
218
214
217
213
229
220
221
220
219
233
237
233
217
213
213
218
223
232
231
233
230
233
228
223
223
223
221
218
217
221
217
192
200
215
218
213
214
213
216
215
211
210
204
197
188
180
167
182
206
211
213
209
204
197
199
192
193
195
200
205
207
205
202
200
198
199
198
196
196
200
201
202
200
201
204
208
208
203
199
194
185
181
181
188
188
186
190
193
195
194
201
202
201
202
198
196
201
201
202
205
206
205
208
206
200
200
206
204
202
206
212
211
188
176
173
182
177
166
167
165
161
161
161
154
148
147
147
147
149
151
152
155
158
161
164
166
168
168
166
164
159
156
142
136
135
128
136
138
147
162
171
179
184
191
187
192
200
203
204
205
200
183
181
187
188
183
177
175
182
181
180
179
180
180
174
223
222
223
222
221
220
221
220
220
220
220
220
218
218
219
218
217
216
217
216
215
213
214
214
213
212
212
213
213
213
212
213
214
212
211
212
212
212
212
211
209
209
209
206
205
203
203
203
200
199
199
198
197
198
199
194
195
194
190
191
190
201
233
249
249
251
250
246
247
247
248
242
238
236
234
236
236
230
230
231
227
223
213
205
210
209
212
222
245
236
242
247
246
242
234
240
249
244
239
238
242
241
236
238
231
239
235
239
236
237
234
231
239
232
235
235
216
215
212
216
232
223
222
221
218
217
214
214
226
218
221
219
222
240
238
224
212
212
212
219
228
233
231
232
233
236
225
224
224
224
225
221
214
211
202
198
214
219
218
213
215
214
219
216
212
209
197
190
183
173
184
204
208
210
207
202
197
192
197
203
205
201
200
199
200
202
201
200
199
199
198
195
197
201
196
192
197
206
209
207
205
203
199
195
195
195
190
186
182
184
187
193
197
200
199
197
195
196
194
196
203
208
212
214
213
211
206
202
205
208
211
211
218
219
199
180
184
192
189
190
185
177
181
186
181
172
163
160
156
154
151
151
145
143
151
157
159
159
161
165
167
167
167
166
159
155
152
154
159
153
161
161
168
168
172
181
190
188
192
205
204
206
205
199
189
186
194
191
183
184
186
190
191
186
181
177
176
177
176
225
225
225
222
221
222
221
220
220
221
219
220
219
219
218
217
218
218
218
217
216
215
216
217
214
212
212
214
215
215
215
214
214
213
213
214
213
212
211
213
212
209
208
207
206
206
205
205
203
201
202
201
200
200
198
197
201
197
195
197
206
238
249
250
253
252
248
245
246
248
238
240
240
231
235
236
231
230
228
221
214
209
205
211
203
198
212
230
248
240
247
246
248
247
235
237
246
246
236
236
242
239
237
234
228
238
236
234
228
239
235
230
230
227
234
224
212
214
214
220
230
229
220
227
217
214
214
226
225
217
210
217
229
241
233
218
207
209
210
220
234
234
228
235
236
231
223
223
222
228
224
212
211
206
206
216
212
208
211
213
207
216
223
213
203
198
184
173
179
185
198
204
206
210
196
192
200
197
198
203
198
200
205
207
207
208
205
201
195
190
188
192
197
199
195
199
207
211
212
211
209
207
199
193
191
189
184
177
176
180
187
197
200
202
201
201
205
209
211
212
215
213
207
207
210
205
203
209
214
214
217
221
220
192
186
201
203
195
198
195
191
188
184
178
176
172
170
166
163
157
149
144
146
151
154
156
159
160
162
161
159
158
164
169
165
157
152
148
144
138
137
141
155
155
180
193
198
201
203
210
211
212
201
191
189
193
194
191
190
192
192
190
186
184
180
176
173
173
177
225
225
225
223
222
221
221
222
223
222
221
222
221
220
217
219
219
219
219
219
217
217
218
216
217
215
214
215
217
217
216
216
216
216
216
214
215
213
213
213
212
209
208
207
206
206
205
205
204
202
202
200
203
201
198
198
197
203
198
204
242
249
247
252
252
249
244
245
241
235
242
246
236
234
235
233
228
227
223
215
209
208
210
201
182
197
222
233
243
244
248
247
249
244
237
240
244
239
239
237
243
240
238
235
235
230
234
233
233
233
231
231
225
227
236
215
209
210
214
219
233
224
224
228
217
213
209
221
219
212
209
220
231
242
226
216
205
204
217
234
234
233
235
241
230
230
233
220
227
232
214
210
209
210
215
208
200
208
214
215
216
224
216
209
197
185
173
177
190
199
199
208
214
201
201
206
208
206
206
210
210
209
209
206
200
198
198
197
194
193
196
200
201
202
206
209
211
212
211
210
206
201
192
184
180
179
179
180
181
183
188
198
202
205
205
206
205
201
199
201
204
201
200
204
204
203
210
215
218
220
222
211
186
202
212
200
197
204
192
185
182
184
177
169
175
174
172
169
161
154
148
148
148
150
153
156
156
157
158
160
160
160
154
148
142
142
141
144
143
150
153
156
165
170
193
197
198
200
203
211
208
205
202
197
201
201
197
199
198
193
188
183
180
180
179
175
172
173
178
226
226
225
224
224
223
223
223
224
224
222
224
223
222
220
221
222
222
221
221
220
219
219
218
217
217
216
217
218
219
218
218
218
217
217
217
214
214
213
213
213
211
210
209
208
208
206
207
206
204
204
202
203
203
200
202
199
211
206
239
247
251
250
252
250
246
245
246
239
239
244
234
233
237
232
231
228
220
217
213
211
210
199
184
190
216
228
239
246
247
245
250
249
239
238
242
242
243
238
237
245
237
236
232
238
231
234
232
242
230
228
235
232
226
231
213
208
207
215
226
230
223
226
225
220
213
214
222
212
208
213
226
236
234
224
208
206
213
234
228
232
238
242
237
228
236
226
222
230
219
209
210
203
206
201
200
212
219
219
221
225
220
209
200
185
177
180
188
196
200
212
212
200
206
213
210
206
209
211
207
202
200
200
199
194
195
199
201
201
200
201
202
203
203
203
206
207
208
206
204
202
198
192
188
186
182
181
181
182
186
193
202
203
202
200
197
195
197
202
207
206
205
206
207
212
218
216
214
218
216
203
199
214
210
202
206
200
182
183
185
189
195
188
173
173
178
178
174
173
167
161
156
151
151
152
153
153
152
152
152
148
144
142
148
155
157
156
156
152
147
147
151
163
192
194
198
202
213
209
208
204
204
207
202
203
204
201
197
190
183
183
185
184
179
177
174
171
171
178
226
227
227
225
224
224
226
226
226
225
222
223
221
222
223
223
223
224
223
222
221
219
219
218
218
218
218
219
218
219
219
218
218
217
216
216
215
215
214
212
212
211
211
210
209
209
207
206
207
205
204
205
204
202
203
201
213
222
232
241
250
251
250
247
245
243
244
244
243
244
238
232
236
231
232
231
227
217
214
213
203
192
183
180
200
223
237
243
248
246
249
249
250
241
233
241
242
242
237
237
244
234
233
236
239
232
236
229
237
231
228
238
231
226
232
218
207
208
220
226
233
226
228
223
216
210
217
219
209
210
220
232
238
227
215
214
217
217
225
231
238
244
244
238
232
221
222
226
220
213
212
199
199
203
204
217
226
222
214
218
219
209
200
188
186
182
190
199
203
211
217
205
202
212
212
211
215
214
210
207
206
202
201
199
197
197
200
202
200
199
201
196
199
205
204
203
205
206
203
201
197
193
191
190
187
185
186
187
190
192
196
198
199
201
200
199
199
197
201
205
207
206
206
214
220
219
211
213
214
213
208
213
207
204
202
195
193
198
198
190
187
180
176
173
174
180
183
181
180
175
169
165
164
156
141
140
145
147
149
152
154
155
163
157
152
149
142
134
131
135
156
158
182
202
203
208
212
206
205
205
203
205
206
206
201
199
200
194
187
185
184
182
181
179
176
174
171
173
179
227
228
228
228
227
228
228
227
227
227
226
225
224
223
223
225
225
225
225
225
223
221
220
221
220
220
221
220
219
219
219
219
218
219
217
217
217
215
215
214
215
214
213
212
210
209
208
207
208
207
205
205
208
206
204
208
228
243
243
249
250
250
250
246
245
239
241
242
245
238
237
237
233
232
232
230
225
222
219
205
191
183
179
183
210
233
246
247
247
247
252
251
251
242
239
247
241
245
237
236
242
238
232
241
236
231
236
232
235
231
228
234
225
224
228
212
209
219
221
226
230
227
222
225
213
212
218
213
216
217
222
234
232
222
217
221
218
220
224
231
236
240
241
230
216
218
230
222
218
213
206
204
207
218
219
223
218
204
206
218
218
207
198
198
200
202
204
206
212
217
209
200
210
213
213
216
215
214
209
206
205
203
197
192
192
193
197
200
196
192
193
197
202
205
206
204
205
206
204
201
199
199
200
200
195
194
196
197
199
196
193
196
204
204
203
200
199
196
197
200
205
211
217
221
221
215
211
210
208
211
210
206
208
204
195
194
204
204
195
189
183
178
176
172
172
176
180
184
184
181
173
167
157
153
158
158
150
147
148
150
158
160
163
166
160
156
158
159
159
155
161
176
207
202
202
205
201
208
203
204
207
210
204
200
197
198
194
192
191
188
187
182
179
179
176
172
171
171
166
228
228
229
228
227
227
227
227
227
227
226
226
226
226
225
226
227
224
224
224
224
223
222
223
222
223
222
221
222
223
221
220
221
220
220
220
217
216
218
217
215
214
213
213
212
210
209
209
208
209
208
207
205
204
209
224
234
246
248
249
246
251
250
249
243
240
242
244
239
237
242
240
233
232
228
224
225
221
206
188
179
179
184
194
218
237
250
249
251
248
251
249
244
245
241
241
240
241
231
233
239
238
233
239
234
235
232
231
237
232
230
233
222
223
231
212
211
215
213
230
226
228
221
224
209
205
218
217
217
225
224
235
230
232
223
212
219
218
223
228
240
242
235
214
217
225
226
225
210
213
214
203
212
216
217
206
197
209
223
215
208
210
203
200
201
204
209
211
209
205
202
201
208
212
214
217
213
212
211
208
208
202
192
187
189
195
200
198
200
202
204
202
198
201
203
207
209
207
206
205
204
202
196
193
193
198
200
200
200
199
202
204
202
201
203
205
203
199
199
200
206
216
219
216
219
214
213
210
210
210
210
214
203
198
201
205
202
193
187
188
183
176
175
172
171
175
177
177
181
180
179
178
174
162
151
147
143
148
146
146
153
155
156
163
164
160
156
157
145
141
167
195
205
205
202
197
201
197
205
212
211
208
204
198
192
191
191
191
190
190
189
185
179
178
178
173
169
167
166
229
229
229
228
228
228
228
227
227
227
227
227
226
226
227
228
227
226
225
224
224
225
225
223
224
224
223
223
222
223
222
222
221
222
220
220
219
218
218
217
216
215
215
215
214
212
211
210
208
209
210
207
208
203
213
234
242
247
252
251
249
246
248
246
241
242
239
238
239
242
242
240
233
228
226
224
219
207
196
194
191
191
195
202
220
239
249
249
248
251
250
246
243
243
236
234
240
242
233
231
237
236
237
240
235
236
236
234
231
226
234
231
228
223
216
218
213
214
224
235
226
229
224
221
208
210
219
212
217
220
227
230
227
225
219
217
217
216
226
235
240
240
229
221
224
222
228
215
216
218
204
212
217
213
206
200
209
226
222
209
207
209
205
202
204
207
209
211
208
207
210
211
211
214
218
218
213
213
212
212
206
196
186
186
191
201
208
208
197
201
200
202
205
204
206
210
212
212
204
197
196
195
195
198
200
201
199
199
199
200
206
205
198
198
200
196
191
188
193
201
212
219
218
219
224
216
205
205
210
210
211
209
202
205
205
198
194
194
190
185
179
175
172
170
171
176
179
179
180
182
180
176
170
168
167
163
151
147
144
145
150
153
155
158
162
160
154
145
142
154
187
206
202
209
198
201
198
204
211
215
212
204
199
195
194
195
192
191
189
190
188
182
180
180
174
163
166
178
180
230
230
231
230
230
230
229
229
229
229
229
229
228
228
227
229
228
228
227
227
226
225
225
226
224
226
225
226
224
224
224
223
223
221
220
220
220
218
218
218
218
217
217
216
215
214
213
213
211
211
211
210
209
208
227
248
248
250
250
250
249
246
244
241
239
239
234
234
244
246
238
235
230
224
224
220
206
197
201
206
198
188
189
207
224
244
249
249
247
249
250
245
246
243
240
241
240
240
233
230
228
230
229
237
233
234
230
239
232
228
233
237
225
227
215
206
222
222
223
229
224
227
226
225
208
208
215
209
221
218
229
231
230
223
216
213
214
224
232
239
238
229
220
220
220
233
223
220
218
216
210
208
200
201
204
212
225
224
216
213
213
205
202
205
210
213
209
208
208
211
211
211
210
213
216
218
213
210
208
204
199
192
187
188
189
200
198
189
193
188
198
201
201
200
201
202
204
205
203
203
201
201
202
199
193
193
198
200
201
205
210
208
198
189
183
177
172
179
194
207
217
218
220
221
215
204
212
217
213
210
202
201
205
201
197
193
190
186
185
179
172
172
172
171
170
173
174
175
178
181
182
183
177
172
170
152
141
142
140
142
144
149
153
156
156
152
148
147
155
180
199
197
209
204
206
203
203
213
215
211
202
199
192
194
200
200
194
188
185
186
185
182
181
175
177
184
184
177
173
230
231
230
231
230
231
230
229
229
229
229
229
230
230
229
230
229
228
228
228
228
227
227
227
226
227
227
226
225
226
226
224
224
222
222
221
221
220
219
219
218
218
218
218
217
216
214
213
213
211
210
208
211
210
238
247
249
251
253
250
250
247
238
242
236
229
235
241
244
246
235
226
230
225
217
208
205
207
208
200
190
179
184
212
225
245
248
249
247
247
248
248
244
241
243
242
236
241
234
228
227
239
233
240
236
235
232
233
235
232
234
236
220
226
210
209
230
224
224
232
225
228
227
220
209
205
214
217
223
219
226
231
232
221
213
205
212
239
237
234
237
217
216
221
229
238
226
221
214
212
202
200
214
217
211
221
224
217
213
212
209
205
203
206
209
209
206
207
208
210
207
205
208
214
216
215
210
205
200
192
190
188
189
190
188
190
186
185
189
193
198
194
190
193
200
204
203
203
203
205
207
206
205
200
196
194
200
204
200
199
201
196
186
173
163
168
182
194
208
217
220
222
222
209
206
220
224
212
203
200
204
201
199
196
191
195
195
183
173
182
185
181
177
170
165
166
169
173
177
178
174
170
169
169
160
150
144
140
136
138
137
142
150
152
149
147
151
150
171
195
202
202
206
208
207
202
210
213
207
200
195
192
192
198
201
195
190
188
187
183
178
176
183
193
191
179
171
174
175
231
231
231
232
231
231
231
231
231
230
230
231
230
230
232
231
231
230
229
229
229
230
229
227
228
227
228
228
226
228
227
225
225
224
224
223
223
222
221
221
220
220
220
219
218
217
215
216
213
214
214
214
209
232
244
251
251
253
251
252
250
242
241
243
234
232
241
245
241
238
229
230
228
222
216
212
212
210
199
191
185
178
192
213
231
245
248
244
241
242
246
249
243
239
240
244
239
245
231
230
233
241
241
243
234
231
232
232
232
235
236
226
222
227
211
223
227
226
223
224
225
233
231
213
205
204
210
223
223
225
224
228
223
213
205
212
233
236
229
237
220
212
224
228
235
228
219
208
204
195
204
217
222
219
222
220
211
205
209
214
209
206
203
201
205
207
206
206
206
208
210
210
214
218
214
209
209
208
202
198
193
187
185
189
191
196
198
200
201
200
193
191
195
204
205
204
207
207
208
208
208
209
210
207
202
201
199
197
192
194
194
187
173
162
170
187
203
210
212
216
213
211
204
211
224
217
213
203
203
204
199
195
193
193
193
188
184
186
194
191
181
172
171
172
173
170
170
171
171
173
178
178
175
171
166
159
151
141
137
137
130
138
148
155
159
161
167
171
183
200
208
199
208
212
213
210
210
204
198
198
198
197
207
203
194
192
191
184
181
187
190
193
191
184
181
179
177
173
169
232
232
233
233
233
232
232
232
233
232
232
232
232
232
232
232
231
231
231
230
229
231
230
229
230
229
229
229
228
227
227
227
226
225
225
224
224
223
222
222
221
223
222
221
220
220
217
218
215
215
217
214
227
248
245
252
251
252
249
252
251
243
244
232
232
241
246
243
236
231
236
234
223
218
217
212
210
202
189
188
181
178
193
211
234
245
246
245
236
246
247
247
243
241
245
242
237
235
229
230
238
240
237
244
238
234
228
233
232
238
237
227
219
229
218
229
229
224
228
228
223
232
228
211
202
201
213
231
224
220
226
230
223
212
214
216
222
231
232
224
198
219
231
237
234
220
207
195
193
201
217
219
215
215
220
211
204
206
211
213
208
205
202
201
202
203
205
207
209
212
212
212
212
211
210
207
203
195
189
183
184
188
192
196
203
207
197
201
200
195
193
201
209
199
198
200
209
205
202
204
204
205
205
202
197
196
194
193
198
190
186
175
165
174
199
210
216
212
203
200
196
206
215
215
210
210
212
209
202
195
195
194
191
187
185
188
193
190
173
171
175
178
174
169
166
164
166
169
172
174
173
174
175
175
175
167
158
147
140
137
129
137
144
160
175
172
173
184
195
208
204
211
224
215
213
211
203
197
200
197
199
205
203
193
193
194
191
187
187
188
187
185
183
183
183
180
170
160
163
234
234
234
234
233
233
234
234
234
233
234
233
234
234
233
233
233
231
232
231
231
231
231
231
231
230
229
230
229
229
228
228
228
227
227
227
227
226
225
224
224
223
222
222
221
220
218
218
221
220
218
222
242
246
251
252
251
250
251
251
251
245
234
230
244
247
245
239
230
235
236
228
222
215
210
205
204
193
194
187
181
180
193
209
238
245
247
250
239
250
250
248
243
238
233
240
243
239
229
227
231
231
235
239
235
236
226
233
232
236
238
226
220
221
225
232
227
220
232
231
221
235
227
210
197
200
222
220
228
219
228
227
218
218
217
216
225
232
230
200
209
227
232
237
225
210
206
206
211
213
215
209
211
209
208
202
204
212
212
212
205
200
199
200
201
201
207
210
213
215
212
214
215
208
198
186
184
187
192
196
198
202
206
206
204
203
202
201
197
195
203
204
199
202
204
204
201
201
202
202
202
204
204
202
198
192
192
196
193
186
174
165
171
203
217
210
204
195
191
200
208
209
209
211
211
212
207
199
196
196
196
190
185
187
190
186
183
179
180
181
181
178
173
170
168
166
166
168
171
176
179
180
179
179
179
169
157
142
136
133
130
138
147
159
173
168
176
192
204
213
217
229
221
221
221
211
201
199
202
198
204
202
190
189
194
192
190
189
185
179
177
178
179
182
183
184
184
182
183
235
235
234
235
235
235
235
236
235
235
235
235
235
235
236
235
234
233
234
233
233
234
233
232
232
232
231
231
231
230
229
229
229
229
228
228
227
227
227
226
224
224
224
224
223
222
223
218
220
221
211
236
248
251
249
252
249
248
252
247
247
231
221
243
253
253
240
230
235
238
233
225
221
214
209
208
192
200
191
187
176
174
190
211
236
244
246
247
245
246
248
248
246
239
234
242
241
241
232
231
227
230
237
243
235
233
230
232
237
234
239
223
221
214
223
230
222
214
225
227
223
234
225
202
199
217
224
214
217
224
227
228
216
222
227
222
227
240
223
210
227
231
234
229
216
204
205
208
212
210
209
205
204
208
204
201
205
212
210
203
200
203
201
199
201
206
211
212
214
216
213
206
201
198
195
194
199
202
199
198
198
199
201
202
202
203
202
199
204
206
202
202
208
205
198
194
193
198
198
195
196
197
196
196
195
196
194
199
192
174
180
205
220
217
199
192
190
194
198
203
211
212
211
205
206
206
205
198
196
198
197
195
194
193
189
183
182
188
188
187
185
182
177
170
169
169
167
167
169
174
177
180
179
176
173
165
156
148
139
132
129
136
148
154
163
162
175
195
211
220
236
229
225
229
226
212
206
205
203
205
201
193
192
193
192
189
191
189
183
178
176
179
181
181
183
182
181
181
184
236
236
235
236
236
236
236
237
237
237
236
234
235
235
235
235
234
234
233
233
233
235
234
234
233
234
233
232
233
231
231
230
230
230
229
229
227
227
227
226
224
225
226
226
225
224
225
220
223
221
236
247
250
251
250
254
250
249
250
246
231
224
241
249
249
244
237
242
241
234
227
221
218
216
210
199
201
198
185
183
182
186
198
216
231
245
250
242
245
247
252
244
242
241
236
242
244
240
227
235
232
236
235
242
232
230
234
233
231
231
233
222
219
222
223
227
217
212
221
225
225
229
224
200
205
223
206
225
213
224
229
225
212
218
223
231
242
244
214
216
231
236
235
218
207
201
207
209
211
207
202
205
205
204
201
204
208
207
204
202
200
201
200
199
206
211
213
211
207
205
202
200
200
202
200
195
193
194
193
188
184
186
190
195
200
199
200
204
206
207
208
207
202
198
198
199
191
187
186
188
192
192
193
196
200
200
198
184
174
189
211
214
208
200
196
191
186
193
206
207
210
208
203
200
201
200
200
203
203
198
197
195
193
190
187
184
181
178
176
181
177
174
169
164
165
167
166
166
166
170
173
176
179
179
175
162
148
143
135
130
129
134
144
144
147
160
183
202
216
235
232
234
231
228
222
213
210
204
204
202
192
193
198
194
191
192
190
187
185
184
181
181
182
182
184
183
183
184
183
236
237
237
237
236
237
237
236
237
236
236
235
236
237
235
236
234
234
234
234
235
236
236
235
235
235
234
234
233
232
233
232
230
231
230
230
229
230
228
226
225
227
227
226
226
226
222
224
231
230
243
250
251
253
251
253
252
247
249
241
219
233
250
243
242
240
245
245
237
230
228
225
219
216
201
203
201
199
192
191
189
186
187
205
227
244
248
243
240
247
251
245
243
241
238
236
242
238
228
230
237
230
236
239
234
233
234
236
232
229
230
219
216
228
220
226
212
208
221
222
229
227
222
199
206
202
216
224
218
231
226
216
220
227
225
227
234
230
202
227
229
235
224
209
201
207
213
212
209
204
206
208
202
198
199
207
207
205
204
199
196
200
201
206
211
212
212
207
202
202
205
205
205
200
199
201
200
197
195
191
189
194
198
199
199
201
203
201
205
208
206
201
199
199
195
191
187
193
195
195
196
197
196
199
201
198
193
197
206
214
209
204
196
194
200
198
208
211
214
208
204
199
197
197
201
204
200
201
204
204
201
197
189
185
180
175
175
172
171
175
176
173
171
173
174
174
168
164
162
167
174
177
175
168
166
163
157
149
140
135
133
134
145
158
166
179
192
199
226
235
238
238
232
228
223
216
212
210
204
197
196
198
197
194
193
195
188
182
183
186
186
184
182
180
181
180
181
183
180
237
238
240
239
239
239
239
237
236
237
237
237
237
237
236
237
236
237
237
235
235
236
236
236
236
235
236
235
235
234
235
234
233
233
232
232
231
231
229
228
227
228
228
227
227
227
225
228
223
234
244
250
251
254
253
252
252
247
246
234
236
242
246
246
242
245
245
243
241
236
229
220
213
201
207
209
201
192
191
194
177
176
180
200
228
243
249
244
238
242
249
247
244
243
237
238
236
236
228
234
237
229
238
235
234
231
232
237
231
230
229
217
218
225
226
225
212
212
215
218
229
226
221
205
200
209
227
224
231
231
221
219
220
220
221
217
229
212
216
228
234
223
212
198
200
214
212
211
212
211
211
207
200
195
197
200
205
203
198
194
202
206
205
205
210
212
204
202
202
207
207
203
200
196
193
190
192
195
192
189
195
195
193
194
199
202
203
205
205
206
205
204
201
196
190
192
194
191
196
196
189
192
192
195
196
195
201
210
210
203
196
197
195
198
212
211
215
208
202
198
192
192
195
199
202
204
207
206
206
204
198
195
189
185
182
182
183
183
187
187
185
183
182
179
176
169
165
167
163
164
171
172
174
172
173
166
157
154
144
137
133
130
136
150
168
175
190
216
239
239
237
237
234
228
221
215
212
209
207
204
201
201
201
200
195
188
185
186
184
185
185
184
183
182
186
189
188
185
184
238
238
239
239
238
238
239
238
237
238
238
238
238
238
237
237
237
237
237
236
236
237
238
238
238
236
235
235
234
234
234
234
235
233
233
233
233
231
230
230
229
230
229
228
228
228
227
229
232
248
252
250
253
253
253
253
253
247
239
243
242
249
246
247
248
245
246
248
239
235
226
214
207
219
209
198
202
201
189
174
171
174
184
196
228
245
245
241
242
247
248
247
246
244
237
236
235
234
231
232
234
234
236
235
232
228
233
235
233
234
226
214
225
225
224
222
206
213
214
223
232
218
214
204
200
225
224
231
229
227
217
220
214
218
228
233
213
216
229
235
228
203
187
200
216
215
213
212
209
211
203
197
193
193
197
202
207
202
201
207
207
204
206
209
211
208
202
204
207
211
210
205
202
198
195
193
194
195
193
191
198
196
196
197
202
203
203
204
204
210
209
205
197
190
193
196
197
198
195
193
190
191
195
199
201
203
205
205
206
203
201
201
201
204
211
207
205
198
193
195
203
207
205
204
206
208
207
206
205
203
197
195
189
184
184
185
186
185
187
187
183
180
179
179
179
176
175
174
167
168
176
176
176
170
165
159
152
149
145
141
135
130
134
137
155
169
209
238
237
241
236
235
228
224
220
212
211
211
210
209
204
202
199
194
191
193
192
189
187
186
187
185
184
183
181
180
181
183
182
237
237
238
239
238
237
237
238
239
239
238
239
239
239
239
239
238
237
239
238
238
238
237
238
237
237
236
236
235
235
234
234
233
233
233
233
232
232
232
231
230
230
229
228
228
228
226
231
241
250
253
252
252
252
253
253
251
245
242
248
242
247
248
246
244
246
249
244
238
231
216
210
218
214
196
202
204
187
176
170
171
181
190
200
231
241
244
243
241
238
248
247
246
244
240
232
243
236
235
231
231
234
238
240
234
228
234
236
237
235
220
215
226
228
218
224
205
210
217
225
227
224
217
201
202
227
226
225
228
221
218
217
214
221
234
225
221
221
235
231
212
196
190
212
213
214
216
210
217
209
195
195
192
193
206
211
200
199
198
204
209
211
211
214
210
205
209
210
211
209
209
205
201
198
196
191
189
191
196
199
197
195
197
199
201
200
204
203
206
206
200
200
196
193
196
198
198
200
198
194
190
190
196
201
203
209
210
205
201
200
201
203
203
204
208
204
193
196
208
203
203
202
199
197
200
203
202
203
202
200
194
188
183
180
181
183
184
181
180
182
182
181
177
173
172
173
172
167
161
164
171
172
171
170
166
158
148
143
140
136
127
120
125
128
144
182
226
236
239
235
235
231
223
222
221
214
212
212
211
211
206
200
196
196
195
193
189
188
189
187
186
185
184
186
186
185
182
180
181
239
240
239
238
238
238
239
239
239
240
239
240
239
239
239
239
239
239
240
239
238
239
238
238
239
239
238
238
237
236
235
235
234
235
233
234
233
233
232
230
230
230
231
229
229
227
233
238
246
249
253
253
252
252
253
250
245
247
249
244
250
245
249
246
243
248
249
239
227
215
213
218
211
207
209
199
188
173
165
168
177
193
194
201
229
238
247
244
245
238
244
249
239
244
244
229
245
239
238
229
226
237
240
245
239
230
231
238
238
229
216
218
223
225
218
223
202
208
217
223
222
224
204
202
212
230
212
228
237
211
218
217
214
224
224
221
227
228
234
215
201
203
207
216
217
219
214
216
212
202
191
195
190
187
192
181
180
195
205
210
209
210
213
209
203
204
210
210
210
208
206
202
201
197
196
192
187
188
194
194
190
192
197
202
201
203
205
204
202
195
195
197
198
200
200
200
201
198
195
192
188
188
197
200
201
203
200
199
200
207
211
209
207
205
204
201
199
204
201
197
195
195
198
199
201
201
200
200
202
200
194
189
187
185
184
185
184
179
177
176
176
173
170
169
170
169
164
162
160
165
172
171
171
170
166
159
154
146
142
136
124
111
108
119
167
218
235
231
237
230
231
228
223
223
220
215
213
213
211
204
201
201
200
197
192
187
186
188
189
188
186
186
185
183
182
181
179
176
177
239
240
240
240
240
241
241
241
240
240
241
240
240
240
239
239
240
240
241
240
239
239
239
239
239
239
239
239
238
238
237
237
235
235
235
235
235
234
233
233
233
232
230
230
228
230
237
243
252
252
253
253
253
253
252
247
243
248
246
246
251
245
249
248
247
245
240
233
223
213
224
218
214
215
198
183
178
180
177
167
187
197
196
204
228
243
249
245
242
237
245
247
242
246
241
230
244
234
236
234
237
240
240
247
237
229
231
238
239
228
217
217
224
221
219
220
200
204
217
228
224
230
199
205
223
214
228
240
228
216
216
210
211
224
223
231
231
231
228
211
202
205
213
220
228
217
215
216
206
206
199
200
195
190
192
196
199
208
210
209
209
212
210
202
202
207
207
210
209
205
202
202
201
197
194
190
188
189
194
198
207
209
205
204
205
207
206
203
189
192
197
195
198
205
204
203
199
196
191
190
192
191
196
200
201
204
207
214
218
216
213
204
204
204
203
202
198
191
192
202
200
198
194
193
195
197
198
201
204
204
201
199
193
190
185
181
180
179
178
176
175
174
173
174
173
171
166
162
162
167
172
173
175
171
167
162
159
154
145
134
125
117
117
140
191
221
228
235
231
226
228
229
224
218
215
214
212
211
207
203
200
200
195
190
186
187
191
191
188
189
188
185
186
185
181
178
178
178
178
239
239
240
240
240
241
242
242
242
241
242
241
241
242
241
241
241
241
241
241
241
242
241
240
240
239
240
239
239
239
237
237
237
236
237
237
236
235
234
235
235
234
234
233
236
236
244
248
252
251
252
253
253
253
252
249
247
246
248
248
243
245
247
245
236
237
233
224
218
228
227
223
216
205
189
187
182
169
167
183
198
200
200
211
229
247
249
246
242
237
242
248
241
247
244
235
238
235
236
236
244
238
244
242
237
227
234
241
235
223
219
219
222
216
216
212
202
201
216
224
219
223
201
219
219
221
238
232
221
216
208
203
211
222
228
230
231
231
219
203
202
206
214
221
216
215
226
211
205
203
197
192
183
188
199
207
205
209
210
203
206
210
209
205
208
209
211
210
205
203
202
200
199
194
189
184
181
184
191
197
205
204
202
204
204
203
204
193
197
196
195
196
199
200
201
198
196
194
195
191
187
189
194
197
199
201
202
205
205
199
198
207
206
204
204
194
188
196
202
197
194
194
192
193
199
206
208
207
206
202
197
190
182
182
183
185
182
180
181
182
183
184
183
176
173
174
173
171
170
174
180
181
181
175
169
161
155
150
142
126
117
110
115
155
199
220
227
223
225
228
224
225
224
213
207
207
206
203
201
200
197
193
189
189
190
190
189
191
190
189
190
191
192
194
194
191
185
181
179
241
241
241
242
242
242
242
242
243
242
243
243
242
242
242
242
242
242
242
242
242
242
242
242
243
242
241
240
240
240
238
238
239
237
238
237
237
236
234
235
235
233
233
232
230
242
247
249
253
252
254
255
253
253
252
249
247
250
248
244
246
248
237
238
220
227
229
216
223
230
216
209
201
199
202
191
180
177
182
187
195
202
214
215
234
252
250
241
242
231
243
245
246
242
243
232
225
229
240
235
238
234
244
244
235
228
230
239
238
221
222
219
216
213
218
207
200
199
215
222
213
221
205
219
218
231
228
225
215
212
195
203
221
222
231
235
233
227
207
201
200
203
209
216
213
226
214
204
203
195
180
177
182
200
204
204
207
203
198
192
196
203
199
203
206
207
209
208
209
206
200
197
195
190
186
185
189
194
200
205
205
206
203
197
203
204
200
200
200
196
197
201
204
199
192
191
193
192
189
191
193
197
198
198
199
204
206
207
210
211
213
211
205
201
188
200
206
200
197
192
188
193
197
201
202
201
193
195
198
195
193
191
196
191
185
185
183
181
179
181
182
182
181
177
174
172
170
165
163
167
174
177
175
167
162
155
149
145
140
125
107
100
124
162
195
211
221
222
218
222
219
216
206
200
200
201
200
198
194
190
186
183
184
185
185
185
185
185
185
186
188
187
186
184
180
176
176
176
177
243
243
242
242
243
243
244
243
244
243
243
243
243
243
243
243
242
242
243
243
242
243
242
243
243
243
242
241
241
241
240
238
238
238
237
236
238
237
235
236
236
235
236
234
236
244
246
252
251
249
252
253
252
251
248
245
244
245
246
245
246
245
235
236
223
237
223
217
220
215
205
206
208
195
196
193
185
179
175
175
191
208
229
226
238
248
251
243
234
229
241
246
248
238
242
236
218
216
240
236
235
242
242
243
235
229
228
233
235
219
218
212
211
213
218
204
201
196
221
216
221
218
207
213
219
230
223
220
211
206
192
205
226
227
230
234
232
215
200
201
200
201
207
213
226
213
202
197
189
181
181
190
200
202
206
201
204
193
188
190
196
201
199
204
210
211
213
215
211
200
193
191
192
191
191
194
194
193
196
202
200
191
201
209
212
210
205
205
199
195
190
201
191
183
190
193
189
188
191
192
194
198
200
200
199
206
208
206
205
203
204
193
190
198
206
200
189
191
191
194
200
200
198
196
195
194
190
190
192
190
190
192
190
182
183
185
182
179
177
179
181
182
177
170
167
166
165
161
160
165
172
176
175
168
159
147
137
129
122
110
102
104
128
159
191
208
213
211
204
203
203
201
192
192
193
194
194
193
190
183
178
176
175
175
178
180
182
184
187
188
188
189
188
185
183
181
178
176
178
242
243
243
243
243
244
245
243
244
244
244
245
244
244
244
244
244
244
244
245
244
245
244
243
243
242
241
241
240
240
240
240
239
239
237
238
238
237
236
236
236
235
234
234
240
246
250
251
252
253
253
252
251
249
246
242
243
243
247
244
239
236
236
229
233
242
218
220
216
209
206
200
192
203
204
183
170
168
162
173
192
221
235
241
245
246
251
245
233
231
230
247
242
243
241
239
217
214
239
238
238
240
241
243
236
231
232
232
237
217
208
202
206
208
215
196
199
201
219
210
233
213
212
209
224
228
223
213
208
202
201
212
224
228
229
231
227
200
201
198
199
207
211
223
218
207
207
202
189
186
192
195
195
199
203
199
193
187
185
188
194
197
200
205
210
216
218
204
195
193
186
183
184
184
186
192
196
204
205
205
206
210
216
214
209
205
200
201
201
197
199
188
186
196
199
193
196
198
195
196
197
194
193
197
198
199
202
204
206
204
203
198
201
206
207
197
188
194
200
202
200
200
201
202
200
197
197
202
205
201
196
189
188
193
194
189
187
184
177
175
176
178
176
173
171
167
165
159
156
161
166
169
164
158
150
148
146
142
129
114
105
106
119
155
185
192
190
189
190
186
187
189
190
188
186
183
182
181
177
172
171
173
176
178
181
185
188
191
191
193
193
191
188
184
181
178
177
177
177
242
243
244
244
244
244
244
245
245
245
245
245
245
244
245
245
245
244
245
246
246
245
245
244
244
243
242
242
241
241
241
241
240
238
238
238
237
238
238
238
238
238
237
237
243
248
250
252
251
252
252
251
251
250
246
243
243
243
244
242
238
223
238
228
238
232
221
219
207
201
206
208
205
197
183
169
164
170
164
184
211
237
236
241
245
247
247
247
237
237
223
243
244
247
245
240
220
222
237
238
235
239
238
239
239
231
228
233
232
215
198
198
200
202
215
193
200
212
215
224
232
210
206
222
228
223
214
209
207
200
210
218
220
226
226
231
217
194
201
200
201
208
219
213
205
206
210
195
190
191
191
191
198
205
199
190
189
185
185
190
194
202
207
210
210
204
193
189
189
186
185
187
188
189
192
200
199
200
201
207
214
215
213
210
205
204
205
204
203
197
186
193
200
197
194
193
186
187
189
189
191
196
201
200
194
194
198
200
199
199
202
203
201
206
198
186
193
205
202
199
201
201
199
196
197
201
200
200
201
198
197
198
202
205
199
196
196
190
179
178
177
176
176
175
174
170
164
155
153
158
164
164
158
154
151
149
143
130
118
106
101
105
123
148
167
170
175
180
181
181
183
187
185
182
179
177
175
174
170
169
172
177
183
186
188
190
192
193
191
191
190
187
185
186
183
180
178
179
181
245
245
245
244
244
245
245
246
246
245
245
247
248
247
245
245
243
243
244
245
245
244
244
243
244
242
241
243
242
242
242
241
239
238
238
238
237
236
237
239
238
236
237
240
249
248
251
251
252
252
253
252
249
249
243
243
246
243
243
241
231
229
236
232
232
222
223
211
203
211
214
210
192
176
172
166
157
175
178
212
228
239
244
243
239
245
248
249
238
244
226
241
244
249
244
236
223
225
233
240
244
235
235
233
233
226
230
237
228
208
191
192
196
201
208
200
210
206
217
224
223
204
206
230
225
213
208
204
201
204
217
222
221
222
225
226
202
200
197
193
200
213
213
210
208
209
203
186
188
194
191
193
207
203
189
188
185
187
192
195
201
210
211
205
194
190
189
191
195
198
200
203
207
213
216
218
216
218
218
216
211
206
205
202
197
194
196
197
194
189
195
199
199
196
182
188
188
190
191
193
192
192
194
196
198
198
199
204
207
206
207
208
203
193
196
203
207
205
205
202
197
197
197
197
199
204
204
203
205
206
207
206
201
198
197
195
193
193
182
175
177
173
171
167
161
156
152
147
152
164
172
170
164
159
155
152
145
131
120
108
98
101
117
137
153
162
168
173
174
180
180
179
177
173
170
170
172
176
178
178
181
186
189
189
189
192
194
195
192
190
189
185
183
182
179
175
172
170
168
245
245
245
245
246
245
245
246
247
246
247
247
247
247
246
244
241
243
243
243
244
243
243
242
243
242
241
243
242
241
242
241
240
240
240
240
239
236
237
237
237
239
237
243
250
248
248
250
251
252
252
249
247
243
239
248
248
243
242
237
235
234
227
234
223
223
225
213
213
218
209
194
178
174
173
157
167
196
197
225
234
241
243
238
246
244
248
248
238
241
228
228
248
243
245
239
229
227
234
237
241
233
230
233
234
226
228
235
217
207
188
184
194
203
209
202
204
210
230
218
220
207
209
226
217
206
199
192
193
210
214
214
217
215
228
215
200
198
191
193
201
211
210
206
210
210
193
185
186
187
193
204
209
187
178
181
180
183
191
202
207
211
206
195
187
189
192
193
194
195
198
203
207
207
207
210
205
205
204
203
204
203
205
204
200
199
199
194
193
196
202
202
183
175
185
189
191
192
182
187
188
193
197
194
197
203
202
200
202
206
207
195
195
205
208
206
206
203
196
191
198
198
195
196
198
198
201
202
202
203
203
201
203
206
204
199
188
183
180
180
174
166
160
157
161
161
155
150
156
165
172
172
166
159
153
151
145
123
111
101
99
106
117
134
152
159
167
166
175
175
171
170
168
166
166
173
178
179
181
183
187
190
193
194
195
197
198
197
193
191
189
185
184
184
180
176
172
170
171
246
246
246
246
247
246
246
247
248
248
248
246
246
247
247
247
245
245
246
246
245
244
243
242
241
242
242
244
243
241
242
240
241
241
240
240
238
240
237
238
239
241
243
248
250
251
250
252
251
250
250
250
246
238
244
250
248
244
236
233
236
231
235
229
227
224
213
214
219
218
196
181
181
176
169
170
199
198
215
236
230
244
242
243
244
245
247
245
238
239
237
236
244
235
227
239
235
229
232
239
234
237
227
226
231
224
228
238
217
212
185
178
190
202
214
203
206
223
218
220
222
205
219
219
213
200
185
174
185
217
214
209
212
212
214
201
194
195
190
200
202
207
212
212
214
196
181
178
183
188
200
204
191
177
176
180
187
192
199
206
208
207
199
187
186
187
186
190
193
195
202
211
215
213
209
202
199
198
200
202
200
199
200
199
196
196
194
200
201
198
195
183
184
190
190
182
180
189
187
190
192
193
199
205
203
203
204
201
200
203
204
202
200
203
203
196
197
201
199
197
193
186
181
186
190
192
193
195
198
198
198
195
188
185
186
185
183
191
189
188
183
175
168
158
155
156
155
154
160
168
170
169
163
157
152
149
145
134
120
113
109
111
120
130
153
158
161
169
168
166
163
164
169
176
177
178
181
182
185
189
191
194
197
198
198
200
200
200
198
195
192
187
184
181
176
172
169
167
167
247
247
247
247
247
247
248
248
248
248
247
245
245
246
246
246
247
246
247
246
244
244
245
243
242
243
242
244
243
242
243
242
241
241
242
241
238
241
240
240
238
238
247
248
250
250
251
252
252
250
251
252
243
241
245
243
248
241
234
233
230
232
233
222
228
220
221
226
210
201
188
185
187
179
174
178
205
206
224
234
232
238
238
243
234
242
246
245
241
244
230
232
237
242
226
236
232
233
225
234
235
238
225
224
227
228
231
237
219
210
183
176
188
208
211
206
211
220
211
223
214
202
221
217
208
194
177
167
190
223
204
207
205
201
195
195
200
188
193
203
206
210
214
217
202
181
183
185
193
201
197
192
182
180
181
182
186
200
207
214
210
196
183
175
177
185
190
192
200
203
198
196
196
199
202
201
192
192
197
198
198
200
201
200
200
199
198
198
199
190
187
188
189
187
189
193
189
190
191
194
195
205
208
202
201
202
202
203
203
203
204
204
206
209
204
205
207
208
200
189
175
174
180
188
191
194
198
198
200
198
197
194
191
190
192
191
184
188
185
187
180
172
165
157
158
159
153
155
164
169
168
169
165
160
156
150
144
136
126
113
103
110
121
135
154
159
160
163
157
154
160
169
174
179
180
182
182
184
188
190
191
195
197
199
198
199
199
198
195
191
188
183
178
173
170
166
166
165
163
248
248
248
248
249
247
248
249
248
248
247
245
246
247
247
247
246
247
247
245
244
244
245
243
242
242
242
244
244
242
243
242
242
242
242
242
241
238
239
239
240
242
246
251
251
251
251
251
252
252
254
247
246
245
238
243
241
239
239
232
231
233
228
221
214
218
229
221
207
196
189
181
173
170
176
211
221
215
219
232
240
240
235
244
231
232
239
238
244
243
240
235
243
243
237
237
237
234
218
219
235
239
223
224
233
226
233
234
216
208
179
177
188
214
209
211
210
215
209
215
204
207
228
214
206
189
170
166
189
222
202
204
193
186
184
190
202
185
198
207
210
218
223
212
189
179
188
201
212
200
193
192
183
182
182
184
200
211
207
193
184
178
176
179
183
185
188
190
189
189
189
193
197
200
200
200
200
196
194
194
196
199
202
201
200
199
199
196
192
192
191
189
190
189
192
193
187
190
190
193
194
202
207
205
210
213
209
203
200
199
200
202
204
206
207
206
202
194
186
181
183
188
188
185
188
195
194
198
201
203
202
198
196
196
193
189
189
190
190
190
184
179
176
170
166
163
157
158
165
168
166
166
163
159
155
146
140
129
116
112
111
116
119
139
150
149
153
150
151
160
169
170
174
178
181
182
183
184
187
190
191
194
196
198
197
198
196
194
189
184
183
180
173
164
159
156
158
160
160
249
249
246
247
248
248
247
249
249
248
247
247
247
248
247
247
248
247
248
247
246
246
245
245
244
244
244
245
244
243
244
243
243
242
241
242
240
242
240
237
242
244
244
250
251
252
252
252
251
251
252
251
245
237
245
246
236
237
236
228
234
231
223
211
218
231
222
215
202
192
186
183
178
191
219
223
230
225
219
241
239
242
239
239
236
239
242
246
241
240
240
230
238
245
242
239
237
239
225
232
236
240
224
221
231
231
238
225
218
213
182
187
188
221
208
218
217
208
216
209
202
216
229
212
208
183
164
163
200
229
196
202
182
175
174
196
203
191
205
214
217
229
215
197
191
195
207
202
195
193
190
187
184
183
186
196
210
207
196
188
187
187
187
188
187
187
189
189
190
192
189
190
194
201
202
202
205
200
197
196
202
205
209
210
210
209
206
203
198
194
190
192
194
195
193
190
189
192
200
204
202
208
214
213
215
212
203
196
193
194
195
197
199
204
204
197
191
191
201
201
191
184
178
175
178
184
192
200
202
199
198
195
193
195
195
189
186
184
184
185
188
189
177
166
168
168
164
165
166
167
165
162
158
157
154
147
141
127
116
101
96
102
118
137
144
143
147
158
171
172
179
179
176
178
181
181
188
184
187
190
191
192
193
192
192
191
192
193
189
186
185
184
179
172
167
161
158
158
159
246
246
245
246
248
249
247
249
249
249
248
248
247
248
248
248
248
248
248
248
247
246
246
245
245
244
243
245
245
244
244
244
244
243
242
242
243
240
240
241
243
246
250
251
249
250
253
252
251
250
252
252
238
241
249
243
241
237
234
235
226
216
206
219
227
223
215
207
203
194
188
196
208
222
223
235
228
228
225
240
239
239
243
243
241
232
230
245
238
244
239
240
241
246
244
240
237
246
230
238
238
238
229
216
217
225
235
233
222
208
179
199
207
219
205
209
215
211
218
206
208
227
228
214
208
184
165
164
207
229
200
201
178
171
176
198
196
205
218
225
229
220
201
200
199
201
207
196
199
195
190
186
186
189
197
208
198
190
192
194
190
184
181
181
184
194
199
196
192
188
188
188
194
201
203
209
208
203
200
198
204
207
210
209
208
206
205
203
198
196
194
189
188
192
193
193
193
194
198
200
201
206
207
206
207
208
207
205
201
201
202
201
206
209
202
199
205
206
194
184
183
180
178
177
179
182
188
197
200
200
201
199
194
191
188
183
184
188
191
191
191
186
186
184
176
173
171
167
163
160
156
154
154
155
152
147
144
138
131
114
110
121
128
127
132
142
156
166
171
170
177
174
177
180
180
179
182
183
187
191
192
193
195
196
197
197
197
197
194
190
186
182
177
172
169
163
157
157
156
245
246
246
248
250
250
250
250
251
250
249
249
249
250
249
249
248
248
249
248
247
247
247
246
246
243
242
246
246
245
245
244
244
243
243
243
242
239
237
243
241
250
252
251
251
251
251
251
250
251
252
244
238
249
244
243
242
236
237
229
207
203
213
228
226
222
222
220
213
205
212
220
236
240
233
244
233
228
222
239
238
237
239
245
241
244
244
240
244
246
235
238
239
245
241
245
243
235
234
230
245
241
228
229
209
223
228
232
227
206
188
201
208
219
214
201
214
216
209
204
216
227
222
212
207
181
167
173
217
219
196
197
182
173
184
204
199
217
227
230
220
199
192
197
196
192
190
183
190
189
192
194
199
202
203
191
189
195
190
186
181
179
182
186
194
196
192
190
190
191
185
178
184
196
202
211
208
208
206
203
202
205
209
210
210
207
207
205
202
201
200
195
195
194
189
187
188
192
198
201
200
202
204
206
207
205
198
195
198
201
201
197
198
201
200
204
198
195
193
191
185
178
176
178
181
184
184
186
191
196
195
197
197
194
195
195
194
191
190
189
190
191
188
182
175
169
165
160
156
151
148
148
146
144
141
139
134
121
110
93
91
103
119
126
144
158
166
171
174
173
175
177
176
177
176
177
179
180
184
188
190
192
195
196
197
196
195
194
190
187
183
179
174
166
160
157
155
156
161
248
248
247
249
250
249
250
249
250
250
248
248
249
250
250
249
248
247
249
250
249
247
246
246
246
244
244
246
245
244
246
244
244
243
244
243
242
244
240
243
241
247
250
251
252
250
249
248
250
251
248
242
241
248
243
240
239
228
223
218
206
218
229
229
219
223
232
233
231
230
231
238
230
229
234
241
232
228
220
229
241
237
231
238
243
241
247
244
223
244
241
241
233
247
242
238
234
238
238
239
237
233
228
222
221
212
228
222
231
207
189
216
213
202
213
197
206
218
205
207
224
222
212
204
209
181
174
188
219
215
196
195
182
174
196
208
210
215
224
223
209
196
192
184
186
186
185
186
190
184
188
194
190
186
182
186
194
192
189
185
181
183
187
192
194
191
190
185
184
189
190
189
189
185
189
203
204
209
205
204
208
210
213
213
212
209
209
207
204
201
199
199
197
193
192
191
189
193
197
199
200
200
199
200
199
202
198
195
200
197
196
200
203
201
201
202
200
195
186
175
168
170
175
182
187
188
194
200
198
194
196
199
195
195
199
197
190
192
191
193
194
190
189
190
186
178
175
170
163
153
140
136
139
139
141
140
137
131
122
114
111
112
126
143
156
163
166
164
168
170
170
171
171
174
172
175
177
178
182
186
189
192
195
195
193
193
193
192
188
184
181
176
170
166
166
155
149
156
166
249
248
247
246
247
246
248
248
249
248
248
249
249
249
249
249
247
248
248
249
249
248
247
246
246
246
245
244
243
244
246
245
245
245
243
243
243
244
242
246
250
251
250
251
254
251
247
246
251
251
246
241
244
241
244
240
233
223
219
222
223
226
224
217
218
224
229
229
231
230
241
237
234
241
236
238
227
223
233
241
238
230
232
235
238
244
237
244
228
226
240
242
239
237
235
235
242
244
235
242
237
232
228
218
221
231
232
233
225
208
206
231
222
212
206
186
207
207
210
221
226
214
206
201
203
187
187
221
228
215
198
198
184
170
201
214
207
217
219
219
195
187
184
178
186
188
189
188
183
175
180
184
184
184
182
188
188
189
189
186
185
185
185
185
189
190
182
181
187
190
192
192
192
194
192
182
192
209
209
208
209
207
208
209
209
212
210
207
204
202
198
200
197
190
192
190
187
191
196
199
201
200
195
192
193
195
202
208
207
202
201
203
198
191
195
195
181
166
168
179
188
186
182
182
185
188
194
200
205
205
206
205
203
202
196
192
190
189
190
190
188
191
189
190
190
176
165
162
157
154
151
142
140
143
142
137
130
114
95
93
106
122
143
157
161
159
161
167
167
168
167
165
166
170
172
173
177
178
181
186
189
192
195
193
190
191
192
193
190
185
180
174
168
163
157
149
150
159
168
250
249
247
248
249
249
248
248
249
249
249
249
249
250
250
249
248
249
249
250
249
248
248
247
246
246
245
246
244
244
246
246
246
244
243
244
243
240
244
245
251
251
251
252
253
252
245
247
250
246
242
237
239
241
243
237
224
223
223
227
228
223
221
221
222
233
236
234
234
233
237
237
239
235
238
242
226
225
230
237
232
233
217
237
237
234
243
236
234
221
240
243
237
234
239
226
244
247
238
224
241
231
231
229
212
234
238
234
222
211
224
235
218
211
207
198
216
213
224
237
212
216
196
207
197
193
229
227
223
206
196
203
182
177
197
218
210
217
215
204
177
175
186
185
189
189
189
184
177
170
177
180
180
185
190
189
188
188
184
181
182
183
184
190
189
186
185
190
191
190
193
191
189
192
197
193
194
213
222
219
220
213
211
210
209
209
206
202
200
199
196
194
193
191
192
193
186
189
194
195
199
197
194
197
204
206
202
199
201
201
197
196
198
193
191
188
186
194
196
195
192
186
181
180
182
183
186
196
206
201
196
184
180
176
171
175
182
187
192
194
193
194
190
186
188
186
182
178
167
157
155
144
143
148
145
139
136
128
101
81
108
143
163
170
173
165
160
165
161
163
168
165
163
164
166
170
171
175
179
182
185
188
192
190
187
188
189
189
188
182
178
173
168
159
150
150
151
161
172
250
249
248
249
249
249
248
248
249
250
250
249
249
250
250
249
248
249
249
249
248
248
248
248
247
246
245
246
244
244
246
247
246
242
242
242
245
247
245
248
252
252
252
252
253
252
250
250
247
242
238
238
238
243
237
225
223
228
229
220
216
218
216
224
233
243
238
230
227
230
232
236
237
243
243
234
225
227
232
238
235
235
223
230
239
239
236
237
237
233
242
241
240
239
234
227
236
243
243
227
243
239
237
221
201
217
228
230
234
221
214
228
221
218
185
200
224
228
236
219
218
209
191
207
206
229
245
245
223
203
208
184
176
223
205
208
211
214
207
190
171
181
182
179
191
193
198
185
170
167
175
180
181
185
190
189
188
186
183
180
182
184
185
188
186
185
189
188
185
190
192
194
195
192
196
202
201
205
208
213
215
213
212
209
209
206
203
200
197
196
190
191
193
194
195
196
193
196
196
199
202
203
204
200
200
198
195
197
199
197
193
189
190
192
197
201
202
202
198
194
189
186
179
177
185
191
195
196
191
181
175
182
184
189
195
199
203
203
197
193
194
193
190
190
192
190
182
172
168
161
141
133
133
134
135
139
140
138
128
116
136
159
180
182
175
161
165
158
161
164
161
161
161
159
163
165
168
172
176
179
182
185
189
187
186
187
188
187
184
180
173
164
158
153
148
152
159
171
177
251
250
247
248
249
248
248
249
250
250
250
249
250
250
250
249
248
248
248
248
247
248
248
248
248
246
247
246
245
244
247
248
245
241
240
241
243
240
238
250
251
251
252
252
252
252
252
249
249
243
230
222
237
237
228
225
230
227
222
222
221
223
223
230
239
236
226
220
232
234
243
242
246
239
243
232
217
237
238
230
225
228
211
232
237
239
230
236
234
234
232
246
229
234
233
229
233
244
247
241
240
235
233
225
211
215
241
242
222
224
217
213
217
215
180
208
215
219
233
221
220
199
202
219
228
232
244
226
217
206
203
194
218
225
214
204
217
207
185
178
166
170
180
203
209
198
186
173
167
172
183
188
189
189
191
188
187
184
181
181
184
186
185
185
190
192
189
189
188
187
185
180
177
179
188
201
205
201
201
208
208
207
211
211
207
204
202
199
195
193
191
194
195
194
193
194
200
203
200
204
206
207
207
206
207
206
203
204
202
197
194
195
199
200
200
201
201
198
193
189
184
178
176
176
186
188
190
191
191
188
189
205
201
200
200
194
197
191
187
191
195
194
191
190
191
187
181
175
165
158
137
129
124
118
112
107
104
108
113
116
135
170
179
170
158
169
175
175
163
166
169
167
163
161
163
165
168
171
175
179
182
185
190
188
185
183
183
183
179
172
168
163
158
151
147
154
167
172
172
251
249
248
250
250
250
250
249
249
251
251
251
250
250
249
249
248
248
248
248
247
247
247
248
248
248
247
246
245
245
248
248
245
243
242
243
243
243
246
250
252
252
253
253
252
253
252
251
245
240
226
229
234
228
229
231
227
228
232
229
228
225
225
234
233
230
230
231
240
242
240
245
244
240
239
222
223
229
240
241
219
211
210
222
236
230
226
230
230
236
232
243
241
237
230
225
224
239
248
248
230
232
232
216
210
199
236
238
225
214
215
217
212
203
187
209
214
237
222
214
218
188
206
226
243
245
244
218
216
214
197
222
232
233
212
222
213
196
173
168
157
181
207
208
199
186
178
176
179
189
194
196
194
189
182
181
186
189
185
183
185
185
186
189
195
198
194
192
187
180
182
186
189
191
194
203
207
204
207
203
203
204
206
206
205
202
202
199
197
194
190
192
197
196
196
198
201
207
203
206
213
209
205
207
206
206
208
208
205
202
199
198
200
202
200
200
200
196
196
194
188
185
184
179
185
180
179
189
187
193
196
200
198
197
196
191
197
200
201
199
200
196
189
186
186
181
174
169
160
158
146
131
124
126
130
131
127
118
118
128
151
170
176
162
170
190
180
161
166
168
165
167
168
167
168
168
170
173
177
181
182
186
190
190
186
181
180
180
177
171
167
162
158
155
154
160
170
170
168
250
250
248
249
250
249
250
250
250
250
250
250
250
250
250
250
247
248
250
248
247
248
248
249
248
248
247
246
246
245
247
248
246
244
243
244
245
245
249
250
253
253
252
251
251
252
251
251
247
235
235
238
230
232
231
222
227
234
235
228
222
226
223
224
232
234
240
238
234
230
236
245
232
235
240
204
214
228
236
232
232
226
224
219
233
241
224
233
233
219
232
239
241
238
230
231
212
229
245
246
239
232
227
215
212
215
215
239
213
201
211
222
213
204
211
208
219
245
221
222
212
191
216
220
236
244
238
221
217
206
220
240
232
222
217
212
194
190
170
155
165
180
184
193
190
183
178
178
179
179
179
180
179
175
177
183
188
187
180
178
181
182
189
200
202
201
197
188
182
184
183
179
178
183
188
190
192
189
193
200
201
201
203
204
201
201
201
200
198
196
196
197
196
197
197
202
205
212
211
211
212
208
203
202
201
201
201
199
194
191
191
189
189
196
201
202
200
197
198
194
184
181
177
170
180
182
185
195
198
204
203
204
207
205
200
199
199
196
194
193
193
191
187
184
185
183
179
170
170
165
154
134
118
115
117
120
119
122
126
144
159
176
171
179
194
181
168
174
171
169
168
179
180
174
169
165
170
173
176
178
181
185
188
188
187
183
182
180
178
177
171
159
151
156
158
163
172
169
168
249
249
250
249
250
250
250
250
250
250
251
250
249
250
249
249
248
249
250
249
248
248
247
247
248
249
248
248
246
245
245
245
245
246
245
244
243
246
249
249
253
252
252
248
250
252
251
250
244
239
237
233
237
229
226
235
235
231
226
226
226
220
222
224
229
232
237
238
237
239
235
246
240
246
244
209
215
220
225
235
229
227
223
222
223
237
229
223
229
215
219
231
234
234
225
231
212
217
237
241
243
241
228
220
213
216
203
235
217
197
212
232
224
217
222
236
235
235
221
221
201
220
235
226
237
241
231
217
209
201
220
236
214
201
207
209
197
187
166
152
148
155
168
185
182
185
189
184
180
186
183
178
172
172
174
179
177
176
171
175
182
189
198
203
200
194
187
187
187
185
182
177
177
184
187
192
203
205
203
205
204
204
206
205
202
201
199
195
193
197
194
196
199
202
201
205
208
210
209
210
205
202
201
200
201
201
200
200
202
201
199
200
200
197
198
198
197
196
195
190
182
181
182
181
183
186
186
187
190
197
203
202
203
202
200
199
199
199
201
200
193
190
188
183
184
181
175
168
164
158
151
147
143
127
118
121
116
115
126
149
168
181
189
195
195
182
176
185
169
172
190
187
175
164
166
171
176
177
177
179
184
186
186
186
187
188
187
186
184
179
173
165
162
158
161
167
162
165
166
250
250
250
250
250
251
251
250
251
251
251
250
249
250
250
250
249
249
250
249
249
249
248
247
247
249
248
249
248
247
246
245
244
243
244
245
246
247
250
248
251
253
249
249
251
252
253
248
242
239
235
233
225
224
238
239
231
229
226
224
218
219
219
227
229
237
232
237
240
231
244
243
246
243
238
226
220
229
231
224
234
220
219
219
224
222
231
230
225
229
211
238
227
227
231
223
225
217
243
237
242
246
238
213
214
223
191
218
235
218
232
221
223
211
229
247
239
235
228
225
207
234
235
240
226
226
213
216
201
236
241
225
222
216
191
202
191
179
159
143
150
169
168
163
170
191
187
186
185
183
179
176
166
168
175
182
179
176
181
190
196
209
210
203
200
195
191
188
183
176
175
175
178
185
191
198
202
201
201
204
205
207
208
205
202
201
199
196
194
194
194
198
201
202
201
200
202
204
206
205
201
196
188
187
195
204
204
204
205
203
199
196
201
200
201
201
202
202
199
197
201
203
205
205
199
194
192
192
193
196
199
201
201
200
200
201
202
202
196
188
189
186
181
177
178
176
173
168
163
162
157
155
148
130
114
112
116
121
136
162
181
192
196
203
192
195
192
180
187
198
192
175
172
171
179
181
177
178
184
191
189
188
186
186
188
187
187
188
181
171
164
167
167
167
173
169
170
173
173
251
250
250
249
249
250
251
251
251
251
251
250
250
250
250
250
250
250
250
249
249
250
248
247
247
247
246
248
247
247
247
246
247
248
250
246
244
247
250
248
251
252
247
251
252
251
249
247
246
238
230
227
229
238
242
235
230
225
217
215
218
224
229
238
230
237
242
237
231
239
246
241
251
238
235
215
226
218
220
228
230
219
210
221
224
224
220
229
233
225
219
225
244
222
232
226
227
221
234
245
237
246
246
221
224
224
196
217
237
240
216
209
205
193
227
244
233
230
231
214
234
242
243
235
217
226
224
215
237
248
245
232
223
197
195
195
184
178
153
147
154
162
188
192
168
180
182
180
179
171
169
169
169
174
181
187
185
179
187
199
206
213
216
213
207
200
193
187
179
174
175
180
188
196
201
201
197
196
201
208
210
207
201
199
198
199
198
198
198
200
199
200
202
203
204
206
207
209
208
207
205
205
204
200
203
204
204
202
199
196
193
191
195
199
200
202
204
201
201
199
198
198
199
199
195
192
194
199
203
204
202
200
200
199
201
203
199
195
193
190
190
186
181
180
180
180
176
170
166
166
162
158
155
137
109
104
107
112
135
168
193
203
207
202
206
193
181
196
203
197
184
185
186
186
190
180
179
193
191
176
181
184
182
182
184
184
183
183
184
185
183
185
183
181
179
177
176
181
182
251
250
249
249
249
250
251
252
251
251
249
249
249
250
250
249
250
249
250
249
248
248
248
248
248
247
246
249
248
247
247
246
249
248
246
247
249
250
251
249
252
250
249
251
251
251
250
248
240
230
232
240
245
239
234
232
222
214
220
224
222
214
221
228
231
232
237
232
230
240
244
248
239
227
231
228
223
216
219
222
228
217
229
224
216
223
212
217
230
217
225
222
243
221
213
235
228
229
209
232
235
244
243
210
212
202
200
211
244
243
204
208
197
188
227
240
235
221
230
235
243
242
240
223
215
225
218
232
247
249
243
219
201
197
189
186
177
178
162
153
186
168
160
198
197
185
175
214
196
195
171
169
171
179
181
187
186
187
193
201
211
216
220
220
213
207
198
191
188
187
186
188
192
197
201
205
206
206
204
201
197
195
195
198
200
198
194
194
192
191
198
200
202
204
207
209
209
208
205
202
204
206
205
205
209
210
208
205
201
198
198
195
191
190
188
186
193
200
197
194
193
193
198
201
200
197
196
201
205
206
204
201
203
205
207
208
208
204
204
201
193
185
181
179
180
175
169
162
158
159
154
147
137
125
103
90
100
117
141
173
195
205
208
205
194
194
212
207
202
193
192
195
194
186
181
189
194
182
167
184
179
172
182
183
183
185
183
180
177
178
177
175
172
175
185
193
190
183
164
251
250
249
248
249
250
251
252
252
251
249
248
249
249
250
249
249
249
249
248
248
248
248
248
248
247
246
248
249
248
247
247
247
249
245
244
247
249
248
250
250
248
252
251
250
251
252
244
234
237
244
245
244
237
230
221
211
223
223
215
212
219
231
239
236
237
239
237
236
242
249
238
216
218
238
238
231
205
212
220
225
217
219
219
205
218
207
198
221
228
225
222
236
238
203
229
230
225
212
219
231
245
237
230
226
201
197
197
227
242
226
213
178
191
221
228
238
233
236
239
249
235
234
227
221
232
229
233
245
249
245
199
187
190
180
187
186
166
179
195
172
190
185
193
226
196
195
227
187
175
166
169
170
170
174
180
186
198
199
201
198
198
200
203
201
197
194
188
182
180
180
182
185
193
200
201
196
194
192
189
190
193
198
198
197
198
195
195
196
194
197
197
200
205
211
211
211
211
208
206
206
205
201
198
202
206
209
210
209
210
211
205
199
195
192
191
195
192
187
186
192
193
196
199
201
203
202
204
203
198
195
192
195
200
204
202
204
205
200
195
193
188
182
179
179
175
167
161
158
160
154
142
130
122
107
96
101
116
140
178
199
210
204
194
208
216
210
207
200
198
197
196
189
184
198
196
173
173
184
178
178
180
173
172
171
169
166
165
165
170
175
178
182
187
193
191
179
153
155
249
250
250
249
249
250
251
252
253
252
251
250
251
251
251
251
251
251
249
247
248
249
248
248
248
247
246
248
249
249
248
247
247
247
248
246
250
248
248
253
250
250
252
247
244
252
247
236
241
243
239
239
237
232
223
220
226
218
208
208
216
226
231
239
239
246
240
234
239
247
244
236
224
234
239
244
244
222
191
216
215
211
206
221
205
216
205
196
207
216
218
213
223
242
227
213
230
220
218
208
219
228
234
240
226
199
202
205
226
235
238
206
186
199
233
222
237
230
229
240
241
232
221
224
213
243
234
245
244
241
237
211
183
178
184
204
204
161
168
201
209
208
190
181
227
231
201
198
186
157
147
161
183
174
170
183
193
203
209
202
198
195
192
192
188
181
177
176
177
177
172
178
186
193
199
201
197
194
195
196
194
194
195
197
198
201
201
201
202
202
201
204
205
205
206
210
212
211
208
208
207
204
202
201
201
201
202
203
202
195
188
186
191
194
198
206
210
209
207
207
207
204
199
201
205
203
202
199
193
190
194
194
191
194
195
196
199
193
193
191
190
188
182
179
179
166
157
154
154
158
161
161
154
143
127
113
104
114
143
179
191
197
207
210
211
216
207
207
204
199
196
195
191
196
192
175
181
185
180
184
180
173
177
180
177
175
175
175
176
179
181
182
185
186
185
173
166
172
179
249
250
250
251
250
250
251
251
252
253
252
251
251
252
252
252
252
251
248
247
248
248
248
248
248
247
248
249
249
249
248
245
247
244
246
244
250
247
251
249
250
252
251
241
245
250
239
236
243
240
232
232
230
228
232
233
213
212
219
209
212
228
232
235
242
244
234
241
234
239
229
222
227
228
230
245
247
220
202
194
212
214
200
206
219
204
190
197
203
219
210
216
200
239
242
199
213
221
215
207
209
210
235
249
214
208
212
212
226
232
228
193
194
207
230
222
237
234
231
238
237
234
227
213
236
246
232
241
252
244
233
206
183
183
197
192
219
203
148
185
206
226
231
193
171
196
214
192
175
181
148
149
176
210
174
174
187
187
197
196
196
195
192
186
183
176
172
170
169
174
177
186
197
203
205
206
201
193
191
189
185
187
191
191
195
199
202
202
196
191
193
200
203
206
209
212
215
214
211
211
208
207
204
203
201
201
202
200
200
199
195
187
181
174
171
177
189
192
198
204
202
198
194
198
201
200
199
200
198
196
198
190
182
185
186
190
192
191
195
191
188
186
186
183
176
169
167
169
170
168
168
163
158
145
130
122
112
116
143
166
174
196
200
210
206
206
209
206
204
201
199
197
197
197
186
181
184
184
176
168
177
175
180
179
176
175
171
169
173
174
177
184
188
178
173
182
189
185
174
250
250
250
251
250
251
251
252
252
253
252
251
251
252
252
252
251
251
248
247
248
248
248
248
249
247
248
248
248
248
249
250
248
246
243
249
251
247
253
246
250
254
248
238
251
242
231
241
239
234
231
236
233
230
232
226
224
215
204
204
220
224
238
243
249
239
239
227
227
238
234
237
239
235
238
246
233
235
199
211
205
230
204
190
210
222
183
193
206
242
220
209
200
227
234
233
207
229
207
206
195
215
225
246
225
219
219
206
209
222
217
193
194
220
224
208
238
248
239
237
225
230
213
217
238
245
237
239
250
235
201
187
194
185
182
198
222
237
154
163
207
227
238
236
209
181
191
182
203
158
178
160
138
185
185
162
175
177
187
190
189
189
185
181
174
169
169
171
173
177
179
187
194
199
201
201
197
192
191
190
189
194
199
199
200
201
201
202
203
203
199
204
206
205
206
211
213
214
215
214
209
209
210
207
202
200
200
201
200
196
189
183
180
180
183
183
184
190
194
195
196
194
194
198
201
201
200
199
195
189
183
178
174
181
184
185
190
193
194
194
194
190
184
174
169
172
174
165
163
161
155
151
142
133
125
121
115
119
138
153
170
189
195
206
209
210
207
206
205
203
202
201
204
198
193
187
181
169
173
182
176
174
167
164
162
163
165
166
171
176
180
186
186
183
185
189
184
178
181
250
251
251
250
250
251
252
252
252
253
252
251
251
252
252
251
251
252
250
249
249
249
249
249
249
248
248
248
247
248
249
247
249
247
242
252
249
248
249
248
253
251
244
248
246
232
238
242
235
230
234
234
224
228
233
231
222
207
207
213
227
230
230
240
242
236
239
227
231
230
233
236
235
240
238
230
226
240
223
201
201
196
213
178
204
234
217
169
187
233
228
202
199
204
234
246
243
221
210
206
178
193
227
244
242
206
217
208
208
218
212
211
202
232
218
214
247
250
235
218
210
202
202
200
241
247
242
242
244
242
184
173
187
180
189
194
222
240
194
154
194
225
233
240
247
218
169
159
216
193
155
196
152
158
170
176
177
171
166
170
175
179
175
170
170
168
175
178
178
183
187
188
190
194
197
198
197
194
192
192
196
199
200
200
200
199
199
197
195
195
197
197
199
202
206
210
212
214
216
215
210
206
202
201
199
200
201
203
203
195
187
185
191
198
195
194
197
198
201
203
201
202
201
202
202
201
197
193
190
185
179
183
181
189
190
185
190
194
198
203
192
177
177
183
187
184
178
169
161
156
154
150
140
124
112
112
114
122
132
146
171
184
193
199
203
207
205
205
206
208
205
205
204
190
185
184
175
182
186
179
174
172
168
167
168
166
167
170
177
188
191
186
184
186
185
181
179
178
180
251
250
250
251
251
252
253
252
252
253
252
251
251
252
251
251
252
252
251
250
250
249
249
249
249
248
248
247
247
247
249
249
251
246
248
251
250
251
252
250
251
246
247
251
240
241
241
236
236
233
234
227
231
235
230
220
208
204
219
227
232
226
230
240
240
242
230
215
227
233
227
232
230
238
236
227
234
240
237
222
209
195
185
195
208
232
226
189
160
215
217
198
198
209
241
247
248
221
209
202
176
176
201
243
241
210
220
209
196
217
232
221
220
227
205
219
246
246
230
209
208
207
186
208
236
248
247
247
233
239
195
182
181
182
192
198
226
241
191
189
175
220
234
245
243
204
146
147
197
224
190
178
177
158
194
190
165
171
161
167
165
170
168
166
165
166
177
185
184
188
190
188
189
194
197
199
197
195
194
194
199
199
200
202
203
200
194
190
191
194
200
202
204
208
210
208
208
212
216
213
206
206
205
204
204
202
198
200
203
204
199
196
193
194
192
191
191
194
197
199
201
201
202
202
201
201
201
197
197
197
194
193
182
183
184
179
176
185
189
189
183
180
185
179
171
175
173
164
160
156
151
139
121
108
101
100
100
110
129
149
170
180
184
193
193
197
201
206
204
206
206
207
203
196
186
180
192
194
188
175
170
171
168
167
166
163
167
172
180
192
191
188
189
189
185
181
183
185
183
250
250
252
252
252
253
253
253
253
252
252
251
251
251
251
251
250
250
249
249
249
249
249
249
249
248
248
247
247
249
248
249
248
246
250
249
253
253
253
252
245
246
250
245
248
246
236
237
232
230
231
234
234
230
222
211
213
218
218
228
226
235
236
239
231
240
208
208
216
206
210
216
222
232
238
235
234
238
230
226
223
207
184
170
205
214
211
190
159
167
228
201
188
191
238
245
242
227
207
196
182
162
181
201
231
222
218
198
201
206
228
226
217
225
217
243
248
246
227
215
205
198
186
226
239
246
247
243
217
223
194
183
186
174
193
194
209
240
181
203
211
194
225
242
239
171
196
179
159
192
229
205
157
202
210
196
149
155
162
166
171
167
165
162
161
164
180
187
190
192
188
187
189
190
196
199
199
200
200
201
202
201
202
205
206
206
205
207
211
214
213
210
204
199
199
204
212
213
214
213
209
206
202
203
206
206
202
200
201
201
201
201
196
192
193
193
190
189
196
197
199
200
200
201
202
206
209
205
203
199
192
186
178
181
183
179
170
177
186
192
193
187
188
188
181
170
164
162
157
153
148
143
116
85
70
80
95
114
137
150
162
174
178
184
182
188
198
205
208
206
207
203
200
196
196
197
190
187
188
182
179
174
167
164
164
163
166
173
183
187
193
196
192
190
187
182
184
187
182
250
250
252
253
253
253
253
252
253
251
251
252
251
251
252
250
249
249
249
248
248
249
249
248
248
248
248
249
248
248
249
249
244
245
249
250
253
253
252
251
247
249
249
246
246
241
242
238
224
235
233
240
232
229
221
216
209
206
212
218
230
222
229
233
235
236
206
214
209
201
216
211
195
197
216
230
239
237
239
220
226
235
214
155
178
203
202
182
158
156
202
208
180
168
211
224
235
232
194
194
180
165
183
202
234
226
220
204
211
219
207
210
209
212
231
248
247
244
228
224
199
187
208
233
233
242
247
240
210
191
179
191
181
189
223
185
188
240
180
207
240
214
204
233
224
152
185
212
191
170
211
236
160
161
188
173
184
152
207
176
179
192
161
168
170
171
173
183
185
187
183
184
192
190
191
197
200
201
200
200
201
200
203
207
209
207
210
210
209
208
208
208
203
199
199
202
208
209
212
213
210
208
205
202
201
203
206
204
202
199
200
198
192
185
187
192
190
194
202
199
200
204
204
202
204
202
201
198
198
197
195
188
183
180
173
165
169
176
188
191
188
191
188
182
173
176
186
170
143
144
148
142
124
104
92
92
104
127
142
147
163
174
172
178
186
187
200
201
198
198
198
202
201
200
198
193
191
190
185
181
180
175
168
160
154
157
164
171
183
192
198
194
193
196
192
182
184
185
181
250
251
253
252
252
252
252
252
253
252
252
252
251
251
252
251
248
248
249
249
248
250
249
249
249
249
248
251
250
246
250
246
248
247
250
253
254
253
252
251
251
253
252
249
240
240
245
232
230
237
239
242
230
230
218
211
206
204
210
222
219
226
226
236
240
228
194
199
217
218
206
223
213
210
197
204
223
234
239
228
223
230
233
176
145
198
204
180
168
159
192
189
191
166
167
224
210
238
200
194
181
168
193
224
238
234
215
207
205
213
201
230
214
222
228
245
248
244
224
208
202
209
232
239
243
242
248
236
191
178
192
197
194
201
218
224
186
218
173
203
228
238
213
215
200
173
158
199
214
207
196
228
219
174
201
156
191
202
221
236
217
211
192
164
169
176
165
175
180
182
176
178
189
194
191
195
198
201
202
202
201
201
203
204
205
205
205
203
204
204
207
205
200
191
189
193
199
201
205
206
203
203
204
205
202
200
198
195
193
196
196
194
191
187
187
188
186
193
204
201
201
201
201
202
202
204
202
201
200
194
189
188
186
180
174
172
175
185
188
193
188
186
183
180
180
176
168
167
161
154
147
144
137
128
117
117
125
137
145
150
163
175
176
179
182
183
193
202
193
193
194
200
203
198
196
194
190
187
184
184
179
166
158
155
156
158
168
181
191
197
196
191
192
191
189
184
182
184
182
251
252
252
253
253
253
253
252
253
252
252
252
251
251
251
250
249
248
248
250
249
250
249
249
249
249
250
250
249
247
249
248
246
250
251
251
253
252
252
251
253
253
252
246
236
241
234
232
238
234
242
235
229
226
223
218
203
205
213
229
230
230
229
239
217
227
200
210
212
210
203
226
211
209
221
219
197
213
236
240
220
222
238
232
151
173
199
186
165
165
193
177
200
162
155
203
212
220
225
202
183
170
213
237
228
227
222
208
221
200
196
238
228
226
224
238
249
235
208
215
217
226
216
239
247
240
236
203
163
179
191
189
189
227
204
227
236
225
179
198
231
239
235
208
178
220
187
170
209
209
207
206
222
206
190
154
163
198
226
238
232
180
172
167
160
179
173
173
175
178
170
171
173
177
191
192
196
200
201
201
200
200
200
199
201
201
198
197
202
207
204
203
200
193
193
198
196
195
197
204
206
201
198
199
199
201
199
194
192
192
193
193
192
191
194
198
198
195
194
187
187
193
198
200
201
202
196
190
184
183
190
196
196
191
186
183
181
182
188
187
186
184
179
179
171
171
180
172
159
153
149
145
137
126
116
118
126
134
143
149
164
176
176
178
180
182
185
192
195
197
196
196
199
199
197
192
191
189
183
183
169
148
150
161
166
172
185
195
199
194
190
192
188
188
187
184
182
182
179
252
252
252
253
253
253
253
252
253
252
252
253
252
252
251
251
251
251
251
252
251
249
249
249
250
249
251
250
248
250
249
248
244
247
248
251
253
252
252
251
253
251
248
241
233
239
236
241
236
246
240
235
235
232
221
201
201
214
234
232
235
234
233
221
223
224
206
210
218
220
219
223
230
224
221
222
224
197
207
235
227
220
224
237
202
151
179
194
162
153
192
178
180
191
162
190
211
209
223
206
189
172
227
238
243
231
220
222
217
197
202
239
237
223
232
243
240
224
202
201
214
202
214
239
245
236
211
195
175
187
188
180
209
230
209
194
231
240
182
172
232
240
238
199
188
224
206
177
182
192
206
215
220
197
158
153
180
200
195
200
219
210
163
158
159
167
173
176
181
184
173
173
175
176
180
185
190
196
198
198
195
196
198
198
200
200
202
204
205
205
202
203
202
200
200
197
194
198
194
192
201
202
202
200
196
198
198
199
200
200
199
198
199
198
198
198
196
197
193
191
202
201
198
193
189
184
179
188
199
205
205
201
200
197
193
194
189
187
192
191
186
185
181
184
189
177
167
166
162
150
134
134
130
116
109
113
118
129
138
146
163
176
181
184
181
182
185
188
192
193
191
191
194
200
199
194
192
187
178
161
153
164
169
171
178
185
194
198
190
186
192
192
185
183
185
181
180
179
175
252
253
252
252
252
253
252
252
253
252
252
252
252
252
253
252
252
252
251
252
252
250
250
250
250
250
251
249
247
253
249
248
247
249
250
252
251
253
252
251
253
247
240
236
238
240
247
235
244
242
236
242
232
214
202
194
199
227
235
239
241
219
210
231
229
208
215
210
218
227
221
217
221
214
216
213
219
222
209
205
229
232
235
222
235
178
161
177
164
163
178
177
167
188
178
198
209
199
206
209
191
179
221
232
247
238
228
222
208
202
215
241
244
242
240
243
235
214
207
213
206
194
238
237
243
244
222
185
176
172
175
172
221
233
206
209
204
245
193
179
217
238
234
178
192
211
220
223
224
218
210
202
223
189
195
215
224
227
230
226
197
171
191
176
177
167
167
170
175
187
188
181
180
180
181
181
182
184
190
196
196
198
199
198
201
204
205
209
211
207
202
200
202
202
199
195
194
196
190
185
194
199
203
204
201
200
199
199
195
193
194
194
193
193
194
196
197
199
199
196
193
187
186
187
189
197
209
217
216
207
204
195
194
195
198
200
197
192
183
184
180
182
189
180
169
174
177
165
144
138
138
135
131
117
108
110
114
126
139
151
169
180
183
182
184
186
186
187
188
187
189
191
198
196
195
192
187
178
173
170
175
174
167
180
190
192
195
191
186
189
195
185
180
187
183
179
177
176
174
252
253
252
252
252
253
252
252
253
252
252
252
252
252
252
253
252
251
249
250
251
250
250
250
250
250
251
251
251
249
249
244
247
249
248
251
252
251
251
252
251
244
236
240
241
245
249
243
248
244
240
240
209
203
198
187
206
230
242
241
240
217
227
234
213
218
216
228
216
210
202
195
201
207
210
204
203
212
213
220
212
233
238
220
232
226
175
155
169
156
190
191
165
172
201
205
216
200
187
201
192
186
210
232
244
230
222
204
203
206
218
234
239
235
244
247
241
214
207
208
197
210
245
247
244
244
218
169
168
176
167
205
233
217
193
228
220
240
198
233
232
233
205
157
180
196
220
215
226
239
227
206
185
162
190
216
223
226
229
200
215
167
133
159
185
190
163
150
162
180
188
184
183
179
180
178
180
182
185
189
190
193
195
195
198
197
196
203
210
210
208
204
201
197
193
192
194
192
185
184
193
196
198
203
202
200
201
201
197
196
196
197
196
195
193
192
193
194
195
196
199
200
199
197
198
202
205
199
194
190
191
192
196
198
199
204
199
185
175
178
184
180
175
179
175
157
145
138
137
138
137
135
130
118
113
119
131
141
154
164
172
178
179
182
185
186
185
185
185
187
190
193
198
198
189
182
181
181
183
179
178
176
180
187
186
185
187
187
189
197
182
175
187
186
177
176
175
173
171
253
253
252
253
253
253
252
253
252
253
253
253
253
253
253
252
252
251
248
249
251
250
250
250
250
251
250
251
251
250
251
247
247
246
250
252
253
249
250
253
246
245
245
247
242
245
244
244
245
246
240
207
210
196
187
208
227
237
244
229
240
218
227
224
224
222
196
162
138
136
143
137
142
132
144
166
195
191
192
206
210
226
240
240
217
233
212
143
169
142
173
203
172
168
189
180
226
199
181
202
194
197
216
240
222
219
216
194
211
214
225
235
224
226
240
245
229
207
197
197
205
237
241
250
245
226
179
170
182
177
216
215
235
208
197
234
240
202
211
224
242
216
197
205
207
216
223
226
223
228
243
219
184
223
221
222
220
216
181
183
202
207
144
147
150
156
134
138
137
157
172
177
178
177
175
174
175
179
177
181
188
190
191
192
194
194
194
200
208
209
207
205
203
201
198
199
198
196
193
189
189
189
193
197
198
199
200
199
193
192
190
189
190
190
192
194
193
195
197
200
200
199
197
195
194
194
196
197
199
200
199
197
195
192
191
195
189
188
185
183
183
183
176
163
144
134
133
135
136
132
126
122
109
96
96
107
121
137
154
168
174
181
185
185
185
184
183
182
183
186
190
192
191
190
187
187
188
186
181
181
180
178
176
171
178
186
189
192
187
170
173
189
185
174
174
175
175
172
168
253
253
252
253
253
253
253
253
253
253
253
253
253
253
252
252
253
253
250
249
250
250
250
250
250
250
251
250
249
251
250
249
247
246
247
251
253
248
247
249
243
243
250
244
244
245
247
240
243
241
220
209
206
191
197
212
233
242
238
227
235
217
226
229
216
171
122
144
180
200
211
213
210
205
179
149
125
167
205
192
184
217
228
243
223
224
238
190
163
150
155
197
164
171
183
174
219
190
184
205
205
229
228
229
212
215
220
191
198
211
227
225
218
214
244
236
203
193
202
214
221
230
237
249
237
188
166
176
191
171
230
235
230
220
191
241
216
168
221
211
225
207
194
185
205
213
194
227
236
236
243
237
220
217
204
198
178
169
217
216
180
220
153
149
132
100
117
128
130
138
153
167
170
172
173
171
166
170
171
177
185
190
191
192
195
199
201
204
206
208
203
200
198
196
196
194
193
195
199
199
196
196
195
193
192
193
196
195
190
190
192
192
192
192
194
196
196
198
200
200
200
202
199
198
195
194
194
198
202
199
191
188
185
188
195
198
194
190
192
192
190
169
141
129
135
150
159
155
146
134
127
125
122
118
121
129
141
156
162
170
177
186
186
184
182
184
185
184
186
187
186
186
187
187
191
192
186
181
179
180
181
182
184
181
183
185
183
184
180
176
181
177
176
175
171
170
170
169
167
252
252
252
252
252
253
252
252
253
253
253
252
252
252
253
253
254
254
251
250
251
251
250
250
250
250
253
251
249
250
248
247
249
245
248
250
251
248
244
244
247
249
250
241
235
243
249
242
243
220
217
206
203
196
205
220
243
240
234
238
234
224
229
230
160
141
172
211
233
227
224
220
218
220
218
215
188
141
159
199
185
191
214
237
228
219
230
235
177
156
144
196
172
187
182
166
200
192
188
212
212
207
205
203
202
219
214
190
204
204
223
206
200
219
216
196
186
193
216
212
208
237
243
244
235
178
178
174
167
198
240
235
242
234
199
237
193
193
202
191
175
176
188
215
224
211
232
226
200
179
189
195
183
186
184
183
198
220
224
187
137
189
154
131
133
147
156
153
145
136
131
152
156
165
168
167
164
164
169
172
176
187
195
197
199
202
205
208
209
211
209
206
201
196
197
197
194
195
196
196
188
181
178
176
180
186
188
190
190
191
194
193
191
192
192
193
196
199
201
201
201
197
193
190
188
192
196
190
189
190
186
190
191
194
196
193
192
194
184
167
148
137
126
130
148
159
166
170
168
163
151
137
123
115
118
130
140
152
167
177
181
185
186
185
180
180
181
183
181
178
179
181
185
186
187
185
184
184
181
180
181
182
181
182
181
181
180
177
177
176
175
175
173
168
168
171
166
161
158
252
252
253
253
253
253
253
252
253
253
253
253
253
253
254
253
253
253
250
250
250
251
250
250
250
251
251
251
250
249
244
245
249
251
251
252
252
248
244
243
248
248
248
234
238
247
245
246
232
221
212
199
207
199
219
233
239
239
241
233
236
228
232
209
135
174
215
227
214
207
204
204
200
211
205
206
208
201
150
156
197
199
198
214
236
232
223
237
188
144
145
161
183
187
193
164
186
177
202
208
212
191
197
210
184
225
221
202
200
215
212
202
196
212
203
209
197
200
203
215
213
243
247
239
234
191
169
174
169
229
240
233
238
212
202
225
204
183
150
149
165
194
204
218
221
228
238
242
200
184
173
162
142
134
150
199
238
211
200
195
141
140
133
127
127
131
142
158
167
171
150
134
141
155
159
162
164
163
168
173
171
181
196
197
197
199
203
206
209
210
206
203
200
198
199
195
191
193
196
193
182
179
178
178
183
185
186
190
190
192
197
197
196
194
195
195
197
199
201
200
201
199
196
193
194
194
191
189
192
196
195
191
190
192
194
191
186
173
164
159
156
152
149
153
163
172
177
176
167
162
156
143
134
126
125
135
145
158
171
181
187
185
186
181
180
180
177
173
170
170
172
175
177
179
181
180
183
186
186
184
184
184
183
184
179
173
173
176
175
173
169
166
169
169
166
155
153
155
150
252
252
254
253
254
253
253
253
253
253
253
252
253
253
253
253
252
253
250
250
250
251
250
250
250
251
250
250
249
251
246
247
251
252
251
253
252
248
246
246
245
246
244
235
245
247
240
247
227
227
204
211
205
207
224
238
245
241
240
235
229
238
236
181
142
175
193
225
207
187
185
196
196
205
206
198
200
204
199
151
190
201
178
191
233
235
220
239
207
136
158
156
173
191
184
167
207
187
188
218
208
198
195
203
191
231
231
227
213
209
210
207
219
234
224
194
197
197
202
186
230
243
243
213
198
166
165
172
222
236
239
223
227
222
235
217
173
149
158
194
225
232
234
234
232
230
243
216
150
145
148
144
155
166
218
245
235
183
193
197
195
181
170
162
155
148
154
143
135
138
151
143
134
143
150
156
164
163
161
178
177
175
191
195
194
195
199
202
205
205
202
200
197
195
195
193
191
193
196
191
185
189
186
180
179
182
186
190
191
197
199
198
198
197
196
195
198
201
201
201
201
197
193
190
187
187
183
185
188
188
188
189
192
194
191
186
185
182
172
162
163
172
168
164
170
173
171
167
161
151
140
135
131
135
143
151
161
172
179
184
190
183
181
181
176
172
171
170
168
167
168
169
176
182
185
186
186
190
189
187
185
183
183
181
174
169
170
171
170
169
167
167
165
158
152
148
152
147
145
254
253
254
253
254
253
252
252
252
252
252
253
252
252
252
252
253
254
251
251
250
251
250
250
250
250
250
244
249
248
243
250
253
252
254
253
250
249
246
243
246
245
241
245
249
245
244
238
223
223
215
210
207
211
236
242
245
243
237
238
220
237
229
148
154
159
169
184
185
181
195
189
190
197
193
200
201
203
203
192
156
202
181
174
203
243
230
238
222
152
162
142
167
180
192
174
186
179
171
199
193
184
191
188
217
239
239
213
211
210
209
218
228
235
221
199
188
202
182
216
240
245
241
206
166
165
194
233
237
234
220
225
182
224
233
185
173
219
235
236
231
230
234
233
233
233
233
167
148
153
180
192
218
237
239
237
187
157
163
171
175
167
162
157
164
161
165
169
174
166
157
153
141
136
141
153
158
162
157
171
185
176
185
193
193
193
194
196
197
198
200
197
193
193
195
193
191
194
194
191
190
190
186
181
184
186
186
190
191
195
200
202
202
202
200
198
197
201
199
197
195
193
190
188
186
187
189
190
192
190
190
189
186
186
187
185
185
179
172
172
170
162
159
160
166
164
161
160
150
151
154
150
131
124
134
152
160
169
179
187
188
187
179
175
174
174
173
169
169
171
175
180
185
191
195
194
194
193
192
188
185
181
177
173
171
173
175
171
168
168
167
160
156
148
149
144
135
139
139
253
253
254
253
253
252
252
252
252
252
252
253
253
252
252
252
253
254
251
251
250
250
250
250
250
250
250
245
251
244
246
252
254
254
254
253
253
249
236
240
241
242
241
250
249
245
239
228
222
226
221
208
195
212
239
247
242
245
241
232
226
239
220
153
152
149
151
171
192
184
176
186
197
196
199
199
209
202
206
197
161
175
203
172
188
241
227
236
222
161
164
138
164
166
183
166
185
168
165
206
195
196
201
191
233
238
227
184
206
204
199
222
233
233
194
187
198
180
214
237
242
246
241
177
170
200
238
241
241
212
226
197
194
206
171
181
199
205
215
219
205
214
224
227
221
219
191
155
170
196
206
204
216
230
226
195
152
148
132
135
157
162
157
162
164
165
174
173
166
163
161
149
144
150
148
149
159
160
158
164
178
184
186
189
191
191
190
190
190
192
191
192
192
190
189
190
190
191
191
191
193
186
181
182
181
181
183
186
189
193
197
197
197
197
198
197
198
199
196
194
195
193
191
191
189
186
185
186
188
189
191
190
188
187
188
190
188
182
176
165
161
169
171
168
167
165
162
160
157
154
148
147
138
136
146
157
161
174
182
188
188
188
185
181
182
182
181
179
177
175
177
184
190
194
199
198
198
196
192
189
186
182
181
178
175
174
170
167
166
164
160
152
150
143
137
137
135
138
141
253
252
254
253
253
253
253
253
253
253
253
253
252
253
252
251
252
253
250
250
250
251
251
250
251
251
250
247
250
242
246
253
253
254
253
250
251
244
237
238
232
238
240
248
245
246
239
224
227
233
217
188
198
221
244
245
236
247
238
230
232
242
210
147
172
169
143
156
152
141
91
75
120
181
186
205
205
202
199
190
179
141
189
176
168
237
234
230
234
157
155
136
164
169
174
176
179
168
168
211
224
201
189
202
237
228
224
194
185
182
208
236
241
217
184
193
185
217
234
241
248
238
209
169
178
216
238
231
221
221
206
194
164
158
169
192
197
202
208
206
207
198
204
228
176
147
160
186
203
224
242
246
245
229
210
181
162
137
140
149
152
156
154
147
146
148
149
143
145
148
140
137
145
141
134
146
161
167
172
165
174
187
188
189
188
188
185
184
185
188
189
188
187
187
188
187
187
186
187
190
193
192
189
191
189
182
182
184
188
194
198
198
199
200
201
200
199
199
196
194
195
191
191
189
186
183
182
184
186
190
192
184
189
188
183
185
184
175
168
164
159
159
165
167
159
155
155
153
155
161
165
163
156
155
157
157
166
176
183
192
198
199
195
186
185
185
177
169
176
180
182
186
191
197
200
200
200
197
194
191
188
185
183
180
177
178
172
166
165
159
153
149
143
138
140
143
146
142
145
253
252
253
253
254
253
253
253
253
252
252
252
252
252
252
252
253
253
251
250
250
251
251
250
251
251
251
251
249
246
248
252
250
254
252
247
250
244
235
232
236
240
240
246
246
245
235
230
234
227
202
191
203
226
244
244
239
247
233
228
234
241
203
143
187
201
155
155
100
20
7
3
11
56
159
194
202
203
203
188
182
139
182
180
169
237
237
228
234
167
158
137
171
187
163
162
157
161
169
202
231
224
194
208
230
214
215
188
182
183
226
241
241
205
177
178
183
235
248
245
249
237
195
164
177
212
213
202
225
226
204
209
200
205
223
220
226
236
235
229
219
208
216
226
186
131
159
169
196
222
242
246
236
191
183
179
161
145
155
168
177
181
178
175
172
168
164
160
153
149
138
128
120
103
93
103
129
161
166
176
177
183
186
187
183
184
183
181
183
186
185
187
188
188
188
186
186
185
187
190
191
189
186
182
181
179
178
183
187
194
198
197
199
201
202
201
195
190
188
190
191
189
187
186
184
179
175
175
177
181
184
185
186
188
187
190
182
173
158
150
158
168
178
173
164
161
160
161
160
156
153
154
156
155
157
163
170
183
194
206
203
199
196
190
182
181
185
187
182
178
182
187
195
200
203
201
201
197
195
192
189
186
186
183
179
177
170
163
160
155
150
147
147
145
149
148
142
138
148
253
254
254
254
254
253
253
252
253
254
253
252
252
252
252
252
253
253
251
250
250
251
251
251
250
251
250
250
244
249
253
252
248
254
247
243
247
235
235
243
230
236
241
246
248
238
236
237
224
205
195
201
219
236
247
237
243
248
235
232
224
236
180
135
169
168
134
125
20
4
2
2
4
6
67
198
215
211
205
196
179
142
162
189
180
236
237
241
227
164
153
147
177
212
157
158
149
163
184
214
228
240
184
168
207
212
189
175
169
212
238
246
226
183
171
159
176
235
244
242
242
238
198
202
206
214
206
220
207
213
188
183
211
219
227
231
241
235
220
229
207
194
213
223
206
201
216
228
237
235
224
235
214
156
152
149
142
141
146
156
152
142
137
129
110
90
68
52
44
38
31
22
17
11
10
13
38
127
153
165
173
178
180
179
180
179
181
178
180
183
182
185
187
187
190
189
189
189
188
188
192
191
187
183
179
177
177
181
185
190
193
195
198
202
202
201
197
196
200
199
190
187
183
181
180
177
178
178
177
180
183
185
186
184
185
176
165
161
165
180
186
179
172
166
160
158
160
159
162
161
160
159
153
151
157
169
180
192
205
213
204
199
194
191
192
192
188
181
175
189
205
202
198
197
199
199
199
197
194
191
188
186
184
179
172
169
162
157
159
157
150
152
156
153
146
134
135
148
151
252
253
254
254
254
253
253
252
253
253
253
252
252
252
252
252
253
253
252
251
250
251
250
250
250
250
247
249
244
244
252
254
251
253
246
243
240
229
244
232
233
242
244
245
239
236
245
232
203
193
201
221
227
235
247
234
243
245
235
235
229
237
188
126
164
140
128
81
30
4
1
1
1
3
16
166
210
207
209
193
169
143
165
193
176
232
240
243
214
148
138
148
184
186
161
144
140
173
196
226
237
233
168
181
214
193
177
180
206
226
242
240
220
164
166
153
216
244
243
241
243
224
188
210
210
184
205
226
191
190
186
215
235
236
237
232
220
208
202
179
171
212
226
230
229
223
221
224
221
222
221
189
155
147
143
148
154
148
131
105
83
51
19
21
23
18
18
14
7
3
2
2
1
0
1
2
5
39
118
161
165
170
172
173
176
176
174
178
177
175
178
182
187
188
188
189
190
190
188
187
187
184
179
176
173
177
181
182
187
191
193
193
198
202
203
202
195
188
185
186
187
183
177
172
168
161
160
165
167
171
178
182
190
187
176
164
170
181
187
182
173
171
167
166
166
162
156
152
150
148
153
159
158
159
166
177
188
201
210
201
199
202
201
200
197
195
192
193
202
207
202
196
199
199
200
201
202
199
195
190
188
188
187
181
174
171
166
161
160
156
153
157
156
141
142
148
152
150
150
252
252
253
253
254
253
254
253
252
252
252
252
252
253
253
253
252
252
252
252
252
251
249
250
250
250
251
252
244
246
252
253
252
252
246
244
240
238
231
235
240
246
243
241
234
245
240
210
190
208
218
229
221
234
245
237
247
243
237
233
217
235
205
130
133
138
130
90
93
15
3
2
1
3
9
162
202
202
205
187
164
140
166
186
185
237
246
237
193
142
125
150
176
169
155
139
141
168
201
222
218
203
170
204
196
178
169
209
218
236
231
236
182
156
158
214
231
250
247
245
216
169
201
192
191
212
238
199
181
185
213
220
228
212
165
180
187
198
198
175
204
238
222
209
189
195
211
210
207
202
167
146
152
144
134
116
79
45
25
16
14
10
3
6
9
7
7
5
2
1
1
1
0
0
1
2
2
6
47
136
155
164
170
166
171
172
169
175
175
171
175
178
183
185
183
186
187
189
189
189
186
184
179
177
176
181
183
184
187
191
195
198
199
199
198
197
193
192
191
191
186
177
175
177
177
174
172
172
172
178
191
194
172
167
167
186
190
186
178
173
176
182
182
179
177
170
158
154
159
163
170
167
160
164
169
179
191
198
202
204
208
207
206
203
199
200
205
208
205
201
201
202
200
199
201
203
205
202
199
195
192
193
192
186
180
176
170
165
164
160
157
154
154
158
161
153
149
151
150
254
254
254
253
253
254
254
253
253
253
252
252
253
252
252
253
253
253
252
253
253
250
250
250
250
250
251
247
246
249
253
252
252
249
244
242
242
229
226
244
243
242
244
228
243
245
216
197
209
223
222
222
207
230
247
237
247
242
233
232
213
233
217
148
132
153
129
118
70
27
3
3
2
4
42
177
203
211
205
179
168
135
165
180
204
240
241
237
185
150
123
164
187
171
137
134
145
189
201
189
177
191
198
208
180
172
177
214
218
235
238
202
164
180
213
238
233
249
240
203
173
197
185
207
232
224
212
180
178
180
198
216
215
187
205
216
222
215
177
158
205
235
186
197
160
156
179
191
168
143
144
134
119
96
66
33
10
4
7
7
3
2
2
3
3
3
2
3
2
2
1
1
0
1
1
2
2
2
10
80
154
152
164
166
165
168
170
170
171
174
172
173
177
180
178
181
183
185
187
187
185
183
182
183
182
181
181
189
193
197
198
201
200
199
200
199
194
192
186
181
178
174
173
171
171
169
170
170
174
173
167
157
158
171
188
192
177
184
190
194
199
201
192
180
173
171
166
163
161
157
154
152
153
160
166
182
200
217
219
215
213
212
211
210
206
202
203
205
206
203
200
201
194
194
198
202
204
203
202
200
198
194
191
185
179
175
169
164
163
158
158
161
165
165
155
150
151
155
153
254
254
254
254
253
254
254
253
253
252
252
253
253
253
253
254
253
252
251
252
252
251
251
250
250
250
251
242
248
250
252
253
253
249
242
240
237
227
240
231
238
244
240
230
245
230
197
208
222
217
212
212
191
232
246
236
250
246
234
229
226
225
224
172
118
137
127
128
89
25
3
3
3
35
134
191
212
208
195
173
164
131
168
184
214
240
241
234
168
144
136
186
211
146
131
141
148
197
207
166
185
203
189
189
174
166
188
202
242
240
208
184
185
202
246
241
242
249
225
200
182
212
216
226
232
219
216
184
168
193
214
194
204
236
242
230
229
191
147
184
222
227
221
222
147
173
202
186
135
114
77
31
24
22
12
7
6
4
2
3
2
2
3
1
2
3
2
0
0
1
1
0
1
0
1
2
1
2
8
34
126
156
158
162
164
164
169
168
171
175
171
170
172
175
174
177
179
183
184
183
181
180
178
177
176
177
180
193
198
200
199
199
199
202
202
200
195
193
190
182
175
171
170
171
170
170
168
170
176
178
164
147
184
192
184
188
200
201
200
194
185
179
176
174
171
163
149
140
132
129
135
146
153
162
174
200
217
217
215
214
216
214
211
211
208
205
204
205
208
206
200
196
199
201
206
207
207
203
201
198
195
191
189
185
179
175
169
165
163
160
159
160
158
158
151
147
149
155
159
253
254
254
254
254
253
253
253
253
252
252
253
252
253
252
252
251
252
251
252
251
251
253
252
251
249
248
242
248
250
250
252
250
250
243
240
235
242
241
227
235
242
240
243
237
196
212
229
216
201
221
194
196
235
247
245
248
244
234
233
234
209
223
207
136
129
126
127
141
129
106
99
121
172
203
204
213
205
185
168
143
124
177
181
234
244
233
200
149
143
161
209
197
118
121
137
158
188
203
157
192
201
185
193
166
195
194
220
243
193
179
183
179
207
235
234
235
241
213
201
207
213
209
237
222
220
218
166
185
210
206
220
234
239
239
213
167
150
183
202
205
229
234
187
166
181
175
113
67
35
17
19
21
26
14
3
1
3
3
2
3
4
3
2
2
2
2
1
0
0
0
0
0
0
0
0
0
0
3
6
55
137
154
157
157
158
164
168
168
170
170
170
170
171
171
171
174
177
181
178
179
180
179
177
173
179
183
189
198
204
200
201
201
203
202
198
195
191
188
185
182
174
176
175
173
174
176
175
176
178
179
182
191
194
200
197
193
191
191
193
193
190
182
174
172
169
166
160
155
154
156
157
156
169
191
210
214
217
221
225
223
220
214
211
207
204
204
203
200
196
198
206
211
201
204
199
197
201
200
195
190
185
184
181
177
172
167
165
160
158
156
155
155
157
161
160
159
163
164
252
253
253
253
253
254
253
253
253
252
253
253
252
253
252
251
250
251
251
252
251
251
253
252
251
250
247
248
249
250
251
253
248
245
247
236
237
243
237
220
233
241
244
245
212
199
234
224
209
216
206
173
198
241
242
247
244
244
231
231
236
214
219
220
180
119
131
135
140
154
176
180
187
205
206
209
207
198
174
165
133
161
169
202
233
243
204
171
149
139
185
205
169
104
115
144
168
191
184
161
198
194
178
177
183
199
211
225
241
182
173
168
180
232
234
233
232
240
222
213
216
203
223
229
219
234
214
162
202
224
226
233
231
234
210
151
163
208
205
197
231
238
192
166
157
121
66
32
19
18
17
22
20
19
9
2
2
4
4
4
3
2
2
3
5
4
2
1
0
0
0
0
0
0
0
0
0
0
1
3
19
86
145
153
157
160
164
165
168
171
171
170
170
170
170
170
171
173
174
171
164
169
178
180
175
177
181
187
196
200
201
203
201
200
198
195
191
187
181
181
176
171
174
176
175
176
172
172
174
177
178
176
178
179
185
188
189
187
187
188
186
182
180
178
177
174
166
160
156
153
150
146
156
179
199
208
212
219
223
227
224
218
215
211
206
203
201
201
199
204
207
203
201
197
193
195
200
203
198
193
192
193
189
183
177
172
167
165
160
160
157
156
161
164
166
173
168
156
151
253
252
252
253
252
252
252
253
252
251
252
253
252
253
251
251
249
250
251
250
249
251
252
251
249
251
244
249
250
252
253
253
247
247
248
235
232
236
228
211
235
243
240
230
191
231
228
211
222
209
179
173
179
238
238
247
247
246
235
234
233
224
204
218
209
161
123
131
138
154
171
179
197
200
197
203
200
179
167
137
147
182
169
223
235
235
186
159
140
148
201
183
142
111
106
149
149
161
158
181
195
191
173
161
185
203
214
234
237
174
177
170
221
243
221
226
225
208
215
213
194
222
218
209
234
232
194
213
204
216
203
196
200
169
155
199
220
216
227
232
236
186
134
99
55
26
13
9
11
11
12
16
15
12
6
2
3
6
7
5
3
2
2
4
5
4
1
0
0
0
0
0
0
0
0
0
0
0
0
1
3
25
97
133
152
161
165
167
169
171
172
170
169
168
167
166
167
170
171
170
165
164
169
172
176
177
179
187
197
202
201
203
205
204
199
196
193
188
187
186
183
175
172
171
170
169
168
172
175
176
180
182
181
182
185
184
188
187
187
188
187
183
181
178
173
167
162
157
151
145
135
138
165
181
185
208
220
223
223
221
218
214
211
208
204
202
202
202
203
204
202
194
192
191
194
199
200
197
197
196
191
187
184
181
175
172
170
169
161
162
162
160
170
169
163
158
152
149
154
252
252
252
253
253
252
251
252
253
251
252
253
252
253
251
250
248
249
250
251
251
251
251
252
250
250
243
247
248
252
251
250
247
250
246
238
237
236
224
217
239
242
246
213
217
234
221
222
228
180
177
188
187
239
241
244
247
243
239
230
234
227
231
199
220
206
157
115
142
168
169
179
183
189
193
193
179
157
132
156
173
175
188
235
239
227
176
161
137
182
212
221
136
118
116
164
150
156
173
187
196
173
181
152
179
217
231
231
213
169
173
218
247
240
201
196
203
218
205
212
232
215
200
227
241
208
172
207
197
205
195
205
155
154
221
224
217
234
230
224
194
87
44
19
21
10
9
3
2
8
13
13
12
10
5
2
4
8
9
6
4
3
3
3
3
2
2
1
1
1
0
0
0
0
0
0
0
0
0
1
1
8
44
98
137
148
159
168
169
168
168
167
166
164
163
161
162
166
168
168
168
170
171
172
175
178
183
190
192
193
190
188
185
182
184
185
178
173
172
166
163
166
167
171
172
169
168
171
172
177
190
191
188
192
187
185
188
187
188
189
187
181
180
179
173
167
164
151
136
136
142
147
171
188
201
212
215
218
218
218
217
212
208
206
203
203
201
198
199
195
192
196
200
198
193
187
192
197
193
191
192
192
183
177
172
170
166
164
161
158
155
155
158
152
154
157
166
174
165
253
254
253
253
254
252
252
252
253
252
252
253
252
253
251
250
248
249
249
251
252
250
252
251
249
248
242
245
248
250
252
249
246
250
245
240
237
233
219
229
244
245
226
213
229
225
226
223
200
161
178
186
186
226
244
242
247
243
243
226
226
226
229
221
199
205
193
159
130
140
158
178
182
181
179
162
153
162
171
179
167
181
213
236
226
190
167
155
168
215
224
202
106
115
129
177
187
155
198
188
180
193
173
178
220
231
224
227
184
163
180
241
248
227
196
189
192
205
234
242
234
207
214
239
235
162
174
202
233
221
184
156
185
230
229
219
223
213
194
154
70
18
21
20
13
2
1
1
1
4
9
12
12
10
5
2
4
9
10
6
4
5
4
2
2
4
5
4
3
2
1
1
0
0
1
0
0
0
0
0
1
2
8
41
97
121
142
162
164
163
164
164
163
162
160
159
158
161
163
164
163
162
164
169
173
177
182
189
192
192
195
200
201
197
192
191
188
186
182
179
172
165
160
162
168
171
173
175
174
178
191
196
193
199
199
199
198
194
192
191
186
183
183
180
173
167
160
152
148
148
150
152
168
195
204
203
209
218
218
217
214
211
210
207
202
199
198
198
200
198
198
198
193
190
195
189
189
195
198
199
194
182
177
180
173
166
162
154
154
155
156
163
170
172
176
178
176
172
163
253
254
252
253
252
253
253
253
253
253
253
253
253
253
251
251
251
251
251
251
251
250
251
249
249
246
241
249
253
252
251
249
247
247
244
241
236
231
216
234
241
238
212
220
227
220
225
201
175
171
186
177
186
222
245
241
246
245
240
237
230
221
225
228
219
191
196
199
186
165
137
140
133
141
152
169
203
195
175
177
175
192
230
226
196
178
171
175
209
184
219
177
99
121
155
188
189
156
163
194
187
209
195
204
198
241
234
186
157
155
183
236
248
215
207
186
221
240
228
239
190
221
234
196
172
178
195
220
228
178
155
209
240
235
219
180
160
127
62
25
10
7
11
6
1
0
0
0
0
4
8
10
11
8
4
3
5
11
13
8
7
6
6
3
3
4
4
5
6
6
2
0
0
0
0
0
0
0
0
0
0
0
2
13
50
87
116
141
156
156
158
161
160
160
159
158
156
159
158
162
167
169
167
167
168
170
174
183
187
186
186
188
190
191
188
189
188
183
179
179
186
176
169
164
161
160
165
173
174
178
188
194
195
199
204
203
199
195
191
189
182
179
176
166
166
159
152
156
159
147
147
149
161
186
203
202
208
214
214
215
213
211
210
207
204
199
196
193
192
190
191
196
198
194
188
191
199
202
195
187
178
171
172
176
164
157
159
150
150
160
168
171
173
174
172
176
169
167
157
254
254
253
253
252
253
254
254
253
253
253
252
253
253
251
251
252
251
252
252
251
252
252
251
246
244
243
249
251
252
248
248
247
244
244
240
231
230
229
233
237
231
207
225
222
220
216
182
168
193
182
176
179
231
243
239
240
247
239
236
235
235
214
220
224
217
213
200
189
184
178
192
190
201
209
200
194
177
184
177
181
221
229
205
198
190
158
190
204
162
214
139
108
150
184
161
174
161
166
179
199
228
219
191
209
226
211
152
155
184
227
237
239
212
205
214
226
218
229
228
185
213
176
170
201
209
218
221
190
161
188
230
239
220
215
143
73
27
11
5
3
7
10
1
0
0
0
0
0
1
5
9
9
8
5
7
8
12
11
10
7
4
4
4
4
3
4
5
7
6
2
0
0
0
0
0
0
0
0
0
0
0
1
2
11
45
87
113
136
150
154
158
157
156
159
158
156
155
161
168
166
167
169
171
172
171
174
179
182
182
181
179
178
178
177
177
176
175
175
172
172
168
170
174
175
175
172
173
173
175
186
194
196
198
202
199
197
196
193
189
183
181
177
167
164
161
153
153
156
147
151
157
163
190
202
201
202
205
207
207
206
207
209
206
203
200
195
191
193
194
191
192
190
194
197
197
196
193
189
180
173
176
177
178
169
160
161
155
154
162
169
171
173
173
171
173
171
171
168
254
255
253
253
252
252
252
254
254
254
253
252
252
252
252
251
251
251
251
252
252
252
250
249
252
245
247
247
252
250
251
244
241
244
241
242
227
231
235
227
240
219
208
229
224
227
205
182
192
189
171
163
175
228
246
244
230
241
244
240
231
236
235
213
205
212
217
221
214
210
208
214
214
209
202
195
196
193
199
204
197
228
206
178
169
177
157
212
177
173
177
119
125
161
169
142
168
158
155
175
173
219
183
192
211
195
173
157
176
235
234
237
234
225
214
227
222
219
230
190
201
184
190
192
190
207
193
189
181
191
236
240
209
179
115
28
7
11
8
8
5
10
9
2
1
0
0
0
0
1
4
6
8
9
9
11
12
10
10
7
4
2
2
3
4
2
3
4
6
5
2
0
1
0
0
0
0
0
0
0
0
0
3
5
3
11
46
93
115
138
147
150
153
156
160
159
156
154
154
156
167
169
168
168
168
170
173
175
177
179
178
178
177
178
181
181
180
177
178
180
175
170
163
161
164
170
175
176
177
183
196
198
198
198
198
194
190
187
185
183
178
174
169
157
153
153
142
140
151
154
158
161
160
169
181
184
194
200
204
206
203
206
206
202
199
198
196
192
193
194
196
197
197
195
191
188
189
186
181
180
184
177
179
175
155
152
153
146
146
153
162
169
173
173
173
171
170
165
155
254
255
253
254
253
253
253
253
253
253
252
252
252
252
252
252
252
252
252
252
252
252
252
251
250
245
251
251
249
247
249
243
243
242
243
242
224
234
226
228
243
211
222
229
229
215
192
196
192
176
163
152
162
226
242
242
241
232
240
242
235
221
230
236
222
206
208
206
207
215
212
216
217
219
221
216
214
207
209
197
202
232
179
174
181
182
206
213
153
166
154
137
185
179
187
156
166
150
169
183
173
180
195
190
186
180
165
188
236
231
228
216
211
216
212
196
205
225
234
179
186
142
146
173
187
181
184
191
199
233
232
221
145
87
28
12
6
10
3
2
2
3
1
0
1
0
0
1
2
4
5
8
9
12
14
19
16
12
11
7
4
3
3
4
5
3
3
3
4
4
2
1
2
2
1
0
0
0
0
0
2
1
1
2
2
9
20
54
95
118
137
147
151
154
155
161
164
166
159
147
155
161
167
169
167
171
175
175
177
179
179
178
175
174
176
178
178
173
171
171
170
167
163
163
165
167
171
172
172
178
188
196
201
198
203
196
195
194
191
191
184
177
174
160
150
142
137
148
155
170
155
162
173
183
185
180
182
176
181
184
184
192
200
197
195
195
196
196
198
196
194
194
195
195
193
190
190
188
188
187
180
179
175
164
159
158
153
146
144
147
151
156
160
165
172
171
165
149
146
254
255
254
255
254
253
254
252
253
253
253
253
253
252
252
252
252
253
251
251
253
253
251
252
247
243
247
252
252
248
249
243
243
242
243
237
222
231
221
236
233
211
228
234
222
201
190
198
180
165
145
139
156
229
240
238
243
239
231
239
242
235
216
218
233
229
222
215
204
213
218
219
224
233
225
208
197
202
202
209
210
216
164
180
184
200
221
159
142
160
171
157
217
208
189
155
160
144
197
198
146
170
221
178
162
162
175
235
246
222
194
182
208
206
195
214
236
232
230
169
161
146
177
176
159
198
216
201
235
230
211
141
50
29
28
22
6
2
3
1
2
1
2
4
2
1
1
3
6
9
10
12
12
13
14
17
15
13
12
10
9
9
8
8
8
8
8
6
6
4
1
2
4
4
2
0
0
0
0
0
1
2
1
3
3
11
22
24
56
93
119
135
146
154
165
166
181
183
181
164
148
147
156
164
171
176
176
176
179
181
182
179
174
171
174
177
178
171
169
169
163
158
160
162
166
171
175
182
184
189
200
205
208
206
202
199
200
192
195
191
180
174
166
147
135
138
142
148
151
157
160
167
165
168
169
175
178
185
186
184
183
190
196
193
193
194
197
195
197
197
199
200
201
201
199
191
189
192
190
187
184
176
166
168
162
151
150
156
157
158
161
167
170
172
173
171
173
164
158
254
255
254
254
254
254
254
252
253
253
253
253
252
252
251
251
251
252
251
252
253
251
251
251
242
248
247
251
251
249
249
245
244
243
246
233
222
227
220
239
227
219
230
223
205
193
192
189
173
166
139
139
163
231
240
242
240
246
235
231
237
239
240
222
227
208
215
225
231
224
225
224
233
233
217
216
215
201
203
216
192
215
158
177
203
233
186
140
136
163
176
191
221
167
153
148
154
153
198
216
157
195
199
171
166
161
205
245
238
217
191
203
205
214
240
230
237
240
218
165
145
172
165
156
199
220
211
237
234
209
151
60
33
26
24
12
3
1
1
1
2
4
4
6
5
4
4
7
10
12
16
15
13
13
13
12
10
11
14
10
9
10
10
11
10
9
10
10
7
5
1
1
4
3
1
0
0
0
0
0
0
1
0
0
4
14
28
27
43
74
94
121
136
147
166
187
186
198
184
181
173
151
153
154
166
171
174
177
180
184
184
182
181
178
178
178
175
172
173
173
171
166
163
163
167
171
178
183
184
186
191
198
204
205
207
200
202
194
198
191
180
171
161
145
129
127
149
154
167
175
181
185
193
207
217
218
215
209
202
200
200
201
203
199
197
196
195
196
196
199
203
204
204
201
196
193
192
192
190
186
181
179
173
169
157
153
154
155
159
162
165
173
176
177
175
177
173
170
167
255
255
254
255
254
253
254
253
254
254
254
253
253
253
253
252
251
252
253
252
252
249
249
249
242
247
249
253
251
249
245
243
247
240
237
224
221
223
230
236
221
223
217
207
195
191
198
178
165
165
142
138
173
229
243
249
235
242
246
226
233
241
237
234
230
228
228
228
231
239
233
230
221
228
216
205
194
206
203
193
202
216
177
171
203
220
177
141
163
216
189
212
188
147
139
144
152
163
210
209
174
195
153
167
154
209
245
246
234
212
205
205
208
227
239
228
234
236
205
144
155
173
149
188
230
216
232
222
188
132
54
39
33
20
6
2
2
1
1
4
5
6
6
6
4
4
7
10
16
19
21
18
16
15
14
13
13
13
15
10
9
11
11
11
11
10
10
10
6
4
3
2
4
3
2
0
0
0
0
0
0
0
0
2
9
19
32
29
39
65
80
103
119
138
158
186
199
189
200
185
174
157
150
152
157
162
166
170
173
177
180
182
182
180
183
185
180
173
171
171
172
173
167
168
173
175
179
179
183
187
199
200
204
207
200
195
188
180
175
169
160
150
146
139
137
146
161
168
179
188
194
201
212
216
213
221
215
211
209
211
210
206
203
201
198
197
197
198
199
201
203
201
201
200
198
195
194
190
187
182
179
178
170
160
160
162
160
168
169
160
161
162
165
170
170
173
169
167
169
255
255
254
255
254
254
254
254
254
253
253
253
253
253
253
254
252
252
252
253
254
253
251
249
246
245
248
252
251
249
244
243
249
240
229
220
221
230
236
225
212
222
208
195
196
197
194
173
179
164
154
142
198
221
244
243
238
246
248
244
233
228
226
230
235
225
231
233
233
234
217
212
215
223
200
208
209
191
172
201
207
230
183
162
183
217
166
158
203
231
209
203
170
153
138
145
199
200
226
172
189
170
169
179
181
218
244
240
222
201
209
191
205
233
243
233
234
233
169
138
158
176
148
223
222
234
221
185
125
47
42
36
32
33
7
1
2
1
3
9
8
6
6
6
3
3
8
13
17
19
17
15
14
14
15
15
15
15
11
11
10
11
11
10
11
12
10
10
6
3
2
2
4
4
2
0
0
0
0
0
0
0
0
5
13
24
34
35
42
61
80
99
110
127
148
161
190
191
190
196
188
170
152
148
152
159
162
167
170
174
176
180
182
191
189
180
178
175
175
177
175
170
167
168
170
174
179
183
186
192
199
197
196
194
190
186
188
180
170
163
155
150
148
144
145
156
170
180
190
197
202
206
211
216
213
214
221
220
217
214
210
203
202
201
199
200
200
195
196
199
202
201
202
201
200
195
190
187
184
178
172
169
164
164
172
169
176
171
161
162
164
171
172
173
172
173
167
161
157
254
254
254
255
254
254
254
254
253
253
253
253
253
254
253
254
253
253
253
253
254
253
251
247
246
247
251
252
252
247
245
244
249
242
228
216
223
231
226
222
221
218
204
193
201
193
176
177
180
162
157
166
217
231
246
244
243
243
237
232
232
208
196
188
200
213
227
236
221
219
217
190
170
159
204
226
195
188
207
208
226
198
167
148
161
195
203
213
225
230
193
164
159
145
123
179
209
213
220
188
204
160
161
170
223
239
235
212
186
199
183
187
236
240
246
226
229
221
143
147
174
160
213
222
213
234
197
126
35
29
36
43
38
11
3
1
1
2
7
9
7
4
4
4
2
4
8
13
19
20
18
15
13
13
17
21
20
15
11
12
11
10
11
11
10
9
6
6
5
3
4
2
5
5
3
0
0
0
0
0
0
0
2
7
16
29
39
35
44
62
78
105
115
116
123
159
177
191
193
196
196
170
151
149
160
166
167
170
173
176
178
175
171
180
189
182
174
173
174
173
171
166
166
168
170
173
178
183
189
198
193
193
193
194
191
185
183
169
151
143
149
152
154
155
156
161
168
182
196
205
208
212
207
215
222
216
220
220
216
216
216
217
215
211
207
203
200
198
196
196
198
198
200
200
197
190
187
188
183
175
169
167
169
176
178
175
166
151
156
160
159
158
164
171
171
172
168
166
162
254
255
254
254
254
254
254
254
253
254
253
253
253
254
253
253
253
253
253
253
253
252
251
243
247
245
248
249
251
250
248
248
248
243
232
216
227
227
228
223
218
202
194
206
196
180
176
186
179
158
157
166
190
213
229
237
221
215
216
215
222
237
227
213
201
211
229
228
210
222
199
190
178
172
174
187
187
207
215
224
219
179
180
138
156
204
220
233
206
211
173
164
159
144
141
194
220
203
221
225
213
148
150
210
234
202
185
190
200
188
215
220
245
246
245
219
225
183
131
169
161
185
226
200
229
200
106
29
23
16
33
41
19
2
1
1
1
8
11
6
4
3
4
4
3
6
9
14
16
20
20
17
14
14
18
18
15
15
15
14
12
11
12
12
11
7
3
3
5
7
5
3
6
5
3
0
0
0
0
0
0
1
5
10
18
31
35
32
35
59
75
102
124
132
127
138
177
186
202
188
195
179
150
135
154
167
168
169
171
172
174
178
179
176
179
177
177
177
178
172
164
160
161
162
167
169
170
170
176
177
176
183
175
179
175
171
168
170
168
165
167
169
171
172
179
190
190
198
202
202
199
199
200
209
220
220
221
227
223
224
220
216
213
209
207
204
202
200
196
194
198
200
199
197
194
191
188
185
182
176
174
176
177
181
174
168
159
164
161
155
157
166
170
171
164
163
159
159
161
254
255
255
255
254
254
254
254
255
255
254
254
254
254
254
254
254
253
254
253
253
252
253
246
245
248
251
247
248
245
248
250
245
241
231
222
232
225
230
217
213
200
191
208
180
179
185
184
179
160
163
179
204
195
201
216
227
233
219
207
206
216
228
221
226
229
228
221
218
208
199
205
196
167
152
157
210
224
217
218
207
188
151
136
171
192
229
235
171
181
175
161
150
145
158
216
213
184
209
225
177
109
167
227
234
201
189
206
211
226
220
241
246
247
225
210
202
135
149
174
174
239
202
201
183
87
24
20
11
22
51
26
4
1
1
1
2
6
9
7
7
8
6
5
4
5
13
16
18
22
18
14
15
16
15
15
14
16
14
11
11
12
13
11
10
8
5
5
11
9
4
2
2
1
1
0
0
0
0
0
2
4
7
11
19
31
34
33
35
59
76
91
107
126
129
128
144
176
192
209
211
198
163
146
136
150
162
166
169
168
165
172
174
170
171
168
166
167
165
161
160
157
155
157
160
163
159
165
177
176
174
180
180
184
184
185
182
181
188
198
201
201
204
200
199
198
201
195
184
184
192
206
210
214
219
217
221
226
222
219
216
217
216
214
213
212
208
203
200
198
200
201
196
192
190
189
186
184
182
179
178
178
181
173
166
169
168
162
160
163
164
162
162
163
165
172
169
164
163
255
254
255
255
254
254
253
254
254
254
254
253
253
252
253
253
252
250
252
253
251
252
249
244
247
250
251
246
245
242
249
251
242
236
228
231
228
220
225
213
215
199
197
192
163
190
191
182
177
158
156
183
208
222
207
195
204
230
220
219
220
227
231
207
188
179
170
182
164
154
150
179
221
219
205
231
231
204
189
224
202
156
165
158
190
210
230
199
170
198
168
155
156
154
175
209
194
186
218
190
118
160
213
230
217
227
209
219
219
237
222
233
245
240
193
192
143
142
170
155
219
205
180
154
71
12
12
9
23
42
28
4
1
1
1
0
2
5
10
11
10
11
7
8
8
15
18
19
19
22
20
16
15
18
18
16
14
15
20
15
15
12
11
9
8
7
9
13
9
5
3
1
0
0
0
0
0
0
0
1
3
5
9
12
20
35
34
35
40
68
82
96
113
126
127
131
133
139
191
204
207
201
184
153
148
135
143
161
169
167
166
161
162
161
161
154
146
143
142
147
150
150
149
149
150
153
148
148
152
157
175
183
192
208
208
213
213
211
212
211
216
215
203
198
199
196
193
187
188
201
222
220
214
218
214
215
213
217
216
220
221
220
217
212
211
210
206
203
199
197
200
196
197
195
191
186
183
185
184
181
181
181
175
170
168
168
167
170
172
160
153
158
160
162
166
171
172
171
167
255
254
255
254
254
254
254
254
254
254
254
253
253
253
253
254
252
251
252
253
251
252
245
244
247
251
250
246
242
242
249
246
241
231
228
233
224
225
221
218
214
201
193
171
175
195
187
196
169
152
165
187
200
226
226
226
231
235
221
201
187
187
208
224
231
231
232
234
222
207
220
221
215
216
222
217
198
198
217
222
177
158
170
190
226
220
195
160
205
181
162
159
174
164
196
215
202
218
213
137
145
230
216
218
205
213
212
203
219
240
220
214
237
232
178
142
136
170
163
195
232
168
141
42
15
14
11
22
55
38
10
2
2
2
1
1
3
8
11
13
10
7
7
10
12
18
19
18
19
18
16
16
16
16
16
14
16
17
18
16
12
9
9
9
9
12
20
15
10
6
2
0
0
0
0
0
0
0
0
2
4
6
9
13
20
33
32
37
45
72
88
98
108
117
123
126
127
134
150
193
213
212
197
155
136
151
139
146
158
166
171
166
163
166
168
163
163
157
151
151
148
141
137
141
141
143
140
132
132
139
146
152
166
182
190
193
199
201
201
202
202
202
197
196
201
188
181
187
195
203
205
203
211
211
210
213
208
213
219
215
214
215
213
211
210
203
194
192
192
185
189
191
191
192
191
187
185
185
186
185
182
176
173
170
171
169
170
167
160
156
161
159
161
164
165
164
165
164
158
254
254
255
254
254
255
254
254
254
254
254
253
254
254
254
253
254
253
253
254
253
250
248
247
248
250
248
244
238
243
247
243
236
226
230
231
225
230
223
222
207
206
184
169
193
197
191
188
166
158
163
167
193
221
234
229
238
244
237
229
217
199
200
213
222
227
224
219
208
212
210
223
215
185
160
161
189
212
208
211
188
165
205
233
221
175
171
173
213
185
164
205
195
174
200
235
229
228
184
135
211
218
194
183
198
193
191
220
228
240
222
218
228
233
163
126
172
166
171
230
196
107
37
10
17
22
20
27
22
8
1
3
5
4
2
2
6
9
12
13
12
11
10
12
16
17
19
19
18
15
13
13
14
14
15
19
19
16
18
14
12
11
11
11
17
23
14
11
9
4
2
0
0
0
0
1
1
0
1
4
3
6
9
14
22
29
35
40
52
78
89
97
107
117
123
126
127
135
139
153
201
218
205
173
136
149
153
139
142
149
163
170
170
173
172
170
172
173
167
163
160
159
151
140
137
130
125
119
109
120
125
126
138
153
157
165
177
180
185
187
182
184
183
177
179
186
192
198
201
204
213
216
213
213
210
213
209
208
213
210
211
211
210
205
201
195
190
187
185
184
194
195
192
194
192
186
184
188
186
180
176
173
172
176
177
173
167
166
165
163
153
151
158
169
175
176
171
164
159
255
255
255
255
255
255
254
254
254
254
254
254
253
254
254
254
254
253
252
252
251
249
244
246
252
250
249
248
242
245
243
243
224
223
230
232
226
231
225
223
210
201
176
180
202
197
194
181
167
169
162
165
165
186
209
223
225
231
223
232
234
243
241
239
239
236
233
221
223
221
216
198
194
203
213
171
149
173
216
224
179
161
218
223
192
181
189
175
213
203
186
227
220
166
196
240
240
231
166
164
187
164
170
167
185
202
230
229
238
244
217
198
215
215
136
154
174
141
210
211
110
27
13
13
16
21
26
19
9
4
1
3
4
4
4
3
5
9
11
11
12
11
13
14
16
20
22
16
16
14
11
11
12
13
17
16
16
16
15
12
11
11
10
15
23
18
9
7
4
4
1
0
0
0
0
1
1
0
2
5
4
3
6
14
25
32
36
38
53
77
85
96
108
120
123
126
128
135
139
140
166
188
199
149
142
140
152
143
138
134
132
152
167
168
173
177
182
182
177
179
174
170
169
152
137
123
120
116
103
112
114
118
128
133
136
148
163
163
160
153
155
167
166
170
187
200
202
205
205
208
214
219
218
221
213
210
209
202
201
198
196
196
192
190
192
194
195
196
198
196
198
191
190
196
196
189
189
188
184
179
178
178
180
177
174
170
171
170
162
152
154
165
167
168
167
163
161
163
162
255
255
255
254
254
254
254
254
254
255
255
255
254
254
254
254
253
253
254
253
253
249
242
246
252
252
250
249
244
243
242
237
213
227
229
231
230
229
229
221
210
192
183
192
201
197
193
175
166
172
174
178
175
168
170
181
190
200
211
231
237
226
224
221
190
176
167
169
172
167
163
165
180
199
221
215
217
212
228
213
176
150
195
218
202
218
173
166
215
224
213
235
231
174
202
237
240
218
146
160
159
197
172
181
205
217
236
230
242
241
201
173
196
159
138
170
151
195
210
117
22
18
16
18
22
19
11
10
10
8
6
5
5
4
4
6
8
10
12
12
12
10
13
14
18
26
21
14
14
11
11
12
12
14
15
16
16
15
16
14
13
13
14
23
17
15
9
5
3
1
0
1
0
1
1
0
0
0
2
4
4
4
6
13
30
33
38
42
52
72
86
103
116
125
125
131
131
138
136
139
139
150
158
161
139
143
144
154
146
126
111
116
137
156
164
168
172
172
176
172
176
181
171
160
151
142
134
117
102
106
106
108
123
127
132
141
140
139
140
140
155
166
175
189
202
206
215
207
206
208
218
223
215
216
213
210
208
204
201
198
200
203
206
203
202
198
190
182
179
180
182
187
189
192
192
192
190
186
184
183
181
177
173
172
172
174
161
151
155
165
168
166
165
163
165
161
157
157
156
253
254
255
254
254
254
253
254
254
254
254
254
254
254
254
254
253
252
254
252
251
249
250
249
250
250
248
249
246
244
243
224
214
229
229
226
236
228
230
209
214
198
193
195
198
201
186
175
168
174
167
202
207
196
190
183
183
187
192
223
231
237
227
215
205
196
196
206
215
205
176
176
187
229
229
216
235
231
205
207
192
159
197
227
236
210
170
161
214
234
222
239
219
176
223
235
232
167
136
141
178
218
195
188
190
210
239
224
234
243
189
158
164
135
161
154
159
208
140
25
13
17
22
12
7
5
8
15
17
13
7
8
6
4
4
7
12
15
11
11
11
11
14
14
21
20
15
13
10
10
12
13
14
17
15
13
14
16
15
25
22
11
20
18
15
13
10
8
3
1
0
1
0
1
0
0
0
0
2
4
2
3
6
13
32
37
37
40
48
67
85
105
115
122
124
132
132
134
137
134
128
122
123
124
140
142
143
147
162
150
115
90
100
111
123
157
160
173
173
176
169
168
164
159
150
147
146
132
122
117
120
118
116
111
109
115
123
132
125
129
147
160
174
186
196
208
212
216
214
216
224
217
216
211
207
207
205
202
198
192
191
193
194
190
187
185
181
178
187
188
188
190
193
191
188
188
186
183
185
187
181
174
171
173
167
163
167
171
170
172
170
164
159
159
159
159
158
155
149
253
254
255
254
254
254
254
254
254
254
254
254
254
254
254
254
253
252
254
252
251
246
247
246
251
253
251
251
248
245
241
223
221
228
226
222
233
223
222
201
218
192
195
196
202
188
178
169
159
158
173
183
208
215
211
223
231
231
230
233
227
222
213
221
226
231
232
226
223
221
225
225
233
227
220
234
231
208
214
224
199
191
214
242
223
186
172
167
216
242
233
244
220
178
189
233
184
143
161
197
218
210
179
185
181
222
240
221
243
234
161
145
138
150
158
138
186
150
38
10
15
19
14
4
7
8
10
19
13
7
8
7
3
1
5
10
11
10
12
11
9
11
13
15
17
13
15
12
9
11
14
19
18
17
13
15
16
16
15
19
26
17
20
14
13
12
10
9
4
1
1
2
0
1
0
1
0
0
1
4
3
6
10
15
32
38
39
41
44
63
84
101
106
112
121
125
127
128
127
122
131
125
114
106
133
135
142
147
151
164
137
90
72
68
63
101
127
143
163
165
166
163
152
147
142
135
135
135
134
135
139
157
152
147
144
150
153
152
132
118
114
129
150
165
181
189
198
205
213
215
217
220
221
218
213
212
206
202
198
194
188
186
183
179
179
183
184
183
190
193
198
198
193
191
185
184
186
186
185
181
179
178
176
172
173
178
176
174
175
170
163
157
157
156
155
154
150
145
144
254
254
254
254
255
254
254
254
254
254
254
255
254
254
254
254
254
254
253
251
251
247
249
246
251
253
253
249
246
242
235
226
225
226
227
231
234
229
206
215
202
193
200
198
191
183
169
160
153
147
154
163
202
214
220
222
228
229
224
191
180
173
168
179
213
226
230
232
233
231
226
225
218
226
238
225
210
226
207
208
200
226
244
234
174
176
185
191
220
242
245
248
217
167
182
211
176
149
199
213
181
152
174
166
211
247
237
225
245
204
149
133
152
158
130
147
141
39
13
18
16
9
9
11
15
14
15
10
7
6
7
6
2
3
8
10
8
13
12
7
6
8
10
15
15
14
17
13
12
15
19
22
15
13
12
13
17
18
18
15
19
29
18
12
12
11
9
7
2
1
4
5
1
0
1
2
1
0
1
4
5
9
15
20
32
30
34
38
39
51
75
94
97
102
109
112
115
116
114
109
122
133
115
106
119
141
138
146
146
160
161
116
86
72
63
66
76
96
127
138
142
150
151
135
130
119
132
137
143
142
150
171
181
194
167
159
158
154
161
161
149
136
129
126
138
155
170
195
212
214
216
218
213
215
210
209
207
206
202
197
193
190
184
182
185
190
192
186
191
187
182
180
188
188
185
184
190
189
185
183
180
178
178
179
178
176
176
171
167
166
164
157
149
144
145
148
154
155
151
255
254
254
254
254
255
255
254
254
255
255
254
254
255
255
254
255
254
254
250
249
244
248
247
248
252
253
246
244
240
235
231
226
226
230
234
226
228
208
222
202
206
201
200
182
178
172
158
159
151
149
138
143
169
198
207
215
226
234
219
202
198
201
214
225
216
201
192
173
201
214
227
213
222
220
228
215
179
192
215
238
239
237
208
168
193
202
212
227
246
249
243
205
155
169
181
168
161
221
197
143
153
157
211
243
249
220
227
233
159
123
137
162
137
116
128
47
20
25
21
19
21
16
17
18
15
12
8
7
5
5
3
4
5
7
11
9
11
12
6
5
5
9
14
12
13
17
21
17
15
17
16
13
12
12
12
14
14
17
13
14
16
11
11
11
9
5
3
1
1
5
6
1
1
4
5
1
0
1
4
7
11
18
21
32
29
33
35
30
29
54
85
88
93
100
102
108
109
107
100
109
118
110
105
108
147
136
143
145
151
166
142
101
79
75
68
61
70
95
102
115
122
133
141
137
118
128
150
150
149
165
180
208
216
211
195
190
179
174
182
180
178
175
157
157
157
157
168
183
195
208
218
216
214
213
213
207
198
192
185
185
184
181
179
180
181
178
175
177
177
173
175
177
173
174
173
180
188
186
185
183
183
183
180
181
179
176
172
167
162
157
151
149
151
152
150
149
151
156
254
254
254
254
254
255
255
255
254
254
255
255
254
254
254
255
254
253
253
250
250
246
247
249
250
252
252
246
244
241
240
234
230
228
233
231
228
216
217
211
207
203
205
194
174
178
157
152
154
153
157
148
152
151
159
170
177
188
195
207
236
238
231
224
197
178
167
168
187
192
175
160
155
161
194
237
220
153
162
214
222
230
234
188
191
216
223
215
221
242
246
237
189
153
155
155
150
172
232
167
151
154
212
224
242
248
208
220
195
117
121
152
143
114
114
50
17
36
31
24
21
18
15
17
19
16
10
7
6
6
7
7
6
8
7
6
6
10
8
5
5
6
8
12
14
18
24
22
13
15
15
14
14
12
12
14
14
14
15
14
16
14
12
11
11
10
7
2
1
2
6
4
1
2
3
3
2
1
1
6
8
11
15
21
25
27
28
32
28
17
31
64
69
72
83
87
100
107
102
95
104
120
110
104
100
142
137
144
150
149
154
158
122
85
75
73
70
65
77
87
105
106
125
138
151
128
122
159
166
159
164
172
208
218
221
213
207
203
191
193
195
192
188
187
192
194
189
187
185
183
192
198
203
203
206
208
209
201
193
186
188
188
182
180
175
176
176
176
172
177
174
171
170
171
169
173
181
189
187
184
183
183
181
176
175
176
172
166
162
160
162
162
159
156
151
149
152
157
159
254
254
254
255
255
255
255
254
255
255
255
255
254
255
255
255
254
254
251
251
248
243
252
252
253
253
251
246
242
241
240
232
230
230
228
235
218
216
223
217
209
203
207
176
164
163
146
155
150
154
172
181
176
201
190
181
174
183
193
209
222
226
231
227
225
225
225
225
234
230
214
185
178
199
223
240
232
163
140
199
231
232
223
204
206
239
220
199
192
239
246
234
198
157
144
144
166
198
233
179
164
163
179
217
247
244
183
202
132
109
139
143
111
108
81
30
23
27
26
19
17
19
20
16
16
13
9
6
7
13
9
8
8
7
9
8
8
12
12
7
8
8
12
13
16
26
20
19
15
17
18
16
15
14
15
16
15
14
15
14
15
13
13
13
13
13
10
4
2
5
14
6
2
2
1
2
2
1
2
6
9
11
16
23
24
25
24
28
29
19
26
55
86
76
77
82
90
95
87
87
106
113
110
106
98
132
149
150
152
150
149
159
144
103
81
78
73
65
66
68
83
105
132
127
154
143
128
149
171
178
171
167
183
220
228
225
216
216
212
201
202
206
204
205
208
210
204
209
203
198
202
204
208
204
210
202
207
201
192
189
188
185
180
181
179
174
175
175
174
174
169
169
170
167
157
160
164
170
174
176
177
178
174
172
173
171
168
168
168
167
167
164
162
158
155
154
157
160
160
254
254
254
255
255
255
254
254
255
255
255
255
254
255
255
255
254
254
251
252
250
248
250
252
250
251
249
246
243
241
237
232
231
229
229
229
223
222
221
212
209
207
182
175
173
154
152
146
139
156
199
206
205
215
230
220
221
225
201
194
207
199
186
202
219
231
231
234
233
235
237
218
218
243
248
237
226
186
137
190
230
226
213
194
229
239
226
192
200
242
242
242
209
147
146
191
220
201
218
157
165
161
174
231
244
240
186
164
116
121
139
120
99
83
58
41
22
20
22
20
17
20
29
26
18
16
9
8
11
15
9
7
7
9
9
11
14
13
9
10
10
13
15
15
21
19
20
22
21
23
20
18
18
17
18
19
21
19
19
19
15
15
15
14
15
16
15
7
6
6
15
6
5
3
2
2
2
1
3
7
8
11
18
24
25
25
23
25
28
25
24
42
75
84
73
75
82
84
82
88
104
116
111
111
102
119
155
159
158
155
150
155
165
134
99
84
75
69
66
63
65
96
137
130
157
157
140
150
167
183
188
167
164
200
227
239
229
227
222
218
211
218
218
216
214
215
212
209
207
204
204
199
198
200
198
203
204
198
193
190
185
183
181
178
175
179
179
170
174
170
163
161
143
144
144
145
148
156
165
171
172
173
172
172
171
168
168
169
167
166
167
166
164
162
159
158
160
162
162
254
254
255
255
255
255
255
255
254
254
254
255
254
255
255
255
254
254
251
252
246
247
248
249
245
249
247
246
243
241
238
234
226
225
229
229
227
222
218
207
217
200
186
181
164
166
140
126
135
161
195
190
208
226
241
235
232
220
205
205
185
199
210
197
196
217
237
245
241
236
223
230
239
240
247
231
202
189
188
204
241
230
183
203
241
227
206
173
214
239
246
242
190
148
180
230
226
205
169
153
164
155
197
214
236
236
208
130
111
127
138
99
85
68
59
34
21
19
18
22
19
25
37
34
25
20
16
23
17
13
7
9
9
11
15
14
16
13
10
11
13
17
18
20
19
21
24
24
23
22
18
17
18
20
19
21
21
22
21
21
16
15
17
18
18
22
16
9
8
7
8
6
5
4
3
3
3
2
4
8
10
13
21
26
28
27
25
24
26
30
25
31
57
72
64
73
76
80
85
91
102
114
113
115
110
108
143
161
166
161
152
154
163
150
120
94
82
77
71
65
60
99
141
127
152
168
154
164
168
185
196
180
161
172
216
233
234
233
230
227
224
225
229
224
222
220
210
211
211
212
209
204
203
201
194
198
201
197
192
191
190
185
180
172
168
166
166
166
165
158
153
155
145
143
143
145
154
163
172
177
175
173
174
172
170
172
170
165
163
162
162
162
163
161
160
159
161
164
164
254
254
255
255
255
255
255
255
254
254
254
255
255
255
254
254
252
253
251
249
247
247
246
242
243
250
245
242
239
239
240
233
231
232
226
224
226
222
212
221
213
190
199
183
176
150
121
126
123
145
171
187
206
227
230
216
205
226
229
216
208
185
185
189
215
230
238
240
218
210
215
225
234
243
246
213
179
205
222
239
229
210
179
190
231
221
192
188
231
242
243
227
179
173
198
234
225
175
132
152
156
215
224
212
236
232
229
128
106
129
115
81
74
66
63
34
25
16
17
22
18
34
27
20
24
21
24
22
15
11
8
9
11
13
15
20
15
12
10
11
15
18
19
19
17
21
23
24
21
19
17
17
19
24
23
32
38
26
21
20
23
19
18
20
24
20
13
9
6
9
11
8
6
4
3
6
6
5
6
10
11
15
25
30
28
29
25
21
21
29
28
27
46
70
68
71
75
79
89
95
104
107
112
114
111
108
136
154
169
166
159
159
157
158
144
116
95
86
72
61
60
97
149
137
150
163
155
170
160
187
192
188
185
175
193
225
235
236
237
231
231
231
233
224
223
226
214
211
211
211
210
201
203
202
199
202
195
195
192
186
182
182
178
169
169
167
164
164
165
170
168
160
162
154
150
152
167
170
175
178
176
176
175
174
174
173
169
165
165
165
164
162
162
164
164
164
165
167
168
254
254
254
255
255
255
255
254
254
254
254
254
255
255
255
254
254
253
252
248
243
246
248
241
240
248
245
241
239
239
239
233
234
227
227
227
223
220
221
209
206
200
195
194
168
124
124
119
123
138
147
145
162
184
197
215
225
230
232
237
231
227
230
238
240
221
204
196
177
163
173
211
245
246
235
194
202
231
238
241
200
195
168
195
234
200
182
194
218
242
230
205
191
188
200
243
183
139
138
157
222
241
217
210
238
231
232
153
103
108
87
81
81
57
36
51
20
13
16
19
17
25
12
15
17
18
27
19
11
10
9
11
14
18
15
17
14
10
10
13
18
21
20
17
17
22
23
21
19
18
18
17
18
23
33
51
28
24
20
20
19
20
21
29
24
17
13
9
8
10
12
10
6
4
7
7
4
6
9
10
12
17
29
35
27
26
24
20
18
22
30
30
36
67
90
76
65
66
79
91
104
103
107
110
110
112
128
142
166
175
169
163
161
163
155
139
113
98
85
72
69
104
154
149
147
168
150
168
151
171
190
194
189
186
193
207
228
234
237
234
232
234
230
229
226
222
219
221
214
216
210
203
205
204
199
196
196
194
188
182
182
179
174
165
157
154
160
167
169
170
167
166
173
168
163
164
170
174
176
178
179
179
176
173
172
170
169
168
172
176
176
173
172
172
171
170
171
172
170
254
254
255
255
255
255
254
254
254
254
254
254
255
255
255
254
254
254
252
245
241
248
250
236
233
246
247
244
241
239
237
235
231
227
231
224
221
213
213
204
213
208
201
179
153
130
116
117
154
158
184
182
174
185
195
211
210
199
209
219
239
246
241
244
228
215
207
186
177
190
213
238
243
237
229
205
217
243
238
207
176
205
179
204
235
192
175
182
229
231
222
190
191
171
206
232
169
140
157
184
236
243
217
213
238
221
212
147
111
85
78
81
73
36
53
68
19
15
14
14
14
11
10
17
17
19
23
20
16
13
9
13
17
19
17
14
11
9
11
15
23
24
19
19
23
25
21
20
18
19
21
19
21
33
56
29
25
22
21
20
18
18
19
20
24
19
13
10
9
10
10
8
5
4
6
6
4
4
9
10
15
22
30
33
24
24
23
19
15
21
25
28
33
50
84
98
71
63
72
90
97
96
103
108
112
110
114
128
153
172
168
163
161
160
160
153
134
110
99
86
80
116
158
155
140
175
164
159
166
152
186
179
199
185
174
201
225
226
228
233
234
233
229
228
229
222
219
220
219
219
213
204
205
206
203
205
199
194
189
184
174
171
174
171
161
153
155
162
169
173
167
165
172
169
167
169
172
173
175
176
176
175
174
172
169
168
167
166
166
168
170
170
172
174
173
170
167
166
167
254
255
254
254
255
255
254
254
254
253
253
254
255
255
255
255
255
254
252
246
244
249
248
234
234
250
248
247
243
241
237
235
228
227
228
217
211
211
207
219
214
210
180
161
146
122
114
135
171
189
195
201
217
214
197
183
187
187
199
213
241
234
225
222
228
237
237
232
233
242
239
242
241
241
231
198
229
242
226
182
184
212
212
235
236
196
175
217
229
215
194
188
173
194
219
211
183
149
147
166
237
235
229
212
204
179
165
128
124
89
58
79
85
40
88
68
22
15
14
12
12
12
11
15
18
17
23
19
18
14
16
17
22
23
19
16
9
9
13
18
23
23
20
22
29
22
19
23
25
27
33
25
35
50
27
24
27
23
20
19
18
20
20
21
17
15
14
9
8
9
11
8
4
4
6
9
10
24
26
20
25
24
30
31
25
23
41
48
22
17
18
23
33
43
55
94
97
72
76
84
84
89
97
106
112
111
112
122
141
161
160
159
157
156
162
160
150
138
114
94
98
132
167
156
136
165
186
156
184
153
171
183
166
203
185
182
190
215
230
234
235
233
229
226
226
221
215
216
221
219
214
214
210
202
197
205
207
201
197
187
180
177
173
174
172
168
161
152
152
157
169
174
177
171
171
173
176
175
173
174
177
175
174
172
170
170
170
171
170
175
179
176
175
173
170
168
167
166
164
254
254
254
254
254
255
254
254
253
253
254
254
255
255
254
255
254
253
253
249
246
250
249
239
229
246
246
247
244
243
239
230
231
229
222
213
207
201
209
222
215
194
169
151
143
128
142
151
189
177
205
228
225
223
214
217
217
215
217
205
208
195
192
215
216
219
221
224
235
240
237
241
243
231
207
212
237
223
210
187
175
222
235
235
241
205
177
214
217
197
198
189
217
215
206
209
169
157
141
176
224
220
228
225
220
231
210
126
123
131
70
78
93
52
83
69
35
19
14
13
12
10
12
16
15
19
27
19
18
18
23
21
29
32
27
20
11
12
13
20
20
22
22
25
25
18
20
23
24
27
28
30
37
25
23
25
26
24
24
21
22
22
20
19
17
14
11
9
11
11
10
7
3
3
6
11
23
51
46
41
41
31
30
31
25
26
64
77
42
19
17
20
32
42
46
79
105
87
77
77
78
83
92
102
110
114
116
121
131
147
149
151
154
154
155
157
157
149
134
112
113
151
170
156
144
147
178
178
182
176
159
176
176
185
209
186
190
198
221
226
234
231
229
228
225
223
222
212
219
218
216
216
208
204
202
204
208
201
199
194
186
180
180
176
174
173
173
169
165
166
169
171
177
175
171
174
177
176
175
175
178
178
176
174
171
171
170
171
169
172
175
177
181
182
177
172
170
169
167
254
254
254
254
255
254
253
253
254
254
255
255
255
255
254
255
253
252
251
251
245
252
246
240
233
243
245
247
245
242
238
229
231
227
221
207
202
208
217
218
204
178
162
159
164
160
143
157
156
169
214
208
210
230
234
238
240
241
231
225
219
207
197
194
196
186
187
208
245
246
236
236
225
208
205
235
238
196
188
181
190
235
242
235
222
191
172
222
199
194
208
227
233
212
180
165
163
144
163
176
197
229
238
236
236
234
184
144
119
140
122
67
74
44
67
74
33
32
22
16
15
12
16
17
19
27
21
15
17
19
23
22
24
27
21
16
15
16
17
19
19
20
20
24
21
18
20
25
27
25
25
25
21
22
21
23
23
22
24
24
26
22
22
19
16
12
11
10
10
11
9
6
2
3
6
13
46
73
63
62
53
37
41
30
25
34
82
90
70
37
24
24
31
42
47
62
91
105
83
77
79
81
86
98
107
111
111
115
121
130
135
140
145
147
149
154
156
150
144
128
136
161
170
162
156
144
160
178
181
187
167
164
187
184
202
216
196
192
211
226
224
226
226
229
226
223
222
219
213
219
217
214
210
205
205
196
196
195
188
188
187
185
181
178
176
178
174
170
178
183
182
182
181
178
173
176
176
176
176
177
176
178
174
170
168
167
167
171
172
175
175
173
172
168
167
166
166
169
168
254
254
254
254
255
255
254
253
254
254
255
255
255
255
255
254
252
253
250
246
240
250
245
243
241
245
247
248
244
241
231
229
229
226
221
205
205
215
215
211
193
168
164
178
180
152
159
156
159
152
178
202
230
236
241
234
224
219
220
222
238
241
229
227
205
192
206
225
244
233
206
184
174
174
192
215
228
176
174
194
206
234
233
221
218
182
188
230
210
203
212
234
225
171
149
154
134
167
192
170
207
235
246
247
242
213
184
177
123
121
142
102
57
62
55
100
38
43
51
31
16
18
21
24
18
22
16
16
17
20
22
23
26
22
14
15
14
14
18
19
19
16
18
20
18
25
26
25
24
24
19
21
21
20
19
20
21
21
24
21
19
20
21
20
15
11
9
9
12
14
11
7
3
2
13
42
60
65
80
82
54
44
43
26
24
40
98
105
101
67
36
29
32
44
50
58
73
99
99
86
82
82
85
94
103
108
107
112
119
125
133
133
137
141
148
154
150
153
147
143
147
163
172
171
159
154
137
174
177
195
182
165
176
194
186
217
222
206
190
210
218
225
224
223
222
223
219
217
215
214
214
212
208
203
205
205
199
192
185
184
181
183
186
188
183
179
176
174
174
173
173
181
181
186
174
174
175
177
178
177
177
179
176
171
169
165
164
165
167
170
174
178
178
177
176
178
178
174
170
253
253
253
254
254
254
254
254
255
254
254
254
254
254
254
252
252
252
252
246
243
248
245
241
244
244
245
249
247
243
232
227
227
228
214
209
205
211
210
204
180
168
184
187
173
157
150
155
165
158
163
181
201
204
223
214
201
192
188
210
237
242
240
238
230
244
243
241
241
215
187
172
158
165
174
215
244
184
144
172
216
227
219
222
211
180
214
228
212
217
241
241
194
161
164
172
195
225
232
223
231
240
246
241
212
176
185
188
189
106
115
120
80
93
72
99
89
39
47
39
14
19
18
19
32
37
17
18
19
23
21
22
19
13
10
11
19
27
20
18
17
17
18
17
19
25
20
24
26
19
20
22
21
21
20
20
21
21
19
19
21
26
22
17
11
11
11
11
13
16
10
10
12
28
64
60
51
55
82
78
44
47
35
27
30
57
112
113
111
105
83
63
49
48
56
67
81
95
106
100
91
86
89
92
99
109
109
112
118
124
133
134
130
140
143
145
149
154
150
145
152
170
176
185
174
154
144
148
179
175
206
182
171
193
201
206
212
227
214
203
211
217
220
221
217
215
216
218
212
213
215
212
208
209
203
195
201
194
187
186
182
175
177
179
179
178
180
179
179
179
188
190
184
176
176
174
175
175
175
176
178
179
176
177
173
171
169
167
167
168
173
172
169
167
166
169
168
169
169
254
254
254
253
253
254
255
254
254
255
255
255
255
254
255
255
251
252
251
245
246
247
245
242
244
242
240
245
244
242
234
229
224
218
216
210
208
215
201
183
166
190
195
183
169
152
141
148
172
172
157
156
159
173
188
211
216
211
229
231
244
245
236
235
242
241
240
234
218
203
223
214
215
219
221
242
243
201
125
171
216
202
216
235
197
187
197
229
229
238
232
220
196
177
183
193
202
216
218
220
235
234
227
202
184
187
190
200
216
183
96
92
94
71
71
83
94
96
44
37
14
19
20
24
34
25
19
19
25
26
27
23
16
9
11
15
17
17
13
17
18
18
21
23
23
22
23
21
21
21
21
20
20
22
23
21
22
20
22
30
30
25
19
13
12
11
11
12
14
17
10
15
31
73
67
42
53
60
68
70
50
53
35
40
42
77
139
131
116
115
102
81
60
52
61
73
84
101
115
116
108
91
89
89
95
111
113
113
117
125
131
135
134
130
137
142
147
152
159
155
150
174
183
185
194
157
141
146
172
168
187
205
170
184
208
204
206
219
224
211
211
206
215
217
216
213
213
217
216
209
213
208
206
206
203
208
202
201
184
182
178
178
181
174
177
179
174
177
182
182
181
179
175
180
177
174
176
174
174
174
175
175
174
175
176
177
175
175
169
169
176
176
174
174
172
174
168
164
169
255
255
254
253
253
254
255
254
254
255
255
254
255
254
253
253
251
252
251
247
247
249
248
242
241
240
240
242
241
239
233
228
223
217
219
198
208
206
189
172
190
205
188
174
160
150
130
130
161
196
197
203
201
203
216
232
238
241
231
235
238
233
230
233
238
237
231
214
196
192
206
228
237
236
233
242
237
193
142
167
187
204
236
219
180
195
231
241
244
235
230
202
194
185
210
217
226
229
227
229
209
188
208
226
228
222
208
206
195
174
135
107
100
78
39
61
90
99
75
34
21
21
25
25
24
19
20
24
30
23
23
22
24
45
29
12
10
15
17
18
19
19
25
23
20
22
25
25
21
19
23
23
29
29
22
21
23
22
26
26
23
22
18
13
13
11
11
13
12
18
17
33
45
76
69
53
56
68
78
72
69
59
45
52
44
86
135
132
122
119
110
98
82
69
69
76
84
100
115
125
123
100
88
85
92
110
115
113
116
125
130
134
139
131
132
142
147
150
162
173
167
185
185
177
189
173
145
145
154
180
165
201
201
183
201
216
210
207
227
206
211
202
202
207
210
210
208
207
212
213
210
210
208
209
199
201
202
202
194
184
181
183
188
176
177
175
177
174
168
166
171
179
182
183
175
175
178
177
176
176
174
175
175
174
172
172
171
172
173
175
176
174
173
169
163
165
165
164
168
255
254
255
254
254
253
254
255
255
255
255
255
255
254
254
253
252
253
253
244
243
250
248
238
242
238
243
244
241
240
234
223
225
231
202
195
210
204
176
196
205
201
177
167
159
139
125
126
162
204
220
230
232
238
241
233
245
235
222
224
207
193
195
228
237
217
187
172
163
162
185
232
243
234
231
244
229
172
168
182
208
218
235
215
187
209
228
237
242
240
219
179
189
204
224
240
234
221
215
218
221
233
238
227
210
181
149
129
140
164
157
110
104
102
85
46
65
113
105
75
35
25
25
35
29
19
20
26
27
20
17
21
44
40
17
14
12
18
17
17
20
24
22
18
18
22
19
19
17
16
20
21
33
27
21
21
22
24
21
21
19
21
17
18
16
13
12
11
13
23
34
39
42
75
55
53
58
64
68
62
64
59
64
56
44
110
145
144
145
133
117
111
105
94
85
85
93
98
112
127
130
119
103
88
89
103
115
116
116
124
127
132
134
139
135
140
150
152
166
181
180
189
188
190
185
189
158
156
152
164
178
169
198
192
168
196
213
211
204
205
196
200
207
196
202
207
207
206
211
211
206
201
206
204
202
203
199
194
194
190
182
177
174
166
169
172
169
171
173
178
171
167
164
166
169
172
177
178
175
176
179
180
180
176
174
176
171
167
166
169
171
174
176
177
173
161
154
155
161
254
255
255
253
253
254
255
254
254
255
255
254
254
253
254
253
253
253
251
241
248
250
249
234
241
238
241
241
241
241
233
226
233
222
187
201
206
189
195
211
204
190
160
157
136
131
118
124
147
173
198
221
232
236
246
240
234
208
199
190
190
197
211
237
240
222
195
181
183
203
229
240
239
231
233
240
201
168
187
210
214
199
197
211
196
201
224
243
235
208
193
193
183
191
228
228
209
208
224
228
220
206
178
181
167
153
137
111
91
123
165
120
94
83
84
70
30
57
103
108
39
43
29
33
25
21
21
20
21
18
21
23
21
19
16
14
15
17
18
21
24
21
19
20
20
23
18
20
20
18
16
25
24
23
22
22
20
19
20
19
20
20
19
15
14
15
15
14
18
32
39
35
65
80
40
61
69
64
65
61
62
62
64
46
52
136
152
145
150
143
131
122
118
112
101
92
95
105
114
127
135
137
123
101
88
96
113
118
117
123
123
131
136
137
139
138
148
156
165
170
183
193
198
198
188
189
169
165
158
152
159
183
184
206
169
160
190
209
205
200
193
199
205
203
203
192
193
204
209
205
204
201
203
200
202
195
192
190
186
181
178
181
173
165
157
158
169
173
169
173
172
173
164
157
159
163
169
174
178
180
181
180
182
179
177
175
174
173
172
172
172
173
171
166
160
161
162
161
166
255
255
254
254
254
254
255
255
255
255
255
255
255
254
253
254
253
252
249
242
246
251
247
237
246
238
239
243
240
242
234
235
238
205
181
204
199
194
214
207
201
175
163
141
145
138
118
125
154
164
167
203
234
239
241
227
216
214
230
231
237
242
237
235
230
212
211
239
236
236
239
234
225
225
233
209
200
187
217
216
209
200
195
222
205
215
211
228
195
190
194
182
183
198
200
193
204
225
226
210
195
203
211
205
181
149
110
74
66
55
78
103
94
80
71
66
63
33
41
87
65
45
43
31
21
22
22
20
21
20
20
19
14
13
13
15
18
19
21
23
24
23
20
19
19
22
24
23
21
22
19
19
18
20
22
18
19
20
19
20
20
21
19
14
15
15
20
20
26
36
37
63
73
47
54
71
71
65
64
66
64
64
53
57
80
169
165
152
152
153
145
132
125
124
120
110
108
109
114
125
140
143
139
126
101
94
113
120
119
123
125
131
136
138
138
140
143
153
164
177
184
206
204
197
194
185
175
176
168
151
141
169
175
198
184
168
165
209
210
177
184
178
183
192
188
195
197
194
195
193
194
190
199
198
198
194
195
187
186
176
173
174
175
179
178
171
157
163
166
168
167
169
169
160
158
157
161
165
169
173
176
179
180
181
182
183
179
174
172
172
167
169
171
170
167
164
160
160
162
255
255
255
254
255
254
254
254
254
255
255
255
255
254
253
253
252
252
248
238
245
251
241
236
245
233
230
236
245
239
233
237
231
187
182
203
198
209
213
205
186
168
149
149
150
139
123
137
166
212
196
207
215
213
195
191
180
185
208
237
240
226
206
196
177
165
194
238
240
231
219
203
211
204
202
228
218
193
209
219
207
192
206
215
226
214
209
226
187
179
173
171
190
200
211
228
234
226
200
188
217
225
215
184
146
121
111
88
76
67
53
50
60
62
55
46
48
53
30
21
81
39
33
32
23
22
23
21
19
20
21
18
15
14
14
14
21
23
26
25
27
23
22
21
21
19
23
19
20
19
19
19
19
22
21
19
21
18
17
20
20
18
14
14
15
17
20
24
28
33
46
64
44
58
67
74
70
64
64
65
66
70
56
58
124
200
174
162
156
153
148
142
135
128
127
122
119
117
117
123
136
143
146
139
127
106
113
122
119
121
125
127
133
136
136
140
144
151
158
181
186
205
208
202
205
193
180
180
178
145
141
160
175
190
180
162
160
186
206
188
151
176
171
179
191
178
185
200
193
184
191
190
188
189
187
181
187
184
186
176
178
172
165
171
177
183
184
175
167
164
161
163
167
163
159
156
157
156
160
163
173
176
175
176
174
177
173
166
166
169
166
168
162
161
162
161
150
157
163
255
255
255
255
255
255
255
254
254
255
255
255
255
254
253
253
253
252
249
240
241
241
238
238
242
230
218
230
244
239
239
238
212
176
190
200
200
212
209
196
179
154
142
149
142
134
119
144
177
224
202
188
185
188
191
196
202
212
224
242
224
208
193
177
173
189
218
241
216
194
169
167
176
176
175
213
191
187
227
227
196
202
228
227
213
204
225
222
190
184
204
218
225
234
236
215
210
218
219
230
214
196
160
115
90
108
118
149
143
113
90
60
48
55
47
22
10
20
28
10
36
71
43
28
23
21
20
21
21
23
23
20
14
14
15
19
23
25
27
28
27
24
23
23
20
19
22
19
21
21
19
22
22
22
22
23
23
19
19
17
17
17
14
15
15
20
20
25
30
46
54
48
49
69
72
68
70
70
71
68
78
79
61
67
180
219
191
169
162
156
155
151
140
128
128
127
123
120
123
126
131
143
151
145
140
133
118
121
124
123
126
129
132
137
138
140
146
157
155
170
193
193
203
206
209
199
184
186
184
156
137
154
176
189
191
152
150
161
186
193
172
144
172
167
179
184
178
180
182
182
184
184
180
168
171
171
171
171
176
180
174
176
166
166
154
154
168
179
168
164
161
161
160
160
160
158
157
152
150
155
157
162
169
166
167
170
168
161
163
165
164
163
163
155
151
152
142
142
149
255
255
255
255
255
255
255
254
254
255
255
255
255
254
253
254
254
252
249
242
244
233
226
237
241
222
215
210
231
239
243
239
205
186
193
191
204
208
203
184
170
143
149
148
137
130
117
126
186
231
233
214
206
199
196
229
242
232
240
246
216
225
216
207
232
243
228
225
198
202
199
202
208
184
175
165
185
210
236
225
216
232
227
212
196
195
227
228
207
216
228
228
225
214
202
217
230
226
223
205
171
118
87
51
81
115
144
176
173
142
154
133
86
56
44
34
11
16
14
7
11
76
66
31
26
19
23
24
25
22
20
17
17
19
19
23
25
25
24
25
26
19
18
20
19
19
21
20
23
24
24
24
24
24
22
22
20
19
20
20
19
17
14
15
16
17
21
25
33
46
48
49
64
71
72
66
71
71
77
76
85
86
59
67
211
238
220
195
175
163
159
158
152
138
128
128
124
124
127
128
131
140
152
155
142
140
130
127
130
128
130
131
130
135
140
144
148
155
166
168
177
199
185
206
212
209
193
185
189
171
147
145
165
175
190
153
155
146
159
166
176
168
148
169
176
184
183
175
175
174
174
177
176
172
166
165
161
167
166
165
174
165
163
161
165
158
144
148
155
162
166
167
166
163
162
158
153
152
154
158
151
148
152
154
156
160
163
165
168
167
166
165
166
162
158
157
149
152
159
255
255
255
255
254
254
254
254
255
255
255
255
255
254
253
253
253
251
249
246
249
247
232
237
237
233
221
200
218
233
235
238
207
197
188
182
208
206
193
173
152
148
154
151
135
127
120
125
148
222
235
223
236
241
231
243
241
239
243
219
217
230
237
236
232
222
211
198
218
228
225
225
225
224
197
188
213
220
240
231
229
246
224
192
207
213
201
212
191
195
202
208
214
225
238
231
217
219
181
126
66
60
62
81
95
148
142
135
142
137
142
164
153
118
78
45
17
17
12
6
16
41
107
52
43
25
27
26
25
21
19
17
17
18
23
26
24
21
27
28
19
15
19
21
22
24
24
28
29
23
24
25
23
26
23
22
21
20
22
22
26
19
13
14
15
19
22
26
32
32
44
63
71
66
76
73
74
71
73
78
84
77
64
104
229
231
231
232
201
177
167
163
158
150
139
132
126
126
130
130
134
136
147
155
155
146
144
136
132
130
132
131
127
129
139
145
149
148
166
171
177
202
190
196
213
210
201
190
194
176
159
147
164
170
181
163
148
164
153
146
147
164
162
159
168
172
169
189
171
170
179
182
175
178
166
163
159
167
163
164
159
165
161
158
161
164
161
158
159
161
161
164
162
162
163
162
159
153
152
151
150
145
140
138
137
142
148
158
160
164
167
167
167
164
166
169
169
180
170
255
255
255
255
255
255
254
254
255
255
255
255
255
254
254
254
252
252
247
244
251
250
248
240
238
232
220
212
218
206
219
222
208
197
176
189
204
200
187
163
147
152
143
154
142
124
128
131
152
196
236
235
244
242
237
243
225
223
204
191
185
199
220
227
213
205
181
187
187
227
239
233
219
234
236
207
216
225
246
229
235
222
212
187
214
191
200
189
179
204
229
232
241
244
235
208
180
123
57
28
26
21
46
39
45
61
54
72
98
125
125
136
146
154
153
124
45
14
10
3
19
6
42
91
95
64
33
32
31
20
19
20
20
22
20
22
23
26
35
19
15
18
22
20
23
26
27
27
26
26
25
24
25
24
22
22
22
23
23
24
23
19
15
14
17
18
21
25
36
34
45
70
62
56
73
79
79
70
68
70
76
72
73
163
236
230
230
232
230
210
177
166
164
159
152
144
136
135
137
138
138
138
142
152
156
151
149
148
146
143
139
134
134
128
135
144
151
148
169
169
187
179
192
203
206
205
200
193
199
185
163
161
162
167
169
165
146
153
156
153
148
148
163
162
165
172
161
178
195
181
175
183
173
170
174
164
158
161
157
152
159
152
151
155
160
160
162
158
160
163
164
167
167
162
161
159
155
152
151
151
148
141
134
133
132
137
135
137
148
160
169
179
183
178
178
175
176
179
178
255
255
255
255
255
255
254
254
255
255
255
255
255
254
254
253
253
253
247
242
250
250
243
237
241
230
216
207
224
214
210
214
202
192
171
190
200
202
188
168
149
136
148
147
146
126
133
135
162
181
206
223
231
229
236
217
201
194
181
174
181
182
221
241
213
196
177
178
192
204
201
204
221
238
230
213
227
230
247
242
221
189
199
197
194
181
178
186
224
241
237
243
243
220
183
115
53
37
39
29
25
19
20
21
23
30
34
38
43
70
100
126
132
140
141
148
135
34
13
7
19
6
13
32
106
140
84
35
27
24
23
21
22
19
21
21
24
26
22
20
17
20
22
22
22
28
26
25
26
27
25
26
25
24
21
21
23
22
23
22
21
18
17
17
18
19
21
26
39
42
41
53
44
50
63
74
75
72
66
67
71
78
111
215
231
228
231
228
229
231
218
184
170
169
160
152
153
145
143
144
143
140
141
148
152
153
154
154
154
151
146
134
134
136
139
141
147
157
163
177
185
187
165
200
205
208
205
194
201
196
179
167
155
167
157
162
139
135
155
152
143
145
156
150
162
167
169
156
181
192
183
185
182
174
174
172
172
164
168
161
152
142
156
153
153
153
155
161
167
164
171
168
168
168
165
165
160
155
152
146
144
142
145
146
144
138
118
112
130
150
166
179
183
182
182
181
180
178
176
255
255
255
255
255
255
255
254
254
255
255
255
255
254
254
253
252
254
248
243
250
249
235
238
235
228
225
214
223
226
219
205
199
191
169
188
203
191
186
177
146
136
159
160
150
129
128
140
168
172
175
179
193
216
220
220
209
190
185
190
190
221
223
213
214
225
223
227
220
191
188
188
204
241
233
228
230
239
246
239
199
198
197
207
202
181
208
239
240
237
237
221
197
160
77
37
38
55
35
27
17
17
20
17
16
24
25
29
29
30
69
134
130
138
130
140
129
93
35
9
21
6
30
8
26
114
144
72
44
25
20
32
27
24
22
25
25
21
20
17
19
20
21
21
22
22
25
25
25
26
23
23
23
22
24
23
25
23
22
21
19
20
19
19
19
19
21
27
39
36
43
37
41
54
67
73
67
63
66
71
72
92
170
232
229
229
231
227
231
229
232
228
201
179
169
163
153
149
148
151
150
146
144
146
149
153
156
156
155
155
153
144
133
133
142
143
145
154
160
181
176
184
174
176
200
203
208
210
208
200
196
191
169
161
159
151
155
135
140
169
160
141
145
160
167
166
168
161
156
166
186
184
183
176
174
167
166
165
169
168
155
150
147
153
150
154
166
171
177
176
174
174
175
175
173
169
167
162
157
153
154
157
155
145
134
129
124
121
127
133
156
175
180
185
185
185
182
178
177
255
255
255
255
255
254
255
254
254
255
255
255
255
254
254
253
251
252
249
245
245
245
235
233
234
227
221
218
223
221
226
210
191
187
169
187
188
187
184
178
157
150
166
163
158
136
134
135
162
175
192
188
190
198
208
207
207
221
227
230
211
201
185
180
181
216
246
231
230
226
212
205
231
232
243
236
226
233
237
215
194
199
214
214
214
215
228
238
221
219
209
205
173
79
23
27
40
34
41
18
18
16
18
20
24
23
18
21
20
35
41
46
77
115
124
119
116
101
56
22
12
3
22
6
3
25
89
132
63
30
43
62
53
37
51
39
27
20
17
17
18
18
20
19
20
22
23
24
23
22
23
23
22
21
25
26
27
25
22
20
19
18
21
20
19
16
20
34
35
31
41
37
52
53
66
64
58
57
63
60
81
119
219
230
229
226
229
228
231
228
229
228
224
209
178
168
161
157
154
152
154
154
151
150
151
154
155
156
156
154
157
152
137
133
134
145
154
160
163
177
192
171
173
167
205
199
207
212
208
201
201
202
186
168
168
158
166
147
127
148
167
163
150
136
160
182
185
166
174
179
178
179
181
176
178
174
166
146
158
168
165
156
149
157
158
162
174
182
183
184
181
180
180
175
176
174
170
168
163
157
153
150
142
136
132
126
115
115
116
123
134
152
167
175
181
181
181
180
181
255
255
255
255
255
254
255
254
254
255
255
255
254
254
254
253
251
253
250
247
247
245
236
233
230
230
226
223
220
220
229
213
212
177
174
191
182
188
186
174
167
172
173
161
160
138
135
134
151
174
177
181
180
172
181
183
192
203
229
227
210
185
173
180
202
217
215
205
225
235
207
238
238
232
232
218
200
200
222
214
214
230
223
225
232
227
212
193
211
221
218
146
55
23
22
31
28
34
30
21
22
21
26
27
26
48
44
58
34
35
34
29
31
39
62
80
93
74
51
25
18
7
17
3
1
2
12
68
102
81
47
49
85
73
78
67
44
22
19
17
18
19
22
24
21
25
24
23
24
26
26
24
22
20
22
24
26
24
22
20
19
21
21
22
17
19
25
39
26
33
38
38
51
69
64
77
61
62
57
64
93
175
235
227
228
227
230
229
230
229
229
228
225
231
224
194
173
171
165
157
159
160
159
158
156
155
155
155
154
153
154
157
147
134
130
137
150
165
172
169
196
181
178
175
200
200
213
206
199
208
196
197
208
184
169
171
165
164
143
124
149
148
155
155
135
145
167
185
183
181
191
181
176
178
171
166
175
158
125
125
133
145
154
148
158
175
185
187
183
182
185
185
182
179
178
175
171
171
169
166
161
156
153
149
126
107
104
109
115
128
129
137
154
165
170
176
181
183
180
254
255
255
255
254
255
255
255
254
255
255
255
254
253
253
252
252
251
249
247
248
244
233
243
233
229
230
217
220
222
228
219
208
176
169
193
178
189
187
170
168
182
178
165
159
147
130
136
150
169
166
165
168
168
171
188
186
198
209
205
215
228
232
222
215
200
190
197
221
233
191
220
235
197
211
223
190
179
180
212
199
212
207
227
206
186
202
229
231
215
141
39
22
30
29
30
41
49
29
30
29
31
31
29
24
26
46
38
24
20
26
25
36
41
58
53
49
70
71
74
52
20
12
4
1
1
1
6
32
83
91
53
43
32
68
79
66
27
26
20
20
17
19
19
19
19
20
19
24
22
22
22
20
20
20
23
24
23
21
18
21
22
21
20
19
18
33
27
28
32
33
51
71
66
75
59
61
66
57
72
114
219
229
228
231
230
230
229
229
228
228
229
229
229
232
228
202
175
174
173
164
161
162
162
156
157
156
154
153
152
152
155
154
139
134
141
150
157
172
179
183
192
178
179
193
199
212
216
202
205
199
195
202
203
172
174
179
165
163
140
126
161
143
142
140
125
137
157
172
176
184
186
183
181
173
177
163
163
156
143
125
123
132
142
153
168
183
192
194
190
190
184
180
180
179
176
174
173
171
169
166
163
158
157
139
139
147
140
139
136
138
142
141
146
157
169
176
176
179
255
255
255
254
254
255
254
254
254
254
255
255
254
253
253
251
251
248
239
248
248
246
234
241
236
226
230
226
228
229
227
225
216
181
175
175
170
185
182
166
169
174
177
163
160
152
130
136
154
165
161
161
163
164
175
198
178
172
169
174
177
196
184
192
209
207
211
225
236
186
187
228
194
201
225
217
188
168
167
171
162
176
174
182
195
227
235
230
206
128
38
24
29
33
29
28
32
38
39
32
41
35
30
31
20
32
38
24
22
33
33
33
49
62
45
35
35
37
78
114
87
48
24
4
1
0
0
0
2
12
75
137
79
26
50
129
54
33
41
43
19
19
19
17
15
17
36
42
32
23
20
20
15
15
21
22
18
21
17
20
19
21
21
17
18
24
38
21
24
28
41
72
81
80
62
41
62
64
61
78
167
233
228
229
229
230
230
230
230
229
227
228
229
230
231
227
235
213
190
183
173
162
161
162
161
158
157
154
153
153
152
154
154
145
142
145
148
157
168
177
185
192
182
171
181
205
187
210
210
206
200
196
197
202
180
163
192
180
176
153
138
150
172
146
138
145
148
151
157
168
179
190
187
188
185
180
157
122
113
123
139
139
129
136
145
160
171
187
196
194
193
194
190
185
182
180
177
177
176
173
169
167
162
162
164
161
157
156
153
146
137
128
122
127
145
152
162
169
176
255
255
255
255
255
255
255
255
255
254
255
255
254
253
253
253
250
248
236
247
250
244
233
242
239
224
233
237
232
226
231
228
214
191
178
166
171
191
181
164
171
188
187
166
159
152
134
139
159
164
160
162
168
169
201
171
173
175
194
195
179
167
176
192
217
237
244
241
239
228
232
238
229
215
193
178
189
201
180
160
150
165
167
205
234
229
228
200
130
39
30
33
32
30
29
28
34
36
36
38
41
39
42
57
35
33
26
23
21
24
35
47
68
33
41
32
49
77
97
101
65
65
38
8
1
0
0
0
1
1
6
53
125
96
41
101
114
36
59
55
17
17
20
26
37
32
36
72
57
23
27
30
33
26
27
30
26
19
17
21
26
30
21
18
16
25
17
18
22
31
69
79
80
53
44
48
65
64
67
104
217
231
230
230
228
229
228
229
229
229
228
230
229
230
231
230
229
232
224
199
184
171
169
163
162
166
164
159
156
154
152
151
151
149
148
149
155
161
164
169
180
184
203
180
170
200
199
201
216
212
201
192
181
202
199
172
166
197
173
188
150
135
150
169
154
164
177
185
187
188
192
194
191
193
193
192
183
174
160
150
134
124
120
126
135
147
167
186
200
201
200
200
194
192
190
184
182
181
180
175
171
168
166
162
159
159
156
154
142
122
113
116
126
134
138
138
153
163
174
255
255
255
255
255
255
255
255
255
254
255
254
253
253
253
252
248
247
240
248
253
245
233
240
237
217
226
239
233
230
231
226
216
196
186
168
178
196
178
165
176
189
184
166
160
158
144
141
157
163
162
163
162
166
213
202
184
178
197
190
201
204
208
209
219
225
204
225
236
237
236
242
232
204
182
169
165
185
160
155
164
171
181
220
224
227
205
134
45
29
29
26
30
39
47
33
38
40
37
35
39
41
49
39
34
40
35
31
25
23
26
79
45
26
25
35
105
111
93
88
78
77
34
5
1
0
1
0
0
1
1
4
23
63
86
91
123
113
97
101
40
30
38
37
57
43
35
71
91
64
64
69
82
73
67
51
77
26
21
29
36
43
38
26
18
14
11
19
24
53
84
68
55
34
41
57
63
63
66
150
234
229
230
231
229
230
229
229
229
228
227
229
229
228
230
231
229
227
235
234
208
185
164
164
163
168
170
169
164
159
156
152
150
151
151
152
156
162
164
168
176
177
188
195
180
183
199
197
215
216
221
202
196
202
200
186
168
174
190
168
178
156
147
165
169
167
177
193
202
198
201
202
196
198
194
188
181
177
177
175
176
152
139
133
129
146
161
183
195
191
194
197
203
194
194
190
188
183
181
178
173
170
168
165
158
159
157
150
144
133
128
128
126
123
127
132
141
155
162
255
255
255
255
255
255
255
255
255
254
255
254
253
253
253
251
250
252
244
248
248
246
236
243
237
219
228
239
238
236
229
228
220
213
208
190
183
189
173
170
183
188
180
162
158
159
151
140
150
159
162
162
165
166
192
189
185
194
172
166
175
203
208
216
201
186
197
224
232
194
233
235
213
189
181
156
139
138
134
147
152
158
200
223
211
197
129
70
30
30
24
24
29
52
61
48
41
41
38
40
42
40
45
42
32
45
33
30
33
23
22
60
38
19
33
74
92
88
90
61
88
124
60
8
5
5
3
1
1
2
0
6
11
18
33
63
78
108
100
111
107
91
84
55
51
42
48
77
87
71
56
49
63
59
56
35
61
70
31
51
59
52
76
57
14
7
13
19
31
74
67
46
32
30
43
61
67
61
78
207
236
231
231
230
231
230
229
229
229
229
229
229
231
230
230
231
233
231
229
232
239
226
191
165
170
170
171
176
175
168
163
158
154
155
155
155
159
162
165
169
173
178
178
182
183
180
181
188
198
208
228
218
205
200
203
160
132
142
176
184
164
150
156
156
166
170
182
201
207
203
204
207
202
202
202
193
193
191
184
174
172
156
147
137
128
133
146
159
176
187
193
200
199
194
193
191
191
187
185
182
177
174
172
169
164
160
159
158
154
150
139
131
130
122
117
126
133
147
155
255
255
255
255
255
255
255
255
255
255
255
254
255
255
253
253
251
251
241
248
247
247
238
242
236
215
229
240
240
236
231
229
223
217
213
203
193
194
177
166
188
192
183
163
153
150
146
141
146
156
163
166
164
165
175
176
177
196
170
158
157
179
207
206
196
212
235
232
216
187
214
217
201
189
173
160
146
132
132
147
141
178
219
211
177
130
62
35
31
25
25
25
30
35
48
52
44
40
40
41
35
39
66
50
36
31
31
42
41
24
28
56
44
29
41
72
69
79
62
42
76
112
33
11
24
61
42
20
6
2
2
12
23
21
31
52
48
58
75
90
92
98
119
89
40
49
57
54
44
47
32
27
39
47
40
30
41
50
31
54
49
39
56
32
13
12
17
23
41
72
42
33
28
34
44
62
67
60
142
235
232
231
231
231
231
231
230
229
228
229
230
231
230
230
230
228
229
230
229
229
230
233
232
202
176
179
176
178
183
176
174
168
159
159
163
160
159
161
164
169
173
178
179
180
180
180
177
183
202
200
217
222
221
208
212
198
155
125
136
188
179
156
144
145
146
163
165
189
203
202
205
204
199
199
200
193
185
188
187
186
182
170
158
150
135
127
132
151
167
185
195
200
205
201
197
195
192
186
185
182
180
178
174
172
165
162
157
153
151
147
138
129
128
120
133
137
123
143
163
255
255
255
255
255
255
255
255
255
255
255
255
255
255
254
253
252
253
243
246
246
250
234
240
238
219
229
240
237
232
227
224
221
221
213
205
198
192
180
174
193
192
178
165
152
148
148
143
147
156
161
166
158
158
163
165
174
196
174
165
168
184
173
173
207
191
202
219
189
205
191
169
188
165
158
152
136
137
144
152
167
196
203
163
120
86
34
36
27
27
30
33
32
31
53
54
45
53
59
61
45
41
45
53
42
32
38
32
39
35
37
48
53
45
71
72
69
80
58
59
75
109
49
28
56
88
59
71
42
9
1
6
19
21
18
25
31
35
44
42
49
79
125
112
83
62
41
34
29
29
26
21
25
28
25
27
27
25
26
43
37
36
48
26
20
21
22
23
50
47
23
24
25
33
42
62
59
77
207
236
233
232
232
231
231
231
231
230
229
230
229
231
232
230
230
230
229
229
229
230
230
232
234
230
214
188
187
184
181
185
184
180
166
160
165
164
160
159
160
169
175
176
177
179
180
179
175
177
193
186
214
212
198
129
167
216
190
183
159
147
160
164
151
149
148
148
164
171
206
196
200
199
196
193
197
195
190
189
190
187
185
181
177
170
157
149
143
146
160
179
193
195
197
201
196
191
192
191
188
184
182
180
177
175
168
167
163
157
153
148
141
136
124
136
122
169
193
183
138
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
254
253
254
244
247
244
249
234
243
240
221
229
238
234
231
222
220
215
215
208
206
204
195
187
186
192
192
177
168
153
148
147
145
149
154
158
161
159
161
168
177
182
188
173
172
171
180
163
159
189
196
186
185
201
175
170
171
152
145
136
130
128
132
142
154
171
193
160
128
107
56
38
35
35
38
31
35
35
38
47
59
55
55
68
62
54
51
56
47
38
46
53
33
44
45
43
38
65
66
68
79
66
83
76
71
76
99
103
90
92
99
90
107
98
44
8
3
10
14
20
27
42
65
67
61
53
45
67
123
112
64
67
52
52
52
40
19
17
19
20
22
21
26
34
44
38
39
47
28
24
22
24
27
45
26
21
21
24
29
52
64
49
122
235
235
233
233
233
231
232
232
231
231
230
231
231
231
231
232
232
232
231
231
231
231
230
233
228
227
234
222
194
193
188
188
192
191
182
173
171
168
166
165
157
159
174
179
180
179
180
180
179
178
181
188
185
159
71
21
96
215
205
188
193
179
169
147
123
125
145
154
149
161
165
187
194
200
197
194
193
193
187
187
186
187
182
181
181
178
171
165
160
153
149
160
179
191
194
198
196
194
193
192
190
188
185
181
179
177
171
165
158
154
151
144
135
131
127
145
150
178
158
175
160
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
254
253
253
244
245
243
244
235
245
238
226
232
237
231
227
217
216
210
205
200
203
200
195
189
191
189
188
183
169
161
149
150
146
149
154
156
160
166
168
169
175
172
176
169
156
157
162
159
169
191
198
187
169
169
164
149
142
134
116
111
121
117
133
148
154
162
161
144
112
82
50
58
39
39
37
36
36
41
41
46
49
65
59
72
52
54
57
46
31
33
59
60
46
35
53
52
32
63
61
67
80
79
67
72
68
79
88
105
103
97
86
68
109
99
60
45
23
6
4
20
32
34
45
54
71
68
53
45
58
99
102
101
76
64
61
76
62
28
21
21
17
23
35
48
44
40
43
38
29
23
22
21
37
42
22
24
20
22
38
65
65
56
183
238
234
233
232
232
232
233
233
232
231
231
231
231
231
231
233
232
232
232
232
231
231
231
231
230
230
231
232
231
218
206
198
202
201
200
190
184
179
173
169
161
160
162
178
182
182
181
180
183
176
173
193
112
42
14
12
104
209
199
198
194
180
190
181
160
116
107
126
136
152
168
176
189
196
193
193
198
197
187
189
186
185
185
186
182
177
176
175
171
166
159
152
159
176
188
195
198
195
192
190
191
187
185
183
182
179
175
170
167
162
159
154
149
148
150
142
137
112
113
112
130
255
255
255
255
255
255
255
255
255
255
254
255
255
255
254
253
253
253
243
243
247
242
233
239
235
234
233
236
230
227
212
210
208
199
194
194
184
185
188
190
183
183
184
173
166
159
154
150
154
158
157
159
162
169
168
168
166
161
153
157
160
151
148
154
156
166
183
172
155
148
136
128
117
100
104
121
125
140
152
145
156
154
122
83
55
66
60
44
47
42
38
32
38
43
46
55
48
60
74
71
55
52
42
38
47
62
64
66
62
79
59
40
49
41
72
97
72
62
51
38
57
55
57
54
50
54
61
75
77
66
50
49
34
17
17
29
37
55
87
78
76
66
58
26
21
39
49
78
83
90
89
103
58
21
23
21
26
40
48
49
43
47
24
24
22
22
23
38
27
24
22
20
26
59
73
73
90
223
233
235
234
233
233
233
234
234
233
233
232
231
231
231
232
232
232
232
233
232
231
231
231
231
231
232
233
233
230
235
230
209
214
210
216
201
195
196
178
172
168
161
155
168
178
183
184
180
181
179
160
95
26
14
6
17
141
227
211
205
187
191
181
189
175
170
144
125
112
125
144
163
173
190
189
190
192
191
185
187
182
182
179
186
186
176
174
171
162
155
153
150
149
150
163
184
195
189
189
192
190
187
187
184
182
179
175
171
167
164
165
158
154
152
145
150
138
127
117
111
128
255
254
255
255
255
255
255
255
255
255
255
255
255
255
254
253
254
251
248
245
250
246
233
238
231
235
233
232
231
227
213
208
208
194
191
191
170
171
173
179
182
183
180
177
164
156
155
157
158
160
163
162
162
170
170
167
165
153
151
156
156
156
141
141
146
144
159
157
144
129
127
116
106
97
109
108
122
141
135
153
161
140
101
75
57
68
64
60
58
55
45
34
47
46
37
48
50
42
75
69
67
45
39
61
108
75
75
61
39
54
72
65
47
45
66
81
37
29
25
27
30
29
38
28
23
23
26
34
40
54
70
69
59
37
28
24
27
47
60
66
68
85
68
32
29
32
14
9
16
42
92
111
95
70
27
22
32
41
48
56
58
62
28
20
16
19
23
29
24
29
20
23
43
79
75
74
160
237
234
236
235
234
235
234
233
234
235
233
233
232
232
231
230
231
232
233
233
234
231
232
230
231
231
231
232
229
230
232
236
236
226
227
235
227
209
204
195
183
171
166
162
158
169
179
186
188
181
139
61
25
10
6
10
49
198
207
212
210
203
195
187
189
189
186
180
142
132
130
125
137
164
181
192
190
189
185
182
182
180
183
182
181
179
175
175
176
173
164
148
141
142
139
135
150
169
177
181
187
188
187
183
183
181
179
174
169
165
164
165
162
160
154
146
155
145
130
114
110
107
255
255
255
255
255
255
255
255
255
255
255
255
255
255
254
252
253
253
249
244
246
249
238
238
238
228
232
230
229
225
214
204
202
191
185
183
178
168
162
170
180
178
171
168
165
157
157
157
155
155
159
166
172
177
175
168
162
152
155
155
157
148
141
127
136
140
135
131
137
127
118
122
111
94
115
120
134
135
149
162
150
126
98
75
73
80
63
63
61
58
54
44
57
59
43
50
49
58
82
71
44
52
51
44
46
47
77
59
43
57
43
49
45
49
64
41
34
30
31
41
34
30
26
24
26
23
24
24
27
31
36
38
47
55
60
52
30
49
67
69
71
73
63
43
38
32
23
2
2
2
7
41
112
115
76
19
18
30
55
59
70
99
39
19
16
19
29
33
32
31
24
36
75
75
72
115
224
237
237
235
237
236
237
236
235
235
235
235
233
234
233
233
232
232
232
232
233
234
232
232
233
232
232
232
232
230
234
234
231
233
238
237
237
242
233
220
207
195
175
172
171
161
161
174
186
175
139
71
30
13
7
6
16
134
217
209
217
208
207
207
200
187
188
185
186
186
160
138
146
138
139
159
179
186
189
187
181
182
180
182
186
177
175
173
172
166
167
160
151
149
144
133
113
116
129
143
158
172
178
183
184
183
179
177
172
165
163
164
160
155
152
146
143
140
152
142
131
137
138
255
255
255
255
255
255
255
255
255
255
255
255
255
255
254
252
252
251
250
245
247
251
248
240
240
234
233
230
227
223
215
208
200
187
181
171
184
179
167
167
175
173
166
160
156
153
158
157
153
151
154
160
165
172
174
171
166
146
142
152
146
136
144
121
132
136
116
117
133
120
121
116
102
98
116
117
124
140
160
156
138
117
103
99
94
84
63
70
69
57
58
51
60
47
40
49
42
66
62
110
71
43
55
63
45
66
73
50
43
38
41
51
36
44
64
45
63
44
45
37
36
31
30
28
30
27
24
20
21
22
25
24
24
30
30
40
43
35
40
67
61
48
41
39
36
17
13
6
1
1
2
3
37
119
156
42
15
21
37
56
65
73
36
20
16
19
35
32
26
31
29
55
70
64
86
203
236
236
237
236
237
237
237
236
236
235
235
235
234
235
235
234
233
232
232
231
231
233
234
234
233
233
233
233
232
232
234
233
235
233
231
239
239
237
234
232
219
207
193
178
172
167
163
153
164
110
57
29
22
10
6
12
75
202
216
213
215
211
209
203
193
198
194
193
186
185
184
164
156
143
149
148
165
181
185
187
182
183
179
180
189
182
178
176
171
166
166
166
157
152
149
141
137
132
124
137
148
154
158
168
178
178
174
174
171
166
164
164
160
157
157
157
154
150
145
144
139
135
118
254
254
255
255
255
255
255
255
255
255
255
255
255
255
254
252
250
249
234
244
245
250
251
239
241
237
233
231
226
223
218
207
196
181
182
169
168
182
179
173
171
167
163
158
144
144
155
159
156
151
150
154
159
163
171
171
168
145
142
149
132
134
134
116
128
121
104
108
120
117
116
93
93
98
108
121
120
153
162
151
117
137
114
119
110
113
93
73
86
67
63
63
74
55
54
51
48
57
64
59
81
55
45
43
54
53
58
48
50
47
50
45
46
38
48
50
59
60
48
46
43
32
34
36
35
33
30
23
21
19
20
23
22
23
26
29
36
40
44
53
58
52
55
43
32
33
37
24
7
3
1
1
5
59
183
55
23
36
53
51
47
54
31
17
19
24
44
35
24
31
39
67
61
62
163
241
237
235
235
236
236
234
235
236
236
235
236
234
235
235
234
235
234
233
231
231
231
232
235
234
234
234
234
233
231
232
235
237
234
235
235
236
236
237
237
232
228
216
210
188
177
171
159
131
105
54
32
22
14
9
10
33
162
196
207
213
217
218
207
212
209
195
195
197
196
183
178
166
145
136
144
138
150
170
183
186
182
183
179
179
180
185
186
176
171
172
168
165
160
157
155
156
154
154
152
153
163
166
163
171
175
169
169
170
166
164
164
165
165
162
159
157
152
153
147
140
138
131
169
253
254
255
255
255
255
255
255
255
255
255
255
255
255
254
252
251
248
227
239
246
249
252
245
241
239
235
232
225
221
220
209
198
187
174
169
168
178
176
171
170
165
160
157
146
144
152
155
155
150
146
147
148
153
160
164
161
139
138
134
138
129
108
106
119
110
98
102
113
108
95
90
100
100
111
131
142
159
159
140
127
164
135
138
141
136
113
114
104
77
74
79
64
69
76
64
68
71
67
52
70
69
83
60
65
75
68
60
66
76
68
52
82
55
46
48
46
43
44
45
43
45
42
35
35
35
38
41
58
30
23
25
26
26
31
39
43
43
52
70
75
73
55
47
46
43
34
16
3
2
1
1
1
15
141
80
36
53
62
46
36
34
31
24
24
39
48
30
24
28
54
64
58
88
219
237
237
236
236
236
235
234
234
235
237
236
236
236
235
236
234
234
235
233
232
232
232
232
233
232
233
234
233
233
232
235
234
235
236
236
236
237
239
240
242
241
237
230
210
202
188
173
154
90
54
34
22
18
13
5
13
105
197
201
210
213
218
220
217
213
216
206
205
191
197
198
184
176
159
139
133
130
139
157
178
186
183
182
179
177
177
176
177
175
173
177
170
166
166
162
161
163
162
168
166
162
170
179
177
176
176
173
169
169
165
162
163
164
162
158
155
149
144
141
139
137
136
131
160
254
255
255
255
255
255
255
255
255
255
254
253
254
254
254
253
253
250
233
229
240
248
249
245
240
236
235
232
227
219
216
211
203
194
180
162
166
165
168
170
167
160
158
155
155
150
152
155
157
154
146
159
156
144
149
151
139
133
132
127
134
113
91
103
103
105
93
90
95
93
90
92
101
109
123
137
152
159
153
136
165
166
164
174
189
182
163
150
135
117
98
95
79
70
85
83
84
76
68
86
98
111
119
87
69
79
95
99
97
111
110
90
111
111
95
80
70
65
62
65
57
58
52
48
43
44
43
50
66
47
36
30
35
35
38
40
48
46
46
62
86
86
84
58
37
29
23
14
3
1
0
1
1
3
91
122
48
63
61
41
30
33
36
35
43
55
51
35
28
41
57
58
55
150
236
235
237
236
237
236
235
235
235
236
238
237
236
236
237
237
235
235
234
233
234
235
234
234
235
236
235
234
234
234
233
235
236
237
237
237
237
238
240
241
240
242
244
237
227
212
196
169
101
61
42
26
22
13
14
19
74
176
187
195
210
206
211
216
214
216
221
214
208
208
200
185
183
180
170
149
138
134
130
146
163
179
179
181
182
178
178
181
180
179
177
178
175
174
175
177
177
177
176
177
177
180
183
192
196
186
183
179
173
171
166
161
161
161
161
159
160
158
158
157
152
148
146
143
178
254
255
255
255
255
255
255
255
255
255
254
252
253
254
253
252
251
250
246
235
238
246
250
246
240
239
235
229
225
215
212
208
200
197
186
165
164
166
164
169
161
160
154
166
158
151
155
155
156
157
159
158
158
147
142
143
122
115
110
125
122
101
93
104
96
98
96
90
88
93
97
100
107
113
125
151
161
158
143
146
164
164
170
189
191
204
198
204
177
152
137
151
124
94
104
87
102
109
91
101
129
122
133
96
94
95
107
111
130
159
162
148
154
164
158
152
147
127
117
114
104
93
82
78
69
65
62
65
59
58
49
52
55
57
45
43
68
59
42
42
57
68
80
100
73
22
17
12
4
2
1
1
1
2
55
145
76
77
57
35
21
27
37
39
48
59
49
39
40
55
60
57
82
214
237
238
237
237
236
235
236
236
235
237
238
237
237
236
236
235
234
235
236
236
235
234
234
234
235
235
234
234
236
235
234
238
240
239
238
237
238
240
241
240
242
242
244
242
207
170
135
105
97
55
33
23
18
17
17
38
157
194
190
197
201
204
205
207
216
207
212
214
207
199
209
203
187
182
179
165
150
145
134
133
150
174
179
180
181
180
174
173
175
173
177
179
178
174
174
170
170
173
180
181
179
180
187
192
196
197
194
181
180
175
170
165
162
161
159
159
159
158
158
158
155
149
149
149
181
255
255
254
255
255
255
255
255
255
255
254
253
252
253
253
253
253
253
247
240
239
244
247
246
238
240
235
228
223
213
210
210
196
196
190
174
164
161
161
161
153
147
144
155
145
149
158
159
159
160
159
159
155
139
132
129
115
105
110
120
107
96
95
96
94
96
100
93
90
100
107
114
122
126
146
159
166
141
152
146
183
173
179
195
196
210
207
213
209
201
198
207
200
177
169
156
136
151
146
130
134
164
166
136
156
163
150
143
168
191
193
190
193
192
192
194
191
193
181
163
155
143
133
128
115
105
94
89
86
82
82
90
94
87
79
85
85
74
97
55
55
64
74
76
88
78
28
9
3
3
2
1
2
2
35
165
105
86
56
30
19
21
29
37
48
59
51
41
54
65
59
48
151
241
238
239
237
237
236
235
237
236
236
237
237
236
236
236
235
235
235
234
235
236
235
235
235
236
236
236
236
236
236
236
236
237
237
236
239
240
241
239
239
242
244
241
220
170
163
147
101
68
53
48
31
19
10
7
16
111
187
188
188
195
198
195
202
207
205
211
211
214
211
205
199
207
203
200
194
179
169
166
154
142
138
150
168
180
178
178
177
177
175
176
175
174
179
175
177
177
173
174
171
175
178
186
181
189
193
194
191
184
181
177
174
168
166
164
160
158
158
158
158
159
155
154
152
150
148
254
255
254
255
255
255
255
255
255
254
253
251
250
252
254
253
253
252
248
243
243
236
243
250
241
237
232
226
222
212
210
208
197
196
192
178
166
156
159
153
150
142
130
133
135
144
156
153
149
151
151
153
148
130
114
109
104
102
106
109
97
98
91
88
99
104
100
93
102
110
123
139
123
149
163
165
156
145
159
171
193
180
191
200
210
213
213
219
215
213
214
215
212
217
218
215
202
200
200
190
202
208
208
210
203
212
212
194
199
205
205
203
198
203
205
205
207
207
203
195
190
182
174
163
159
151
134
125
117
113
105
107
99
93
98
101
102
72
73
90
93
77
72
83
74
84
91
77
28
7
3
1
1
3
23
159
127
84
47
24
17
20
32
42
51
54
48
45
60
58
51
78
216
238
237
239
238
237
237
236
236
235
237
237
237
237
238
238
237
237
236
235
236
235
236
236
236
236
236
236
237
236
236
236
236
239
240
241
242
240
241
239
242
239
217
186
160
161
155
123
83
54
30
30
26
11
7
19
74
180
189
186
182
184
189
192
186
199
206
207
210
214
212
209
207
203
199
193
188
196
182
174
174
163
151
151
154
164
179
184
183
175
174
178
174
172
173
176
176
178
177
180
174
181
176
179
183
190
187
186
193
186
184
179
174
171
170
166
162
162
161
160
160
160
154
153
152
152
152
254
254
254
255
255
255
255
255
255
255
255
253
248
248
252
252
253
251
246
243
240
237
240
248
242
236
228
222
218
209
206
208
203
195
190
180
168
163
159
157
156
144
126
119
126
137
139
138
137
142
145
146
133
115
108
109
102
96
91
95
95
102
90
87
96
100
104
96
119
131
138
127
143
161
169
159
148
157
153
189
184
191
195
203
212
212
222
220
218
220
223
227
216
222
219
216
218
217
214
216
211
206
221
219
210
218
215
211
208
210
209
211
210
210
211
209
206
207
206
209
207
199
195
194
190
188
178
169
161
154
149
147
144
139
121
133
108
100
104
104
93
60
50
60
68
63
81
108
123
82
28
7
3
3
12
137
136
72
38
18
17
22
33
44
56
57
54
48
64
57
59
146
237
237
238
238
237
236
236
236
236
236
237
237
237
238
238
238
238
237
237
238
237
237
238
238
237
237
236
235
236
237
237
236
236
237
237
241
242
241
235
218
192
162
157
168
183
164
131
91
60
39
29
25
20
9
13
65
162
188
190
190
190
189
189
190
185
175
192
203
205
211
212
214
210
209
206
201
201
194
191
182
186
178
172
171
163
162
162
173
187
181
177
174
174
175
176
177
176
179
179
180
180
183
189
181
183
179
187
188
189
181
183
178
172
173
171
168
166
165
164
163
162
161
161
155
156
151
177
255
254
255
254
255
255
254
255
255
255
255
254
252
251
246
251
251
249
245
245
242
238
244
246
231
226
218
211
206
202
207
209
207
196
191
180
167
166
159
158
160
143
128
124
117
122
122
128
135
137
126
111
102
98
109
111
101
91
86
87
90
96
91
87
90
97
109
112
138
134
135
135
156
173
166
153
168
154
175
189
183
186
198
209
214
219
228
224
222
223
226
229
227
230
223
222
226
223
220
214
227
234
197
196
215
222
211
224
215
216
212
215
211
213
217
213
211
212
213
212
217
202
203
204
201
196
198
195
190
185
181
178
179
193
180
160
129
127
131
121
106
86
86
93
94
88
83
79
88
123
137
101
42
15
8
113
122
63
27
14
17
23
33
45
51
52
50
52
62
61
85
218
238
238
238
237
236
237
237
237
237
236
236
237
237
238
239
239
238
238
238
239
239
239
238
237
237
236
237
237
238
237
237
238
239
239
238
226
209
192
175
168
184
199
202
186
175
141
96
62
43
32
23
20
17
18
47
158
181
183
189
190
193
191
187
182
187
175
175
193
208
207
213
213
215
216
204
205
212
210
200
192
188
188
185
185
178
170
163
162
168
176
188
188
183
177
178
179
185
188
191
192
192
193
197
192
184
178
175
173
175
180
179
176
171
169
169
169
170
170
167
165
165
166
159
155
159
154
176
255
254
255
255
255
255
255
255
255
255
255
253
252
252
252
249
249
250
241
232
236
243
240
240
223
215
208
202
200
195
200
204
202
195
190
182
170
165
161
155
156
148
132
122
119
117
122
127
129
134
116
100
100
95
103
108
99
86
83
88
90
91
86
85
94
101
123
143
148
143
153
161
174
172
167
159
171
159
194
184
209
193
206
216
218
221
224
225
226
229
231
224
228
226
228
227
229
225
224
223
232
228
193
205
220
226
220
219
217
215
220
222
218
216
218
216
217
217
218
220
215
207
209
211
210
207
208
207
205
199
195
194
189
188
199
189
162
136
136
128
117
108
116
122
117
114
109
101
92
94
119
136
122
105
60
95
101
51
22
15
17
22
34
47
47
46
47
53
58
58
145
242
239
238
238
238
237
238
238
237
237
236
237
237
237
238
238
238
237
238
238
239
239
238
239
237
236
238
241
240
239
237
239
240
233
212
196
197
206
212
218
221
205
199
191
182
159
120
74
54
29
23
23
21
19
22
125
192
192
185
187
190
190
191
184
179
184
181
174
173
192
196
202
217
211
212
208
203
207
212
201
194
195
194
187
191
183
178
174
167
165
169
175
182
188
187
188
186
188
191
196
200
203
202
198
197
186
187
184
183
177
173
174
171
175
171
173
171
167
166
166
164
165
161
146
132
125
129
139
255
254
254
255
255
255
255
255
255
255
255
255
253
253
253
252
245
237
236
231
227
235
240
231
224
212
203
198
194
187
191
197
199
195
188
179
170
159
157
157
156
151
143
128
124
117
118
127
128
127
128
113
101
98
96
105
103
93
80
90
88
87
89
86
108
147
159
134
151
160
166
180
185
168
153
169
160
199
197
202
213
199
218
217
221
225
223
223
230
228
228
226
229
232
225
228
234
229
232
234
228
231
208
226
226
225
224
226
224
220
220
220
221
222
220
222
225
221
220
221
218
215
215
215
218
213
213
214
211
209
204
199
196
196
198
203
207
177
150
145
135
125
120
127
140
134
127
127
119
109
111
118
125
128
136
120
110
65
25
16
18
25
37
46
44
41
46
53
58
88
215
240
241
239
238
238
238
237
236
236
237
237
237
238
238
238
239
239
239
238
238
238
239
238
238
241
239
238
230
229
236
235
220
197
188
198
216
226
228
223
219
213
197
191
186
170
141
94
52
41
24
18
21
17
21
120
202
187
190
188
190
189
193
193
193
181
179
179
176
168
166
170
177
192
213
213
213
215
208
206
202
200
201
197
194
191
189
180
180
180
177
167
167
167
178
189
197
202
204
199
202
211
210
217
215
212
211
216
213
199
199
199
191
180
168
165
167
172
172
167
166
166
164
162
160
154
152
146
160
255
254
254
255
255
255
255
255
255
255
255
254
254
253
253
250
247
226
229
230
231
234
235
230
221
215
205
194
188
184
190
195
194
191
181
176
171
160
153
152
151
149
153
140
124
113
113
122
125
123
124
99
92
97
97
102
110
103
81
88
84
84
93
112
153
167
158
176
162
164
173
193
184
182
171
175
171
201
191
213
197
208
218
222
221
226
224
230
227
226
229
229
229
232
232
228
227
238
228
238
232
228
227
235
219
231
225
226
222
218
219
219
223
226
227
226
224
223
224
218
219
220
216
218
217
217
217
218
217
217
207
207
205
205
201
200
196
201
201
175
148
142
136
137
142
139
134
133
134
121
113
116
123
128
123
121
125
121
95
36
19
30
38
42
40
42
46
53
63
140
239
240
240
240
238
239
239
238
238
236
238
237
238
239
239
238
237
237
238
239
238
238
239
238
231
219
213
203
199
192
188
192
194
208
219
224
226
228
227
223
215
202
189
178
174
159
119
64
42
31
24
19
17
16
83
223
242
209
181
193
195
192
201
192
184
181
182
178
178
176
170
168
157
161
189
202
205
214
218
208
196
201
203
194
196
199
185
190
182
169
172
174
174
168
174
177
177
179
199
207
212
215
216
222
226
226
219
219
225
223
213
207
201
198
191
182
175
170
168
168
165
163
160
158
161
159
159
154
189
255
255
254
255
254
254
254
255
255
255
255
255
255
254
254
253
248
235
235
235
234
238
230
229
223
214
207
196
187
178
183
187
185
183
172
172
171
165
154
150
153
156
155
147
126
110
108
118
114
120
112
87
96
100
90
90
115
96
78
86
78
90
131
142
177
171
171
176
180
187
181
192
175
157
175
174
197
194
212
207
198
218
222
219
231
230
228
228
226
228
229
231
228
229
230
231
232
235
227
233
227
226
227
229
225
228
225
223
222
221
221
223
222
226
228
223
225
228
226
223
221
220
219
218
217
220
222
222
220
220
218
215
216
215
203
201
196
190
194
202
199
161
142
137
133
131
115
119
126
121
109
102
105
111
113
117
122
129
132
119
30
28
39
38
38
43
43
38
85
214
243
243
241
241
238
238
239
238
238
237
238
237
237
237
237
238
239
240
238
238
240
238
230
217
218
215
209
205
207
209
214
218
222
221
224
226
227
226
224
210
197
186
174
166
159
134
77
48
48
33
23
15
13
69
208
249
251
247
216
184
202
202
195
198
182
176
181
180
181
177
171
161
157
143
155
187
195
194
202
223
211
196
204
204
198
196
195
189
190
175
162
168
167
165
173
191
198
180
174
165
184
207
218
229
231
229
225
225
225
225
221
218
211
206
203
199
192
180
171
169
167
161
159
159
161
158
153
158
155
255
255
254
255
254
254
254
255
255
255
254
254
254
253
253
254
249
245
235
245
242
239
234
224
219
217
207
198
191
181
174
179
179
175
166
169
167
164
159
158
163
162
152
138
121
112
123
112
88
106
95
81
95
92
98
104
105
83
78
85
62
96
156
158
167
185
176
178
195
181
196
178
164
174
172
192
197
210
224
196
214
223
224
222
230
227
228
229
236
230
230
235
227
234
235
237
240
233
228
231
234
233
229
228
227
232
226
221
222
222
221
226
224
223
226
226
224
223
223
228
225
220
224
220
218
220
221
218
219
219
220
222
220
223
210
204
205
195
197
194
200
191
142
137
129
118
114
105
93
88
82
79
78
83
92
99
110
125
136
145
87
24
33
35
37
42
29
32
148
240
243
243
241
241
240
241
240
239
239
239
237
238
237
237
237
238
239
236
239
240
229
219
220
223
216
209
211
212
210
213
215
218
222
224
227
228
226
221
206
180
178
174
163
149
131
96
55
49
45
27
14
14
45
196
247
245
249
245
247
231
194
209
214
197
191
183
184
186
176
176
176
168
154
151
143
151
181
200
187
175
195
200
204
207
209
202
193
193
186
181
177
167
156
152
159
167
179
187
189
169
146
135
168
192
212
236
238
230
228
227
227
225
223
217
215
210
202
194
183
175
172
164
160
158
162
165
157
156
191
255
255
255
254
254
255
255
255
254
254
254
254
253
253
253
253
249
249
238
241
240
239
239
233
226
218
207
199
195
189
177
171
170
168
160
161
163
164
166
166
165
158
150
134
119
119
121
98
85
98
86
77
87
100
114
100
86
76
77
70
44
122
149
185
191
184
187
181
189
192
196
171
160
166
191
200
226
221
214
206
224
222
221
225
226
227
229
233
235
233
235
232
228
232
235
243
237
229
229
229
229
231
230
229
231
224
227
226
224
223
227
229
229
225
226
222
226
224
226
225
228
222
223
225
225
222
221
218
219
218
220
222
218
225
219
210
204
201
201
204
204
209
150
139
133
123
119
111
98
95
87
80
78
80
80
92
100
108
121
139
151
62
25
27
33
38
26
65
216
246
245
245
244
243
240
240
239
239
239
240
238
239
238
237
237
238
240
235
227
214
218
227
221
219
214
213
213
213
213
216
219
219
220
221
222
220
215
194
172
166
165
153
142
120
93
68
58
45
30
19
13
35
168
247
246
249
250
247
248
248
242
219
231
222
183
175
182
183
180
178
175
173
168
157
152
141
142
171
196
181
144
131
166
199
207
211
198
189
191
190
186
178
171
150
141
142
152
154
173
186
169
140
123
123
127
150
181
214
233
235
228
229
232
229
228
222
219
216
207
201
193
181
173
169
169
171
161
161
180
255
255
255
254
254
254
254
254
255
254
254
254
253
252
253
253
251
253
244
234
233
226
242
239
230
218
208
203
198
190
182
174
164
167
160
155
160
167
173
169
161
152
142
134
130
122
109
98
99
99
80
71
75
99
107
92
79
74
72
75
98
180
198
185
200
205
190
192
188
203
178
167
163
178
197
216
223
220
214
221
222
222
226
228
226
228
229
237
231
232
231
229
234
232
231
237
233
229
226
230
231
234
228
228
226
229
227
223
225
225
226
225
224
226
225
227
229
226
224
224
222
225
226
225
226
223
224
221
223
220
217
221
220
223
215
212
204
198
206
208
210
216
156
142
133
130
130
115
105
97
92
86
79
79
80
86
106
102
112
125
140
150
70
28
33
34
44
140
244
243
244
243
243
240
241
240
239
239
239
237
238
238
239
240
241
232
220
213
212
219
220
218
216
216
215
214
214
213
214
215
216
215
212
210
212
205
189
155
148
149
133
119
105
77
58
56
49
36
23
21
36
152
243
250
250
249
249
250
252
250
248
251
249
247
227
193
172
183
183
176
178
175
174
165
149
151
141
125
138
148
139
119
116
120
159
200
201
204
202
193
186
178
181
173
152
144
138
137
141
154
174
167
133
76
39
47
74
101
140
192
224
229
226
222
232
231
234
233
230
222
222
212
202
204
198
192
175
172
160
255
255
255
254
254
254
254
254
254
254
255
255
254
254
254
254
253
253
250
249
241
242
243
236
218
211
204
201
196
189
183
176
163
167
164
159
164
172
171
159
148
143
132
125
126
120
108
103
102
88
67
72
79
96
108
98
79
72
70
89
150
184
190
208
217
189
195
193
197
192
171
174
163
193
204
204
210
214
217
226
221
226
229
227
229
229
233
239
230
232
231
233
236
237
231
233
234
231
225
235
232
230
228
230
235
227
228
225
225
228
228
228
224
224
225
230
227
221
224
224
227
228
226
227
228
224
225
221
223
222
217
219
221
220
220
211
207
200
209
208
219
189
145
153
140
132
127
119
109
100
97
98
84
85
88
105
99
101
104
121
142
181
180
95
44
37
80
201
244
242
242
243
242
243
242
243
242
241
240
241
235
234
226
216
211
206
209
216
216
212
214
213
213
212
212
213
216
216
215
215
217
216
207
191
196
178
147
125
122
102
90
85
52
44
33
48
42
30
25
27
127
238
248
249
249
250
249
250
251
252
251
251
251
251
246
236
205
180
179
173
172
180
174
174
169
148
145
127
109
110
110
109
112
114
114
141
150
151
191
201
197
190
185
173
167
166
145
128
130
126
115
127
123
99
56
39
37
39
47
78
127
175
203
204
207
205
217
226
227
220
215
215
220
222
224
222
229
218
217
255
255
255
255
255
255
254
253
254
255
255
255
255
255
255
255
254
250
248
251
247
241
243
232
220
206
199
195
189
182
180
176
164
162
161
160
167
171
163
146
135
127
123
119
120
119
114
107
101
82
71
79
82
102
109
103
98
93
110
167
198
208
201
221
215
207
202
191
199
177
173
166
197
201
205
209
218
216
223
224
234
235
227
228
232
230
235
232
234
234
231
231
228
231
234
236
231
232
227
234
232
229
229
229
230
233
228
225
227
232
227
224
223
225
224
225
224
223
226
227
228
225
226
228
229
226
226
225
226
226
221
219
224
219
224
217
219
207
211
221
230
184
163
145
142
138
126
123
115
112
107
96
89
93
93
115
106
107
116
136
158
188
195
191
160
126
142
208
220
218
216
211
218
209
211
206
201
193
195
198
187
195
204
202
207
212
214
207
210
212
212
212
211
210
214
218
220
218
213
214
218
215
175
171
156
131
124
115
94
85
74
51
34
28
39
47
31
29
30
111
236
248
247
249
249
250
251
250
248
253
251
250
252
249
250
248
239
221
188
171
156
171
178
182
174
159
139
124
115
107
106
102
106
111
116
122
131
107
116
125
133
169
190
188
178
170
167
160
128
116
98
63
62
55
47
42
36
32
34
33
29
58
103
139
174
180
192
195
196
196
189
198
195
197
198
196
201
203
197
254
255
255
255
255
255
255
253
253
255
255
255
255
255
254
255
254
253
253
253
251
242
237
232
217
203
197
194
185
179
176
180
171
162
155
158
165
166
159
141
129
117
114
121
134
123
110
100
90
81
76
78
81
105
109
119
134
142
149
168
201
213
219
209
201
208
203
197
191
182
167
165
202
201
205
218
224
225
229
226
235
230
230
232
235
231
240
229
236
237
240
233
232
238
235
234
233
235
233
230
229
231
228
227
227
232
231
226
228
229
229
227
232
229
224
225
223
225
223
222
227
222
224
227
227
226
223
224
225
228
223
222
223
218
223
211
216
206
209
206
213
188
177
159
151
144
140
131
121
118
119
105
99
110
118
109
105
119
151
183
192
201
199
196
200
206
182
168
179
174
176
175
168
170
178
172
178
184
193
200
204
204
208
208
206
206
206
210
209
209
212
213
211
210
215
219
218
217
216
216
208
179
153
150
125
142
141
120
113
72
48
28
29
46
55
37
26
32
95
219
246
248
247
250
250
249
248
250
249
251
249
249
250
250
252
251
250
243
230
199
169
158
157
162
168
153
138
125
121
119
112
107
107
117
111
112
120
104
98
99
96
103
125
140
155
144
130
136
132
113
73
65
56
36
31
35
38
41
42
37
35
30
32
49
71
90
127
159
172
169
169
170
167
169
167
164
152
151
147
255
255
255
255
255
254
255
254
254
255
255
255
255
255
255
254
254
254
253
254
251
251
241
235
219
199
186
190
182
179
174
171
165
161
154
150
153
164
156
134
121
115
120
138
136
127
110
93
83
82
75
79
96
111
129
133
145
146
186
212
204
207
218
227
218
210
198
196
184
177
163
203
218
216
215
218
225
229
228
233
232
231
236
234
231
234
234
231
235
236
232
236
234
240
236
231
236
231
231
233
234
232
232
229
232
229
230
230
233
231
228
228
228
227
227
229
229
234
226
223
228
227
228
221
225
225
223
222
222
218
218
221
229
223
229
219
210
213
215
210
220
180
179
170
166
155
147
139
134
131
122
118
114
119
118
129
151
182
183
193
196
194
193
192
194
196
199
197
201
205
207
205
201
206
210
205
204
201
201
201
202
204
207
208
208
209
211
213
213
213
213
212
212
214
218
218
222
220
206
193
176
162
143
129
171
148
126
126
88
48
33
33
58
64
40
32
35
86
215
245
249
248
249
250
250
249
249
249
249
249
249
250
250
251
251
251
251
251
247
242
222
188
162
156
157
154
143
134
124
121
121
115
110
114
107
105
111
113
105
98
102
106
98
94
92
92
85
81
85
76
66
66
65
59
47
38
34
40
40
39
43
39
38
42
36
38
47
61
78
86
97
119
135
126
184
212
208
206
204
255
255
255
255
255
254
255
254
254
255
255
255
255
255
255
254
253
254
252
254
253
242
226
242
236
217
182
179
179
176
176
168
159
156
151
152
152
159
150
134
124
124
136
140
131
121
108
93
84
82
78
86
98
111
147
153
172
182
181
230
235
228
236
218
218
209
197
194
178
179
181
227
207
213
215
223
229
229
231
236
229
231
232
239
231
239
233
234
234
232
235
237
240
233
232
233
234
229
234
237
232
228
231
231
231
232
232
231
233
231
228
228
229
228
226
227
229
227
224
227
229
226
222
226
228
222
223
222
220
220
221
226
225
226
227
220
210
218
213
216
228
190
180
180
177
171
166
168
166
165
143
138
134
135
128
197
212
199
203
202
191
190
189
185
191
191
194
195
197
198
194
196
198
199
200
201
199
199
199
201
205
206
208
210
211
213
213
212
212
212
212
215
214
219
219
215
223
184
190
185
172
140
105
152
162
146
143
85
50
42
62
66
75
49
34
32
79
201
247
248
249
248
249
250
250
249
250
249
250
248
249
251
250
251
251
251
253
252
249
250
248
233
202
174
161
155
155
149
141
126
126
123
115
111
106
101
106
111
111
107
99
100
106
109
104
97
93
79
71
72
73
75
75
71
62
53
45
39
37
40
43
42
42
44
44
45
39
38
41
47
48
59
92
101
150
155
160
158
154
255
255
254
254
254
255
255
255
255
255
255
255
255
255
255
255
254
253
253
251
245
246
228
222
237
236
214
180
167
176
177
171
158
162
148
148
157
153
142
136
131
126
137
139
131
116
102
94
87
85
87
96
97
120
134
144
191
217
233
232
231
219
197
218
217
208
200
188
174
165
209
210
216
212
221
231
229
235
239
236
230
232
240
239
234
238
232
233
236
236
242
236
238
233
236
232
228
230
233
233
237
233
234
232
231
231
232
231
230
231
226
229
233
229
225
227
227
227
228
227
228
232
230
227
226
225
223
218
222
220
226
223
220
223
218
214
210
215
215
227
222
176
174
183
181
187
193
189
182
172
164
155
151
162
176
220
189
200
203
197
196
191
186
184
192
192
195
197
201
201
198
200
204
205
204
204
204
201
203
204
209
210
213
211
212
215
214
214
216
216
216
219
221
221
221
218
174
165
189
182
159
128
127
123
150
142
100
48
64
124
128
88
57
31
37
76
199
246
247
248
248
247
249
250
250
250
250
249
248
250
249
251
251
251
251
251
250
251
253
252
253
251
243
221
191
165
161
158
158
142
134
129
123
119
114
111
105
106
104
109
109
98
100
108
107
110
109
103
94
86
79
80
81
78
75
66
59
51
39
37
41
42
43
46
43
46
43
41
42
44
37
33
50
99
133
99
125
140
116
255
255
255
255
255
254
253
254
254
254
254
254
255
255
255
254
251
252
249
249
229
242
232
221
214
231
239
225
193
175
184
176
162
156
155
144
145
149
139
135
132
137
146
138
131
118
97
87
87
87
91
99
104
131
144
158
205
211
193
216
240
225
217
215
211
197
199
181
174
192
224
197
220
218
227
231
233
237
235
234
233
233
234
235
232
233
235
235
242
238
239
238
229
237
237
234
235
237
241
238
234
232
228
230
233
229
237
229
229
227
229
229
232
229
227
232
228
230
228
229
222
228
231
225
223
225
226
221
233
223
225
219
218
221
225
224
224
225
219
231
212
182
186
187
193
194
194
187
190
202
178
176
204
212
215
207
197
207
204
201
200
188
187
191
198
196
201
202
203
202
204
204
206
207
205
207
208
208
207
207
212
213
213
212
216
218
217
216
219
218
223
223
221
221
214
173
157
178
175
175
162
151
150
137
142
88
51
65
127
115
70
46
39
41
75
192
246
249
248
247
247
246
248
251
250
250
250
249
248
249
249
251
251
251
251
250
250
251
252
251
249
250
251
249
240
209
174
158
164
156
149
144
134
125
124
118
112
104
100
103
114
113
105
109
113
114
113
112
114
108
97
94
87
81
80
75
72
67
58
46
37
40
45
45
43
47
43
41
43
45
46
39
34
55
150
170
185
138
121
255
255
254
254
254
253
252
253
254
254
253
253
255
255
255
255
254
252
252
252
238
226
229
221
223
228
235
240
230
196
204
193
165
150
143
149
145
147
148
152
143
140
147
140
131
109
90
87
87
86
90
95
103
136
179
196
202
165
219
231
229
226
223
212
204
201
198
171
186
227
212
207
213
223
231
233
235
235
235
231
234
236
234
237
232
235
236
231
242
236
238
240
239
239
234
238
239
232
233
233
233
232
232
234
230
235
228
227
231
233
231
232
229
231
230
230
227
228
225
231
228
226
232
226
227
224
229
222
225
226
228
226
226
226
224
217
220
217
221
231
227
217
216
215
217
199
195
197
211
218
214
216
217
212
211
210
213
208
205
202
201
188
190
199
202
202
203
201
208
206
208
210
209
209
209
209
209
207
207
210
212
216
217
217
219
219
219
219
220
220
219
219
207
193
180
171
183
154
161
193
169
170
160
139
85
39
61
133
101
63
51
44
53
81
191
243
249
249
250
249
247
247
249
251
250
249
250
248
249
249
250
251
251
251
250
250
251
251
251
250
251
252
251
250
250
243
226
190
156
155
162
160
149
139
135
128
121
117
110
103
105
111
109
108
111
110
110
110
109
109
111
110
101
91
85
83
82
75
70
61
51
38
40
45
42
43
42
42
40
39
43
40
37
41
76
157
136
119
125
255
255
255
255
254
254
254
255
255
254
254
255
254
255
255
255
254
253
252
252
248
233
222
227
225
231
235
227
232
232
205
205
187
161
144
146
154
153
153
154
148
142
146
147
133
106
100
99
86
86
92
94
110
150
178
190
181
236
233
235
232
230
220
219
202
208
187
169
207
222
215
229
227
229
233
239
236
236
232
234
235
235
237
236
235
236
234
237
236
236
241
233
233
233
230
235
235
231
232
235
232
233
232
237
235
234
236
234
232
233
229
229
230
231
232
228
228
226
228
226
225
227
233
232
229
226
223
223
221
222
223
222
228
230
225
223
218
220
225
228
227
224
222
216
223
223
209
211
221
216
218
219
219
215
215
216
213
208
210
208
205
203
200
205
205
202
201
209
211
210
213
214
212
213
213
210
211
210
209
214
217
218
220
220
223
222
221
221
218
213
208
197
185
186
163
174
143
135
182
179
184
176
149
95
73
112
139
97
66
56
52
59
84
193
250
247
248
248
248
249
247
248
250
250
250
249
250
248
248
250
249
248
250
250
250
250
251
252
251
251
253
252
252
252
252
254
251
238
205
170
157
163
164
156
148
144
135
129
118
115
108
100
107
110
110
110
108
105
105
106
107
108
110
106
97
88
86
81
76
72
68
55
41
43
44
44
46
45
41
41
41
41
42
43
55
91
142
135
165
254
254
255
255
255
255
255
255
255
255
254
255
254
255
255
254
253
253
252
254
244
241
233
222
229
231
236
215
218
232
224
220
212
193
164
144
154
162
161
155
147
152
151
146
132
112
107
97
85
83
90
97
113
128
146
212
228
236
222
233
230
227
217
221
207
203
173
189
218
209
229
225
228
231
237
238
238
235
232
236
236
236
237
232
231
241
235
236
237
244
240
234
234
233
234
235
229
235
234
233
234
234
234
240
237
234
235
231
232
230
229
229
230
231
229
230
227
228
226
225
228
232
228
227
229
227
228
223
225
221
225
226
229
229
227
222
214
219
223
227
228
227
223
212
214
210
215
210
212
215
219
216
217
216
217
217
214
214
216
214
209
207
207
206
203
208
211
214
213
213
215
215
215
215
215
214
212
211
214
219
222
221
222
223
222
220
218
214
204
204
208
202
190
160
140
127
112
172
186
181
169
163
131
118
151
154
100
72
60
58
66
89
183
246
249
249
248
248
248
248
247
248
250
249
249
249
250
249
249
249
249
249
250
250
250
251
251
252
251
251
252
253
252
252
251
252
252
252
242
222
193
166
157
159
151
153
154
146
132
120
114
104
103
106
111
110
108
104
103
102
104
103
104
106
103
101
95
85
77
76
75
70
59
47
41
47
46
47
46
43
43
41
39
40
49
65
153
138
147
254
254
254
255
255
254
254
254
255
255
255
255
254
255
255
255
254
255
254
253
251
242
235
236
236
236
235
236
226
228
228
227
229
220
197
171
170
172
165
159
156
161
152
133
123
120
114
98
87
85
93
107
121
144
191
213
204
217
228
232
228
216
219
209
208
179
183
202
218
223
227
226
230
235
239
240
237
235
239
238
236
239
234
235
240
241
233
235
239
238
232
239
233
236
236
233
234
236
233
233
236
235
232
236
236
237
230
232
233
228
227
231
231
230
229
231
233
233
225
227
233
232
225
228
229
229
229
222
229
224
231
230
226
220
219
225
211
218
224
225
227
223
225
228
217
214
211
209
217
216
216
216
218
216
217
216
215
218
217
215
214
209
208
209
212
212
215
217
217
217
216
218
219
218
216
218
218
216
218
219
221
217
219
218
212
209
201
197
187
191
166
157
134
122
112
131
178
199
185
139
117
114
153
191
161
111
84
66
61
72
94
194
250
248
251
249
249
249
248
246
247
248
250
251
251
251
250
251
250
249
250
250
250
250
251
252
252
251
253
252
252
253
251
251
252
253
252
254
254
251
241
225
190
159
147
147
146
155
154
142
127
114
108
104
110
111
108
102
101
99
98
97
96
99
101
104
104
94
85
75
73
69
67
59
43
42
47
50
50
49
45
44
43
44
49
51
112
193
197
254
254
254
254
254
255
255
254
255
255
255
255
254
255
255
255
255
255
255
253
252
247
234
221
235
241
239
236
237
230
228
222
226
221
214
205
192
182
169
164
165
160
145
128
120
123
119
105
96
96
101
110
135
156
173
190
197
220
232
233
230
222
218
211
208
178
193
218
229
225
225
233
237
239
239
240
237
237
241
235
235
239
236
235
241
238
231
241
238
235
238
240
235
239
234
234
238
237
233
233
236
235
234
233
234
237
231
233
231
231
229
230
236
230
227
230
229
229
226
228
232
230
226
229
226
230
219
224
230
226
231
227
224
224
227
226
221
225
225
223
229
223
216
219
220
212
212
220
218
217
219
217
217
218
217
215
215
215
215
216
216
215
215
215
219
220
218
219
220
220
219
217
217
220
219
221
219
216
215
214
213
219
212
218
223
206
193
176
156
158
142
136
130
146
164
190
197
169
130
112
77
121
200
171
133
94
77
71
74
94
186
246
250
248
249
249
249
249
248
247
248
247
249
250
250
250
250
250
250
250
250
250
250
250
250
250
251
251
252
253
252
252
253
252
251
252
251
252
251
251
252
250
237
210
174
153
134
130
135
139
138
124
113
106
106
107
105
99
97
94
91
89
87
88
90
91
92
92
90
83
76
67
63
63
51
47
54
58
56
54
53
50
49
50
50
53
53
97
98
254
253
253
253
253
254
253
253
254
255
255
255
254
255
255
254
253
254
255
254
253
251
246
234
236
238
241
239
240
237
235
235
233
226
215
209
205
188
176
170
166
151
142
131
129
128
124
119
111
110
109
110
135
143
151
186
191
230
234
231
225
224
212
210
191
191
214
225
228
228
236
240
238
239
241
239
237
239
237
235
239
236
236
239
236
236
235
237
235
241
241
237
234
234
230
237
234
232
234
235
236
237
235
240
233
237
235
237
233
232
232
230
231
228
231
231
227
229
228
231
230
228
227
228
228
227
229
227
226
225
229
227
225
227
226
225
229
227
225
223
226
225
225
220
219
220
221
221
220
222
218
215
214
213
216
218
218
220
219
220
220
218
219
222
224
222
223
224
223
216
219
211
212
212
213
214
216
213
211
209
211
213
183
179
174
163
162
148
147
175
161
146
172
176
190
172
135
118
81
70
89
199
180
141
112
83
80
87
106
197
242
247
249
249
249
251
251
249
248
249
247
248
250
250
250
250
250
250
251
250
251
251
251
250
250
250
250
252
252
254
253
253
253
252
252
252
254
253
251
251
251
250
252
246
231
199
155
126
118
115
119
115
114
108
102
101
98
92
88
85
81
78
78
79
78
77
75
78
78
73
68
60
54
54
54
55
56
56
55
53
52
49
50
48
52
49
114
169
137
254
253
253
253
253
253
254
253
253
255
255
255
254
254
255
255
255
255
255
254
253
252
249
247
239
245
247
240
240
238
238
236
235
230
229
215
200
186
180
173
171
154
149
141
139
131
122
119
115
112
115
117
130
149
190
174
196
226
226
206
221
221
210
205
180
207
221
228
229
235
241
240
239
241
240
238
239
238
238
238
240
237
238
236
236
236
234
238
238
236
236
237
235
235
230
236
233
232
235
237
234
234
235
233
232
233
233
234
234
231
233
234
234
231
232
229
230
233
231
231
229
233
230
226
233
224
223
222
224
224
228
227
229
228
227
226
227
229
225
227
225
221
220
224
217
218
221
224
223
223
219
219
221
221
222
224
222
222
221
218
227
229
226
232
221
218
217
204
213
200
211
208
202
200
211
212
212
213
207
213
205
174
170
160
166
170
156
156
156
147
162
199
198
185
161
123
114
94
75
69
131
204
148
127
94
84
94
116
200
245
249
249
249
251
249
249
250
250
248
249
248
248
250
252
251
250
250
250
250
251
251
252
251
252
251
249
250
252
253
254
253
253
253
253
252
253
253
253
251
251
252
253
252
253
251
244
217
168
132
122
116
113
110
103
98
91
86
85
82
78
75
73
73
72
68
65
64
65
69
68
64
57
52
51
52
55
60
60
58
57
56
56
55
53
54
52
124
83
102
253
253
254
254
253
253
253
253
253
254
254
255
254
254
255
255
255
255
255
255
253
253
252
252
245
244
247
243
238
239
238
238
237
232
231
230
204
189
184
175
164
155
151
153
147
129
123
124
116
106
103
114
130
146
168
209
218
223
223
223
221
214
209
199
203
215
225
231
235
237
239
239
240
241
239
241
241
237
239
241
236
235
241
239
238
237
237
236
238
237
235
237
239
238
232
235
233
236
235
233
235
235
233
235
236
235
232
231
233
232
233
232
233
235
230
233
232
231
230
226
227
228
226
235
228
226
229
225
224
225
227
227
227
221
220
225
224
224
224
226
226
224
220
225
222
223
218
220
222
221
218
220
224
222
224
223
222
223
235
228
214
212
202
212
217
218
209
214
212
167
194
206
199
194
173
173
179
198
204
182
173
178
172
173
177
170
164
159
164
190
202
208
166
133
102
94
85
82
80
77
146
177
122
100
91
99
122
209
244
248
248
249
249
250
248
249
250
249
248
248
248
247
248
249
248
248
248
248
248
249
249
249
249
250
250
249
249
249
250
251
252
254
254
254
253
254
254
254
251
251
253
253
253
253
250
250
248
234
194
138
118
114
107
100
91
82
77
74
71
66
62
61
64
63
59
59
55
54
56
57
52
46
50
54
52
49
54
61
64
63
62
58
57
56
55
50
126
171
79
254
254
255
254
253
254
254
254
254
253
253
253
253
253
254
255
255
255
255
255
254
252
252
252
250
248
244
240
242
240
240
234
227
223
225
226
212
199
195
181
166
156
157
158
145
131
131
128
119
105
100
110
122
139
139
201
182
210
218
224
219
213
212
199
213
219
232
236
237
240
242
242
239
238
240
242
240
237
240
238
236
237
241
240
238
238
238
238
240
240
236
235
239
233
235
232
234
236
236
240
233
235
233
237
235
234
236
233
232
234
232
229
231
230
234
232
232
230
229
231
230
230
230
232
228
228
226
223
225
227
227
226
228
225
221
225
224
225
225
225
223
225
221
223
221
221
218
222
216
220
219
224
220
218
222
219
219
221
234
202
188
207
201
217
207
205
217
212
199
206
197
181
181
174
172
177
174
171
188
174
176
182
179
181
177
177
182
188
197
196
191
167
118
106
102
94
89
90
89
95
153
147
104
100
107
133
215
247
248
249
249
249
249
249
248
249
250
249
249
248
249
248
248
249
248
247
248
248
248
249
249
250
251
251
251
250
250
250
250
251
253
253
252
253
252
253
253
253
252
252
252
252
254
253
254
254
254
250
244
213
154
115
96
85
73
62
59
57
54
51
48
48
52
49
47
43
41
41
42
45
45
41
41
50
50
48
42
51
67
67
64
62
60
59
57
56
78
62
58
254
254
254
254
253
254
253
254
254
253
253
253
253
253
254
254
255
255
255
255
255
254
251
249
250
250
250
245
239
240
237
243
236
228
229
230
232
216
203
187
169
164
162
153
141
137
130
119
110
103
103
109
117
135
140
175
207
217
202
213
217
212
213
207
212
222
232
236
238
239
240
238
240
241
241
239
239
241
240
236
239
238
238
237
236
239
241
239
239
239
235
237
239
232
238
231
235
232
232
236
235
235
236
235
232
236
234
230
230
233
233
233
231
231
234
233
229
228
230
230
233
231
234
232
234
231
227
227
226
225
227
225
226
230
228
227
227
226
226
227
224
226
224
225
223
222
221
219
216
221
221
220
218
217
215
213
219
224
229
173
203
219
213
205
205
203
211
217
215
201
188
174
175
175
176
176
188
187
184
181
182
181
178
178
180
195
191
181
182
170
143
122
112
106
99
98
98
92
99
131
157
117
111
115
145
220
245
249
251
250
249
248
248
249
249
250
250
248
249
249
249
249
248
249
250
249
249
249
249
250
250
251
250
250
250
250
251
251
251
252
252
252
252
252
252
253
253
253
252
252
251
251
253
255
252
252
252
253
252
248
227
163
109
76
57
50
46
43
39
37
36
36
34
35
35
35
35
32
31
29
28
31
31
34
35
31
21
27
51
63
67
68
66
60
58
53
114
98
126
253
253
253
253
254
254
253
254
254
253
253
253
254
254
255
255
255
255
255
255
254
254
254
251
253
253
252
249
246
238
232
237
240
229
232
227
226
211
200
190
182
172
161
151
149
141
124
113
105
108
116
122
130
141
145
180
206
193
203
217
213
224
205
212
217
228
236
238
239
241
242
242
242
242
241
239
240
240
238
238
242
242
239
238
236
235
239
239
236
236
235
237
238
235
234
232
238
236
234
236
238
230
237
238
235
236
235
233
235
231
234
234
231
228
230
232
231
229
230
231
230
227
234
233
230
232
230
228
228
226
226
225
226
227
226
227
226
225
227
227
224
226
223
222
221
222
221
220
220
220
220
219
215
231
228
219
225
220
205
197
213
197
197
193
192
203
213
214
195
193
198
186
188
191
188
193
195
193
193
191
188
185
195
195
206
193
177
172
153
138
143
146
118
106
106
104
104
103
117
154
128
114
123
159
230
248
250
251
249
249
251
250
249
251
251
250
250
250
249
249
249
249
249
250
250
248
249
250
248
249
250
250
251
251
251
251
251
251
251
251
251
251
250
250
250
251
251
252
253
252
253
254
253
251
252
253
252
253
254
253
251
238
196
128
73
57
52
44
40
36
31
32
33
30
28
26
24
23
22
20
17
16
14
14
18
15
4
2
10
23
39
52
56
57
61
57
140
123
134
253
253
254
254
254
254
254
254
254
254
254
253
254
253
254
255
255
254
254
255
255
255
255
254
255
254
250
246
250
244
242
232
233
240
233
224
220
213
197
187
183
168
159
155
155
142
124
118
113
113
120
125
122
128
135
146
177
203
214
214
202
212
186
207
222
231
238
238
239
240
240
243
242
240
239
241
241
237
239
240
240
239
236
237
239
240
237
237
237
238
238
231
238
235
235
234
236
235
235
235
229
232
242
237
236
238
233
231
231
233
239
236
230
234
230
233
229
230
232
232
231
233
228
234
229
230
226
225
229
229
228
227
226
225
228
226
225
224
228
228
225
225
224
223
221
221
220
218
219
220
221
217
223
236
218
209
220
212
173
191
205
207
205
198
200
226
212
181
181
183
191
194
190
194
196
202
196
196
194
192
197
194
196
197
204
187
177
173
153
149
163
138
118
116
113
113
112
119
137
135
124
129
170
238
246
249
249
249
249
249
250
250
250
250
249
248
250
250
249
249
249
249
250
250
249
250
250
251
249
250
251
251
251
251
251
251
252
252
252
252
252
250
251
251
251
252
253
252
253
254
254
254
253
252
252
254
253
254
254
252
251
252
247
217
148
92
64
53
45
38
38
41
42
40
41
40
33
27
23
19
17
14
11
8
8
9
6
3
1
2
6
15
27
40
49
49
89
162
168
253
253
253
254
254
254
254
254
254
254
254
253
254
253
254
255
254
254
254
254
254
255
255
253
254
253
251
252
252
250
247
230
224
227
232
233
221
210
197
180
168
172
166
160
158
145
132
123
115
111
118
120
113
122
129
138
164
185
205
217
202
218
210
207
222
228
236
239
241
238
239
241
240
240
240
240
240
240
241
238
239
238
237
240
240
239
237
239
237
238
238
234
233
235
235
235
232
233
240
234
231
235
234
236
236
232
232
232
234
231
235
230
231
233
230
231
232
231
234
233
237
233
230
228
231
228
230
227
228
228
227
228
226
224
226
221
225
224
223
223
219
223
225
225
223
222
221
221
223
219
222
235
234
216
228
208
222
206
172
194
210
208
205
209
211
214
195
197
199
197
194
194
196
200
201
204
203
197
207
202
203
195
203
191
196
178
173
172
150
139
131
125
125
124
124
122
126
138
137
134
140
183
242
246
247
249
250
250
249
249
249
250
250
250
249
248
250
250
249
249
250
249
251
251
250
250
250
250
250
251
252
252
250
250
252
251
251
251
252
252
251
250
250
250
251
251
251
253
254
254
252
253
253
253
253
254
254
254
254
254
251
251
250
249
238
191
117
80
65
52
45
40
39
37
38
39
40
39
37
31
23
14
13
10
6
8
13
9
4
1
2
1
3
10
20
27
57
54
48
254
253
253
254
254
254
254
254
254
254
254
253
254
253
255
255
254
254
254
253
253
254
254
254
254
253
252
251
254
254
253
238
220
224
228
231
227
219
213
202
198
192
181
168
163
153
144
138
126
117
121
121
126
136
138
147
151
183
208
215
216
211
193
213
221
230
233
238
241
239
239
238
238
241
241
238
241
240
239
239
239
243
241
241
238
237
237
239
237
240
235
234
234
234
235
234
236
237
239
235
239
240
234
235
231
235
235
232
233
232
233
232
234
232
234
229
229
235
233
233
231
228
227
228
226
224
227
225
226
228
226
227
230
229
221
217
220
221
224
224
219
220
220
223
223
220
219
219
217
216
232
237
217
201
229
199
210
200
198
199
202
206
195
205
201
199
205
196
204
206
195
199
199
198
200
204
209
205
207
197
195
194
197
181
188
175
166
152
144
137
139
138
134
132
131
132
142
140
139
152
206
244
246
246
249
249
250
249
248
249
250
251
251
251
249
248
249
250
250
250
251
251
251
251
251
250
251
251
251
252
252
252
252
251
252
252
251
251
251
252
252
253
252
252
253
253
253
254
255
255
253
253
254
254
253
254
253
254
255
254
254
253
253
253
252
245
205
143
93
78
67
51
47
43
37
37
37
38
39
44
46
38
31
26
15
7
4
4
5
2
2
3
2
1
3
15
139
196
184
254
254
254
254
254
254
254
254
254
254
254
253
254
253
254
254
254
254
254
253
253
255
255
254
254
254
253
253
254
253
250
250
241
223
226
225
222
221
227
216
211
199
186
173
166
157
155
152
139
128
125
131
145
150
153
155
158
181
204
206
212
197
203
211
219
226
233
238
239
238
240
239
239
239
239
238
241
240
239
239
239
240
238
238
237
237
236
236
239
235
232
233
236
236
236
238
235
235
234
235
232
234
237
240
234
233
233
235
235
231
232
230
231
234
234
233
233
233
232
233
227
228
234
231
229
232
231
228
228
226
226
231
229
232
229
225
225
228
231
228
224
220
221
219
219
220
219
222
214
227
228
221
212
213
205
205
199
189
187
203
216
202
205
213
204
215
208
196
198
206
206
201
200
202
200
201
200
198
203
199
204
201
188
180
173
173
171
156
148
145
144
140
138
136
137
142
145
146
165
225
246
247
247
248
248
249
249
249
249
248
248
249
249
249
247
247
249
249
250
251
252
251
252
252
252
252
252
251
252
252
251
252
253
252
252
252
252
252
252
251
253
254
254
253
253
254
254
254
254
255
254
254
253
253
253
254
254
254
254
254
254
254
254
250
252
252
250
229
158
99
89
76
59
49
39
35
35
35
34
35
36
36
38
39
39
35
33
24
14
9
7
5
5
3
2
13
95
69
45
253
254
254
253
253
254
254
254
254
254
254
254
254
253
254
253
254
253
254
254
254
254
255
255
255
254
253
254
255
253
253
252
250
252
246
235
228
230
227
216
209
196
186
177
173
166
162
157
144
131
123
127
147
150
145
138
131
164
185
190
213
200
189
207
214
225
235
237
239
238
240
241
241
242
242
239
239
239
239
240
238
237
238
237
237
238
236
236
237
231
238
237
236
238
235
234
236
236
238
235
233
233
238
233
241
232
232
229
233
232
233
232
233
235
234
228
234
229
229
232
231
229
233
231
232
235
231
231
229
228
233
232
236
234
229
229
225
224
226
221
224
225
224
224
224
221
218
216
219
225
230
222
227
217
189
205
201
180
184
191
205
213
207
207
205
206
209
209
207
200
209
208
204
201
200
198
195
200
196
204
208
187
180
180
176
169
162
158
153
152
149
144
144
144
140
147
148
183
238
247
247
245
248
248
247
247
247
247
247
248
249
250
249
249
248
248
248
249
249
250
250
250
251
252
252
252
253
252
252
252
253
252
252
252
252
252
253
253
252
253
254
254
254
253
253
253
253
252
253
254
253
254
255
254
254
254
254
255
255
255
254
254
252
252
251
253
252
252
231
165
90
86
84
81
68
51
46
44
37
31
33
36
38
38
36
37
42
43
46
46
44
38
30
20
14
19
134
149
116
254
254
254
253
253
253
254
254
254
254
254
254
254
254
253
253
254
254
254
255
255
255
255
255
255
255
254
254
254
253
254
254
252
252
248
240
232
232
227
220
213
202
190
182
181
171
163
152
135
128
127
134
141
129
116
118
127
172
186
196
216
190
190
207
209
221
234
235
239
240
238
238
241
242
243
240
242
241
240
241
239
239
238
236
237
236
237
235
236
239
235
235
235
235
235
234
235
235
236
235
236
238
236
235
233
235
235
235
238
236
234
231
233
242
232
231
231
234
230
233
232
231
231
234
230
232
231
229
227
231
231
232
233
233
230
224
221
223
220
221
221
219
218
219
225
219
216
214
224
226
222
221
232
192
185
181
190
193
193
197
208
209
214
210
209
210
209
205
208
205
206
205
204
203
207
210
214
207
203
196
190
196
189
182
178
171
166
162
161
157
151
152
155
155
155
165
206
242
248
247
246
248
248
247
247
249
249
247
248
248
249
249
249
249
249
249
248
249
250
251
250
250
252
253
253
253
252
252
252
253
253
253
253
253
254
254
254
254
253
254
254
255
255
254
253
252
253
253
254
254
255
255
255
254
255
254
254
254
255
255
255
255
254
255
254
254
254
252
251
236
172
90
73
80
83
80
73
60
48
40
35
38
38
39
38
41
41
43
46
50
47
43
41
42
48
45
53
113
130
254
254
254
253
253
254
254
254
254
254
254
254
254
254
254
254
254
254
253
255
255
255
255
255
255
255
254
253
253
252
252
254
252
254
251
246
233
241
228
216
209
206
197
187
182
175
164
154
136
124
123
131
125
109
121
131
138
164
186
197
200
206
183
203
211
216
227
232
236
241
241
240
239
241
237
238
239
240
241
239
238
238
238
237
237
237
237
237
237
238
236
236
236
236
235
235
237
235
235
235
235
237
239
236
234
235
235
238
239
237
232
231
232
232
235
230
234
231
231
232
230
229
232
237
236
227
225
229
228
226
227
231
229
231
230
225
226
229
223
217
219
223
219
218
218
220
224
221
222
231
227
230
214
180
197
194
190
200
208
213
208
212
213
209
217
205
207
198
198
206
209
216
208
203
203
200
197
197
197
190
193
185
180
172
186
177
165
160
160
156
150
157
164
164
180
224
247
247
247
246
247
248
247
247
247
248
249
248
249
248
249
248
248
249
249
248
250
250
250
250
250
251
252
252
252
252
253
253
253
254
253
254
253
253
254
254
253
253
253
253
253
254
255
253
252
253
254
254
253
253
254
255
254
254
255
254
254
254
254
254
255
255
254
254
255
255
255
254
250
252
243
206
122
65
53
59
74
78
76
67
59
50
43
42
43
42
41
46
48
46
46
45
46
47
50
47
42
72
98
254
254
254
254
253
254
254
254
254
254
254
254
254
254
254
254
254
254
254
255
255
255
255
255
255
255
254
254
253
253
253
253
250
252
253
245
227
219
228
233
221
213
194
188
182
172
166
160
144
128
121
119
115
121
138
141
147
135
172
204
202
204
193
188
219
221
228
232
236
237
239
240
240
239
236
237
238
238
238
237
239
238
237
238
237
238
237
233
235
236
235
238
235
235
235
235
236
235
235
234
233
236
238
236
235
233
232
238
241
237
235
234
233
232
230
231
234
229
233
232
232
231
233
235
236
228
227
227
224
223
227
226
227
225
220
225
230
226
214
223
221
222
222
220
219
222
233
221
220
222
218
218
206
196
213
188
206
210
210
200
206
203
217
219
215
205
197
199
200
195
190
214
205
204
204
197
193
194
196
184
186
187
181
180
178
171
170
159
156
155
157
160
170
200
239
246
247
247
248
248
248
248
247
247
247
248
249
249
249
248
249
249
249
250
250
249
250
251
251
250
251
251
251
251
251
251
253
252
252
252
252
253
252
252
253
253
252
252
253
253
253
253
253
253
253
253
254
254
254
254
255
255
254
254
255
254
254
254
253
255
255
254
254
255
255
255
255
254
253
252
250
247
216
139
75
44
38
47
59
72
79
71
64
58
52
50
46
45
48
45
43
42
44
46
46
43
83
147
155
254
255
254
254
254
254
254
254
254
254
254
254
254
254
254
254
253
253
253
255
255
254
254
255
255
254
254
254
254
254
253
253
253
253
254
253
245
243
243
223
231
222
212
202
192
174
175
171
160
147
125
114
114
126
149
157
135
109
151
181
205
201
206
198
211
224
229
232
234
237
237
237
237
238
238
239
238
234
237
237
234
238
235
234
236
236
235
237
239
236
234
234
233
233
234
235
235
236
236
235
234
236
237
234
233
236
234
235
237
233
238
236
232
232
234
226
229
237
234
231
230
233
231
234
233
227
226
228
228
230
228
226
228
227
227
225
221
221
219
216
217
220
223
222
221
233
228
213
229
225
225
208
207
204
210
204
214
215
210
218
212
213
223
217
203
203
209
208
197
205
210
201
202
194
200
196
193
187
184
186
189
188
184
172
167
164
162
158
156
159
165
185
221
246
246
248
248
248
249
249
247
247
247
247
247
248
249
250
250
249
250
249
250
250
250
249
250
250
252
252
253
252
250
251
253
252
253
253
252
251
253
252
252
252
254
254
254
254
255
253
253
254
254
253
253
254
254
255
254
254
255
255
255
255
255
255
255
254
254
255
255
254
254
255
255
255
255
254
254
253
252
249
249
233
180
98
58
43
32
23
28
45
57
62
62
68
64
52
45
39
38
41
44
43
42
44
114
44
33
255
255
254
254
254
254
254
254
254
254
254
254
254
254
254
254
253
253
253
255
255
254
254
255
255
254
254
254
254
254
254
253
253
252
253
251
249
252
250
247
241
237
232
209
197
184
180
182
174
158
140
129
119
122
137
149
116
111
137
156
189
210
205
202
201
217
234
237
235
237
238
236
237
240
237
237
238
235
236
236
234
236
235
235
234
237
235
239
238
237
237
234
233
232
230
233
233
233
235
234
233
234
234
233
235
237
233
234
235
233
234
233
232
233
231
228
231
232
231
231
227
230
230
226
225
225
229
232
232
231
230
228
227
229
228
226
221
221
223
218
219
218
218
221
231
235
212
211
227
226
217
202
213
224
216
212
203
214
215
213
217
220
214
201
210
203
202
198
196
192
205
201
200
198
204
197
200
188
188
187
186
181
174
169
153
155
153
163
157
162
198
238
246
246
249
248
248
248
249
248
247
247
247
247
247
248
248
249
251
250
251
250
251
250
251
250
250
250
251
252
252
252
251
252
253
252
253
253
252
252
253
253
253
253
254
254
254
254
255
253
253
255
254
254
254
254
255
255
255
254
255
255
255
255
255
255
255
254
255
255
255
255
255
255
255
255
255
254
255
254
252
253
253
250
244
202
131
67
45
34
21
13
10
17
23
38
48
45
42
39
38
37
39
39
36
34
116
143
104
253
253
254
253
253
254
254
254
254
254
254
254
254
254
253
253
253
253
253
253
253
253
253
253
253
253
253
254
254
255
254
254
254
253
253
253
253
252
253
252
251
250
228
207
205
196
178
198
179
168
155
143
132
127
126
124
112
119
114
110
161
189
203
208
204
210
221
243
244
236
237
238
239
238
237
238
236
236
235
236
235
234
238
238
234
235
236
235
235
236
236
233
233
234
233
234
233
234
233
234
235
232
231
233
234
232
235
236
235
233
233
235
234
234
232
232
232
231
230
230
230
228
229
227
231
227
228
226
224
227
223
225
222
222
225
226
222
223
225
225
224
224
222
223
227
228
208
199
225
219
224
206
203
210
206
211
213
212
215
198
199
196
196
203
197
198
191
202
212
213
206
210
201
204
196
192
189
184
185
180
180
177
173
167
160
160
163
174
186
222
246
247
250
249
249
249
249
249
249
248
247
247
248
248
248
249
249
249
250
251
251
251
251
250
251
250
250
250
251
251
250
251
252
251
252
253
252
252
252
253
253
254
254
253
253
254
254
254
255
255
255
255
255
255
254
252
253
254
255
255
255
254
255
255
255
255
255
255
254
255
255
255
255
255
255
255
254
255
253
254
254
254
254
251
252
247
232
175
95
47
37
34
22
11
6
6
8
11
18
19
23
27
30
33
33
34
37
109
134
254
253
254
253
253
254
254
254
254
254
254
254
254
254
253
253
254
254
254
254
253
253
253
253
253
253
253
253
253
253
255
254
255
254
254
254
254
253
253
253
253
249
236
226
210
192
198
194
185
180
173
165
149
133
133
126
123
124
118
124
161
156
175
198
173
216
237
250
251
244
240
236
234
236
237
236
236
237
236
235
234
237
238
238
234
233
232
233
233
233
231
233
234
235
234
235
233
234
230
231
235
232
234
234
232
231
230
229
235
240
235
234
235
236
233
230
230
232
231
230
230
229
230
229
229
229
226
226
226
227
228
227
228
228
229
229
229
225
225
227
226
223
223
228
228
204
219
199
215
211
191
183
197
209
214
218
215
216
204
199
197
199
198
188
187
196
192
197
202
202
198
197
199
196
186
188
187
185
180
172
175
172
175
172
169
175
174
201
236
245
247
248
249
249
250
248
249
249
249
249
247
248
248
248
248
249
249
248
249
251
251
250
251
251
251
251
251
251
251
251
250
251
252
252
252
253
252
252
252
254
253
254
254
254
254
254
255
254
255
255
254
255
255
255
255
253
253
253
255
255
255
254
255
255
255
255
255
255
254
254
255
255
255
255
255
255
255
255
254
254
255
255
255
254
251
251
251
243
216
145
70
33
38
36
25
9
3
1
1
2
8
12
15
19
26
29
27
20
22
254
254
255
254
254
254
253
253
253
253
253
254
254
254
253
253
254
255
254
254
253
254
254
254
253
254
254
254
254
253
254
255
255
255
254
255
255
254
253
253
252
250
241
229
218
225
216
193
176
179
181
174
165
147
141
134
138
138
135
149
187
178
174
201
228
243
249
252
252
252
248
244
236
235
237
236
236
236
234
233
232
235
234
235
233
234
233
234
232
231
230
230
232
233
230
233
234
233
232
232
234
233
235
233
231
232
230
230
231
231
230
229
231
232
230
229
229
231
227
229
232
231
230
227
227
230
230
231
231
230
229
227
228
228
228
227
225
223
223
222
221
219
221
230
229
224
228
206
202
195
201
215
222
220
214
214
200
188
190
194
198
197
200
198
206
207
198
201
204
199
200
199
197
191
186
186
188
185
180
177
177
180
176
174
175
188
222
243
249
248
249
250
249
250
250
249
249
249
249
249
247
247
248
248
248
248
248
248
248
249
250
250
250
249
251
251
251
251
250
250
251
252
252
253
253
252
254
253
253
254
253
254
255
254
255
255
255
255
255
253
253
253
253
255
254
253
254
255
255
255
255
254
255
255
255
255
254
254
253
255
254
255
255
255
255
255
255
255
254
254
254
255
254
254
252
253
252
252
249
238
196
112
48
35
39
35
28
11
4
2
3
2
2
11
31
13
16
22
28
254
254
255
254
254
254
254
254
254
253
253
254
254
254
253
253
254
255
254
254
254
254
254
253
253
254
254
253
253
253
253
254
254
254
253
254
255
255
254
254
252
252
246
244
237
217
197
181
187
177
183
174
174
164
157
151
143
147
160
182
216
224
188
236
251
250
252
253
254
255
253
249
246
242
238
237
236
235
232
236
237
234
231
231
231
233
232
233
232
230
229
229
229
231
230
230
230
230
235
235
233
232
233
232
232
231
233
231
231
229
229
229
227
226
226
227
229
229
227
229
229
229
228
229
228
227
229
227
226
227
225
224
224
227
223
222
221
219
218
215
210
215
221
235
243
206
202
190
203
209
198
198
195
194
178
202
191
196
203
200
199
195
198
198
197
197
198
197
201
200
199
194
192
188
187
187
187
184
182
183
183
182
177
182
214
244
250
248
250
251
251
249
249
250
249
249
248
249
248
248
248
248
247
248
248
248
249
248
248
249
248
249
249
249
250
251
251
251
251
251
252
252
251
252
252
253
253
253
253
253
254
255
254
254
255
255
254
254
253
253
253
253
253
253
253
254
254
255
255
255
254
253
254
254
255
254
254
255
254
254
254
255
255
255
255
255
254
254
254
255
255
255
254
253
253
254
254
251
253
252
248
221
153
78
40
38
39
35
28
16
6
2
3
24
115
44
35
33
35
254
255
255
255
255
255
255
255
254
253
253
254
254
254
253
253
254
255
254
255
255
254
254
252
252
254
254
251
252
252
253
254
253
253
253
254
254
254
255
255
254
253
252
249
236
227
186
202
207
208
196
182
173
176
173
158
156
162
204
229
242
223
222
251
248
250
252
254
254
254
254
253
251
249
246
240
237
233
233
235
238
236
234
234
233
231
230
230
231
232
231
230
229
229
229
229
229
229
233
233
231
232
232
230
230
230
233
231
231
229
227
228
226
226
227
227
228
226
225
226
227
226
224
224
227
227
223
223
222
222
219
220
222
221
219
217
217
215
215
217
203
218
226
229
231
188
196
215
194
209
198
207
194
212
206
204
197
192
198
201
199
198
197
196
195
196
197
195
194
192
191
188
187
186
184
184
183
182
183
182
182
187
210
235
248
250
250
251
250
250
251
249
249
249
249
249
248
250
249
249
248
248
248
248
248
248
249
248
248
249
249
249
249
248
250
251
251
251
251
252
252
252
252
253
252
253
253
253
253
254
254
255
255
255
255
255
253
253
253
253
253
253
253
253
253
255
255
254
255
255
254
254
255
255
255
255
254
254
255
254
254
254
255
255
255
255
254
254
255
255
255
255
254
254
254
254
254
253
253
254
253
249
234
195
106
61
39
36
33
31
28
16
6
23
155
174
172
169
171
254
254
255
254
254
255
254
255
255
254
254
253
254
253
253
253
252
253
253
254
253
254
254
253
252
254
253
253
253
252
253
253
254
254
253
253
254
254
254
254
253
253
253
249
250
233
243
245
239
208
193
193
204
203
199
196
192
205
242
249
251
246
251
252
253
253
253
254
255
255
254
254
254
254
253
251
247
241
237
235
240
238
233
236
235
232
232
231
232
230
231
232
231
228
227
227
227
228
231
229
228
230
229
229
228
229
229
228
230
228
227
225
222
224
223
226
225
224
226
224
221
221
221
220
223
224
221
220
218
215
213
214
217
216
216
212
212
214
215
218
206
211
220
222
227
205
208
221
207
208
215
214
216
209
193
193
198
201
196
194
193
193
191
193
194
191
191
191
190
188
186
188
187
184
184
184
185
185
183
186
206
235
248
248
249
249
251
251
251
250
251
251
250
249
249
249
248
249
249
249
248
248
248
248
249
248
248
249
248
249
248
248
248
248
249
251
251
250
251
252
251
252
252
253
252
253
253
253
254
254
254
254
254
254
254
253
253
253
254
253
253
254
253
252
253
253
253
253
253
253
254
254
254
254
255
255
255
255
254
255
255
254
254
254
254
254
254
254
254
255
255
255
254
253
254
253
254
254
254
254
254
254
251
248
223
166
87
48
40
31
28
35
32
33
104
38
53
69
37
254
254
255
254
254
255
254
255
254
255
254
253
254
253
253
253
253
253
253
254
253
254
254
253
253
254
253
253
253
252
252
253
254
254
253
253
253
254
255
254
253
253
252
253
252
250
253
252
247
238
233
237
245
241
226
240
238
245
250
252
254
254
253
253
254
254
254
254
255
255
254
253
254
255
254
253
252
251
244
238
237
235
232
234
235
232
233
233
231
232
230
232
231
229
228
228
227
226
228
226
228
229
227
228
228
228
226
225
228
227
227
225
224
223
222
223
221
221
220
217
218
216
216
220
220
219
217
215
214
213
213
213
214
213
213
212
211
212
213
210
207
204
202
205
211
215
210
219
205
211
208
206
200
202
197
199
198
200
196
194
191
188
187
187
185
183
186
186
187
187
189
187
187
188
188
188
188
193
205
230
247
248
248
250
251
249
251
251
250
251
250
251
250
249
249
248
248
248
248
248
249
248
248
249
249
249
248
249
248
249
247
248
248
248
249
251
250
250
251
252
252
251
252
252
252
253
254
254
254
254
253
253
253
253
253
253
253
253
255
254
253
253
253
254
254
253
253
253
252
253
255
254
255
255
255
255
254
254
254
255
255
255
254
254
254
254
254
254
254
255
255
255
255
253
254
254
254
254
254
254
254
253
252
252
248
237
197
126
61
45
39
29
31
36
123
48
80
96
4
255
255
255
255
254
254
254
255
254
255
254
253
254
253
254
254
254
254
253
254
254
254
254
254
253
253
254
253
253
252
252
253
254
254
254
254
252
253
254
253
254
253
252
253
252
252
253
252
251
250
252
248
250
250
249
253
251
251
254
253
253
252
254
255
254
254
255
254
254
254
254
254
255
255
255
255
254
253
252
249
245
239
235
234
234
232
235
234
233
233
231
231
228
229
229
228
229
226
227
228
225
228
228
228
228
226
226
225
224
224
224
222
224
224
221
220
220
220
218
217
217
215
215
216
216
216
214
216
217
215
213
214
211
209
210
211
207
204
205
207
205
205
210
204
202
200
200
194
195
198
193
198
196
197
195
194
190
190
188
186
184
181
183
181
184
187
187
188
188
189
188
188
189
189
191
198
212
235
249
250
248
250
251
250
250
249
250
251
249
251
250
250
250
249
249
250
249
249
249
249
248
248
249
250
249
249
249
249
248
249
248
248
248
248
249
250
250
250
250
250
250
252
251
252
253
253
253
254
254
254
253
254
253
253
253
254
253
253
254
253
254
254
253
253
253
254
254
254
253
254
255
255
254
254
255
255
255
254
254
255
255
255
255
254
254
254
254
254
254
254
254
254
254
254
253
254
254
254
255
255
254
253
254
253
253
251
243
227
181
108
59
42
40
33
106
180
170
61
21
255
255
255
255
254
254
254
255
254
255
254
253
254
253
254
254
254
254
253
254
254
254
254
254
253
253
254
253
253
253
252
253
254
254
254
254
252
252
253
254
254
253
253
254
253
251
254
253
251
252
251
249
252
251
249
251
252
252
252
254
253
254
255
255
254
254
255
255
254
254
255
254
255
255
255
255
255
254
253
251
250
251
246
242
238
234
235
233
231
231
231
233
229
228
229
229
228
226
227
228
227
226
228
226
226
226
225
223
224
223
222
222
222
221
221
220
220
221
220
219
218
218
218
217
217
218
218
218
214
214
214
213
212
212
213
211
210
208
207
207
204
205
208
205
202
202
200
198
193
192
188
198
190
193
188
188
188
185
183
184
188
185
188
190
194
193
191
192
192
192
191
194
192
197
215
240
248
248
250
251
251
251
250
250
250
249
250
251
249
251
250
250
250
249
249
250
250
250
249
248
248
248
249
249
249
249
249
249
249
249
248
248
248
248
248
249
249
248
250
250
250
252
251
252
254
253
253
254
254
254
253
253
253
253
253
254
253
253
253
253
254
254
253
254
253
254
254
254
253
253
253
253
254
254
255
255
254
254
254
255
255
255
255
254
254
254
254
254
254
254
254
254
253
253
253
254
254
255
254
254
254
254
254
252
253
251
253
250
242
218
163
104
63
42
66
66
57
42
51
255
255
255
255
255
254
254
255
254
254
254
253
254
253
254
254
253
254
253
254
254
255
255
254
254
254
254
253
254
254
253
254
254
254
254
254
253
254
253
253
254
254
252
253
253
253
254
252
253
253
252
252
252
251
253
253
252
252
253
253
254
254
254
255
254
255
255
254
254
254
255
254
255
255
255
255
255
254
255
255
253
253
252
252
250
245
239
235
233
232
231
231
228
229
227
230
230
230
227
224
223
226
228
228
227
228
228
226
224
224
221
220
225
223
224
222
222
223
220
219
218
219
220
220
220
219
219
216
213
214
213
212
211
210
211
210
210
210
208
205
206
207
205
200
199
199
199
194
184
183
189
195
192
191
188
187
186
183
185
186
189
192
196
196
198
195
198
197
197
198
200
207
225
243
249
249
250
251
250
250
250
251
251
251
250
249
250
251
250
250
251
249
250
249
249
249
249
249
248
248
249
249
249
249
250
249
249
248
249
249
250
248
248
248
248
248
247
247
250
252
251
251
252
252
253
254
253
254
254
254
252
252
253
253
254
254
254
254
253
254
254
253
253
255
254
253
253
253
253
253
253
253
253
255
255
255
254
255
254
255
255
255
255
255
255
255
255
255
254
254
254
255
253
253
254
254
253
254
253
253
254
254
254
251
254
249
251
251
252
247
241
217
173
144
202
176
175
174
171
254
254
254
255
255
254
254
255
254
254
254
253
254
253
254
254
253
254
253
254
254
253
253
254
253
254
254
253
253
253
254
254
254
254
254
254
253
254
253
254
254
254
253
253
253
253
252
253
254
254
253
251
253
253
253
252
252
253
254
255
254
255
255
255
254
254
254
254
254
254
255
255
255
255
255
255
255
255
254
253
252
252
253
253
252
253
252
247
241
233
233
233
233
231
231
233
231
230
230
227
226
224
226
224
222
223
224
226
225
224
224
222
224
223
221
221
221
219
221
220
219
220
217
218
217
216
216
215
213
213
213
211
212
210
211
211
209
208
207
207
205
202
198
194
196
195
195
194
195
190
192
189
191
188
191
190
190
193
195
198
202
203
204
201
201
202
201
200
210
223
239
250
252
252
251
251
251
252
251
250
250
250
250
251
250
249
251
251
250
251
250
250
250
250
250
249
250
250
249
249
249
249
250
249
249
249
249
249
249
249
250
249
249
248
248
249
247
248
251
252
252
252
253
251
252
254
253
253
254
255
254
253
254
254
255
255
254
254
255
254
254
253
253
253
253
253
253
253
252
253
253
253
254
254
254
255
255
254
255
255
254
255
255
255
254
254
255
255
254
254
255
255
254
254
254
254
253
253
252
252
253
253
253
252
253
252
252
252
253
251
251
249
243
226
197
148
137
82
53
253
253
253
254
254
254
254
255
255
254
253
253
253
253
253
253
253
253
253
254
254
253
253
253
252
253
253
253
253
253
254
254
254
254
254
254
253
253
252
254
254
254
253
254
254
253
254
254
254
254
255
255
254
253
252
253
253
253
254
255
255
255
255
255
254
254
254
253
255
255
255
254
254
254
255
254
254
255
253
252
253
253
253
253
253
252
253
252
252
250
245
238
234
233
233
234
232
233
233
232
232
233
233
230
229
226
228
227
227
227
224
222
224
223
219
219
220
219
218
220
220
221
218
217
216
216
217
213
213
212
211
211
211
210
208
206
206
207
205
204
202
199
197
198
197
196
196
196
195
192
194
194
193
195
200
202
202
204
203
204
205
203
204
204
205
209
219
233
246
249
250
249
250
251
252
251
251
250
251
252
251
251
250
251
249
249
251
251
250
251
250
250
249
251
249
249
249
250
249
249
249
249
250
249
249
249
249
249
249
249
249
249
249
248
248
248
247
249
251
252
252
252
252
251
252
254
253
253
254
255
255
253
253
253
255
255
254
254
255
254
254
254
254
253
253
253
253
253
252
253
253
253
254
254
254
255
255
254
255
255
254
255
255
255
254
254
254
255
254
254
255
254
255
254
254
253
253
253
252
253
252
252
253
253
252
252
253
252
253
251
248
249
252
249
243
234
231
202
164
254
254
254
253
253
253
253
254
254
254
254
255
255
255
255
255
254
254
254
254
254
253
253
253
253
254
255
255
253
253
253
252
253
253
253
253
254
253
253
254
254
254
254
254
253
253
254
254
255
254
255
255
255
253
252
253
254
253
254
254
254
255
255
255
254
254
254
253
254
255
255
254
254
255
255
255
255
254
253
253
254
254
253
254
255
254
253
253
253
253
252
252
249
246
241
235
233
233
234
234
236
237
238
235
232
235
233
231
230
230
229
228
228
227
225
227
222
220
218
218
219
220
218
218
216
218
218
216
214
214
212
211
211
212
211
210
207
205
203
208
206
203
201
201
199
198
198
198
199
198
198
203
204
205
204
203
207
207
205
207
209
211
216
226
236
245
253
253
251
251
252
252
252
250
251
251
250
250
251
251
252
251
250
250
250
250
251
251
250
252
251
251
250
251
250
249
249
250
249
249
249
250
250
249
250
250
249
249
250
250
249
248
248
249
248
248
247
249
251
251
251
251
252
252
252
253
253
253
253
254
255
253
252
252
254
254
254
254
254
254
254
255
255
254
253
254
254
253
253
253
253
253
254
254
255
255
255
255
255
255
254
254
254
253
254
254
255
255
254
254
255
255
253
253
253
253
254
254
253
253
253
252
252
252
251
251
252
252
252
250
249
248
250
249
250
250
243
244
242
254
254
254
253
253
253
253
253
253
254
254
254
254
254
254
254
255
254
254
254
254
253
253
253
253
254
254
254
254
254
253
253
253
253
253
253
254
254
254
254
253
253
254
254
253
253
253
254
254
254
254
255
255
255
254
254
254
253
253
254
254
255
255
255
254
254
254
254
253
254
255
254
255
255
255
255
255
254
253
253
253
253
253
254
255
254
255
254
253
253
253
253
252
251
252
250
246
241
239
238
239
239
239
239
237
237
239
241
235
232
233
233
231
229
225
229
227
224
223
224
223
221
220
217
217
217
217
215
215
216
214
211
211
210
209
210
207
205
204
207
205
202
200
201
199
199
200
201
202
201
202
203
203
204
206
206
206
206
212
221
231
241
248
251
253
253
253
252
251
251
251
252
252
252
251
251
250
250
252
251
252
251
250
251
250
250
251
251
250
252
251
251
251
251
250
249
249
250
249
249
249
250
249
248
250
250
249
249
250
249
248
248
248
249
248
248
247
249
251
251
251
251
251
252
252
252
253
253
252
254
255
253
253
253
254
254
255
254
254
254
254
255
254
254
254
253
253
253
253
253
253
253
254
254
255
255
255
255
255
255
254
254
253
253
254
254
255
254
254
254
254
254
253
252
253
254
254
253
253
252
253
252
251
251
252
251
250
250
251
251
250
249
249
248
249
248
247
243
244
253
253
253
253
253
253
253
254
253
253
253
254
253
254
254
255
254
253
254
254
254
254
254
253
253
254
253
253
253
253
254
255
254
254
254
254
254
253
254
254
253
254
254
253
253
253
253
254
254
254
254
255
254
254
254
255
255
254
254
255
255
255
255
255
254
254
255
255
254
254
255
254
255
255
255
255
255
254
253
253
254
254
254
255
254
254
254
254
254
255
254
255
255
253
253
253
253
254
252
250
247
245
244
243
242
241
242
243
241
237
236
234
231
227
225
229
228
228
227
225
226
223
224
225
221
219
218
219
217
216
216
213
212
210
208
207
205
205
205
205
203
203
203
205
205
208
209
206
204
206
206
208
213
217
221
226
232
240
247
251
253
252
252
251
252
252
252
251
252
251
251
252
252
251
251
250
250
250
252
251
250
251
250
251
251
250
252
252
250
251
249
250
251
251
251
250
250
250
249
249
249
250
249
248
250
250
250
249
248
248
249
249
249
248
248
249
248
250
252
251
251
251
251
252
252
252
253
253
253
254
255
253
253
253
254
254
254
254
254
254
254
255
254
254
255
255
254
254
253
253
253
254
255
254
254
255
255
255
255
254
254
254
255
254
254
254
254
254
254
253
252
252
253
253
253
253
252
252
251
251
251
252
252
251
252
251
250
250
250
250
250
249
248
250
248
247
244
242
242
254
254
254
253
253
253
253
253
253
253
253
253
253
253
254
254
255
254
254
254
253
254
254
254
254
254
254
254
253
252
253
254
254
254
254
254
254
253
254
254
254
254
254
253
254
254
254
254
254
254
254
254
254
254
254
255
255
255
255
255
255
255
255
254
254
254
255
255
254
254
255
254
255
255
255
255
255
254
253
253
255
255
254
254
255
255
255
254
254
255
255
253
254
255
254
255
254
255
253
254
253
252
251
250
248
245
246
245
243
242
242
242
241
238
233
233
230
228
227
225
221
221
222
225
224
219
218
218
219
216
215
215
212
210
208
207
207
208
209
209
208
211
211
209
212
211
210
211
218
221
227
233
238
243
249
251
252
252
252
253
252
252
252
252
254
253
254
253
252
251
251
251
251
251
250
250
250
251
252
251
250
251
251
251
252
251
252
252
250
250
250
250
251
250
250
251
251
251
250
250
250
250
248
248
251
251
251
249
248
249
250
249
248
248
248
249
248
250
252
252
251
251
251
253
253
252
252
253
253
254
255
253
252
253
254
253
254
254
254
254
254
255
255
254
254
255
255
253
253
253
253
253
255
254
254
255
255
255
255
254
254
253
254
253
254
254
253
253
254
254
253
254
254
254
253
252
251
251
250
251
252
252
251
250
250
250
249
250
250
249
248
248
247
247
247
244
247
239
247
253
253
253
253
253
254
253
253
253
253
254
254
254
254
254
253
254
254
253
253
253
254
254
254
254
253
253
254
254
253
253
254
253
253
254
253
252
253
252
253
253
254
254
254
254
254
253
254
253
253
254
254
254
255
255
255
255
255
255
255
255
255
254
254
254
254
255
254
254
254
255
255
255
255
255
255
255
254
253
253
254
254
254
255
255
255
254
255
255
255
255
255
255
254
254
254
254
255
254
254
254
254
253
253
254
251
251
251
249
247
246
243
243
243
240
239
238
237
235
235
233
233
231
230
228
226
226
225
224
221
220
219
217
216
215
215
216
217
215
215
216
220
223
226
230
232
236
241
247
248
251
253
253
253
254
253
253
253
253
253
252
252
252
253
254
253
253
253
251
251
251
251
251
251
251
251
250
251
251
252
251
250
251
252
253
252
251
252
250
250
251
251
250
250
250
251
250
250
251
251
250
249
249
249
250
250
250
249
249
249
249
249
248
249
248
249
249
251
252
252
251
251
252
252
252
252
252
253
253
254
255
253
253
254
254
254
254
254
254
254
254
255
254
255
255
254
254
253
253
254
252
253
254
255
255
255
255
255
255
255
254
254
253
254
254
254
253
253
254
253
253
255
254
254
252
251
250
251
250
251
251
250
250
250
250
249
249
249
249
248
247
249
248
247
247
244
246
243
240
254
254
253
254
254
254
253
253
253
253
253
254
254
254
254
253
254
255
253
253
253
254
254
254
254
254
253
253
253
253
253
254
253
253
253
253
252
253
253
253
253
254
254
254
254
254
253
254
253
253
254
253
254
255
255
255
255
255
255
255
255
255
254
254
254
254
254
254
255
255
255
255
255
255
255
255
255
254
254
254
253
254
255
255
255
255
255
254
254
255
254
254
254
253
253
254
254
254
254
254
254
254
253
253
254
254
254
254
254
254
252
251
251
251
248
245
243
242
240
239
236
236
235
232
233
233
233
235
235
234
232
229
230
232
234
233
229
233
238
240
242
245
247
250
251
252
253
254
254
254
254
254
253
254
254
253
253
253
253
253
253
253
253
253
254
253
253
252
251
251
251
251
251
251
251
251
250
252
252
251
251
250
251
252
253
252
251
252
251
250
251
251
250
250
250
251
250
250
251
251
250
249
250
250
250
250
250
249
249
249
249
249
249
250
249
248
248
251
252
251
249
249
250
251
251
253
253
254
254
254
254
253
253
254
254
254
254
254
254
254
254
255
254
255
255
253
253
253
254
254
253
253
255
255
255
255
255
255
255
254
254
254
254
254
254
254
254
253
254
253
252
254
252
252
251
251
250
251
250
250
250
249
249
249
248
248
249
248
249
248
247
249
248
246
245
245
242
244
244
253
253
253
254
253
253
252
253
253
252
252
253
254
254
254
253
254
255
254
254
254
254
254
254
253
253
254
253
253
253
255
254
253
253
254
253
253
254
254
254
254
254
254
253
253
254
254
254
254
254
253
253
254
255
255
255
255
255
255
255
255
255
254
253
254
254
254
254
254
255
255
254
255
255
255
255
255
253
254
254
253
254
255
255
255
255
255
255
255
255
255
255
255
254
253
254
255
255
254
254
254
254
253
253
253
253
253
254
253
254
253
253
254
254
254
254
254
253
252
250
250
251
252
250
249
249
248
248
248
249
250
249
250
250
250
249
250
251
251
252
253
254
253
254
253
253
254
254
254
255
254
254
254
254
254
253
253
253
253
254
254
254
254
254
253
252
252
252
251
252
251
251
251
250
251
253
252
252
252
252
252
252
252
252
253
252
251
252
252
251
251
251
251
250
250
251
251
251
251
251
250
249
250
251
251
250
250
249
250
250
249
248
248
249
248
248
248
251
252
250
248
248
249
251
252
253
254
254
254
254
254
252
253
254
255
254
254
254
254
254
254
253
253
254
254
253
253
253
253
253
253
254
255
255
255
255
255
255
255
255
254
253
254
254
255
255
254
253
254
254
253
253
252
252
251
252
251
250
250
251
250
249
249
248
246
246
247
247
248
247
247
247
247
244
245
237
243
244
246
254
253
253
253
253
253
252
253
253
252
253
253
253
253
253
253
254
254
254
254
254
253
254
254
254
254
255
255
254
254
255
255
254
253
254
254
253
254
253
254
253
253
253
253
253
253
254
254
254
254
253
253
254
255
255
254
254
255
255
255
255
255
254
253
254
255
254
255
253
253
253
254
255
254
255
255
255
254
254
254
253
253
254
254
254
254
253
253
253
253
253
254
254
255
254
254
254
254
253
253
252
252
253
253
254
254
253
254
254
254
253
253
254
255
254
254
254
254
254
253
254
253
253
253
254
254
254
254
253
254
253
254
254
253
254
253
252
252
251
251
253
254
254
254
253
254
255
255
253
253
255
254
253
253
252
252
253
253
253
253
253
253
253
253
252
252
253
253
251
251
251
251
251
251
252
253
252
252
252
252
253
252
252
252
253
252
251
252
251
251
250
250
250
250
250
251
251
251
250
250
250
249
249
250
250
250
250
248
249
250
249
249
250
250
249
249
249
252
251
251
250
250
251
252
253
254
253
254
253
252
253
253
254
254
254
254
254
254
254
254
254
254
253
253
253
253
254
254
253
253
253
253
255
255
255
255
255
254
254
254
254
253
254
253
253
253
253
253
253
253
252
253
253
251
252
252
251
250
250
249
249
250
249
249
247
247
248
248
247
245
246
245
246
243
245
243
241
241
242
253
253
253
253
253
254
254
254
254
254
254
254
253
253
253
253
254
254
254
254
254
252
253
254
254
254
254
254
254
253
254
254
254
254
254
254
254
254
254
254
254
253
253
254
254
253
254
253
254
254
253
253
254
255
255
254
254
255
255
255
255
255
254
253
254
255
254
254
254
253
252
254
254
254
255
255
255
253
254
254
253
253
253
253
253
253
253
253
253
253
254
255
255
254
254
253
254
254
254
254
253
253
254
253
253
253
253
253
254
254
253
253
254
254
254
255
255
255
254
253
254
255
254
255
254
254
255
255
255
254
255
255
254
254
255
253
254
253
253
254
255
255
255
253
254
254
254
252
252
254
254
253
253
254
252
253
253
252
252
253
253
253
253
253
253
252
253
253
251
252
253
253
254
253
253
253
252
253
252
252
254
253
253
253
252
252
252
252
251
251
250
250
250
250
250
251
251
250
251
250
250
250
250
250
251
251
251
251
250
250
249
251
252
252
251
252
251
252
252
252
252
252
253
252
252
254
254
253
253
253
253
253
254
254
253
254
254
254
254
254
254
255
254
253
253
254
254
254
253
253
253
253
255
255
255
255
255
254
254
255
255
254
254
254
254
254
254
254
254
253
253
253
253
252
251
251
250
251
250
248
249
249
248
248
247
246
247
247
247
245
245
243
244
244
244
242
242
241
241
255
255
254
254
254
254
255
254
254
254
255
255
253
253
253
253
255
255
255
254
254
252
253
254
253
253
254
255
254
254
254
255
255
255
255
254
254
254
254
254
253
254
254
254
254
254
254
253
253
253
254
254
254
254
255
255
254
254
255
255
255
255
255
253
253
254
254
254
254
254
254
255
254
254
254
255
255
253
253
254
253
253
253
254
254
254
254
253
253
253
253
254
254
253
253
253
254
254
255
255
255
255
254
253
253
253
253
253
253
254
253
253
252
254
255
254
255
255
254
254
254
255
255
254
255
254
254
254
254
255
255
255
254
254
254
253
254
253
253
253
254
254
254
255
255
254
254
254
254
253
253
253
253
253
253
254
254
253
253
253
252
252
252
252
253
252
252
252
251
253
253
253
253
252
252
252
252
252
252
253
254
254
252
252
253
252
252
252
251
251
250
250
251
250
250
251
250
249
251
251
250
250
250
250
250
252
253
251
250
249
250
251
252
252
251
251
251
251
251
251
252
252
253
253
253
253
254
254
253
254
254
253
254
254
253
254
253
253
252
253
254
253
253
254
254
254
254
255
254
254
252
254
255
255
255
255
255
255
255
255
255
254
253
254
254
254
253
253
252
252
253
253
252
252
251
251
250
250
249
250
249
247
247
247
247
246
247
246
245
245
245
244
244
242
243
240
240
242
247
255
255
254
254
254
255
255
254
254
254
255
255
253
253
253
253
254
254
255
254
254
252
253
254
253
253
254
255
255
254
254
255
254
254
255
253
254
253
253
253
253
254
254
254
254
254
253
253
253
254
254
254
254
255
255
255
254
254
255
255
255
255
255
253
253
254
254
253
254
254
255
255
255
254
254
255
255
254
253
253
253
253
252
253
253
253
253
253
253
253
253
254
254
253
253
253
253
254
254
253
253
253
253
253
254
254
254
253
253
253
253
254
253
253
253
253
254
254
254
254
254
255
254
254
254
254
254
254
254
254
255
255
254
254
253
253
254
253
253
253
254
254
255
255
255
254
254
254
254
253
253
253
253
254
253
254
254
253
253
253
252
252
252
252
252
252
252
252
252
254
253
253
253
252
252
253
252
253
253
252
252
252
252
253
253
253
253
252
250
249
249
250
250
250
250
250
250
249
251
250
249
250
250
251
251
251
251
250
250
249
250
251
252
251
251
251
251
250
250
250
253
252
253
252
252
252
254
253
253
253
253
254
254
254
254
254
253
253
253
253
253
253
253
254
255
254
254
254
253
254
253
254
255
255
255
255
255
255
255
255
255
254
253
254
254
254
253
252
252
253
252
251
251
252
251
250
250
249
249
249
248
247
248
246
247
246
245
244
245
244
243
243
243
243
242
240
242
236
239
254
254
254
255
255
254
255
253
254
254
255
255
253
253
254
253
253
254
255
254
254
254
254
255
254
255
254
255
255
255
255
254
254
254
253
253
255
254
253
253
253
254
254
254
254
255
255
254
254
255
253
253
254
255
255
254
254
254
254
255
254
254
254
252
253
253
253
253
253
254
254
253
254
254
254
255
255
254
254
254
254
252
252
253
254
254
254
253
253
254
254
254
254
254
254
254
254
254
253
253
253
253
253
252
253
253
253
253
253
253
253
253
253
253
253
253
254
255
255
255
254
254
253
253
254
254
254
253
253
254
255
254
253
253
253
254
254
254
254
254
254
254
254
255
255
254
255
255
254
255
254
254
254
253
254
254
254
253
253
253
252
254
254
254
253
253
253
253
253
254
254
254
254
253
253
254
253
254
254
253
250
251
252
253
253
253
252
252
251
250
251
250
250
250
250
250
250
250
251
251
249
249
250
251
251
250
250
250
250
250
250
251
252
251
252
252
251
249
249
250
252
253
253
251
252
251
253
253
253
254
254
255
255
255
255
255
255
255
255
254
253
254
254
254
254
254
254
254
252
253
252
253
255
255
255
254
254
255
255
255
254
253
253
254
254
253
253
254
253
253
252
251
251
250
251
249
249
249
249
247
247
248
249
246
246
245
243
242
243
242
242
244
243
244
239
239
243
237
236
254
255
255
255
255
255
255
253
253
255
255
255
253
253
253
253
253
254
255
254
254
253
254
254
253
254
254
255
255
255
255
254
255
254
254
255
255
254
253
254
254
254
254
254
254
255
255
255
255
255
253
253
254
254
254
254
254
254
254
255
255
255
255
253
253
254
253
254
254
255
255
254
254
254
255
255
255
255
255
255
255
255
253
253
253
254
254
253
253
254
254
254
254
253
253
253
253
253
253
253
253
253
253
253
254
254
254
254
254
254
253
253
253
253
254
253
254
255
254
254
254
254
253
254
254
254
254
254
254
255
255
255
253
254
255
255
255
254
254
255
254
254
254
254
254
255
255
255
254
255
254
254
253
253
253
254
254
254
253
254
253
254
254
254
253
253
253
254
253
254
254
254
253
252
253
255
254
255
255
254
252
253
252
253
253
252
251
251
250
249
250
250
249
250
250
251
251
250
250
250
249
249
250
250
251
251
250
250
250
250
250
252
253
252
252
252
251
249
250
251
252
252
252
251
253
253
253
253
254
254
254
254
254
254
254
254
255
255
255
254
254
255
254
254
254
254
254
254
252
252
252
253
255
255
255
255
255
255
255
254
253
253
254
254
253
253
253
253
253
252
251
250
250
249
250
249
249
249
248
247
248
247
246
246
246
244
243
243
242
242
243
245
244
244
242
241
234
240
241
252
253
253
253
254
254
255
254
255
254
253
254
253
253
253
253
253
253
254
255
255
253
254
253
252
253
253
254
254
255
254
255
254
254
255
254
254
254
254
254
254
253
253
254
254
255
255
255
255
255
254
255
255
254
254
255
255
254
254
255
254
254
254
253
253
253
253
252
254
254
254
254
255
254
254
255
255
254
255
255
255
255
254
254
253
254
254
253
253
253
253
254
254
254
254
254
253
253
254
254
254
254
253
253
253
254
254
254
255
253
253
254
254
254
254
253
254
255
254
254
254
253
252
252
253
253
254
255
255
254
255
255
253
253
254
254
255
255
255
255
254
254
254
254
255
255
255
255
254
255
254
254
254
254
253
253
254
254
253
253
253
255
254
254
254
254
254
254
253
252
253
253
253
253
253
254
254
255
255
255
254
255
253
253
252
251
251
251
249
251
250
249
249
249
249
249
249
249
249
249
249
249
249
250
250
250
250
250
250
250
250
252
253
251
252
251
252
250
250
252
253
253
253
252
253
254
253
254
254
255
254
254
254
254
255
255
255
255
255
254
253
254
254
255
254
254
254
254
253
253
252
253
255
255
255
255
255
255
255
254
253
253
254
253
252
252
253
252
252
252
251
250
249
249
250
250
249
249
247
246
247
247
246
245
243
243
243
241
243
242
242
242
243
243
243
240
236
242
236
254
254
253
253
253
254
254
253
253
253
253
254
254
254
255
254
253
253
253
254
254
254
255
255
254
254
253
254
254
255
255
254
254
255
255
254
255
253
254
255
255
254
253
253
254
254
255
255
254
253
255
254
254
253
254
255
255
255
255
255
255
255
255
254
255
255
255
253
254
254
255
254
255
255
254
255
255
255
255
254
255
255
255
255
255
255
254
254
254
254
254
253
252
253
253
253
253
253
253
253
254
254
253
253
253
254
253
254
254
252
252
253
254
253
253
253
254
255
254
255
255
253
253
253
254
255
255
255
254
253
254
254
254
255
254
254
255
255
255
254
254
255
255
255
254
255
255
254
254
254
255
254
253
253
253
253
254
254
253
254
254
253
254
255
254
254
253
253
253
254
255
255
255
254
254
255
254
254
253
252
252
254
253
252
251
251
251
251
250
250
249
249
249
249
249
250
249
250
249
250
248
249
250
250
250
250
250
251
250
251
250
250
252
253
252
252
252
251
251
251
253
253
254
253
254
254
255
254
254
255
255
255
254
254
255
254
254
254
255
254
253
254
254
254
254
255
254
253
253
254
253
253
255
255
254
254
254
255
255
253
253
254
254
252
252
252
253
251
250
251
249
249
249
250
249
249
249
249
248
246
246
246
246
245
244
243
242
242
242
242
242
242
241
242
239
236
241
233
235
254
253
254
253
253
253
253
253
253
253
254
254
254
254
254
254
254
254
253
254
254
254
255
255
254
254
253
253
254
254
255
254
254
255
255
254
254
253
254
255
255
254
253
253
254
255
255
255
254
253
255
255
254
253
254
255
255
255
255
255
255
255
255
255
255
255
255
254
254
254
254
254
254
255
255
254
255
255
255
255
255
255
255
255
255
254
254
254
254
255
254
254
253
254
254
254
255
254
253
253
252
253
253
254
253
254
253
253
254
253
252
253
254
253
253
254
255
255
254
255
255
253
253
253
254
254
254
255
254
253
254
254
255
255
255
254
254
255
255
254
254
254
254
255
255
255
255
254
254
254
255
254
253
253
253
254
254
254
253
254
253
255
255
254
254
254
253
253
253
253
255
255
255
254
254
255
254
254
252
251
252
253
252
252
250
251
251
250
250
250
249
248
248
249
250
250
249
250
249
250
248
249
250
250
250
250
250
252
251
251
251
250
252
253
253
253
253
252
252
251
253
253
254
254
254
255
255
254
255
255
255
255
255
254
255
254
255
255
255
254
254
253
254
255
254
255
254
253
252
253
252
253
254
254
255
254
254
255
255
253
253
254
254
253
253
253
252
251
251
251
249
249
249
250
250
249
247
247
248
246
246
245
245
245
245
243
241
240
242
242
242
241
241
241
239
236
241
239
234
254
254
254
254
254
254
254
254
254
254
254
254
254
254
254
254
254
254
254
254
254
253
253
254
254
253
254
253
254
254
253
254
254
255
254
254
253
253
253
253
253
254
254
253
254
254
255
254
254
254
255
254
253
254
254
255
255
255
255
255
255
255
255
255
255
255
255
254
255
254
254
254
254
254
254
255
254
254
255
255
254
254
255
255
255
255
255
254
254
255
255
255
255
255
255
255
255
254
253
253
253
253
253
254
253
253
253
253
254
254
253
253
253
253
253
254
255
255
255
255
255
254
254
254
255
254
253
254
254
254
254
254
254
254
254
253
254
255
255
255
255
255
255
254
254
254
254
254
254
255
254
253
253
253
253
254
254
254
253
254
253
255
255
254
255
254
253
253
254
254
255
255
255
255
254
254
253
252
253
253
252
252
252
252
252
252
251
249
250
250
249
248
248
250
251
250
249
249
249
250
249
250
250
251
252
251
251
252
251
252
252
251
251
253
252
252
252
252
253
252
253
254
254
255
254
255
255
255
255
255
255
255
255
255
254
254
255
254
254
253
253
253
254
254
254
254
254
253
253
254
253
254
254
254
255
254
255
254
254
253
253
254
253
252
252
252
251
251
250
251
250
250
250
248
249
248
247
246
246
244
245
246
245
244
243
241
240
240
241
240
240
240
241
242
241
238
238
239
239
255
255
255
254
254
254
254
254
255
254
254
254
254
253
254
253
252
253
253
254
254
253
253
254
254
253
254
254
254
254
254
254
254
255
253
253
254
254
253
253
253
254
253
254
254
254
255
254
254
254
255
254
253
254
254
255
255
255
255
255
255
255
255
255
255
255
255
254
255
254
254
254
254
254
254
255
255
254
255
255
254
254
255
255
255
255
255
254
254
255
255
255
255
255
255
255
255
255
254
253
253
253
254
255
253
253
253
253
253
253
253
253
253
253
253
254
255
255
255
255
254
254
255
255
255
254
253
254
254
254
254
254
254
254
253
253
254
254
255
254
255
255
254
253
254
254
254
255
255
255
253
253
254
253
253
254
254
253
253
254
253
255
254
253
254
254
253
254
255
255
255
255
254
255
255
254
253
252
253
253
252
252
252
252
253
252
252
250
251
252
250
249
249
250
251
251
250
250
249
249
249
250
250
251
252
252
251
252
251
252
252
252
251
252
252
252
252
253
253
253
254
254
255
255
255
255
255
254
255
255
255
255
255
255
254
254
255
254
254
254
254
253
254
254
255
255
254
254
253
254
253
254
255
254
255
254
254
254
253
253
253
253
252
252
251
251
250
250
249
250
250
250
250
249
248
248
248
247
246
245
245
245
244
243
243
242
241
240
239
238
239
239
239
238
238
237
237
237
236
255
255
255
255
254
255
255
255
255
254
253
253
252
252
253
254
253
253
254
254
254
254
254
254
253
254
253
253
254
254
253
254
254
254
252
254
253
254
254
253
253
254
254
254
253
253
255
255
254
253
255
255
253
253
253
254
254
254
254
255
255
254
254
255
254
255
255
254
254
254
254
254
255
255
254
255
255
254
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
254
253
254
255
255
253
253
253
253
253
253
253
254
254
253
253
255
255
255
255
255
254
254
255
255
255
255
254
254
254
255
254
254
254
253
253
254
254
254
255
255
255
254
254
255
255
254
254
255
254
254
253
252
253
253
254
255
255
253
253
254
253
255
254
253
252
253
254
255
255
255
254
255
254
254
254
253
252
252
253
253
252
252
252
252
252
252
252
251
251
252
253
251
250
251
251
251
250
250
250
249
250
251
250
251
252
252
252
253
252
252
252
252
252
253
252
252
253
253
254
254
254
254
255
254
255
254
254
255
255
255
255
255
254
254
255
254
255
254
254
255
254
254
254
254
254
254
254
254
252
253
252
254
255
255
254
254
253
254
254
253
252
252
252
252
251
250
251
250
250
249
251
251
249
248
248
248
247
247
245
245
244
244
245
243
243
242
241
240
240
238
239
238
239
239
238
236
237
242
239
255
255
255
255
254
254
255
254
255
255
254
253
253
253
254
254
252
252
253
253
253
253
253
253
254
254
253
253
253
254
253
253
254
254
253
253
253
254
253
254
253
253
253
254
253
254
254
254
254
254
255
254
255
254
254
255
255
254
255
255
254
253
254
254
254
254
255
254
255
255
255
255
254
254
254
254
254
254
254
254
254
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
253
253
253
253
255
254
255
253
253
253
254
255
254
255
254
254
253
253
253
255
254
254
254
253
253
254
254
254
254
254
255
254
255
255
254
254
253
253
253
254
254
254
254
254
253
253
254
253
255
254
252
252
253
255
255
255
255
255
255
254
254
254
252
253
252
253
252
252
251
253
253
252
254
253
252
252
252
252
253
253
252
252
253
253
251
250
249
251
251
252
252
252
252
251
252
252
252
253
254
253
253
252
252
253
253
254
254
254
254
254
254
255
255
254
255
255
255
254
255
254
255
254
254
254
254
254
255
254
253
254
255
254
254
254
254
253
254
252
253
253
255
254
254
254
254
254
253
253
252
252
251
251
250
250
249
250
250
249
251
249
248
249
248
246
247
246
245
245
244
244
243
242
240
240
239
239
238
239
239
239
238
238
234
240
240
231
255
255
255
255
254
254
255
255
255
255
255
254
254
253
253
254
253
253
254
254
254
254
254
253
253
254
254
254
255
255
254
254
254
254
253
254
253
253
253
253
253
253
253
254
254
254
254
254
255
254
255
255
255
254
254
255
255
255
255
255
254
254
254
254
254
254
254
254
255
255
255
255
254
254
254
254
254
254
255
255
254
255
255
254
255
255
255
255
255
255
255
255
255
254
254
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
253
253
253
253
255
255
254
253
253
253
254
255
254
254
255
254
253
253
253
254
254
253
253
253
254
255
254
254
254
253
254
254
254
254
253
254
253
253
253
253
254
254
253
254
253
253
253
253
253
253
252
254
254
255
255
255
254
255
254
254
254
254
253
254
253
253
252
254
254
255
255
254
254
252
252
254
254
253
253
254
254
254
255
252
250
249
251
253
254
254
254
254
253
252
253
253
253
253
252
252
252
254
254
254
254
255
255
254
254
255
254
254
255
254
255
255
255
254
254
255
255
254
254
254
255
255
255
254
254
255
255
254
255
255
254
254
254
253
253
253
254
255
255
254
254
254
253
253
251
251
251
251
250
250
249
250
249
249
251
250
247
248
247
247
247
247
246
244
243
244
242
241
240
240
239
239
237
239
238
239
238
239
234
232
234
230
255
255
255
255
255
255
255
255
255
255
254
254
254
254
253
253
253
253
254
254
254
255
255
254
253
254
253
254
254
254
254
254
254
254
253
254
253
254
253
253
253
254
254
254
254
254
254
253
255
255
254
255
255
254
254
255
255
255
254
254
254
253
253
253
254
254
254
255
255
255
255
255
254
254
254
254
254
255
255
255
254
255
255
255
255
255
255
255
255
255
255
255
255
254
254
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
254
253
253
253
255
255
254
254
253
253
255
255
254
254
255
255
253
253
253
254
253
253
253
254
254
254
254
254
254
253
254
253
253
253
253
254
253
254
253
254
254
254
253
254
253
254
254
254
253
253
253
254
255
255
255
255
255
255
254
254
254
254
253
254
253
253
252
254
253
254
254
254
253
252
253
254
253
253
253
253
254
253
253
252
251
251
251
253
254
254
254
254
253
252
253
254
253
253
253
253
253
254
255
254
254
255
255
255
255
255
253
253
254
255
255
255
255
255
254
255
255
255
254
254
255
255
254
254
254
254
255
254
254
254
254
254
254
252
252
253
253
255
254
254
253
253
253
253
251
252
252
251
250
249
248
250
249
249
251
250
247
247
246
247
247
246
246
245
243
243
242
241
240
240
239
238
237
238
237
237
235
237
233
236
228
229
254
254
255
255
255
255
255
255
255
255
254
255
255
255
254
253
253
254
253
254
254
254
254
255
254
253
252
253
254
254
254
254
254
254
253
253
253
253
253
253
253
253
254
254
254
254
253
254
254
255
254
255
255
254
254
255
254
254
253
253
253
253
253
253
255
254
254
255
255
255
255
255
255
255
254
254
254
255
254
254
254
255
255
255
255
255
255
255
255
255
255
255
255
254
254
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
254
253
253
254
255
254
254
254
254
254
255
254
254
255
254
253
253
253
254
253
253
253
253
253
252
253
253
253
253
253
253
253
253
253
253
253
253
253
254
254
254
253
253
253
254
255
254
254
254
254
255
255
255
254
255
255
255
254
255
254
254
255
254
254
254
253
252
252
253
253
252
251
253
255
254
254
255
254
254
254
253
254
254
254
252
252
253
252
253
253
252
253
253
254
254
253
254
254
254
254
254
255
254
254
255
255
255
255
254
254
254
254
254
253
255
255
255
255
255
255
255
255
254
254
254
254
254
254
255
255
254
255
255
254
255
254
252
252
252
253
254
254
254
254
254
253
253
251
251
251
251
251
250
248
250
249
248
250
249
247
248
246
247
245
245
246
244
242
243
242
241
239
239
239
238
237
237
237
238
235
237
238
237
243
243
255
255
255
255
255
254
255
254
254
255
254
253
255
255
254
253
253
253
253
253
253
255
255
254
254
254
253
253
254
254
254
254
254
254
253
253
253
253
254
254
253
253
253
252
253
254
253
255
254
254
254
254
255
254
254
255
254
254
253
252
253
254
254
253
255
254
254
255
254
254
254
255
255
255
254
253
254
255
255
255
255
255
255
255
255
255
254
254
254
254
254
254
254
254
254
254
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
255
253
254
254
254
255
253
254
254
254
254
255
254
254
254
253
253
253
253
252
253
253
252
253
252
253
253
252
253
253
253
254
254
253
254
253
254
253
253
253
254
253
253
252
254
254
254
253
254
255
255
255
254
255
254
255
255
254
254
254
254
254
254
254
253
252
254
253
254
253
253
253
253
254
254
255
254
255
255
254
255
255
255
255
255
255
255
254
253
253
253
254
254
254
254
253
254
254
254
254
254
255
254
254
254
254
255
254
253
255
255
253
254
254
255
255
255
255
254
254
254
255
255
255
254
255
255
254
254
254
254
254
254
254
255
254
253
252
252
252
254
255
254
254
254
252
252
252
251
251
250
250
249
248
249
249
248
249
250
248
248
248
248
246
245
246
244
241
242
241
240
239
238
239
238
236
237
237
236
235
237
234
232
228
223
255
254
254
255
254
255
255
254
255
255
255
255
255
255
255
254
253
253
253
253
253
254
254
255
254
254
254
254
253
253
254
254
254
254
254
253
252
253
253
253
253
254
253
253
253
254
254
254
255
254
254
255
255
255
254
255
255
253
253
253
254
254
255
255
254
254
254
254
254
254
253
254
255
254
254
254
255
255
254
254
255
255
255
254
254
254
254
254
254
254
254
254
254
254
254
254
253
253
254
254
255
255
255
255
255
255
255
255
255
255
255
255
255
255
254
253
253
254
255
255
254
254
255
254
255
254
254
255
254
253
253
254
253
252
252
254
253
252
252
252
253
252
252
252
253
253
253
253
253
253
253
254
253
253
253
253
252
252
253
254
254
254
254
254
255
255
254
255
254
254
254
254
255
253
253
253
254
254
254
253
253
252
253
253
254
254
254
255
254
254
255
254
254
254
254
254
254
254
254
254
253
253
252
253
253
253
254
254
254
253
254
254
254
255
254
253
255
254
253
253
254
254
253
254
255
254
253
254
254
255
255
254
255
255
254
254
255
255
254
254
254
255
254
254
255
254
255
254
254
255
254
253
252
252
253
254
254
254
254
252
252
253
252
251
250
250
250
248
249
249
250
250
247
246
247
247
246
246
245
245
243
241
241
240
240
240
238
238
238
237
237
238
236
235
237
235
239
243
240
254
254
255
254
254
254
255
254
254
254
254
255
255
255
255
255
254
254
254
253
253
254
254
254
255
255
254
253
254
254
254
253
253
253
253
253
252
252
253
254
254
255
254
253
253
254
254
254
254
255
254
254
255
255
254
255
255
254
255
254
254
255
255
255
254
254
255
254
254
254
254
254
254
254
254
254
255
254
254
255
255
255
255
255
254
255
254
254
254
254
254
254
255
254
254
254
254
254
253
253
254
254
255
255
255
255
255
255
255
255
255
255
255
255
254
253
254
255
254
255
253
253
254
254
254
254
254
254
255
254
254
253
253
252
252
253
253
253
254
253
254
253
253
253
253
253
254
254
253
253
253
254
254
253
252
253
253
253
253
254
254
254
254
254
255
254
254
254
254
254
254
254
254
254
254
254
255
253
253
254
253
253
253
253
254
254
253
255
255
254
254
253
252
252
252
252
252
252
252
252
252
253
252
253
253
255
255
254
254
253
254
255
255
254
254
254
255
255
254
254
254
253
253
253
253
254
254
254
254
254
255
254
255
255
255
255
255
255
255
255
255
255
254
254
254
254
255
255
253
254
254
254
253
253
253
254
254
254
253
253
252
252
252
252
251
251
250
248
250
249
249
249
247
246
246
247
246
245
244
243
243
241
241
240
240
239
237
237
238
237
237
237
236
236
238
233
232
229
229
253
253
255
254
254
254
255
254
255
254
254
254
255
255
255
255
255
254
254
253
253
254
254
253
255
255
254
254
254
254
253
254
252
252
253
253
252
253
253
254
254
254
254
254
253
254
254
254
254
255
254
254
255
255
254
255
255
254
255
255
254
255
255
254
254
254
254
253
255
255
255
255
254
254
254
254
255
254
255
255
255
255
255
255
255
255
254
254
254
254
254
254
254
254
254
254
255
254
253
254
253
254
255
255
255
255
255
255
255
255
255
255
255
255
255
254
255
255
255
255
254
254
255
254
253
254
253
253
255
254
253
252
254
253
252
254
254
254
254
253
252
254
254
252
252
253
253
254
254
254
254
254
254
254
252
253
253
254
254
255
255
255
255
255
255
254
255
255
255
255
254
253
253
254
254
253
255
254
254
253
254
254
254
253
254
254
254
254
254
253
254
253
253
252
253
253
252
252
253
253
252
253
253
253
253
254
255
253
254
254
253
254
254
254
255
255
255
254
254
254
254
254
254
253
253
254
254
254
253
254
255
255
253
254
255
255
255
255
255
255
255
255
254
254
253
253
254
255
253
254
254
255
254
254
253
253
253
254
252
253
253
252
252
252
251
251
250
249
250
249
248
247
246
246
247
248
245
246
244
243
243
241
241
240
240
239
238
237
239
239
239
237
234
234
237
231
240
228
229
254
254
254
253
253
253
254
254
255
254
254
255
255
255
255
254
255
254
254
254
253
253
253
255
254
253
253
254
254
254
254
254
252
251
253
254
254
254
253
254
253
254
254
254
253
254
254
253
254
254
255
255
255
255
255
255
255
254
254
255
255
254
253
253
254
254
255
254
255
255
255
255
253
254
255
254
254
254
254
255
255
255
255
255
254
255
254
254
254
254
254
253
253
253
253
253
254
253
253
254
254
253
254
254
254
254
254
255
255
255
255
255
255
255
255
255
255
254
254
254
254
254
254
254
254
253
253
254
254
253
254
253
253
252
253
254
253
254
254
253
253
254
253
252
252
254
253
253
254
253
254
253
253
253
252
252
254
254
255
255
254
254
254
254
253
253
255
255
255
255
254
253
254
255
254
254
253
254
254
253
254
254
253
252
253
254
255
255
253
252
255
254
254
254
254
254
253
254
254
254
254
254
253
254
254
253
253
253
254
254
254
254
254
254
255
255
254
254
253
253
254
254
254
254
253
254
253
253
253
253
253
253
252
253
254
254
254
255
255
255
255
255
255
254
254
253
254
255
254
253
254
254
255
255
253
253
252
252
251
252
252
251
252
251
251
250
250
249
250
249
248
248
247
247
246
246
245
246
244
243
242
241
241
240
240
238
237
237
238
238
238
237
234
234
233
232
228
238
234
254
253
254
253
253
253
253
254
255
254
254
255
255
255
255
254
255
254
254
254
253
254
254
254
253
252
253
254
254
254
253
254
254
253
253
253
253
254
254
253
253
253
253
254
254
254
253
253
254
254
255
255
255
255
255
254
254
254
254
255
254
253
253
254
254
255
255
255
255
255
255
255
254
254
255
254
254
255
254
254
255
255
255
255
254
254
254
254
254
254
254
253
253
254
254
253
253
254
254
254
254
254
254
254
254
254
254
254
255
255
255
255
255
255
255
255
255
254
254
254
254
254
254
254
254
253
254
254
254
254
255
254
252
252
253
254
253
253
253
254
254
254
253
252
252
253
253
253
254
253
253
253
253
253
254
254
254
253
254
255
255
254
254
253
254
254
255
255
254
254
255
254
254
255
254
254
253
254
254
253
253
253
253
253
254
255
255
255
253
252
253
253
254
254
254
253
254
254
254
254
254
254
253
254
254
254
254
253
255
254
254
254
254
254
255
254
253
254
254
254
254
254
255
254
254
254
253
253
253
254
253
252
253
253
253
253
253
253
255
255
255
255
254
254
254
255
254
254
255
254
254
253
254
255
254
253
251
251
251
252
251
251
251
251
251
250
250
249
249
249
250
250
248
247
246
245
244
244
243
243
242
241
241
240
240
238
237
238
238
237
236
236
237
231
239
235
237
233
232
253
253
253
254
254
253
253
254
254
254
254
255
255
254
254
253
255
254
254
254
253
254
255
254
253
252
253
253
254
253
253
253
254
254
253
253
252
254
254
252
253
253
254
253
253
253
254
255
254
254
255
255
255
255
253
254
255
254
254
255
254
254
254
254
253
255
255
255
255
255
255
255
255
255
255
255
254
255
255
255
255
255
254
253
254
255
255
254
254
254
254
253
254
254
254
254
254
254
254
254
253
254
254
255
255
254
254
254
255
255
254
255
255
255
255
255
255
255
255
255
254
254
254
254
254
254
254
254
254
254
254
253
254
253
254
255
254
252
253
253
252
253
252
252
251
253
253
253
253
253
252
253
253
252
254
254
253
254
254
255
255
253
254
255
254
255
255
255
255
255
255
254
255
254
255
254
254
253
254
254
254
254
253
254
255
255
255
254
254
252
254
253
253
254
254
253
254
253
254
255
253
254
254
255
255
255
255
255
255
254
255
254
254
254
255
254
253
252
254
254
255
254
255
255
254
254
255
254
254
255
255
254
254
253
254
254
254
254
254
255
255
254
254
254
254
255
255
254
254
254
254
254
255
254
254
254
254
252
252
252
251
251
252
251
251
250
249
249
248
249
249
249
248
247
245
247
245
244
244
243
242
241
241
240
238
239
239
237
238
236
235
236
238
237
240
238
235
237
235
253
252
253
253
253
254
254
254
254
253
254
254
254
254
254
254
255
254
253
253
253
254
254
253
253
253
254
254
254
253
253
253
254
254
253
253
252
253
254
254
254
253
253
253
253
254
254
255
254
254
255
255
255
255
254
254
254
254
254
254
254
254
254
254
253
254
255
255
255
255
255
255
254
255
254
254
253
254
254
254
254
254
253
253
254
254
254
254
254
255
255
253
253
253
254
254
255
255
254
254
253
254
254
254
255
255
254
255
254
254
253
254
255
255
255
255
255
254
255
255
254
254
253
254
255
254
254
255
255
254
254
254
253
253
253
253
252
252
254
253
254
253
254
253
252
254
254
254
253
253
254
254
254
254
254
254
253
253
254
254
255
254
254
255
255
255
254
254
255
255
254
254
255
254
255
254
254
254
254
253
253
254
253
254
255
255
255
254
252
253
254
254
254
254
254
253
254
254
254
255
254
255
254
255
254
254
254
255
255
254
254
254
254
254
254
253
253
253
254
254
254
254
255
255
254
255
255
254
254
255
255
255
254
253
253
253
253
253
252
253
254
255
255
255
255
255
255
255
255
255
254
254
255
254
253
254
254
253
252
252
252
251
252
251
251
250
249
249
249
249
249
248
248
246
247
246
245
245
244
243
242
241
240
239
238
239
238
237
238
237
236
235
234
232
230
228
235
225
221
137
136
136
136
135
133
132
131
129
126
126
125
123
122
120
118
115
114
114
113
113
112
112
112
110
109
107
107
106
106
106
108
107
107
106
109
111
110
111
111
111
112
112
111
112
113
112
113
112
114
112
108
107
106
106
105
105
104
104
105
104
104
104
105
105
106
106
109
109
109
110
112
111
111
112
114
114
116
117
117
119
120
121
123
123
125
126
129
132
134
136
136
138
141
143
144
147
149
151
152
153
154
156
158
158
160
160
161
162
164
163
164
163
166
166
168
167
168
168
168
168
169
170
172
174
175
176
177
180
180
181
183
183
182
182
184
184
185
185
186
187
186
187
186
186
186
185
186
186
186
187
186
185
187
186
186
186
188
189
188
188
189
190
191
191
194
194
194
195
195
196
195
195
194
195
194
194
193
193
195
193
193
192
194
194
194
195
195
195
196
197
197
198
196
196
197
197
195
196
196
194
195
195
194
193
192
193
192
193
193
192
192
192
193
193
194
196
197
198
200
201
203
203
204
205
207
208
210
211
213
215
217
220
219
221
221
137
81
60
39
30
22
35
44
40
18
30
17
13
16
9
8
5
4
6
3
7
2
7
7
5
11
10
5
8
4
1
2
1
4
12
14
14
20
18
17
21
19
10
4
2
1
1
2
1
0
2
1
6
7
1
1
0
0
1
1
1
1
4
136
135
135
133
133
134
132
130
131
127
127
125
122
120
119
118
115
115
115
113
111
110
109
111
110
109
108
108
106
106
106
105
105
106
107
109
109
110
109
109
109
110
108
108
110
111
111
110
111
111
112
109
106
104
104
104
104
104
105
106
105
102
104
105
104
105
107
107
110
110
109
109
108
111
110
112
114
115
115
116
117
118
118
121
122
123
126
129
128
133
134
136
139
141
144
145
147
149
150
152
153
154
154
156
157
160
161
161
161
163
163
164
163
164
165
166
167
166
168
168
168
169
169
171
174
174
175
175
177
180
181
182
184
182
182
183
183
184
185
187
186
186
184
185
185
185
184
186
185
185
186
186
186
186
186
186
186
186
188
190
190
190
191
191
192
193
194
193
194
194
194
194
194
195
195
194
193
194
194
194
193
193
193
195
194
194
195
196
195
196
198
197
197
195
197
198
197
197
197
196
195
196
195
196
194
193
193
193
191
191
193
192
193
193
193
195
196
196
198
200
202
203
205
206
207
208
208
210
211
215
216
219
219
221
224
175
67
55
25
33
31
38
41
37
32
12
20
15
5
7
7
12
13
8
6
4
3
2
1
2
2
2
2
4
3
1
1
3
2
9
8
16
21
24
21
21
27
30
23
12
4
4
1
1
1
3
4
2
1
3
2
1
1
0
1
1
1
1
2
137
135
134
135
132
132
132
131
132
130
128
124
121
121
120
118
117
117
116
113
112
111
110
109
108
108
107
107
106
105
104
104
105
106
106
107
107
108
109
110
108
108
108
109
109
110
110
111
110
110
111
107
107
105
104
106
104
103
106
105
105
102
104
104
104
105
107
107
108
108
106
108
108
110
112
113
112
114
115
116
117
118
120
122
123
124
125
129
128
132
134
137
139
140
144
145
147
149
151
152
153
154
153
155
156
157
158
160
162
162
162
163
163
162
165
167
167
167
167
166
168
169
169
171
173
173
173
174
176
179
180
180
182
183
184
183
185
186
186
186
184
186
186
185
183
185
184
185
184
184
186
185
185
185
186
186
187
188
188
188
189
189
190
191
192
193
194
194
194
194
194
194
194
195
195
195
195
194
193
194
194
195
194
194
194
193
194
196
197
196
197
197
197
196
198
198
197
197
197
198
197
197
196
197
195
193
193
193
193
192
191
193
194
194
194
196
197
197
200
202
202
203
205
205
208
209
210
213
214
215
217
218
221
221
196
92
26
23
25
35
33
38
35
28
26
17
20
17
11
10
15
11
18
4
8
7
2
1
1
1
2
1
1
1
1
2
2
2
4
16
11
23
26
24
29
30
23
16
18
16
9
4
1
0
2
3
1
0
2
2
1
0
0
1
1
0
1
1
2
137
135
135
135
135
133
132
131
131
128
128
124
123
120
119
119
117
114
115
115
114
111
110
108
108
109
107
107
106
104
104
104
104
105
105
106
108
108
109
107
107
108
109
110
109
109
111
110
109
109
109
106
106
104
103
104
104
102
102
104
105
103
103
103
104
105
105
106
108
107
109
109
109
109
110
112
113
114
115
117
117
119
120
120
123
124
125
128
130
131
134
135
138
142
145
145
148
149
150
151
153
153
154
154
156
155
157
158
159
160
161
162
161
161
165
165
166
166
166
166
167
167
167
170
171
174
173
174
175
177
179
180
181
182
183
183
183
183
185
187
185
186
185
185
184
186
185
185
185
185
188
188
186
188
187
185
185
187
188
189
190
189
190
192
193
194
195
195
195
195
196
195
195
194
193
194
194
195
195
193
194
194
194
193
195
194
195
196
198
197
196
197
197
196
198
198
198
198
198
197
198
198
198
196
195
194
193
194
195
194
193
193
194
194
196
197
198
198
200
202
203
205
207
207
208
209
210
213
215
217
219
220
221
213
117
35
11
30
36
25
25
30
27
24
27
19
14
16
12
11
5
10
16
11
15
8
4
1
1
0
1
0
1
0
1
0
0
2
9
11
14
29
27
26
28
26
28
22
16
11
8
7
4
3
3
1
0
1
1
1
1
1
1
0
1
0
1
0
2
137
136
136
135
135
135
133
131
130
129
127
125
124
120
118
118
115
114
115
114
113
112
110
109
107
109
108
106
105
104
104
104
103
104
104
104
104
106
105
105
106
106
108
107
107
108
108
107
108
107
106
105
104
104
104
104
103
103
101
102
104
103
104
103
104
105
106
107
106
106
108
110
109
111
112
112
112
113
115
116
116
118
121
123
124
123
124
124
127
130
133
135
139
140
143
146
148
150
151
153
152
152
152
153
154
155
155
156
157
158
160
160
160
161
162
163
165
165
165
166
167
168
168
169
171
174
173
174
176
177
177
180
181
182
182
183
182
183
185
186
185
185
184
185
185
185
185
185
185
185
186
187
187
188
186
186
186
186
188
190
191
190
191
193
193
192
194
195
194
194
196
195
195
194
193
194
194
194
193
193
194
193
195
194
195
196
195
196
197
198
197
198
200
198
197
198
199
199
197
197
198
198
197
197
196
196
196
194
194
193
194
193
194
195
197
196
198
200
201
202
204
206
207
208
208
210
211
212
214
218
219
219
222
156
46
22
26
28
14
13
19
32
29
24
24
19
14
16
9
9
14
20
25
19
17
14
7
5
1
1
0
1
1
0
0
1
2
6
9
14
25
34
30
26
26
25
20
17
21
18
11
9
4
2
1
1
0
1
1
1
0
0
0
0
0
1
1
0
3
135
136
137
135
135
133
132
130
130
128
126
124
123
121
120
118
117
115
114
114
113
112
110
108
106
106
106
104
105
104
103
103
102
103
104
103
103
104
105
105
105
105
106
105
106
106
107
108
106
105
105
104
103
103
103
104
103
101
101
101
102
103
103
102
102
104
105
105
107
107
108
108
107
109
111
112
112
113
115
116
116
119
119
122
123
124
124
125
126
130
134
135
138
142
145
148
149
150
150
152
152
153
153
153
153
153
154
155
156
157
158
159
160
160
160
161
163
164
164
165
166
166
168
170
171
172
171
174
175
176
176
178
181
181
182
182
183
183
184
184
185
185
185
185
184
185
185
185
185
185
185
187
187
187
187
187
187
188
188
189
190
192
192
193
193
192
193
194
194
194
195
194
195
195
194
194
194
194
193
193
194
193
194
194
195
196
196
197
198
198
199
199
199
198
198
199
199
198
199
200
198
197
197
197
198
196
198
195
195
195
195
195
195
195
196
197
199
201
202
202
204
205
206
207
207
210
211
212
216
217
219
221
205
89
49
38
36
11
11
6
8
32
33
33
25
19
7
8
15
20
26
30
24
16
15
7
6
4
2
3
2
4
4
1
2
3
3
14
15
13
31
30
29
31
21
17
14
12
12
12
8
12
9
4
0
0
1
1
0
1
2
2
1
2
0
0
1
6
10
136
137
137
135
135
133
132
130
130
127
125
124
122
121
121
119
117
117
115
114
113
113
112
109
108
107
106
105
105
105
103
102
103
102
101
102
103
104
106
105
104
106
106
107
106
105
107
107
107
105
104
103
102
103
102
101
101
102
101
100
102
102
103
102
102
104
103
104
105
105
108
108
106
108
110
112
113
113
114
115
114
117
120
121
123
125
124
126
127
131
134
136
139
142
144
147
147
150
151
153
152
153
153
154
154
153
154
153
155
157
157
157
159
159
161
161
162
163
164
165
164
166
167
169
170
171
172
173
174
176
177
179
180
180
182
182
183
184
185
185
186
185
184
186
185
185
185
184
185
186
185
188
189
188
189
188
188
188
190
191
192
191
192
194
193
193
194
195
194
194
195
196
196
195
193
194
194
193
193
193
195
194
195
194
194
195
197
197
198
198
199
199
200
199
200
199
199
199
200
199
197
199
198
199
199
197
196
194
195
194
195
195
196
195
197
198
200
201
203
202
205
205
206
207
209
210
210
212
214
216
218
222
141
50
63
36
33
20
13
3
12
31
26
23
20
9
8
19
24
22
20
24
21
10
8
3
7
1
1
2
3
13
3
2
7
12
10
15
23
20
31
32
32
32
22
19
14
12
9
7
6
5
5
2
1
1
1
0
1
3
3
0
0
0
1
0
1
9
27
137
136
136
137
135
134
133
132
129
126
124
123
121
121
121
121
118
117
115
114
114
114
112
110
108
107
105
106
104
104
102
100
101
102
102
102
102
102
104
103
102
104
105
106
106
105
106
105
104
104
104
102
100
99
101
100
101
101
101
102
100
101
101
101
103
104
103
103
104
103
104
107
107
109
111
112
113
114
115
117
117
119
122
121
123
125
126
126
129
133
135
137
138
141
144
147
147
150
150
152
152
153
152
153
153
152
153
152
153
155
157
157
158
158
159
161
162
163
164
165
165
166
167
167
170
172
175
174
175
178
176
179
179
179
182
182
182
183
184
184
185
184
184
186
185
183
185
184
184
186
184
186
188
189
190
189
190
189
190
192
191
191
193
193
194
193
194
195
195
195
195
196
196
195
194
196
194
193
193
193
194
192
193
194
195
196
197
198
199
198
199
198
199
200
199
199
200
199
200
200
199
199
199
199
198
197
196
195
195
194
195
195
196
198
199
199
200
202
203
203
205
206
207
208
210
210
210
212
215
215
219
200
67
41
53
26
29
20
6
8
26
29
16
11
13
15
14
12
16
14
15
13
16
13
5
4
9
5
2
1
2
8
10
16
18
19
24
25
32
33
32
27
32
27
20
16
16
13
11
6
1
1
1
1
1
0
2
2
1
1
2
1
1
3
3
2
3
1
2
137
137
137
137
135
135
132
131
130
126
123
122
121
122
120
120
118
115
115
114
114
113
112
111
109
107
105
105
103
102
101
102
101
101
102
102
101
102
103
103
103
104
105
106
106
105
107
105
104
103
102
101
100
99
99
100
99
99
101
99
98
98
97
100
101
101
102
103
104
104
105
107
107
109
110
110
113
114
115
116
118
120
122
121
124
125
128
129
131
133
135
138
138
141
144
148
150
150
150
151
153
152
151
153
152
154
153
153
154
155
156
156
155
158
159
161
161
164
165
166
165
166
168
168
170
172
174
174
174
177
176
178
178
179
182
182
183
182
182
183
184
184
184
185
185
184
185
184
186
186
185
186
188
189
189
189
188
190
192
191
191
192
192
192
193
192
194
195
194
195
194
195
196
196
195
195
195
193
192
194
196
193
194
195
195
195
197
197
198
198
199
199
199
201
200
200
200
199
200
201
200
199
200
198
198
197
197
196
195
195
196
197
197
198
200
201
202
203
203
204
206
206
207
207
209
210
212
214
216
218
223
154
49
28
19
24
19
8
10
19
30
27
18
15
16
21
19
11
13
8
18
9
7
9
8
3
1
3
3
1
3
5
8
13
24
24
23
31
33
28
27
26
21
17
15
12
10
3
3
3
1
1
1
0
1
1
1
1
2
1
1
1
1
4
4
2
2
1
2
137
136
136
136
135
134
132
131
128
127
125
124
123
122
122
119
118
116
117
116
113
112
113
111
109
107
106
105
104
103
102
100
101
100
101
100
101
102
102
103
103
103
105
107
106
105
106
105
105
104
102
101
102
100
100
98
100
99
98
99
99
97
97
98
98
99
101
103
103
103
104
106
105
109
110
112
113
114
117
116
118
119
122
124
125
125
128
128
130
132
135
138
139
142
144
148
149
149
151
151
152
151
152
153
153
154
154
154
153
156
155
156
154
159
159
160
162
164
166
165
165
167
167
168
168
170
172
173
174
176
176
176
179
180
181
181
182
182
183
184
185
185
184
185
185
184
185
186
185
185
184
185
187
187
189
189
189
190
192
191
192
192
192
192
192
192
194
196
195
195
195
197
197
197
196
195
194
195
195
194
195
194
195
195
195
197
199
199
200
200
199
200
200
200
201
202
201
200
201
201
199
200
200
198
197
197
197
195
197
197
196
197
198
198
201
201
202
202
203
204
205
206
206
207
208
210
211
214
216
218
224
127
45
23
16
18
12
20
14
15
25
20
15
14
15
15
22
25
14
9
11
11
3
3
6
4
1
3
4
4
7
8
7
18
33
29
28
25
32
39
21
19
18
17
13
4
5
3
2
1
1
2
1
1
0
0
1
1
2
1
2
3
9
7
3
6
5
1
2
137
137
137
136
134
133
131
129
128
126
124
124
125
122
120
119
119
118
116
115
115
113
112
110
109
107
106
106
104
102
102
100
99
98
99
99
100
101
102
103
102
101
104
104
104
105
104
104
104
102
101
101
99
100
98
98
98
98
99
98
95
96
97
98
98
99
101
101
102
102
103
106
105
108
110
111
112
114
115
116
117
118
121
123
125
126
127
129
130
134
136
138
140
141
143
147
147
148
150
151
149
150
152
151
152
152
154
155
156
155
156
156
155
155
157
158
161
162
163
164
165
166
167
167
168
169
170
172
172
174
176
177
178
178
181
181
182
182
182
183
184
184
185
184
185
184
185
186
185
184
185
186
186
187
188
188
190
190
191
192
193
192
192
194
193
194
195
195
195
195
195
196
196
196
196
197
196
196
195
195
194
195
196
196
198
197
198
199
201
200
201
201
201
201
202
202
201
201
202
201
202
201
199
199
197
197
197
197
197
197
198
198
199
200
201
200
202
204
203
204
206
206
208
209
208
211
212
213
217
216
213
86
29
8
17
24
19
21
8
8
15
12
10
18
21
23
25
31
20
6
12
16
6
5
16
10
5
10
14
14
14
11
16
27
29
36
23
20
23
26
18
10
9
10
5
2
4
5
2
2
1
1
0
1
1
2
2
1
1
3
4
11
12
13
4
1
1
1
1
137
137
138
136
134
133
131
129
127
124
124
124
124
123
121
120
119
118
116
115
114
112
112
110
110
108
105
105
104
101
100
100
99
97
98
99
100
101
102
101
100
102
103
103
105
106
103
104
104
102
101
100
98
99
98
98
97
98
97
96
96
95
96
97
97
97
99
99
100
102
103
105
107
108
109
112
114
114
116
117
118
118
120
122
125
126
127
129
130
135
136
138
139
142
144
145
148
148
149
150
149
149
152
150
151
153
153
153
154
154
155
156
155
155
158
158
160
162
163
165
164
165
169
169
169
169
170
172
172
175
177
178
178
179
180
180
181
182
182
183
185
184
184
184
185
186
186
185
186
186
185
186
187
187
187
187
189
190
191
193
194
193
193
194
194
194
195
195
195
196
196
197
198
196
196
196
196
196
194
194
195
196
197
197
198
198
199
200
199
201
201
201
201
202
202
202
202
202
202
201
201
200
200
199
198
198
198
197
198
197
198
198
199
200
203
203
203
205
205
205
207
207
207
209
210
210
211
214
215
217
198
61
22
24
33
27
22
20
6
13
13
11
13
23
20
27
26
33
29
4
8
5
3
7
13
10
6
10
11
18
21
24
22
29
30
34
30
20
21
14
9
8
10
7
3
3
5
9
4
2
1
0
1
2
2
2
2
2
3
6
9
11
6
5
2
1
1
2
1
138
137
138
136
135
133
131
128
128
126
124
125
123
122
121
119
117
117
117
116
114
112
112
112
111
108
105
103
102
101
99
100
98
99
99
100
101
102
102
99
101
102
101
102
104
104
104
105
104
102
101
99
98
98
98
97
96
97
96
96
95
94
95
96
98
98
98
99
101
102
103
102
106
109
111
112
113
114
116
118
118
118
120
122
124
126
127
127
131
133
136
137
140
141
143
147
148
148
150
150
151
150
150
149
151
150
151
152
153
153
154
155
155
156
158
158
159
162
163
164
164
165
168
169
169
169
169
172
172
174
176
178
179
180
181
182
181
182
182
183
184
185
184
185
184
183
185
184
186
187
186
187
188
188
188
189
191
191
193
193
193
194
194
194
194
194
195
195
196
196
197
198
198
196
196
196
197
197
196
196
197
196
198
198
199
199
198
201
201
201
201
203
203
203
203
202
202
202
202
201
200
200
198
198
199
198
198
197
198
198
199
199
200
201
204
203
204
205
205
205
207
207
208
209
210
211
213
212
216
219
188
55
29
51
39
27
25
12
8
15
9
9
17
16
16
27
25
17
36
9
5
5
6
4
4
6
5
8
9
13
25
29
40
29
34
33
28
29
14
13
12
6
3
3
2
3
3
9
6
1
1
2
4
7
11
5
4
11
17
16
11
10
11
5
1
5
1
1
0
139
138
136
136
135
132
129
128
129
128
127
125
124
123
121
120
119
117
116
116
117
114
113
111
111
109
106
103
101
100
99
99
98
98
99
101
101
100
100
98
100
101
100
102
102
103
103
104
102
102
101
99
98
97
97
96
95
95
96
96
95
94
94
95
97
97
98
100
101
100
102
105
106
109
112
113
115
115
115
117
117
118
120
121
123
125
127
127
130
131
135
136
140
141
143
148
149
149
150
150
150
149
149
150
151
150
151
151
152
153
153
153
155
155
156
158
159
161
164
163
162
164
166
168
169
168
170
172
174
176
177
179
180
181
181
180
180
181
183
183
183
185
184
184
185
184
184
184
185
185
186
187
188
188
189
189
190
191
192
193
194
194
194
193
194
193
196
196
196
195
197
197
197
196
196
196
197
197
197
196
196
196
198
198
199
199
201
201
202
203
203
204
203
203
203
203
203
203
202
201
201
202
200
198
199
198
197
198
198
199
200
200
200
201
204
203
204
205
205
205
207
208
210
209
210
211
212
212
216
221
172
46
40
49
36
25
22
11
13
10
15
10
11
8
13
27
27
13
36
16
4
2
4
1
1
2
3
13
22
25
34
39
41
42
39
31
29
25
17
15
11
9
5
5
3
2
4
10
2
3
2
2
6
11
22
11
7
11
11
11
7
9
12
3
2
5
1
1
0
139
138
136
136
134
131
129
130
129
126
125
126
125
124
122
121
119
119
118
115
116
115
114
111
113
109
107
103
102
101
100
100
99
97
98
99
101
100
100
100
100
101
101
101
102
102
102
102
102
103
101
100
98
97
96
96
96
95
96
95
96
95
95
95
97
96
97
101
102
102
102
104
107
108
112
112
113
116
115
116
117
118
120
123
125
125
126
128
128
131
134
137
139
141
144
146
149
149
152
151
149
148
150
150
150
151
150
149
151
152
152
152
153
154
156
157
160
162
163
162
164
165
166
167
169
169
171
171
174
176
178
179
179
181
181
181
182
183
184
183
184
183
183
183
184
186
185
185
184
185
187
188
188
189
189
190
191
192
193
192
194
195
196
197
196
195
197
196
196
195
197
197
197
196
197
198
198
198
198
197
197
197
198
198
199
200
200
201
203
203
202
204
204
204
204
203
204
204
203
202
203
203
202
199
199
199
198
199
198
199
199
200
201
201
204
204
205
205
206
205
208
209
208
209
210
211
211
213
213
219
147
38
30
36
26
14
12
6
16
9
20
13
7
7
6
19
23
12
19
24
2
1
3
4
2
2
8
21
29
32
36
40
38
46
38
33
32
26
17
14
15
13
6
7
4
2
2
1
3
5
4
9
13
13
10
2
1
1
3
5
12
12
7
1
1
2
1
0
0
139
138
137
135
133
131
128
128
128
127
125
126
124
124
122
121
119
120
118
117
116
114
113
112
113
110
108
103
101
102
102
101
100
100
99
99
100
100
100
100
99
100
99
100
100
101
101
100
101
102
100
100
99
97
97
96
98
95
95
94
93
95
96
95
95
96
97
99
100
100
101
104
105
109
112
112
113
114
114
115
117
118
118
121
124
125
128
128
129
132
134
136
139
141
142
146
149
150
150
150
150
149
150
150
149
149
150
149
150
151
152
153
155
154
155
156
160
162
162
162
164
166
167
168
169
170
170
172
175
177
179
179
180
181
181
181
182
183
182
183
183
184
185
184
183
185
185
185
186
186
186
187
187
188
189
189
192
193
194
195
195
197
196
195
195
195
196
195
196
197
196
197
197
197
197
197
198
198
198
197
198
197
199
198
200
201
202
202
202
205
204
204
204
204
205
205
204
203
204
202
202
203
202
199
200
200
199
200
201
201
201
201
202
203
204
206
206
207
207
206
208
209
209
210
210
211
212
213
213
218
133
41
32
30
20
9
8
11
17
12
9
12
9
17
3
13
13
22
12
17
8
2
4
7
2
6
21
29
32
38
37
39
36
37
46
38
25
23
19
10
15
7
5
3
5
5
5
4
7
17
20
20
13
4
2
1
3
9
9
12
18
6
2
1
1
2
1
1
1
139
138
137
134
132
130
129
130
128
128
126
125
124
124
122
122
120
121
118
117
115
114
113
112
112
111
108
106
103
103
102
101
100
100
99
100
100
100
100
100
99
99
100
100
101
101
101
100
101
102
100
99
101
100
100
99
97
96
97
96
95
96
95
95
96
97
97
98
100
100
101
104
107
111
111
113
113
113
114
117
118
117
117
121
123
125
126
128
129
134
135
138
139
142
144
146
147
150
149
149
150
150
150
151
150
150
149
149
150
151
152
153
153
153
154
157
159
162
162
162
163
166
165
168
169
170
171
173
175
178
180
180
180
181
180
181
181
182
183
184
185
184
184
184
184
186
185
185
185
186
185
187
187
188
188
188
192
192
194
193
195
197
196
195
196
195
195
194
196
197
197
198
197
196
196
197
198
198
199
199
197
197
198
199
201
201
202
202
203
206
206
205
204
204
205
205
205
204
204
204
203
203
203
201
200
201
201
201
201
201
201
202
204
203
203
205
206
208
208
208
210
210
210
210
211
212
213
213
213
219
122
43
27
20
11
3
11
9
41
19
12
11
8
17
4
4
6
14
5
9
12
4
2
5
5
15
28
38
35
39
37
29
32
32
26
30
40
29
17
15
13
11
12
15
19
9
7
7
9
9
22
18
4
2
2
2
11
20
9
7
5
2
1
1
0
2
1
1
2
139
138
136
133
132
130
128
129
127
129
127
125
124
123
122
123
121
120
119
118
115
114
114
112
112
111
109
108
105
104
103
102
100
100
100
101
100
102
101
100
100
99
100
100
101
101
100
100
101
100
100
100
100
100
99
98
96
97
97
96
97
94
95
95
97
96
97
97
99
101
102
104
107
110
111
112
113
113
114
116
116
117
117
120
124
125
125
128
129
132
135
138
141
143
143
147
148
150
149
150
150
150
150
150
151
150
149
150
150
151
151
152
153
154
155
157
159
159
161
162
164
166
166
167
169
170
173
173
176
177
179
180
180
181
182
183
181
181
181
183
184
184
184
184
186
185
185
184
185
186
187
187
188
189
189
190
192
192
193
195
195
196
197
197
197
197
195
195
197
197
197
197
197
197
197
199
198
199
199
199
198
198
198
199
202
203
204
202
203
205
205
205
205
204
205
205
205
204
204
205
203
203
203
202
201
202
202
202
202
203
203
204
203
202
205
207
208
208
209
209
210
211
210
211
212
213
214
215
212
218
130
52
23
13
9
5
10
10
30
29
21
6
10
20
10
5
5
5
11
4
4
6
5
6
6
18
19
23
29
28
27
34
22
21
20
20
11
22
28
19
17
15
19
15
31
17
13
10
10
4
4
4
3
13
5
5
10
9
10
8
3
3
2
1
1
2
1
2
6
139
138
136
135
131
129
129
129
129
127
125
127
124
123
122
122
122
121
118
119
116
117
115
113
113
112
111
112
108
107
106
104
103
103
102
101
101
103
102
102
101
101
101
101
101
101
101
101
101
101
100
98
99
100
99
98
98
97
97
97
98
97
97
97
97
97
98
99
100
101
102
106
108
110
111
112
112
113
114
116
116
118
118
119
122
124
126
126
131
132
134
136
139
141
142
145
146
149
150
151
150
150
151
150
149
149
149
148
149
150
152
152
154
154
155
156
157
158
160
162
164
166
167
169
170
172
173
175
177
179
180
180
181
181
181
181
181
181
182
182
181
183
184
184
184
184
186
185
186
187
188
189
188
189
190
191
192
193
194
194
195
196
196
197
197
197
196
197
197
198
198
197
196
196
196
197
197
199
200
198
199
199
201
201
202
203
204
203
204
206
204
205
206
205
206
206
206
205
205
205
205
205
203
204
203
202
201
200
202
202
202
203
204
206
207
207
207
208
209
210
211
211
211
211
212
212
213
215
215
220
130
45
18
5
7
10
8
24
30
35
18
9
5
10
18
6
1
10
11
12
4
3
3
4
11
20
30
13
20
23
23
26
34
22
22
25
18
8
5
14
36
53
44
37
29
33
26
14
7
4
6
6
8
11
11
7
8
7
11
7
10
18
12
6
6
6
15
20
29
137
138
135
134
132
131
130
129
129
127
126
127
125
125
122
122
120
120
117
118
119
118
116
115
115
114
115
113
110
108
106
105
105
104
104
103
103
103
103
103
103
103
101
101
101
100
103
102
101
102
100
99
98
100
99
97
98
96
96
97
96
97
97
98
97
97
98
99
101
102
103
105
110
111
111
113
113
114
113
116
115
116
118
119
122
123
126
126
130
131
134
137
138
140
142
144
146
147
151
150
149
150
148
149
149
149
148
147
149
151
153
153
153
153
156
155
155
157
160
162
165
166
167
168
169
170
173
172
177
178
179
180
180
181
182
179
180
180
182
181
181
183
182
183
184
183
184
183
184
185
186
187
188
190
190
191
191
192
192
193
194
195
196
198
199
199
198
199
198
198
197
195
197
197
198
197
199
199
200
200
199
199
201
202
202
202
202
204
205
207
206
206
206
207
206
206
207
207
205
205
205
203
203
204
202
201
202
203
205
205
205
206
207
209
209
209
209
211
214
213
212
214
214
216
215
215
213
211
208
206
125
36
18
11
6
16
23
27
31
32
26
5
2
3
9
11
4
10
4
8
3
3
9
6
7
4
3
8
19
21
11
12
16
18
19
21
18
20
13
8
30
76
76
53
53
52
43
37
29
22
16
14
6
6
10
9
12
19
12
14
16
14
18
36
33
47
57
59
61
140
138
136
133
132
130
129
128
128
127
127
126
124
124
123
123
121
120
119
119
118
117
118
117
117
116
115
113
113
112
110
108
105
105
105
105
105
104
103
104
103
103
103
102
102
102
103
103
102
102
100
100
99
100
99
99
97
98
98
98
97
98
96
97
98
97
99
101
102
102
104
107
109
112
112
113
112
113
115
116
117
117
118
120
121
124
126
126
129
131
132
135
138
140
142
142
147
147
149
150
149
150
150
150
150
149
149
149
150
149
151
153
153
155
155
155
157
156
159
163
164
166
168
168
169
173
174
174
176
177
177
178
180
181
181
181
182
183
183
182
181
182
183
184
183
183
184
184
185
186
186
186
188
189
190
192
192
192
193
195
194
196
198
198
198
199
200
198
197
198
198
197
197
196
197
198
200
198
198
200
201
200
201
203
201
204
205
207
206
205
207
207
206
207
206
206
205
206
205
205
207
207
207
207
207
207
204
196
182
158
146
148
160
179
175
168
160
156
155
152
144
140
138
135
126
120
114
104
101
94
89
44
32
14
12
20
23
23
29
31
18
6
2
2
3
5
8
3
4
8
5
2
8
11
5
4
3
5
6
13
18
13
8
12
5
11
16
12
15
14
26
40
52
70
83
49
45
40
28
24
24
22
24
19
20
30
21
19
25
30
31
44
56
72
71
69
68
67
65
140
140
136
133
132
132
130
129
127
127
126
125
125
122
122
122
122
121
121
122
121
120
120
119
119
117
116
115
114
112
111
110
110
108
106
105
105
103
104
104
106
104
103
103
102
102
104
103
103
102
102
100
100
101
102
101
100
99
99
98
98
100
100
99
101
100
101
102
103
104
106
109
109
110
112
113
114
115
115
116
116
115
117
120
119
123
125
126
129
131
131
136
137
138
142
144
146
147
148
149
148
148
148
147
147
145
147
149
149
150
151
153
152
152
153
155
157
156
159
161
162
166
167
169
169
172
174
175
176
176
177
179
180
182
181
183
182
182
183
183
183
184
184
184
183
183
184
184
185
185
185
187
189
189
191
192
192
191
193
194
194
197
197
198
200
198
199
200
198
197
197
199
199
198
198
199
200
201
201
201
199
203
205
202
203
203
206
206
209
208
209
209
210
209
208
207
205
206
206
202
194
182
162
152
134
112
84
61
46
24
17
34
33
33
34
28
19
24
34
33
38
39
39
43
39
30
27
14
12
12
60
56
43
16
19
14
13
20
29
21
14
6
4
3
2
5
9
11
4
8
8
6
11
9
4
2
3
2
2
7
22
14
10
10
16
11
8
6
12
14
15
21
18
24
26
38
47
37
29
26
29
25
27
22
18
27
29
34
56
57
68
76
80
73
72
64
63
63
63
141
139
135
132
132
132
130
128
128
126
126
126
124
124
122
123
123
122
122
123
122
122
120
119
119
118
117
117
115
115
114
113
111
110
109
108
107
106
105
105
106
104
103
102
103
103
103
102
103
103
102
101
101
102
102
101
101
100
99
98
100
101
101
101
101
102
102
103
104
105
108
110
110
112
112
115
115
114
114
116
115
116
116
118
120
122
123
126
128
130
130
135
137
138
140
142
145
146
147
148
147
147
148
149
148
147
149
149
148
150
150
153
152
152
154
155
158
158
160
161
162
166
168
169
170
172
174
175
176
177
179
180
180
180
181
183
182
183
184
183
183
185
184
185
183
183
183
184
185
186
186
187
189
189
190
192
192
193
193
195
194
198
198
199
200
199
199
199
199
199
197
198
198
198
198
199
198
199
201
202
201
207
208
206
197
191
182
176
167
155
143
130
118
106
100
93
93
97
92
79
64
46
25
23
16
10
5
5
8
5
3
6
3
4
6
6
5
4
10
13
14
12
9
11
8
3
3
3
3
3
55
60
39
10
15
10
11
18
19
12
4
4
3
4
2
4
13
22
5
8
7
7
9
6
1
1
2
1
1
4
12
21
22
23
25
20
18
19
13
14
12
9
7
9
9
12
13
32
32
33
30
25
20
35
49
48
58
71
76
74
76
75
79
75
70
63
62
61
61
141
139
135
133
131
131
129
129
128
128
127
126
123
123
123
123
123
123
124
124
125
124
123
121
119
120
119
119
118
117
117
116
113
111
111
110
108
108
107
108
107
106
106
103
102
102
104
104
103
102
102
102
102
103
103
102
102
102
102
100
100
102
102
102
104
103
104
104
104
106
107
109
112
112
114
114
115
115
116
117
115
115
116
118
119
121
123
125
127
132
132
132
135
136
138
141
145
145
146
148
148
146
148
148
147
147
147
147
147
150
150
151
151
153
154
154
157
158
160
161
162
166
167
168
170
172
173
173
175
176
178
179
180
180
182
182
182
183
183
184
184
183
185
185
184
184
185
185
184
187
187
186
188
189
192
192
192
193
194
195
197
197
198
198
199
200
199
199
199
199
200
198
201
202
202
201
200
195
188
177
161
139
121
100
77
66
56
48
35
18
10
5
3
1
2
2
1
1
1
1
2
1
1
0
2
2
1
1
1
1
1
1
1
0
1
1
1
1
1
3
2
2
2
2
2
1
2
1
2
1
41
58
24
17
8
9
16
15
11
13
4
5
8
6
3
4
7
8
9
7
10
14
9
3
3
2
1
1
1
3
6
20
28
22
19
25
15
18
15
9
5
4
4
10
8
7
18
36
52
61
63
61
56
57
74
78
77
82
80
77
71
77
82
77
70
62
59
55
53
140
139
137
133
132
131
130
131
130
129
128
127
127
125
125
125
126
125
126
125
125
125
125
123
122
122
122
120
121
119
118
116
113
113
112
112
110
110
109
106
107
107
107
104
104
104
102
105
103
102
103
101
102
104
104
104
104
103
103
102
102
104
103
104
105
106
105
105
107
108
110
111
113
115
114
114
116
115
114
116
117
118
119
119
119
121
125
127
127
129
132
132
133
136
138
140
143
144
143
145
145
145
146
147
148
147
148
147
148
151
151
152
153
155
155
157
158
159
160
162
163
164
165
168
169
171
173
175
175
175
177
179
181
180
180
182
183
183
182
184
184
184
185
186
185
186
186
186
185
186
187
187
189
191
193
193
192
192
195
195
198
199
200
200
201
206
207
205
202
202
191
174
164
155
149
134
109
84
59
42
35
28
34
34
33
22
12
8
4
1
2
1
0
1
2
2
1
0
0
1
2
2
2
1
1
2
0
1
1
0
1
1
2
1
0
1
1
1
2
2
5
12
20
14
4
1
2
1
2
2
22
47
30
26
4
13
16
13
14
2
4
2
5
9
2
3
3
2
4
4
8
8
13
8
4
4
2
1
1
2
5
15
14
17
16
11
8
29
22
13
4
2
1
2
5
14
26
48
49
59
72
74
79
71
58
67
83
83
81
84
76
79
74
70
66
61
57
53
47
139
138
136
134
133
132
131
131
131
129
128
128
128
126
127
126
127
127
128
127
126
128
127
126
126
125
126
124
123
122
122
118
116
115
113
113
111
109
109
109
107
107
105
105
104
104
105
104
104
103
103
103
104
106
106
107
106
106
105
104
103
105
105
105
107
107
107
109
110
111
111
112
114
117
117
117
118
117
117
117
119
119
119
120
120
123
124
127
127
129
131
132
134
135
137
139
142
142
144
144
145
146
146
147
148
148
148
147
148
149
150
152
153
153
155
156
157
158
160
160
161
164
166
167
168
170
171
173
174
176
178
177
180
181
181
184
183
183
184
184
184
183
185
186
185
187
186
186
187
188
190
190
189
190
189
195
198
193
192
193
194
199
195
187
171
157
140
120
95
75
58
50
45
43
34
22
17
27
31
27
22
13
7
5
2
1
0
0
1
1
0
0
2
3
2
3
0
1
0
1
1
1
0
1
1
1
1
1
1
1
1
2
1
1
2
1
2
1
1
1
2
8
19
16
8
2
2
2
3
4
11
46
22
25
2
12
16
7
5
1
5
5
5
8
3
3
4
3
3
3
5
5
4
5
4
2
1
1
1
2
3
17
16
16
34
25
20
19
10
13
6
4
2
1
2
9
16
43
70
60
62
70
75
83
80
70
67
71
72
77
72
74
69
63
58
52
50
46
44
140
139
137
134
134
133
133
132
132
130
128
129
128
129
129
129
130
129
130
129
130
131
130
130
128
129
128
126
127
125
125
121
119
116
113
113
112
110
108
108
107
107
105
104
105
104
105
105
106
106
105
105
107
107
107
108
107
107
107
106
107
106
106
106
107
107
109
109
112
112
113
113
117
117
118
118
118
117
118
118
117
120
121
121
121
124
123
127
128
129
130
133
134
134
135
137
140
143
142
143
145
146
145
146
148
147
148
147
148
151
150
153
154
154
155
156
158
159
159
162
164
166
169
170
171
171
174
175
178
178
177
179
180
182
181
185
184
184
184
183
185
185
185
185
185
187
186
189
187
181
175
169
175
185
184
166
133
120
120
118
112
117
96
64
45
31
21
10
3
2
4
7
9
8
3
0
1
4
6
8
7
2
2
1
1
1
1
1
1
1
0
0
1
1
1
1
0
0
0
0
0
0
1
2
1
1
0
1
1
1
1
1
0
0
0
0
0
0
0
1
0
1
2
1
2
6
5
1
5
6
9
50
36
23
6
10
14
11
4
1
8
7
15
23
9
2
4
4
11
7
5
5
4
7
5
2
2
2
2
2
5
26
33
16
21
26
24
21
15
11
6
3
2
3
5
11
21
27
67
73
71
60
60
71
76
80
80
77
63
57
65
64
56
50
51
47
46
39
39
142
139
138
137
136
134
134
133
132
131
130
130
130
131
130
131
132
132
131
132
132
133
133
132
132
132
130
130
129
127
125
123
121
117
114
114
112
110
110
109
107
107
106
105
106
106
107
108
108
108
108
108
109
108
108
108
108
107
108
108
109
108
108
108
109
109
110
110
112
112
114
116
117
117
118
120
118
120
120
119
120
118
121
121
122
122
123
124
126
129
131
130
133
135
135
136
139
142
145
144
143
144
144
145
147
146
149
148
148
151
150
151
153
155
155
156
157
159
159
161
165
168
170
170
171
174
175
176
175
177
178
178
179
178
181
181
184
185
185
184
183
185
186
187
184
166
152
137
123
126
129
137
129
95
55
26
24
26
26
25
22
30
24
9
4
4
2
2
2
2
1
1
1
1
1
0
0
2
1
0
1
7
5
2
1
0
1
1
0
0
0
0
0
1
1
0
1
1
0
0
1
0
1
1
1
1
0
1
1
1
1
0
0
1
1
1
1
0
0
0
0
1
1
1
1
3
5
3
1
2
5
39
45
17
3
10
12
13
13
4
2
5
11
26
10
2
3
3
7
6
5
7
9
3
2
1
1
2
1
2
12
16
34
34
9
11
22
19
10
10
10
4
4
4
7
9
16
16
37
58
68
72
61
58
63
69
78
74
70
66
65
57
52
43
45
44
39
40
36
142
141
138
137
135
134
135
134
133
133
130
130
131
133
131
133
134
133
134
134
135
134
135
134
135
135
135
132
131
128
125
122
121
116
117
115
113
111
110
111
108
107
105
105
106
107
108
109
109
108
108
108
109
109
109
108
108
107
107
109
110
110
109
109
110
111
112
111
113
114
116
118
119
120
119
121
119
120
120
120
119
120
121
121
121
121
124
125
127
127
129
132
132
134
135
136
141
141
143
144
143
143
144
146
146
148
149
148
150
150
151
151
154
154
154
156
157
158
160
163
165
168
171
172
171
173
175
177
177
176
178
178
182
182
181
184
176
168
166
178
186
185
166
145
120
94
87
84
95
77
52
40
15
2
2
3
2
2
1
1
1
2
2
1
3
2
1
1
1
2
1
1
0
1
1
1
0
1
1
0
0
1
0
0
2
1
1
0
0
1
0
1
0
0
1
1
1
0
0
0
0
1
1
0
0
1
1
1
1
1
1
1
1
0
1
1
0
0
0
0
1
0
1
1
2
4
8
8
1
3
5
19
40
19
2
5
23
20
17
4
1
3
5
11
5
2
2
2
5
6
4
4
4
3
2
0
2
1
2
7
11
21
25
45
30
14
9
10
9
5
5
4
5
6
15
17
13
16
20
32
43
59
69
63
59
61
58
60
63
62
60
57
54
50
46
44
41
38
35
141
140
138
137
135
133
135
134
134
133
131
132
133
134
134
135
135
134
134
135
136
136
136
136
136
136
136
132
132
128
125
121
121
120
117
114
113
111
111
112
110
108
107
106
108
108
109
109
110
109
108
108
109
110
111
110
110
111
109
111
111
110
113
112
111
111
112
113
114
115
116
118
120
122
121
121
121
122
121
121
121
121
121
122
121
122
123
124
126
129
129
131
133
135
137
138
139
139
141
144
144
146
144
146
145
148
148
148
148
150
152
151
154
153
154
155
158
159
163
163
166
169
170
173
172
174
177
177
176
178
182
175
150
133
135
124
108
113
118
125
124
114
99
86
80
72
45
26
26
11
3
3
3
2
2
3
1
2
1
0
1
1
1
1
1
1
2
2
1
1
1
1
0
1
1
0
0
0
1
1
1
2
1
0
1
1
2
1
0
0
1
0
0
1
0
0
1
1
0
1
1
2
1
0
1
1
1
2
2
1
1
1
1
2
2
2
1
0
0
0
1
1
1
0
2
2
3
3
1
2
1
7
29
12
6
2
21
36
19
5
3
2
2
7
5
5
4
4
4
4
4
4
5
3
3
2
2
5
3
9
18
25
28
39
36
26
10
6
7
6
5
3
3
4
19
17
17
23
24
20
20
30
43
59
58
61
60
62
71
59
51
58
59
59
60
51
40
39
26
143
141
139
139
136
135
136
135
135
135
135
134
135
135
136
136
136
136
137
136
136
137
136
138
137
137
136
134
132
129
128
125
124
121
118
116
115
112
112
113
111
111
109
109
109
110
109
109
109
110
111
111
111
111
113
113
112
109
111
111
111
111
113
114
113
113
113
113
116
117
118
119
121
123
125
123
124
124
124
123
124
123
122
123
122
123
123
126
126
128
129
130
133
135
136
138
139
140
141
142
144
145
146
146
148
147
148
149
149
151
152
152
153
153
155
156
159
161
163
165
165
168
169
173
176
175
175
178
181
162
116
74
42
49
53
41
60
61
51
38
32
50
45
23
20
12
2
1
0
1
2
2
1
1
1
1
1
1
0
0
1
1
1
1
1
0
2
1
3
1
0
1
1
2
1
1
1
0
1
1
1
1
1
2
1
0
1
1
0
1
1
1
1
1
0
0
1
1
1
1
2
1
0
0
3
3
1
0
1
0
1
1
1
2
1
2
1
1
2
1
1
1
1
1
1
1
1
2
3
2
1
2
20
13
10
8
9
28
20
4
4
2
3
3
4
6
6
3
4
3
2
2
4
8
3
3
3
2
3
4
15
24
41
37
21
31
33
13
7
8
5
5
5
10
25
43
43
43
49
48
44
49
56
56
88
97
92
85
90
84
106
90
95
89
91
84
67
63
33
143
141
140
138
136
136
137
135
135
134
134
136
136
136
138
137
138
137
138
137
138
137
138
138
137
137
136
133
131
130
130
127
125
124
120
117
116
115
115
113
114
112
111
110
111
111
110
110
111
111
113
111
112
112
111
112
112
111
111
111
110
111
113
114
112
113
114
114
115
116
118
119
122
124
124
123
124
124
124
123
125
123
122
124
122
123
123
125
125
128
130
130
132
135
136
137
139
141
141
143
144
145
146
145
146
146
148
149
148
151
152
150
152
153
155
156
159
162
162
165
166
167
169
173
174
179
174
138
100
61
16
7
5
7
6
4
9
6
4
4
3
5
4
1
0
1
1
1
1
1
0
2
1
1
1
1
1
0
0
1
1
1
1
1
0
0
1
0
0
1
0
1
1
1
1
1
1
0
1
1
1
1
2
1
2
1
0
0
0
2
1
0
0
1
1
0
0
0
0
1
0
1
1
0
2
1
1
1
1
1
1
1
1
1
1
1
1
1
3
0
1
2
2
2
1
2
1
0
1
2
2
4
14
20
14
19
17
6
16
3
2
3
4
4
6
3
3
2
2
2
1
1
2
3
3
5
13
4
5
7
6
14
18
30
29
25
21
24
20
19
19
18
15
41
46
46
49
51
50
57
56
54
59
55
79
106
125
113
105
105
145
142
91
88
92
86
80
80
73
142
141
141
139
138
137
136
134
134
137
138
138
138
138
139
139
139
138
139
139
137
139
140
137
138
137
135
135
134
132
132
130
126
127
123
122
119
118
118
116
115
114
115
113
111
111
110
111
113
112
114
113
113
113
113
113
113
113
113
113
113
113
114
112
114
115
114
114
116
117
119
122
125
126
125
124
124
124
125
125
124
125
125
125
124
125
124
124
126
128
130
130
132
134
136
139
138
139
143
143
142
144
146
147
146
146
147
148
148
149
150
153
153
153
155
158
160
163
162
163
168
170
172
168
155
127
84
34
9
4
1
1
1
1
2
2
2
2
1
1
0
1
1
1
2
1
0
0
1
1
0
1
1
0
1
0
1
1
1
0
0
1
1
0
0
1
0
0
1
1
1
1
2
0
1
1
2
1
1
2
1
1
2
1
1
0
0
1
1
0
0
0
1
1
1
1
1
1
0
0
1
0
1
1
0
0
1
0
0
2
1
1
1
1
2
1
1
1
2
1
3
2
1
2
2
1
1
0
1
1
1
2
6
23
24
25
17
8
3
4
2
4
5
7
8
4
4
3
2
2
2
3
3
2
3
3
15
23
17
15
17
16
11
11
6
4
3
4
9
11
15
17
24
54
69
44
53
57
57
59
61
59
59
58
68
101
111
105
66
110
126
171
133
92
82
81
87
81
79
141
140
139
140
137
137
136
135
137
136
137
140
139
139
140
141
140
140
140
140
139
140
140
138
138
138
136
136
137
134
133
132
129
127
126
126
123
119
120
118
116
117
116
114
114
113
113
114
112
115
115
113
113
114
114
113
113
115
115
114
114
115
114
112
114
115
114
115
117
117
119
123
125
125
125
125
127
126
125
125
124
125
126
125
126
126
127
127
127
128
129
131
134
134
134
135
137
138
141
143
142
143
144
144
146
145
147
147
148
149
150
151
152
153
155
157
160
162
165
166
170
163
145
99
57
26
11
3
2
2
2
0
1
1
1
0
1
0
1
1
1
1
0
1
1
1
0
0
0
0
0
0
1
0
0
1
2
1
0
0
1
0
1
1
1
1
0
0
1
1
1
1
2
1
1
1
1
1
1
2
2
1
1
1
3
0
0
0
1
0
0
0
1
1
1
1
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
1
0
1
2
1
1
1
1
1
0
1
2
1
1
1
1
0
2
1
1
3
4
19
25
20
9
8
3
2
2
6
5
3
4
3
2
1
1
1
3
1
3
3
4
9
24
33
27
33
19
20
14
10
14
4
4
12
15
5
4
7
16
12
21
48
53
58
58
61
63
61
61
62
64
86
80
111
70
91
103
141
137
143
109
82
90
89
86
143
141
139
139
140
139
139
138
139
138
138
141
141
141
143
142
141
142
140
141
141
139
139
140
139
138
138
137
137
134
136
135
132
131
131
130
127
123
124
122
120
118
117
116
114
114
114
113
115
115
116
114
115
114
114
115
113
116
116
115
116
115
114
114
115
114
113
115
119
121
121
124
126
124
124
126
128
127
127
128
126
125
126
127
128
126
126
128
128
129
130
131
133
135
138
136
137
139
142
142
143
143
145
146
147
146
147
147
148
147
150
149
151
154
155
157
159
162
164
156
119
61
29
12
4
2
1
0
1
1
1
1
1
0
1
0
1
0
0
0
0
0
1
0
1
1
1
1
1
0
1
0
1
0
0
0
1
0
1
0
1
0
0
1
0
0
0
0
0
0
0
1
0
0
2
1
2
2
2
4
2
1
1
1
2
1
0
1
0
0
0
1
2
0
1
0
0
1
1
0
0
1
1
1
0
0
1
0
1
1
0
1
1
1
1
1
2
1
1
2
1
1
2
0
1
1
1
0
0
1
1
2
3
14
32
15
5
8
4
5
6
14
22
15
7
3
2
2
1
2
1
2
3
6
8
25
38
46
41
39
26
19
18
12
5
14
14
15
21
13
3
9
7
13
16
36
50
55
56
57
58
59
62
60
57
60
55
96
79
95
61
114
113
134
145
107
98
91
90
143
143
142
140
139
140
142
140
141
142
142
143
144
144
143
143
140
142
143
141
142
142
142
140
140
141
141
142
138
138
138
136
135
135
137
133
130
128
125
124
123
122
119
118
116
116
116
115
116
117
118
118
117
117
116
117
116
115
117
116
116
117
115
114
115
114
115
117
120
121
123
126
126
125
127
128
128
128
129
129
129
128
128
129
128
127
128
131
131
130
131
130
133
136
136
137
137
137
140
142
143
145
145
146
145
146
147
147
148
148
150
149
150
153
154
156
154
154
116
50
14
1
2
1
2
2
2
0
0
1
0
1
0
1
0
0
1
0
1
0
1
0
1
0
1
0
0
1
1
0
1
0
1
1
0
1
1
0
0
0
1
1
0
0
0
0
1
0
0
1
1
1
1
1
1
2
1
0
2
1
1
1
1
2
2
0
0
0
0
1
1
0
1
0
0
0
1
0
0
0
0
0
0
0
1
1
1
0
0
0
2
2
2
1
1
1
1
1
1
1
1
0
0
1
2
1
1
1
1
2
0
1
3
3
29
15
8
6
5
15
19
26
32
19
18
11
2
4
1
1
2
3
5
7
24
48
49
47
42
39
35
30
21
19
12
10
13
12
8
3
2
2
2
5
13
25
43
48
52
55
55
57
59
56
53
52
55
69
77
66
36
83
112
108
130
113
121
100
105
142
142
142
142
140
141
143
143
142
142
142
143
143
144
144
145
143
144
144
142
143
142
142
140
141
142
141
142
139
139
140
139
138
138
139
136
134
132
129
126
125
125
122
121
120
120
118
119
119
120
118
119
119
120
117
118
116
118
119
119
118
118
115
115
115
116
116
118
120
121
123
126
126
128
127
128
128
127
129
128
129
129
129
129
130
129
129
131
131
131
131
131
133
135
136
136
138
137
139
140
143
143
144
146
146
147
148
149
146
147
151
145
133
132
129
125
93
58
21
5
3
2
2
0
0
1
2
0
1
0
1
0
1
0
0
1
0
1
1
1
1
1
2
1
1
1
1
1
1
1
2
1
1
0
1
1
1
0
1
1
2
1
1
0
2
1
1
1
2
1
2
0
1
1
1
0
1
1
1
2
1
2
1
0
0
1
0
0
0
0
0
0
0
0
0
0
1
1
0
1
1
1
2
2
2
2
1
0
1
1
0
1
1
1
1
1
1
2
0
1
2
1
0
0
0
1
1
1
1
1
2
1
1
3
19
18
18
14
10
25
30
21
29
24
17
17
15
6
5
2
5
5
20
35
46
57
51
46
39
37
33
29
19
18
18
11
10
8
7
7
2
1
1
2
2
32
65
49
47
53
56
55
57
52
53
53
62
68
58
45
31
45
97
96
127
112
106
95
52
143
142
142
143
142
143
145
143
145
143
145
144
144
144
146
145
145
144
146
146
145
144
144
143
142
143
143
141
141
140
140
140
141
139
139
138
137
134
131
130
128
127
125
124
124
123
122
121
121
122
120
120
121
121
120
121
121
119
119
121
120
118
117
117
116
117
118
118
120
122
124
127
127
127
126
127
130
130
130
130
129
130
131
130
131
130
131
132
131
131
131
132
133
136
136
136
137
138
140
141
142
142
144
143
147
148
148
146
145
140
118
102
95
83
68
44
14
3
1
1
0
1
2
1
0
0
0
1
2
1
1
0
1
0
1
1
1
0
0
0
1
1
1
1
1
0
0
0
2
1
1
1
0
1
2
0
1
1
0
1
1
1
1
0
0
0
1
1
1
1
0
1
1
1
1
0
0
0
1
1
1
1
1
1
1
2
1
1
1
1
0
0
1
1
1
1
1
1
0
0
1
1
1
1
1
1
0
0
0
2
1
1
1
0
0
0
2
2
1
1
1
1
1
1
1
1
1
1
2
1
2
2
2
3
7
17
20
18
20
28
35
19
18
27
14
14
21
7
13
8
6
17
29
49
52
51
45
41
41
35
31
30
19
23
7
9
6
7
9
5
1
2
2
2
1
5
29
59
61
46
53
56
56
54
55
57
62
59
47
36
29
36
64
72
104
138
94
113
38
144
144
143
144
144
146
146
148
147
147
147
147
147
147
147
148
146
146
146
146
145
145
145
145
144
144
146
144
142
141
142
141
142
141
139
139
138
137
135
132
131
130
127
126
125
123
124
123
121
121
122
120
121
120
121
121
121
120
121
120
122
120
119
118
117
117
115
117
120
123
125
126
128
128
128
128
130
131
131
131
132
131
131
132
133
132
131
133
133
132
132
133
133
134
136
136
139
139
141
142
140
141
142
144
148
147
147
147
122
79
61
57
34
16
9
3
1
2
1
2
1
1
0
1
0
0
1
0
0
0
1
0
1
1
0
0
0
1
2
3
3
2
1
1
1
2
1
1
1
1
1
2
2
1
0
1
0
0
1
1
0
1
1
0
1
2
1
1
0
2
1
1
1
2
1
0
1
0
1
0
1
2
2
1
0
1
2
1
0
1
0
0
0
1
0
1
1
0
0
1
1
0
1
2
0
1
0
1
0
1
2
1
1
1
1
1
1
2
2
1
1
1
0
1
3
2
2
1
1
0
2
2
2
1
4
16
22
16
32
27
36
29
18
29
24
7
4
6
10
17
12
19
33
47
48
46
45
45
41
38
32
27
26
15
14
14
11
11
7
3
2
5
4
3
2
9
27
36
45
65
55
50
53
55
55
58
65
54
43
30
32
36
39
40
81
132
95
104
69
147
145
146
147
147
149
149
151
150
150
149
148
148
147
149
149
148
147
147
147
147
146
147
146
147
145
146
145
147
146
147
146
145
144
142
142
141
139
137
136
133
132
130
127
127
126
126
125
123
121
123
122
124
121
121
121
121
122
121
121
122
122
120
119
118
118
117
118
121
122
125
125
126
129
129
127
130
131
133
132
134
133
134
135
134
134
133
134
132
132
133
134
134
135
135
135
138
139
140
140
142
142
143
144
144
145
130
88
38
11
9
4
3
3
1
2
2
1
1
1
1
1
0
0
0
1
1
0
1
0
0
1
1
0
0
0
0
1
1
3
1
2
1
1
0
3
1
2
1
1
0
2
1
0
1
1
0
1
0
0
0
0
0
1
1
0
1
1
1
2
1
1
0
0
1
0
1
0
1
1
1
1
1
2
2
1
1
1
1
0
0
0
0
0
1
2
1
0
1
0
1
1
1
1
1
2
0
0
0
0
1
1
0
0
0
1
1
1
2
1
1
0
1
1
1
1
2
1
2
2
1
2
1
2
3
8
12
12
21
32
22
17
14
12
10
5
3
4
9
24
25
27
35
38
42
43
41
41
41
37
34
28
30
17
16
15
6
8
4
4
2
1
2
0
2
5
21
45
50
47
56
61
50
49
53
63
59
51
44
32
33
36
37
38
49
107
95
89
90
148
147
147
149
149
150
152
151
152
151
150
150
151
150
148
149
149
148
149
147
147
147
147
148
148
148
150
149
149
149
149
149
147
147
147
145
143
142
140
137
134
133
131
128
127
126
126
125
123
122
124
123
124
123
123
123
123
123
122
122
123
123
120
119
118
118
118
118
120
121
124
127
128
128
128
128
129
132
133
134
134
134
134
134
135
134
133
134
133
133
133
134
134
135
136
136
138
138
139
142
143
143
144
143
143
119
67
24
5
2
2
2
2
1
2
1
2
2
1
0
0
1
1
0
0
0
0
1
1
0
0
1
1
0
1
1
1
1
5
1
1
2
2
1
2
1
0
1
1
2
0
1
1
1
1
0
1
1
0
1
2
0
0
0
1
0
1
1
0
1
0
1
1
0
1
0
0
0
0
1
3
2
1
1
1
1
0
0
1
0
0
0
0
1
1
1
1
0
1
1
1
1
2
2
1
1
1
0
0
1
0
0
0
0
2
2
2
2
1
2
2
2
1
1
0
1
1
2
1
1
2
1
1
3
3
4
3
4
11
24
25
15
16
10
6
18
22
8
7
28
33
35
44
41
34
40
34
35
36
35
30
27
27
25
20
13
9
5
7
4
1
1
1
2
2
3
15
46
54
56
54
53
59
55
50
66
55
50
41
36
36
37
37
38
32
89
103
72
46
149
149
148
150
151
151
152
152
153
152
151
150
151
151
150
150
149
149
148
149
149
150
150
150
149
150
151
153
153
153
152
150
150
149
147
147
147
146
144
141
139
138
136
133
132
130
128
127
125
125
124
125
124
124
124
124
125
124
124
124
125
124
121
121
121
119
119
118
120
123
124
127
126
127
130
129
130
129
132
134
135
134
135
135
135
133
133
133
134
134
135
134
135
136
134
134
136
137
139
138
138
143
139
117
81
32
10
4
2
1
1
1
2
1
1
1
3
3
0
1
0
0
0
0
1
1
3
1
1
1
2
1
0
1
1
2
2
3
9
2
2
1
2
0
2
1
1
1
1
1
1
2
2
1
0
1
0
0
1
1
1
1
1
0
0
0
2
1
0
1
1
0
1
1
0
0
0
1
1
0
1
2
0
0
2
1
1
0
0
1
1
0
0
1
1
1
1
0
1
1
1
2
0
0
1
1
1
1
1
1
1
1
2
2
2
2
2
2
1
1
1
2
2
1
1
1
1
1
2
2
2
2
0
1
2
1
2
2
11
10
21
14
13
5
6
19
19
10
8
15
28
33
41
43
36
28
35
35
28
24
25
26
23
19
20
9
12
7
6
2
2
1
1
3
5
5
16
46
56
56
58
60
55
54
54
56
43
48
43
37
36
37
38
38
34
61
71
24
21
149
148
150
151
152
155
154
153
153
153
153
153
152
150
149
151
150
150
151
151
151
152
152
153
152
153
153
154
156
154
153
152
152
151
149
148
149
147
144
143
139
137
135
134
134
133
130
129
127
128
127
126
127
127
127
126
124
126
126
126
126
125
124
123
121
121
122
121
122
124
125
126
126
127
128
129
130
130
131
132
133
133
134
134
134
135
133
133
132
134
134
134
134
133
134
137
137
136
142
139
136
129
86
33
9
2
2
1
1
1
2
0
1
2
2
2
2
0
0
1
1
0
0
1
1
1
2
0
0
1
1
0
1
2
0
1
1
2
2
0
0
2
2
0
1
2
2
1
0
2
2
3
2
1
0
0
0
1
0
0
1
2
1
1
1
0
1
1
0
0
2
1
0
1
0
1
1
0
1
2
0
0
0
0
1
0
1
2
0
0
0
0
0
2
1
1
1
1
1
0
1
1
0
1
1
1
2
0
0
1
1
1
0
1
1
0
1
2
1
1
3
2
2
1
1
0
1
2
1
2
2
1
2
2
2
2
2
1
6
14
12
11
24
7
6
4
9
3
4
12
19
28
32
35
35
30
27
33
35
29
30
28
25
26
19
18
13
11
13
10
9
4
4
10
11
19
28
53
56
56
60
59
56
57
57
56
49
41
35
36
41
40
40
40
33
35
34
27
25
150
149
152
153
155
156
155
154
156
155
155
152
153
151
151
151
152
151
152
152
153
153
154
154
155
156
157
156
156
154
155
155
154
153
152
151
150
148
146
144
140
140
137
136
135
134
130
131
129
128
128
128
128
128
127
128
127
129
128
128
128
127
125
124
124
123
123
123
124
124
128
127
128
128
128
128
129
130
131
133
133
134
134
134
134
135
133
134
132
133
134
135
134
135
136
134
134
136
134
120
94
51
16
2
2
1
1
1
1
1
2
0
3
2
1
1
1
1
1
1
1
1
1
0
1
2
1
1
1
2
0
0
1
1
1
1
1
1
2
1
1
2
1
0
1
2
1
4
1
1
1
1
1
1
1
0
0
2
1
1
0
2
1
1
0
0
1
2
0
0
2
1
1
1
0
1
1
0
1
1
0
0
0
0
0
0
0
0
0
1
1
1
0
1
2
1
0
1
0
0
1
2
3
1
1
2
2
1
2
1
1
1
1
1
0
1
1
0
0
1
1
2
2
1
1
1
1
1
1
1
1
1
1
1
2
3
2
2
2
4
9
9
18
17
9
10
13
4
0
2
9
16
26
31
31
32
31
24
30
34
31
27
25
32
25
24
16
13
15
15
18
20
22
25
30
43
51
55
59
57
59
55
53
54
58
57
57
49
35
30
34
41
40
41
35
29
32
31
28
151
153
153
157
157
157
156
156
157
155
154
154
153
152
152
153
153
153
153
153
155
155
155
156
156
158
158
159
159
158
158
157
156
155
154
152
151
150
149
147
143
142
139
139
137
135
131
132
129
128
129
129
130
130
130
130
130
130
129
128
130
129
130
126
126
123
124
125
125
126
127
127
130
130
127
128
129
130
131
131
132
133
132
133
134
134
135
134
133
134
134
134
134
136
133
135
136
126
67
31
17
4
1
1
0
1
0
1
1
0
1
2
1
1
2
1
1
2
2
1
0
0
1
1
1
0
0
1
1
0
0
0
0
1
1
2
2
1
2
0
1
3
2
0
1
2
1
2
2
1
1
1
2
2
0
2
1
1
1
1
1
0
0
1
2
1
1
1
0
1
1
0
0
2
1
1
1
2
1
1
0
0
0
0
1
0
1
0
1
0
0
0
0
1
1
1
0
0
0
1
2
1
1
2
1
2
1
0
1
1
1
1
1
1
0
1
1
1
1
1
0
2
2
2
1
1
1
1
2
2
1
1
1
2
1
2
3
2
3
4
12
7
10
35
23
14
19
12
2
2
5
10
21
25
28
30
31
33
21
27
31
26
27
37
34
24
22
21
15
19
21
22
36
43
48
50
57
59
64
62
62
54
54
58
55
48
51
53
47
40
36
34
36
39
37
34
34
31
31
152
154
155
157
157
158
159
158
158
157
156
156
154
153
152
154
155
155
154
155
156
157
158
158
157
159
159
161
160
160
161
158
157
156
156
154
153
151
150
148
145
145
141
139
138
137
135
134
130
129
129
129
131
130
130
132
131
132
131
130
132
132
131
128
128
126
126
126
127
128
128
130
130
130
128
128
129
130
130
131
132
132
133
133
134
133
133
133
134
134
134
135
135
134
131
136
118
49
6
2
2
1
2
2
1
1
0
1
1
1
2
1
2
2
1
1
4
3
1
0
1
1
5
2
0
0
1
1
1
0
0
0
0
2
2
0
2
2
2
1
2
1
2
1
1
1
2
3
4
3
2
2
1
2
0
2
1
1
1
2
1
1
1
1
2
1
1
1
0
1
1
0
0
1
2
3
2
1
0
1
1
0
0
0
1
0
1
1
1
0
1
0
1
0
1
0
0
0
1
1
1
1
1
1
1
1
1
1
0
1
1
1
0
1
0
1
1
0
0
1
1
2
1
2
1
2
1
1
2
1
2
1
0
1
2
3
1
3
2
4
6
7
6
17
29
17
11
18
12
3
5
16
18
17
23
32
30
31
28
21
17
13
17
23
26
29
18
20
23
26
34
38
45
48
48
56
58
64
67
64
61
59
59
55
51
47
44
45
44
45
43
38
33
27
21
31
33
34
32
155
155
158
159
160
159
160
160
158
158
159
157
156
155
157
157
157
157
158
157
158
158
160
160
161
161
161
162
162
163
163
162
161
159
158
157
154
153
153
149
146
146
143
140
139
137
136
135
132
132
132
131
132
131
131
132
133
132
132
134
133
134
133
130
128
128
127
128
129
129
130
132
132
131
130
130
130
132
130
130
131
131
133
133
134
133
133
135
134
134
134
137
134
133
134
103
32
7
2
1
1
1
1
2
1
1
1
1
2
2
2
1
2
1
0
1
1
0
1
0
1
2
3
1
2
0
0
2
1
1
1
1
1
1
1
2
1
1
1
0
0
0
2
2
0
2
1
4
2
2
2
1
1
1
1
1
1
2
1
1
0
1
1
1
0
0
2
1
0
0
0
0
0
0
1
1
1
1
0
1
0
0
1
0
0
1
1
0
0
1
2
1
2
2
1
2
2
2
1
1
1
1
2
1
1
1
0
1
0
0
0
2
1
0
1
0
1
0
1
1
0
1
1
2
1
0
1
1
1
2
1
0
1
2
2
1
1
4
3
3
3
9
4
6
17
25
5
2
8
8
3
9
14
15
21
29
26
29
26
17
20
26
23
16
19
20
25
17
18
27
32
41
44
48
51
61
65
66
68
67
63
60
58
54
50
47
40
40
39
39
40
40
41
36
29
22
19
23
30
156
157
159
161
161
161
160
161
161
159
159
158
158
159
158
158
158
158
159
159
160
160
161
161
162
163
162
163
164
164
164
163
163
161
160
158
157
154
154
152
148
146
144
143
139
137
137
136
136
134
132
131
133
133
133
133
133
134
133
134
134
134
135
132
131
130
129
130
129
129
132
133
133
132
132
132
130
132
131
131
132
132
132
131
133
133
134
135
133
136
135
135
134
133
97
25
9
4
0
1
1
1
0
1
2
1
2
2
1
1
2
1
1
1
0
0
0
0
1
0
1
2
2
4
3
1
1
3
1
1
1
2
1
1
1
1
1
1
1
1
1
0
1
0
1
1
2
1
1
1
1
2
1
1
1
0
1
2
0
1
1
1
1
0
1
0
1
0
0
1
1
1
1
2
1
2
1
0
1
1
1
1
1
0
1
0
1
1
0
1
2
3
2
0
1
1
2
2
1
1
2
1
1
1
1
1
0
1
1
0
0
1
1
1
0
1
1
1
0
1
0
1
1
2
1
0
2
1
1
1
2
2
3
2
1
2
2
5
4
3
4
3
4
4
5
21
10
2
3
9
6
21
19
15
27
33
28
22
24
24
22
23
21
20
23
27
33
27
18
24
33
38
42
49
50
63
64
67
67
71
65
61
58
55
53
49
43
42
39
37
35
36
38
40
36
36
33
24
16
158
160
162
162
162
162
162
162
161
161
160
160
160
161
161
159
159
160
161
161
161
161
163
164
164
166
166
165
166
166
164
163
163
162
161
160
159
156
156
155
151
149
146
144
142
140
138
138
137
135
134
133
134
134
134
135
135
136
137
136
135
137
136
133
132
130
131
131
130
130
134
133
133
133
133
131
132
131
133
131
134
133
133
133
133
134
134
134
135
136
135
133
134
100
61
20
4
3
1
1
2
3
2
3
1
2
1
2
1
2
1
1
1
1
1
0
0
1
3
0
1
1
5
4
2
1
0
1
1
1
1
2
1
2
2
1
1
1
1
0
0
1
2
2
3
1
2
1
1
0
2
1
1
2
2
1
1
2
1
1
0
1
2
0
1
0
1
0
0
0
0
1
2
1
1
1
1
1
1
0
1
0
1
1
1
0
1
1
1
2
2
2
1
2
2
1
0
1
0
1
1
1
1
1
1
1
0
0
0
0
2
2
1
1
1
0
0
0
0
1
1
1
1
0
0
1
2
2
2
1
1
1
3
3
2
2
3
2
4
2
3
2
2
3
2
7
14
10
9
13
9
17
20
18
19
26
35
32
23
22
26
24
24
30
27
30
29
29
27
22
29
35
41
59
61
63
69
72
68
68
67
65
61
57
52
49
43
45
41
37
35
35
37
39
37
41
40
39
36
161
162
163
163
162
162
162
163
163
162
161
161
162
162
161
162
161
161
162
162
162
164
164
165
166
167
168
166
166
166
165
164
164
163
161
161
161
160
157
156
153
151
149
148
146
142
140
139
139
137
136
137
136
135
135
138
138
138
138
138
139
139
136
134
132
131
133
133
133
132
134
133
134
133
133
133
133
133
134
132
133
133
133
134
134
135
136
139
137
138
135
128
83
30
28
8
3
6
1
2
1
1
1
1
1
2
5
2
1
1
1
3
1
0
1
0
1
1
0
0
1
0
2
1
1
1
0
1
1
1
1
1
1
2
5
3
1
1
2
1
1
0
1
1
1
1
2
2
1
0
1
1
1
2
2
0
1
2
1
2
1
0
0
0
1
1
1
0
0
0
0
1
0
1
1
1
1
1
0
1
1
0
0
1
1
1
1
0
1
1
1
2
2
2
1
1
1
1
1
2
2
0
1
2
0
1
0
1
1
0
0
0
0
1
2
1
1
1
1
2
0
0
0
1
1
2
1
3
3
2
1
2
2
3
2
1
3
3
1
2
2
1
4
3
1
2
7
16
14
14
17
23
21
21
21
28
29
34
37
27
29
26
23
32
28
29
32
31
29
26
22
23
42
57
66
70
74
72
68
73
70
68
63
56
50
49
49
43
41
44
40
38
37
38
37
37
42
44
39
162
163
163
163
164
165
164
164
164
165
164
164
165
164
163
162
162
162
164
165
166
167
166
167
167
168
169
168
167
166
166
165
164
163
162
162
161
161
159
158
156
153
151
149
146
145
144
140
140
139
137
137
138
137
139
139
137
139
138
140
141
139
138
137
134
133
133
135
135
134
134
135
136
135
132
133
133
134
134
135
133
133
134
136
135
135
135
133
133
134
131
72
13
3
2
2
6
15
1
1
2
1
1
3
2
1
2
2
1
1
2
4
0
0
0
1
0
1
2
1
0
0
1
2
1
1
1
1
1
1
1
1
0
1
4
2
2
1
2
1
1
1
0
2
1
3
2
2
1
0
1
2
1
2
0
1
2
1
1
1
1
0
1
1
1
1
0
0
0
1
1
2
2
1
1
0
1
0
1
0
0
0
1
1
1
1
1
2
1
1
0
1
1
3
1
1
1
1
1
1
2
1
2
1
1
1
0
1
2
1
1
0
1
1
1
0
0
0
0
0
1
1
0
0
0
1
2
1
0
1
1
2
1
1
0
2
2
2
1
2
5
4
4
4
2
3
2
10
15
13
13
23
28
22
17
22
30
38
41
35
26
24
24
36
36
30
27
28
29
32
28
20
30
55
64
71
71
72
71
71
73
65
62
52
56
52
48
42
42
38
41
39
36
37
41
38
43
40
47
162
164
165
164
164
165
165
166
165
166
165
166
165
164
164
163
165
165
166
165
166
168
167
168
169
168
169
169
169
167
165
166
164
163
162
163
162
161
160
158
158
156
154
152
150
149
146
143
142
141
141
139
139
139
139
138
138
139
141
143
142
140
139
138
135
135
135
136
136
136
134
135
136
137
133
134
134
132
133
135
135
133
133
136
134
135
136
137
135
107
44
6
2
2
2
2
1
3
1
1
0
0
1
1
2
1
2
1
1
0
1
1
0
1
1
0
0
2
2
1
1
1
1
1
2
2
2
1
1
1
1
2
1
4
2
1
2
2
2
2
1
1
1
1
0
2
2
0
1
1
1
1
1
3
2
3
1
2
3
2
1
1
1
1
1
0
1
0
1
1
1
1
1
0
1
1
1
1
2
1
1
1
2
1
1
0
1
1
1
0
1
2
3
2
1
2
1
1
1
1
1
1
1
2
1
1
1
1
0
1
1
1
1
0
2
2
1
1
1
1
1
1
0
0
0
0
1
1
0
3
2
2
3
1
1
0
2
2
2
1
1
2
4
6
2
2
2
2
6
15
26
27
20
14
18
19
27
19
16
12
18
21
21
35
44
43
38
31
31
37
34
32
31
42
62
70
69
75
77
70
66
65
60
55
55
51
47
45
43
41
38
42
40
37
41
43
42
44
43
164
164
166
165
165
167
165
166
166
167
166
167
165
164
166
166
166
166
168
168
168
169
169
170
170
170
170
169
169
168
167
166
164
166
164
164
163
161
160
160
159
156
154
153
149
149
148
146
143
142
142
141
140
140
139
139
140
140
141
143
142
140
140
140
138
137
137
137
136
136
135
135
136
136
136
136
134
135
133
135
134
135
135
135
135
137
136
135
99
33
3
2
1
1
1
1
1
1
1
1
1
1
1
1
0
4
3
1
1
0
1
0
0
0
1
0
1
1
1
2
0
1
0
0
1
1
3
2
1
1
0
0
1
5
3
2
1
2
5
3
1
3
3
2
0
2
2
1
0
1
1
1
2
1
9
4
1
2
2
0
1
0
0
0
0
1
2
1
1
0
1
1
0
1
1
1
1
1
1
2
2
1
1
1
1
0
1
2
2
1
2
2
2
2
2
1
0
1
1
0
1
2
1
1
0
1
0
0
1
1
1
3
3
0
1
2
1
1
0
1
1
0
0
1
1
1
1
2
1
1
2
1
1
1
1
0
1
2
5
3
2
4
2
4
2
2
2
2
2
5
16
19
21
19
15
17
19
29
20
10
10
17
21
33
39
42
47
43
39
42
40
37
37
36
60
70
69
73
70
72
66
60
60
56
52
50
52
45
49
45
37
41
39
39
40
41
41
45
42
165
166
167
166
168
168
168
169
168
168
167
167
168
168
167
167
167
168
169
170
171
171
172
172
171
172
171
170
169
167
167
166
165
166
165
163
163
162
161
158
159
158
154
153
151
149
149
147
146
144
142
143
142
141
140
141
141
142
143
143
143
144
142
141
138
136
137
138
138
138
136
136
136
138
139
136
136
136
135
136
137
136
136
138
137
137
134
99
70
18
3
3
1
0
0
2
2
1
0
1
0
1
1
0
1
2
2
1
0
0
0
0
1
1
1
1
0
0
0
1
0
2
2
1
2
2
5
2
3
2
2
2
1
3
2
1
2
1
1
1
2
4
7
2
1
1
1
1
0
1
1
1
2
2
3
1
1
1
1
0
0
1
1
1
0
1
2
1
2
1
0
1
1
0
0
2
1
1
1
1
1
1
1
1
1
1
0
2
3
2
1
2
2
2
2
1
1
0
1
1
1
1
1
0
2
1
0
1
2
2
1
1
2
1
2
1
1
1
1
1
1
1
0
1
0
1
1
3
1
1
2
2
2
2
2
2
2
2
3
4
4
2
2
4
2
3
3
2
4
2
1
11
22
24
20
20
30
25
18
27
26
17
19
19
35
40
42
48
52
50
44
43
37
45
60
73
73
71
71
67
66
62
60
58
55
48
50
44
49
41
41
49
38
43
42
42
40
41
42
164
166
167
167
169
169
169
171
170
169
168
168
169
170
168
169
169
171
172
173
174
173
173
173
173
173
172
170
169
167
168
166
165
166
164
164
163
163
162
160
160
158
158
155
154
150
148
147
147
145
144
144
144
141
142
141
142
142
142
143
144
145
143
141
139
138
139
138
139
139
138
138
138
142
140
139
139
138
137
136
136
136
137
137
137
122
80
27
14
4
2
3
1
2
1
3
2
3
1
1
1
2
1
1
2
1
1
1
2
1
0
0
1
1
0
1
1
1
1
1
1
1
1
0
1
2
3
1
1
2
3
1
6
6
2
1
1
1
0
2
2
4
7
1
2
1
1
1
0
1
1
2
0
2
2
1
1
2
2
1
1
0
1
2
1
0
2
3
1
1
0
0
0
0
0
2
2
1
1
0
2
3
1
1
1
1
1
1
2
1
2
1
1
1
2
3
1
0
1
1
2
2
1
1
1
1
0
1
1
1
1
0
1
2
1
1
2
2
2
1
0
0
0
0
0
1
1
1
0
1
1
1
3
3
1
2
3
3
1
2
3
1
2
2
3
3
2
3
2
2
1
5
12
16
18
26
32
24
20
21
20
23
22
19
22
33
35
40
43
41
40
42
44
55
68
76
75
71
68
66
59
58
57
58
50
46
50
46
46
43
46
53
47
42
42
42
44
36
39
165
167
168
170
170
171
171
170
171
170
170
170
170
171
171
170
171
171
173
173
173
173
174
174
173
173
172
170
168
168
169
167
166
166
166
166
163
163
162
163
161
158
159
157
155
151
151
150
148
147
147
146
145
144
144
143
143
144
145
142
142
146
143
142
141
140
140
140
139
140
140
140
140
142
141
142
141
139
140
138
136
137
133
135
109
58
12
3
1
1
2
2
1
1
1
1
4
3
0
1
1
2
2
1
1
1
0
1
2
1
0
2
1
1
1
0
1
1
1
0
0
1
1
2
1
2
1
1
1
2
1
1
4
1
1
2
1
1
1
2
4
6
3
1
0
0
2
2
1
1
1
1
1
1
2
3
1
1
2
1
2
1
1
1
1
1
2
2
0
0
0
0
1
0
1
1
2
2
1
2
2
2
1
0
1
0
1
1
2
1
1
1
1
1
1
2
1
0
0
0
0
1
2
2
1
1
1
0
1
1
2
3
2
1
2
2
1
1
2
1
2
1
1
1
1
2
1
0
0
2
1
1
2
3
2
2
1
2
3
1
2
2
2
2
2
3
3
2
1
3
2
1
3
6
16
17
22
26
20
21
15
11
22
31
22
25
23
22
32
36
34
33
39
62
75
75
76
75
72
67
63
60
57
50
51
50
46
43
45
46
46
46
45
44
40
40
40
38
37
166
167
169
172
171
171
172
171
171
171
171
170
170
172
171
173
173
173
174
174
174
174
175
174
172
172
171
170
168
169
169
167
167
166
165
165
165
164
163
163
160
160
160
158
156
155
153
152
150
148
148
147
146
146
146
145
144
144
144
144
145
146
144
144
142
140
139
141
139
140
140
140
141
143
143
142
141
140
141
137
137
135
137
103
51
12
3
3
1
1
0
3
1
1
2
4
31
8
1
0
1
1
2
1
2
0
1
1
0
0
1
1
1
1
1
0
0
1
2
1
1
1
0
2
4
2
2
7
2
0
1
0
2
2
2
1
5
6
2
2
5
7
2
2
1
2
2
1
1
2
2
1
1
2
2
1
1
1
1
1
1
2
1
1
1
2
1
0
1
1
0
1
1
0
0
0
1
1
1
1
0
0
1
1
0
1
1
1
1
2
1
2
1
1
1
1
2
1
1
2
0
0
2
1
2
2
0
1
2
1
2
2
2
1
1
0
1
1
1
0
1
2
0
0
0
1
1
0
1
3
2
1
2
3
3
2
1
1
1
2
2
2
2
1
2
2
1
1
2
1
0
2
2
2
4
12
7
17
23
17
16
12
14
29
24
22
21
20
19
26
29
27
28
42
60
74
77
76
73
68
66
60
56
51
50
48
46
46
42
44
45
44
41
40
41
40
38
41
43
168
170
171
173
173
173
172
172
173
172
170
171
172
173
173
174
174
176
177
177
176
175
175
174
173
172
171
169
168
168
167
168
167
165
165
165
164
162
163
163
161
161
160
159
158
157
154
153
151
150
149
148
148
148
148
147
148
146
145
144
144
145
144
145
144
142
141
142
141
142
141
141
142
143
143
144
144
143
142
140
135
139
94
44
9
3
1
1
1
0
1
0
1
2
3
3
18
6
1
1
21
35
3
1
1
3
2
1
1
2
1
2
0
1
2
0
0
1
1
2
1
2
2
3
4
4
6
13
3
1
0
0
0
1
4
2
7
7
3
1
16
12
1
1
2
2
2
1
2
1
2
2
2
2
1
1
2
0
1
1
1
0
1
2
1
0
2
1
2
1
0
0
0
0
2
0
1
1
2
1
2
2
1
1
1
2
1
1
0
0
1
2
2
1
1
1
1
0
0
1
1
1
0
0
1
1
1
1
1
0
0
0
0
0
1
1
1
1
2
2
1
1
0
2
1
0
1
0
2
3
1
0
1
1
2
2
2
3
3
1
1
2
3
3
2
1
1
0
2
2
1
2
2
2
2
4
11
19
16
18
11
9
15
12
13
18
19
22
18
26
33
32
28
31
31
32
45
63
73
76
69
64
61
54
52
53
47
45
44
44
44
42
39
39
41
40
41
42
44
171
171
173
174
174
174
173
173
172
172
172
173
173
174
175
174
176
176
178
178
177
178
177
175
173
173
172
171
170
169
168
167
167
167
167
167
164
165
164
163
162
161
160
161
159
159
157
155
152
151
150
150
150
150
150
149
149
148
147
145
144
144
144
144
144
145
144
143
143
143
142
141
142
146
145
145
145
143
144
138
136
90
22
7
2
1
2
1
1
1
1
0
1
1
2
1
4
2
2
3
62
77
19
3
1
6
5
1
1
1
1
2
0
2
2
2
0
0
0
1
0
1
3
2
3
4
5
5
2
2
0
1
0
1
1
3
4
3
3
4
21
8
1
2
2
1
2
2
1
2
1
4
2
1
2
0
1
0
0
0
1
1
1
1
0
1
1
1
1
1
0
2
2
1
0
2
3
1
0
1
1
1
1
2
2
2
1
1
1
1
1
3
2
0
1
1
0
0
1
0
1
1
1
1
0
1
1
0
0
0
0
0
0
0
1
1
2
1
3
2
2
1
1
0
0
0
1
1
2
1
1
1
2
1
1
2
1
1
1
2
1
1
1
1
3
3
2
3
3
2
2
3
2
1
0
1
3
10
16
18
24
16
10
5
9
19
27
26
25
22
31
32
29
27
29
32
30
27
32
46
61
66
67
63
61
61
55
51
48
47
47
42
39
41
41
39
40
40
44
172
173
174
174
174
174
173
173
173
172
173
174
175
175
175
176
178
178
178
178
177
179
178
175
173
171
171
172
173
170
167
167
168
168
168
167
166
166
164
162
161
162
160
161
159
160
159
155
152
152
152
151
151
149
150
150
149
149
149
145
145
144
145
145
144
145
145
146
147
146
144
144
144
145
146
147
147
146
139
135
86
21
3
3
2
1
1
1
2
1
1
1
2
2
3
2
2
1
1
3
12
17
21
11
3
3
1
1
1
0
1
2
1
6
2
1
1
0
1
1
1
1
1
2
2
4
14
6
1
1
1
1
1
2
2
8
3
3
2
10
17
3
2
3
2
2
3
4
1
2
3
1
1
1
1
0
1
0
1
1
1
1
1
1
3
1
2
2
0
1
0
1
1
3
2
1
1
0
0
1
1
2
0
1
0
1
1
1
1
2
2
3
1
0
1
0
1
1
1
1
1
1
1
1
0
1
0
1
0
0
0
0
1
1
1
0
1
1
1
1
2
0
1
0
1
0
1
1
2
1
1
2
2
1
1
0
2
2
2
1
1
2
3
2
2
2
2
3
2
1
2
2
2
1
1
1
1
3
9
19
21
15
12
9
7
19
31
33
33
33
27
31
31
28
29
31
32
33
30
25
19
29
45
58
67
67
65
58
57
57
54
49
44
42
43
45
46
51
52
174
175
175
176
175
175
174
175
175
174
174
174
176
176
176
176
177
178
177
177
178
178
177
176
174
173
173
172
170
168
168
167
167
167
167
166
166
166
165
163
163
163
162
161
160
161
159
157
154
154
153
151
151
151
151
151
150
148
148
149
147
149
146
144
145
145
145
145
146
147
147
147
147
148
148
149
148
146
137
69
12
3
3
2
1
1
1
2
1
0
1
1
1
0
2
2
2
3
2
2
1
1
7
17
2
2
3
1
1
1
1
0
6
8
2
2
2
1
1
2
1
3
1
2
3
8
33
11
1
1
1
1
4
1
7
33
7
1
2
13
7
2
3
3
2
1
2
2
2
1
1
1
1
1
0
0
0
0
1
1
1
1
0
1
2
3
2
2
3
0
3
3
1
1
1
2
2
1
1
1
0
1
1
1
0
1
2
1
1
1
2
1
0
0
1
1
0
0
1
1
1
0
0
0
1
1
1
2
1
1
1
0
0
1
1
1
1
1
1
1
1
1
1
0
0
0
1
2
1
3
2
2
2
2
1
1
1
1
1
2
2
2
1
1
1
3
1
2
2
1
1
1
2
2
1
1
1
2
3
6
11
10
5
4
4
8
19
37
40
45
30
26
29
27
27
28
30
29
29
31
27
22
17
25
42
52
63
71
72
69
65
59
55
50
51
51
56
57
60
174
174
175
175
175
175
175
175
174
174
174
175
176
176
177
178
178
178
177
178
180
179
177
177
176
174
173
172
170
169
169
169
167
168
168
167
167
167
165
165
164
163
162
162
162
162
160
158
156
155
154
152
153
152
153
150
151
151
151
150
149
149
148
147
145
145
146
146
147
147
148
148
148
149
149
148
145
133
62
13
3
3
2
1
2
1
1
1
0
2
2
0
1
1
1
1
1
3
3
3
3
2
5
8
0
1
2
0
1
1
2
1
13
11
2
1
4
2
0
1
2
3
3
2
3
4
14
3
2
2
2
3
11
3
5
12
2
1
3
6
2
2
1
1
2
1
2
3
1
1
1
1
1
1
2
1
2
1
1
0
1
2
2
1
1
2
1
2
2
2
2
2
2
1
2
0
0
2
2
2
1
1
1
1
1
2
1
1
2
1
2
1
1
0
0
1
0
0
1
0
0
0
1
1
0
0
0
1
0
0
1
1
1
1
1
1
2
1
1
0
1
1
0
2
1
0
1
1
0
0
1
2
3
2
1
2
2
2
1
2
2
1
2
0
0
3
2
1
1
0
0
1
1
1
1
1
0
2
1
2
2
3
4
2
5
7
19
37
36
40
37
35
32
29
28
28
29
29
30
30
31
33
37
39
43
47
45
29
40
56
65
67
68
68
68
66
69
63
63
175
175
175
174
176
175
174
174
174
175
175
176
177
178
178
178
179
180
179
179
180
178
178
176
175
175
174
171
171
170
170
171
167
167
167
167
166
166
165
165
164
164
164
163
164
162
161
159
157
154
155
154
152
153
151
152
151
151
153
153
153
151
149
149
147
147
147
148
148
150
150
151
150
151
151
149
129
47
5
4
2
2
1
0
0
1
1
1
0
1
1
1
1
2
1
0
1
3
2
1
2
2
10
8
1
1
2
1
1
6
4
1
17
8
2
2
13
4
0
1
1
1
3
1
1
6
14
1
1
1
3
4
9
2
2
1
3
0
3
1
0
1
0
1
1
1
3
2
0
1
1
0
0
0
0
1
1
2
1
0
1
2
2
1
1
0
2
2
3
2
0
1
2
2
1
2
2
2
1
2
1
0
1
0
1
2
0
1
2
1
1
2
2
1
1
1
0
0
0
0
0
0
1
0
1
1
1
0
2
1
0
0
2
2
1
0
1
1
1
0
1
1
2
1
0
1
2
0
1
0
1
2
4
2
3
3
2
2
2
2
2
3
3
1
1
0
1
1
1
1
1
1
1
1
2
1
1
2
1
2
5
5
3
2
3
8
19
28
33
43
42
43
40
35
31
28
30
35
36
40
42
41
46
54
61
64
62
47
19
4
10
17
23
31
42
52
55
61
70
174
176
176
176
176
175
175
175
175
176
177
177
178
179
181
179
179
180
181
180
180
179
178
177
177
176
173
173
171
171
171
170
169
168
166
167
167
168
166
165
165
164
164
164
165
164
163
161
159
155
155
155
153
156
154
153
153
153
155
154
154
153
150
148
147
148
149
149
152
152
150
152
152
154
150
132
52
5
1
0
1
1
1
1
1
1
1
1
2
1
1
0
1
2
1
1
1
2
3
1
1
1
5
3
2
3
3
4
2
12
5
3
12
5
0
2
9
4
1
1
1
0
0
1
3
4
5
1
1
3
5
10
7
1
1
1
3
2
1
1
1
2
1
1
2
1
3
1
0
0
0
0
1
1
0
1
0
2
2
1
2
0
1
2
2
0
1
1
1
0
1
0
2
2
2
2
4
2
2
1
0
0
1
0
1
1
1
1
1
2
1
1
2
2
2
1
1
0
2
1
0
1
1
0
0
0
0
0
1
0
0
2
1
0
2
2
1
0
0
1
1
1
1
1
2
1
2
1
1
1
2
1
2
2
2
2
3
2
0
2
1
1
1
1
1
2
2
2
1
0
1
1
1
1
0
0
1
2
2
3
2
1
1
2
2
4
9
15
25
33
39
43
46
41
35
35
38
39
38
42
47
49
56
69
72
73
75
58
25
10
12
8
4
6
15
16
13
10
13
174
176
176
177
177
176
177
177
176
178
179
178
177
179
179
179
180
180
181
180
178
179
179
178
177
175
174
175
173
173
171
170
170
169
167
168
168
166
167
165
165
166
165
164
165
166
163
161
160
158
157
156
155
155
154
154
155
154
154
155
154
155
152
152
151
149
150
150
152
152
154
154
153
151
134
51
4
2
1
1
1
1
1
1
0
0
0
1
1
0
1
1
1
1
1
1
0
1
1
2
1
1
5
3
1
3
4
2
6
5
3
7
13
3
2
3
7
4
1
1
2
2
2
8
8
9
3
2
1
5
6
23
8
2
2
1
1
3
2
2
2
0
1
2
1
0
1
1
1
1
0
1
0
0
1
1
1
1
1
1
4
2
1
1
1
0
1
2
1
2
1
2
1
1
2
2
2
2
1
1
0
0
2
1
1
1
1
1
0
1
1
0
1
1
2
1
0
0
1
0
0
0
0
0
1
0
0
1
1
1
2
2
1
2
1
3
2
2
3
2
1
1
1
1
2
1
0
1
1
1
1
3
2
1
2
2
1
1
1
1
2
1
0
0
2
1
1
1
2
1
1
1
2
1
1
0
1
1
2
3
2
2
2
1
2
2
1
1
4
12
24
34
44
45
46
49
50
49
50
50
51
64
74
79
81
74
64
32
14
21
20
15
11
5
7
11
16
14
16
176
177
177
178
179
178
177
176
176
178
179
180
180
181
181
181
182
181
181
181
179
178
180
178
177
177
175
174
172
172
171
170
170
169
168
167
167
166
166
167
166
167
167
167
165
166
164
162
161
161
159
158
157
158
156
157
157
156
158
158
157
156
154
152
150
149
150
150
152
153
152
154
153
135
60
4
2
2
0
0
1
2
1
0
0
0
1
1
1
1
2
1
1
1
1
1
0
2
3
6
2
1
4
8
1
1
2
7
11
3
5
9
13
2
2
7
12
2
1
1
1
1
2
15
9
22
5
1
1
3
5
23
2
3
2
2
1
5
4
2
2
1
1
1
0
0
1
1
1
1
0
1
0
1
2
1
2
2
1
2
3
1
1
1
2
1
0
0
1
1
1
2
1
3
2
3
2
2
1
2
1
1
0
0
1
2
1
1
1
2
1
1
3
1
0
0
0
0
2
0
1
0
0
0
1
0
0
1
1
1
3
2
1
1
1
0
0
1
1
1
0
1
1
2
2
1
1
1
1
1
1
1
2
1
1
3
3
1
1
0
1
1
1
1
2
1
1
0
1
2
2
0
1
1
2
1
1
2
2
3
2
1
2
1
2
2
2
1
2
1
3
13
25
36
49
59
61
68
76
81
83
86
86
82
68
49
30
17
27
34
35
35
31
23
11
2
3
4
6
177
177
179
178
180
179
179
177
178
180
179
180
181
180
182
181
181
182
182
181
180
179
179
177
178
176
175
174
173
171
171
170
169
167
168
167
167
166
167
167
167
167
167
167
167
167
166
163
162
162
160
160
160
160
159
160
161
160
161
159
160
158
156
154
154
152
151
151
152
154
154
153
137
50
9
3
1
1
1
1
1
1
2
0
1
0
1
1
1
1
1
1
1
1
3
3
1
1
2
6
2
2
7
12
1
2
1
13
5
9
15
17
12
2
2
9
14
3
2
3
2
2
1
18
8
14
3
2
2
2
16
17
2
1
1
5
4
10
3
2
1
1
3
1
0
1
2
0
1
0
1
1
1
1
2
0
1
1
1
1
1
0
0
1
2
2
0
1
1
1
2
1
1
1
1
2
2
1
1
1
1
3
1
1
1
1
1
1
0
1
1
2
1
0
0
1
0
1
1
1
1
1
0
0
1
1
1
1
2
1
2
2
1
1
1
2
1
1
1
0
1
1
0
1
0
0
1
0
1
0
1
2
0
1
1
2
2
2
0
0
1
2
2
2
1
1
1
0
1
1
1
1
2
0
1
1
1
1
1
2
1
2
3
1
2
3
1
1
1
1
2
1
3
5
9
15
20
32
41
47
48
47
40
24
13
6
4
8
16
28
37
43
39
29
11
4
2
1
1
178
179
180
179
179
179
178
180
181
180
180
181
182
181
182
182
184
185
184
182
181
181
181
180
178
177
177
174
172
173
172
172
170
170
169
168
169
166
168
169
167
167
167
168
167
167
167
166
165
164
162
164
162
162
161
163
162
161
162
160
161
159
158
154
153
152
150
152
151
153
152
127
46
4
4
1
1
0
0
1
0
1
1
1
0
1
0
1
1
3
3
1
1
1
2
3
1
2
6
10
2
3
9
9
2
3
11
10
2
9
8
27
9
3
4
14
12
4
1
1
2
1
7
16
11
13
3
3
2
4
27
13
1
2
1
5
3
6
3
1
1
1
2
2
1
3
1
1
1
0
1
1
0
0
1
1
1
1
1
2
1
1
1
0
2
3
2
2
1
1
1
1
0
1
1
2
2
2
2
1
3
3
3
0
1
2
2
2
1
2
1
3
1
0
0
0
1
1
1
1
1
1
2
2
1
1
1
1
0
1
1
0
1
0
1
1
0
0
1
1
0
0
0
1
0
1
0
0
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
3
2
1
1
1
3
0
2
3
2
1
1
2
2
0
1
1
1
2
2
3
1
1
1
0
0
0
1
1
3
2
0
2
1
1
2
4
4
3
3
1
1
3
3
3
2
1
0
3
1
2
6
6
3
8
8
180
180
182
182
181
180
179
182
182
182
181
181
182
181
183
183
183
182
183
182
181
181
180
180
179
177
176
175
175
174
173
173
171
172
170
169
169
168
168
169
169
169
169
169
168
170
168
167
166
165
165
165
164
164
164
165
163
163
164
161
162
160
159
155
153
154
151
152
151
152
124
47
8
3
2
1
0
1
0
1
1
1
1
2
0
0
1
2
2
1
1
1
1
2
2
2
1
2
20
18
4
7
25
17
3
3
15
6
2
3
6
26
3
4
14
23
6
5
1
2
2
2
11
17
9
9
2
2
2
6
27
7
2
2
1
4
3
2
1
1
2
0
1
0
1
1
1
2
1
1
0
0
0
0
1
0
2
1
0
1
1
2
1
0
1
1
3
1
1
1
1
1
1
1
2
2
1
2
2
1
1
2
3
1
1
1
2
3
1
1
0
2
1
0
0
1
1
1
2
1
2
1
1
1
2
1
1
0
1
2
1
2
3
1
0
1
1
0
0
1
1
1
1
0
1
1
1
1
1
2
1
2
1
2
1
2
2
2
1
2
1
3
2
0
1
2
3
1
1
1
3
1
1
0
2
2
2
1
1
2
1
3
1
0
2
2
1
1
1
1
1
0
2
1
2
1
2
5
7
11
8
4
1
2
1
2
5
7
2
2
1
2
2
4
5
5
3
5
6
181
181
182
181
182
181
181
182
183
182
182
182
182
182
183
184
185
184
184
182
182
181
182
181
179
180
179
176
175
175
175
173
174
173
173
172
171
169
170
171
169
170
171
170
169
169
170
169
170
168
166
166
165
166
166
167
166
165
164
163
163
162
159
158
157
155
152
151
152
122
48
2
2
2
2
1
1
1
1
1
1
1
1
1
0
2
1
1
2
1
2
2
1
1
1
2
0
1
24
10
2
6
32
12
4
3
6
1
3
9
14
30
4
4
10
11
4
11
1
1
2
3
19
16
16
7
1
2
3
14
28
3
3
1
2
4
5
4
1
0
1
1
1
2
1
1
2
2
1
2
0
0
1
0
0
0
1
2
1
1
0
1
2
1
2
2
2
2
1
1
3
2
2
2
2
2
2
7
9
3
1
1
1
0
1
2
2
1
1
1
1
1
1
1
1
2
2
2
1
2
2
1
1
1
0
2
1
1
0
0
1
1
1
1
1
0
0
1
1
1
1
1
1
1
0
1
0
0
1
0
1
3
2
2
0
1
1
0
1
2
2
2
2
2
0
1
0
1
0
1
1
2
1
0
1
2
2
1
1
1
2
0
1
2
1
2
1
1
1
2
1
1
1
2
1
2
5
14
17
28
24
7
8
8
11
14
10
9
4
5
6
4
2
2
2
3
1
4
1
184
182
183
183
184
183
184
183
184
182
183
184
183
184
185
184
185
184
184
183
182
182
182
181
180
178
178
176
176
175
174
175
174
174
175
172
171
171
172
171
170
171
173
172
172
171
172
172
171
169
169
168
168
167
166
167
165
165
165
164
163
162
160
159
158
156
154
157
125
60
12
3
3
2
2
1
1
1
1
1
2
5
3
0
1
1
0
1
2
2
2
2
0
1
0
2
1
2
21
6
4
15
40
9
4
2
1
2
9
19
21
18
4
7
23
5
10
12
1
1
2
5
33
10
13
5
1
2
2
25
28
2
3
2
4
4
7
4
1
2
1
1
1
1
1
2
1
1
1
1
2
1
1
0
1
0
1
2
0
2
2
0
1
2
2
2
1
1
1
1
2
4
4
3
4
11
10
7
6
3
3
1
2
1
1
1
1
1
0
2
0
0
0
1
0
0
2
1
1
1
2
2
1
1
2
2
1
2
1
1
2
1
1
0
2
1
0
1
0
1
1
1
0
1
0
1
2
1
1
1
2
2
2
2
0
0
1
1
1
2
3
2
1
2
1
2
1
1
3
3
2
1
1
1
2
2
2
2
2
2
1
1
1
1
0
1
3
1
0
1
0
1
0
2
2
3
10
14
25
27
21
18
17
19
16
9
10
5
6
8
4
3
3
2
2
3
2
2
1
184
183
184
184
184
184
184
185
184
184
184
183
185
184
185
186
186
186
183
183
182
182
182
182
182
180
177
177
177
176
176
175
175
175
174
174
172
172
171
173
173
175
174
174
174
173
173
172
171
169
171
170
169
167
167
167
167
166
168
166
165
163
161
159
158
156
156
130
39
9
2
4
2
1
2
1
1
1
2
2
4
7
2
1
1
1
2
1
1
2
2
1
2
1
0
1
0
8
20
4
6
22
36
5
2
2
1
2
10
19
28
10
5
17
30
8
17
7
1
1
1
7
36
5
11
2
1
3
3
31
12
1
1
2
3
6
5
1
1
1
1
0
1
1
1
1
2
1
2
1
1
1
1
1
1
0
1
1
2
3
1
1
1
1
1
1
1
0
2
1
1
2
2
4
12
24
7
1
3
2
1
5
6
1
1
1
2
1
2
2
1
1
0
1
2
1
1
2
1
3
2
2
2
1
2
1
1
1
1
1
1
1
1
1
1
1
1
0
0
1
1
1
1
1
1
1
2
2
1
2
2
2
1
1
1
1
1
1
1
3
2
2
2
1
1
1
1
2
1
1
1
2
2
2
1
1
2
1
1
2
0
2
1
2
1
0
1
2
1
1
1
1
2
3
1
3
4
15
20
28
23
14
11
12
17
10
3
2
3
3
3
2
2
3
3
2
2
3
3
187
186
186
186
186
185
185
184
185
184
185
187
186
186
186
185
187
185
184
184
183
184
184
183
183
181
180
178
177
177
178
177
178
178
178
177
172
173
175
175
175
177
176
175
175
176
176
175
175
173
172
171
171
170
169
168
169
167
167
166
165
164
162
162
162
157
137
50
6
3
1
1
0
0
1
1
2
2
2
4
5
3
1
1
1
2
1
2
1
2
2
2
2
1
2
1
1
8
13
2
6
23
31
3
2
3
3
2
13
17
38
8
7
30
25
12
15
4
1
1
2
19
33
5
8
1
1
3
5
31
3
1
2
2
3
4
2
2
1
1
1
1
1
1
1
2
2
1
1
1
1
2
1
1
1
2
0
1
2
1
1
1
1
0
1
0
1
0
1
2
2
2
3
7
7
5
3
1
2
2
1
2
2
1
1
1
0
1
0
1
1
2
1
2
2
2
1
1
1
2
1
2
3
2
2
2
1
2
2
0
1
0
1
1
1
1
1
1
1
1
1
2
0
1
1
1
3
2
1
3
3
3
2
2
2
1
2
2
2
2
1
2
2
1
1
1
1
1
1
1
2
1
1
2
1
1
1
0
1
0
0
1
1
1
1
1
1
2
2
1
2
2
2
3
3
3
9
11
28
25
22
8
3
4
5
4
2
3
2
2
1
1
2
3
2
1
2
1
1
188
187
188
188
187
187
186
186
186
187
187
188
188
188
188
186
186
186
186
185
185
186
184
185
183
182
182
180
179
179
178
181
181
180
180
179
177
178
179
179
179
179
180
179
179
179
178
177
176
176
175
173
173
172
169
170
170
168
166
167
167
165
164
164
161
141
49
4
2
1
2
0
1
1
1
1
0
1
10
23
4
4
1
2
2
0
1
3
2
2
1
2
6
2
1
1
1
8
9
2
10
28
35
5
5
10
4
3
23
18
19
11
7
31
12
19
17
2
1
3
2
32
21
16
20
2
1
1
14
29
1
2
3
5
14
3
4
7
3
0
1
2
2
1
2
0
0
0
2
1
1
2
0
1
0
1
1
1
1
1
2
1
2
1
1
1
0
0
1
2
1
1
3
2
3
3
2
0
1
1
2
0
1
0
1
1
0
1
0
1
2
2
3
2
2
1
1
0
1
2
2
2
1
1
2
2
1
3
2
1
1
0
1
1
2
1
1
0
2
2
2
1
1
2
1
1
2
2
4
2
2
2
2
1
1
3
3
3
1
2
3
2
1
1
1
1
1
1
2
1
2
2
2
3
2
1
1
0
0
1
1
1
0
0
2
2
1
2
3
2
2
2
2
3
3
11
9
17
15
14
6
13
11
4
3
1
1
1
4
4
2
2
1
1
2
2
2
1
0
189
189
190
188
188
188
187
187
187
188
188
188
189
188
189
189
188
188
187
186
185
186
185
185
184
183
183
182
181
180
182
181
183
182
182
182
182
183
183
183
183
182
182
182
182
181
179
179
179
178
176
175
175
174
172
172
170
170
168
168
166
165
167
166
148
59
3
3
1
1
1
2
1
1
1
1
1
5
23
7
0
1
1
2
0
1
2
2
2
1
3
3
9
2
1
2
1
7
6
3
9
31
36
3
5
19
5
6
23
10
12
8
8
28
9
38
21
2
0
2
4
38
11
6
7
3
2
2
23
15
1
0
1
8
11
1
2
7
3
1
2
1
3
2
2
1
1
2
2
1
2
1
2
1
0
1
1
2
2
2
1
1
1
1
2
0
0
1
1
2
1
0
2
1
0
0
1
1
1
1
1
0
1
1
0
1
1
1
1
1
1
1
2
1
1
1
1
0
0
1
2
1
1
1
1
2
3
2
1
1
1
2
2
1
1
2
1
0
2
1
3
2
1
2
1
2
1
3
3
2
2
2
3
2
2
3
3
3
2
2
2
2
1
1
1
0
1
1
1
1
2
1
1
1
1
2
2
1
0
1
1
1
0
1
2
2
1
2
3
2
1
2
3
3
3
8
14
21
25
15
15
21
9
3
1
3
3
2
3
1
2
2
1
2
3
2
1
2
2
191
190
191
189
189
188
188
188
187
188
189
190
190
189
190
190
189
188
188
187
186
188
187
185
186
185
183
183
182
182
183
182
184
184
183
184
184
184
186
183
184
184
183
183
184
183
180
180
180
179
177
176
177
176
175
174
172
173
172
169
167
168
167
161
81
10
1
2
1
1
1
2
2
0
1
1
3
22
9
3
0
2
0
1
2
1
2
1
1
1
2
2
4
4
1
2
2
11
5
3
10
36
34
3
7
18
3
6
10
3
3
3
14
18
11
34
14
3
2
2
11
45
9
5
2
2
2
3
30
11
3
1
2
14
12
5
3
1
0
2
1
2
2
2
3
1
2
2
1
1
0
0
1
1
0
0
1
2
1
1
2
2
1
0
1
2
1
2
1
1
2
2
2
1
2
3
1
1
3
2
2
2
1
1
1
1
2
2
0
1
2
0
1
1
1
1
1
1
1
1
1
2
1
1
2
2
3
1
2
1
2
1
0
0
0
2
1
1
1
1
2
1
1
0
2
1
2
3
2
3
3
6
3
2
2
2
3
1
1
1
1
3
2
3
2
1
2
1
1
0
1
2
0
1
1
2
3
3
1
0
0
1
2
1
1
1
1
1
1
2
2
2
2
2
2
5
12
21
16
16
15
19
1
2
1
2
2
2
2
1
2
2
3
1
1
2
1
1
0
192
192
192
191
191
190
191
189
190
189
190
191
190
190
191
190
189
189
190
188
187
186
186
188
187
186
185
185
185
185
185
185
186
185
186
187
186
187
187
185
185
185
185
185
184
183
182
182
181
180
180
179
177
178
176
176
176
174
175
172
169
169
156
82
9
2
1
1
1
1
1
2
1
1
1
0
3
9
2
1
3
1
1
1
1
1
2
2
2
1
1
6
8
14
3
1
4
27
7
3
20
43
22
2
9
16
3
2
2
4
1
6
22
10
13
28
5
3
1
1
18
32
3
3
2
4
3
7
18
3
1
0
2
10
8
4
3
2
1
2
2
1
1
2
2
2
2
2
2
1
0
1
1
1
0
1
3
0
2
2
2
1
1
1
0
1
1
1
0
1
2
2
1
2
1
1
3
1
1
2
1
1
1
1
2
1
1
1
1
1
0
1
2
1
2
1
1
1
0
1
1
1
1
2
0
1
2
2
1
2
2
0
1
1
0
1
2
1
3
1
1
1
1
1
0
1
2
1
3
3
3
4
4
2
3
2
2
2
3
3
2
1
2
0
1
3
3
1
1
1
0
0
0
1
2
1
1
1
2
1
1
1
1
0
2
2
2
2
1
1
1
2
2
3
2
2
3
8
9
11
8
6
1
1
2
4
1
1
1
1
2
1
2
0
1
1
1
1
1
194
193
194
193
192
191
192
192
192
192
192
192
191
192
194
192
190
189
190
189
190
190
189
189
189
189
188
187
187
188
189
188
189
188
188
189
188
188
188
188
186
187
186
186
185
184
184
184
181
180
180
179
178
180
178
178
178
177
177
174
172
155
71
12
3
1
1
1
1
1
2
2
2
0
0
1
0
1
1
0
2
1
1
2
0
2
2
3
3
2
1
6
7
18
4
2
5
21
5
4
17
43
23
2
17
19
2
2
3
7
3
6
13
4
24
30
3
2
1
1
27
28
3
3
2
5
2
14
26
4
3
1
3
14
4
1
2
2
2
2
2
2
2
2
6
4
1
1
2
0
0
0
1
1
1
2
2
1
2
1
1
1
1
1
1
0
1
1
1
2
0
2
1
1
2
2
2
3
2
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
2
2
1
0
1
1
1
0
0
1
1
1
0
1
0
1
1
0
0
1
1
1
1
0
1
2
2
1
1
1
1
1
2
1
3
2
2
2
2
2
4
3
2
3
2
3
3
2
0
1
2
3
3
3
2
2
1
1
1
2
2
0
2
2
2
1
1
0
2
1
0
1
2
3
1
2
2
1
1
1
1
9
19
12
6
7
2
1
2
1
2
2
2
2
1
1
1
2
1
1
2
2
1
1
3
195
196
196
193
192
193
195
194
194
194
193
194
195
195
196
195
192
193
193
192
191
190
190
191
190
190
190
190
190
189
191
190
190
189
189
190
189
188
188
190
189
188
187
187
187
187
186
186
184
182
183
181
181
180
182
181
177
177
176
172
156
56
4
3
1
1
2
1
1
1
2
1
2
1
0
0
1
1
1
1
2
3
3
3
1
0
2
3
3
2
2
13
14
12
5
2
5
27
4
3
14
50
29
4
26
19
2
6
17
12
4
11
19
2
26
22
2
1
2
2
30
23
4
8
1
3
1
15
15
3
2
3
4
10
2
2
0
1
4
3
7
5
3
3
6
2
3
2
1
1
1
1
1
0
1
1
1
0
1
1
2
2
1
1
1
2
2
2
1
0
1
1
1
2
2
2
3
3
2
1
2
3
3
1
2
1
1
1
1
1
2
1
1
1
1
0
1
0
0
1
1
1
1
1
0
1
1
1
1
1
1
1
1
0
1
2
1
1
0
1
1
1
2
1
1
1
1
1
1
3
2
1
1
2
2
3
1
1
1
2
3
2
3
2
1
2
3
2
2
1
2
1
1
2
1
2
1
1
1
0
1
2
1
2
1
2
2
2
2
2
2
2
2
2
10
16
28
23
12
9
8
8
3
1
1
3
3
1
1
1
0
1
0
0
0
1
0
0
1
195
196
196
194
193
194
195
196
197
196
195
195
197
197
196
196
194
194
194
194
192
191
192
191
193
193
193
192
193
193
192
192
192
192
192
190
191
190
190
190
189
188
188
188
187
187
186
186
185
183
183
183
183
181
183
182
180
177
171
166
67
6
3
1
0
2
2
1
2
1
2
0
0
1
1
0
0
1
2
2
2
2
3
1
1
1
1
10
8
3
1
13
9
26
13
2
5
19
2
5
10
53
27
5
36
15
1
4
19
6
2
11
15
2
26
15
1
2
2
5
38
11
6
6
2
2
2
14
7
1
2
1
5
15
2
1
1
2
5
6
7
4
1
3
4
2
4
2
1
0
0
0
1
1
1
1
2
1
2
1
2
1
1
1
3
1
1
2
1
0
0
1
1
1
1
2
3
2
2
1
1
2
2
1
0
1
2
2
1
2
2
1
2
2
1
0
1
1
0
0
0
1
1
1
1
2
2
1
1
1
2
1
1
0
1
1
1
1
1
0
1
2
1
2
1
1
1
1
0
0
2
2
3
3
1
1
2
2
3
3
2
1
3
1
2
2
2
2
3
3
1
2
1
1
0
1
1
2
1
1
1
2
3
3
2
2
2
1
1
1
3
2
3
10
26
21
16
12
5
7
6
2
1
1
1
1
1
0
1
2
0
1
1
1
0
0
0
2
2
198
198
197
197
196
196
196
197
198
198
197
198
197
197
197
197
197
197
196
196
195
194
194
194
194
195
195
195
195
196
195
195
194
193
194
194
192
192
192
193
192
190
191
190
190
189
187
188
187
185
185
185
184
183
183
180
182
170
172
87
10
2
1
0
2
2
2
1
1
1
2
2
1
0
0
1
0
1
1
1
2
2
1
2
1
2
2
23
8
3
2
9
7
19
16
3
2
6
1
2
4
40
21
5
32
5
1
8
16
3
2
21
16
3
27
10
2
2
5
12
41
2
7
3
1
2
3
6
2
1
1
2
9
9
1
3
2
3
12
3
3
2
2
5
2
9
3
1
2
1
2
1
0
1
1
1
0
1
1
1
1
1
1
1
2
3
2
1
2
1
2
2
2
0
1
3
2
2
2
1
2
1
1
1
1
1
1
1
1
1
2
1
1
1
0
0
1
1
1
1
1
1
0
0
1
1
1
2
1
0
1
0
0
0
0
1
0
0
1
1
2
1
0
1
1
1
1
2
1
0
2
2
2
4
3
3
3
3
2
3
2
2
1
1
2
1
2
1
2
2
3
2
1
2
2
1
1
1
0
1
1
0
1
3
2
2
1
1
1
2
1
1
4
24
29
22
14
21
9
4
2
2
3
1
1
1
0
1
0
1
2
1
0
1
0
0
1
1
2
199
200
200
198
197
197
199
198
199
199
199
200
198
199
201
200
197
199
198
197
196
196
197
196
196
196
196
198
197
197
197
196
196
195
195
195
195
195
194
192
192
191
192
191
191
192
189
187
188
187
185
187
187
186
185
183
173
168
111
15
3
1
1
1
2
2
2
1
1
1
0
1
2
0
1
1
0
1
1
3
2
1
1
2
1
1
5
21
6
3
3
6
3
23
28
3
1
4
2
3
6
35
18
9
35
1
1
19
27
3
3
21
13
7
37
9
3
2
7
14
43
4
5
2
1
1
1
2
2
2
1
3
7
3
2
1
2
2
2
1
2
4
4
3
2
1
1
1
1
1
2
1
1
1
1
1
0
1
0
1
1
1
1
1
2
1
3
3
2
1
2
2
2
1
2
3
3
1
1
1
0
1
1
1
1
0
1
1
1
1
1
0
1
1
0
1
2
1
2
2
1
1
2
1
1
1
2
1
1
0
1
1
1
1
1
1
0
0
1
1
1
1
0
1
1
1
1
3
1
0
1
2
1
3
4
2
3
3
2
3
3
0
1
2
3
3
1
1
2
0
1
2
2
3
2
2
1
1
0
0
1
1
1
3
3
1
1
1
1
3
2
1
14
31
33
29
26
15
6
2
2
2
2
1
2
1
1
1
0
1
2
1
1
1
1
1
1
1
2
200
201
200
201
200
199
199
199
199
201
201
202
201
200
200
200
198
198
199
199
198
199
198
199
198
198
199
198
198
198
198
198
197
198
196
196
197
194
195
194
195
194
194
193
192
192
191
189
190
189
187
189
187
188
187
183
164
116
22
2
1
1
1
2
0
1
2
2
1
1
0
1
0
1
1
0
0
1
0
0
0
1
1
2
1
2
9
20
6
2
2
4
3
11
23
2
3
15
4
7
12
36
20
16
36
2
3
21
22
2
2
25
10
12
31
6
3
3
9
15
19
4
4
2
2
4
2
3
2
4
5
7
6
2
3
1
0
1
2
2
2
6
9
2
2
1
0
1
2
2
1
2
1
1
1
1
0
0
2
3
2
2
1
2
1
1
1
0
2
2
0
1
1
1
3
2
2
1
1
1
1
1
2
2
1
1
1
1
2
1
1
0
1
1
0
2
1
0
1
1
2
1
1
1
1
1
1
0
1
1
1
1
2
1
2
1
2
1
0
0
0
1
1
1
1
2
2
2
2
1
1
1
2
2
3
4
1
1
1
2
1
2
2
1
1
2
2
2
2
2
1
1
1
2
1
2
1
0
0
0
0
1
0
1
2
2
1
0
0
2
2
5
23
26
23
20
13
8
5
1
1
1
0
0
1
1
0
1
0
1
0
1
1
1
0
0
0
2
1
201
202
203
202
201
202
202
202
202
203
203
203
203
203
202
202
202
200
201
201
201
201
200
201
200
201
200
199
200
202
200
199
200
199
199
199
198
196
198
197
196
194
193
194
194
193
192
192
190
191
190
191
190
190
183
169
146
39
4
2
3
1
1
1
0
0
1
1
1
2
1
1
0
1
1
0
1
2
1
1
2
1
1
2
1
1
4
7
3
3
5
11
9
6
19
2
4
19
8
7
12
25
12
22
30
3
3
29
16
2
2
31
11
18
29
11
17
10
4
20
11
1
3
12
4
3
3
2
3
15
7
9
3
1
5
1
1
2
2
3
7
15
13
2
1
1
0
2
3
1
2
1
1
1
1
1
1
1
2
3
1
1
1
2
1
0
1
2
1
0
1
2
3
1
1
1
0
1
1
1
1
2
3
2
0
1
1
2
2
3
1
0
2
2
0
0
1
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
0
1
2
0
0
1
1
1
1
2
3
2
0
1
0
1
1
3
2
1
1
2
2
3
2
2
2
2
1
0
1
2
2
1
1
2
2
2
2
2
3
1
0
1
1
0
0
1
2
2
1
0
1
2
3
15
30
29
19
6
11
4
2
5
1
1
0
0
0
1
0
1
0
0
0
1
0
2
2
1
1
1
1
204
204
204
203
203
203
204
203
203
203
204
204
203
203
204
205
204
203
202
202
202
202
203
201
202
202
201
201
200
202
201
201
200
201
199
199
200
199
200
199
198
196
195
196
195
193
193
193
191
192
192
192
191
193
188
145
68
7
2
1
2
1
0
0
1
0
1
1
1
2
0
1
0
1
1
1
2
1
1
1
1
1
1
1
1
1
3
4
4
1
2
18
17
7
25
5
3
14
10
12
15
39
15
28
33
2
1
32
12
2
5
31
9
24
26
13
8
4
1
12
6
3
7
21
4
1
8
5
13
18
12
5
3
4
3
2
1
2
2
5
13
15
4
1
1
2
1
0
2
1
1
1
1
1
1
1
2
1
0
0
0
1
1
2
1
1
0
0
1
1
1
1
1
1
2
0
1
2
1
1
0
0
1
1
1
1
3
3
2
1
0
1
0
0
0
2
1
1
1
2
2
0
1
2
1
2
3
1
1
1
1
1
2
2
2
2
1
1
2
0
1
1
2
2
1
3
2
1
1
1
1
0
1
2
0
1
3
2
0
1
2
2
1
2
2
1
1
1
1
2
2
2
2
2
3
3
1
1
1
1
1
0
1
1
1
1
2
3
1
1
11
37
31
25
11
11
3
3
9
15
8
4
1
1
1
1
1
1
0
0
1
1
2
3
1
3
4
1
0
205
205
206
205
205
205
205
205
205
205
205
206
206
205
204
206
205
205
204
204
204
204
204
204
202
204
203
204
202
203
203
202
203
201
200
201
201
199
200
200
200
198
197
197
196
195
196
196
194
194
195
192
192
192
173
63
8
2
2
1
2
1
1
1
1
0
1
1
2
1
2
2
0
1
1
0
1
2
2
2
1
3
1
2
1
2
10
7
4
2
2
16
17
5
21
9
5
22
7
2
15
40
19
43
31
3
5
24
5
3
4
36
6
26
14
4
16
4
2
7
3
3
11
24
4
3
8
6
18
11
16
4
3
11
5
3
2
2
3
14
21
18
4
2
2
2
1
1
1
1
2
1
2
2
1
2
1
1
0
0
0
1
1
1
0
1
1
1
1
1
1
1
1
0
0
1
1
1
0
1
1
1
1
2
0
1
4
2
2
2
2
1
1
2
2
1
1
1
0
1
2
1
2
2
2
2
2
1
1
2
2
2
1
1
3
3
1
0
1
0
2
2
1
1
2
2
2
1
1
1
2
1
1
1
2
1
1
1
2
3
2
2
1
2
3
1
1
1
1
1
1
1
2
1
1
2
2
1
1
1
1
0
0
1
2
2
2
2
3
4
24
22
23
10
12
18
4
15
18
9
6
2
3
2
0
1
1
1
1
1
2
1
1
1
1
1
1
2
1
206
207
207
208
207
206
206
206
207
208
207
207
208
208
206
207
207
206
206
206
206
206
206
206
205
206
205
204
203
204
205
204
205
203
203
202
202
201
201
201
200
198
199
199
198
198
197
197
196
196
196
195
193
197
115
8
3
2
1
1
1
1
1
0
1
1
0
1
2
2
1
1
1
1
0
1
2
2
1
1
1
1
2
2
2
3
7
4
4
6
3
15
16
3
8
6
6
29
10
3
22
52
20
34
20
11
12
33
5
2
6
30
4
15
6
13
29
5
3
13
5
1
11
22
3
2
3
9
24
13
6
2
2
4
4
4
2
6
8
16
39
9
3
1
3
3
1
1
1
1
2
1
1
2
2
1
2
1
2
2
1
1
1
1
1
1
1
1
1
2
0
1
0
1
0
1
1
1
2
1
1
2
1
2
2
1
1
4
2
2
1
1
1
1
1
0
1
1
1
1
1
1
1
0
2
1
1
1
1
1
1
1
1
3
2
2
1
1
0
0
1
1
1
2
2
1
1
1
2
1
1
1
2
1
2
2
1
1
3
1
1
2
1
2
2
0
1
1
0
1
2
1
1
3
2
1
1
1
1
1
1
1
0
1
2
2
1
2
3
7
15
11
10
14
17
9
9
19
9
3
2
3
2
2
1
0
1
1
1
0
1
0
2
2
1
1
1
1
3
207
208
208
209
208
208
208
208
209
209
209
209
208
208
210
209
209
209
208
208
208
209
208
206
207
206
206
206
204
206
206
205
205
204
205
204
204
203
202
203
202
201
201
200
199
199
199
198
199
198
197
197
197
144
40
1
2
1
1
1
2
2
1
2
1
1
1
1
1
1
1
0
1
0
1
1
3
2
1
1
2
1
3
2
2
10
8
4
24
16
4
15
22
3
4
5
5
33
10
2
20
48
16
24
17
26
14
29
6
2
8
21
2
3
2
18
17
1
1
4
2
2
11
16
1
0
2
13
17
16
1
2
15
5
3
1
2
7
7
32
19
1
2
2
2
3
1
3
1
1
0
1
1
1
1
1
1
1
1
2
1
0
1
2
0
1
0
1
1
0
1
1
0
0
0
1
0
0
0
1
1
2
2
1
1
1
2
2
3
2
3
2
2
1
1
1
1
1
1
1
1
1
1
0
0
1
2
1
1
1
1
1
1
0
2
2
1
1
1
0
2
2
1
2
1
2
1
2
1
1
1
3
1
1
1
0
2
2
0
1
1
1
1
0
1
2
2
1
0
1
2
2
1
1
1
0
1
1
1
2
1
0
1
0
2
2
0
2
3
7
11
10
10
14
18
7
6
8
5
4
7
3
1
3
2
2
3
2
2
1
1
1
1
1
1
0
1
3
2
208
208
210
210
210
209
209
209
210
209
209
209
210
210
210
210
209
209
210
209
208
211
210
208
209
209
209
207
206
205
207
207
207
206
206
205
205
204
203
204
203
204
203
202
202
202
201
201
200
200
197
198
173
52
11
2
1
1
0
0
1
1
2
1
0
1
1
1
1
1
0
0
1
0
1
2
1
1
2
1
1
2
2
1
2
7
8
2
24
20
2
18
25
2
5
9
5
44
13
3
22
47
20
21
17
28
17
26
4
3
7
17
1
3
1
11
14
2
2
5
1
1
13
14
2
2
5
15
14
5
3
7
13
3
1
2
1
3
24
31
6
1
1
1
1
1
1
2
2
1
3
1
1
1
1
0
0
0
1
1
1
1
1
2
2
1
0
0
0
0
1
1
0
1
1
1
0
0
0
1
1
0
2
2
1
1
2
3
1
3
1
2
3
2
2
3
1
1
1
1
1
1
1
1
1
1
0
1
1
1
2
3
2
2
1
2
1
0
1
0
2
2
3
1
0
1
0
0
1
2
3
2
1
2
2
1
0
1
2
3
3
3
2
2
2
1
1
1
0
0
1
1
1
2
1
2
2
1
2
1
1
1
1
1
2
2
1
1
3
6
8
12
10
9
10
6
5
5
4
5
7
4
3
2
3
2
1
1
0
1
1
1
1
2
2
1
1
1
1
210
210
211
211
210
210
211
211
211
210
211
210
211
212
211
211
211
209
211
210
210
210
210
210
210
210
209
210
208
208
208
209
209
208
208
208
208
207
206
206
206
205
205
205
204
204
203
203
202
202
201
197
89
10
2
3
2
0
1
0
0
1
1
1
2
1
1
1
0
0
0
2
1
3
2
1
2
3
1
1
2
1
2
1
3
20
22
5
11
18
3
20
31
2
3
7
5
44
14
3
22
60
21
8
11
15
15
22
2
3
7
6
3
3
1
5
9
1
3
4
2
3
23
16
2
2
5
20
33
3
3
19
8
1
2
4
6
9
41
11
3
1
2
1
2
0
1
2
1
1
1
0
1
1
0
1
2
1
0
1
1
2
2
1
1
1
1
1
0
0
0
0
1
1
1
1
1
1
1
1
2
3
1
0
1
2
1
1
1
2
3
2
2
2
1
1
1
1
1
1
0
0
2
1
0
2
2
1
1
1
2
3
5
2
1
0
0
1
2
2
1
1
1
1
2
1
0
1
2
1
1
1
1
1
0
1
2
2
1
2
1
1
1
2
2
1
1
0
1
1
0
0
0
1
1
1
2
1
3
2
1
2
1
1
0
1
1
2
6
16
10
17
8
10
12
8
4
3
3
3
3
2
4
3
3
2
1
1
1
1
1
0
0
1
1
1
1
2
2
211
211
210
212
212
212
212
213
212
212
212
212
213
214
214
213
213
212
213
211
212
213
212
211
211
212
210
211
211
210
209
210
210
210
209
209
209
208
208
208
208
207
206
207
206
205
203
205
205
202
210
148
24
3
3
1
0
1
0
1
2
1
0
1
1
1
2
1
1
1
0
2
3
2
2
2
2
2
2
0
1
1
2
2
5
25
9
2
12
11
1
19
30
1
0
3
6
48
17
6
16
37
11
4
14
19
7
7
1
1
8
6
10
6
1
7
6
1
1
0
2
3
30
13
2
6
3
37
16
5
9
19
3
3
1
2
5
25
17
2
2
2
1
1
1
0
0
1
0
1
0
1
1
2
2
1
1
1
0
0
1
0
1
1
0
1
0
0
1
1
1
2
1
1
2
1
0
0
1
1
1
1
2
2
1
1
3
1
2
2
1
2
1
0
2
1
1
1
1
0
2
2
1
1
0
2
2
1
2
2
3
2
3
2
1
3
2
3
1
2
0
1
2
1
2
1
1
2
3
1
2
1
1
1
1
2
2
1
1
1
1
1
2
3
2
2
1
1
0
1
1
2
1
1
1
2
3
1
0
1
0
1
1
2
2
3
4
2
8
12
17
4
7
13
14
6
7
6
2
2
2
2
3
2
3
2
2
1
1
1
1
1
1
2
1
1
1
1
1
212
212
211
212
212
212
212
214
214
214
214
213
214
215
215
215
214
214
214
213
213
214
213
213
212
213
212
212
213
211
212
211
211
211
210
210
209
208
208
209
209
208
208
209
208
207
206
205
205
205
175
58
5
2
2
1
2
1
2
2
2
1
2
1
0
1
2
1
0
1
0
1
2
1
3
2
3
2
2
1
2
1
1
1
5
27
10
3
29
17
2
21
38
1
1
4
10
50
17
5
10
20
6
3
20
20
7
6
1
3
12
4
2
3
3
4
4
2
1
1
5
5
40
8
2
8
16
44
7
10
22
9
2
2
2
2
6
17
6
3
2
0
2
1
1
1
0
0
1
1
1
1
1
1
1
0
1
0
1
2
1
1
0
0
1
1
1
1
1
1
1
1
0
1
1
1
0
0
1
1
1
1
2
2
1
0
1
1
1
2
3
1
1
2
2
2
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
1
1
2
2
2
1
0
1
0
1
2
1
2
1
1
1
1
1
2
2
1
2
0
1
1
2
1
3
2
2
1
3
2
3
2
1
0
0
1
2
1
1
0
2
2
1
1
2
1
1
1
2
2
2
1
2
3
10
10
5
3
6
6
5
8
3
2
1
2
4
2
1
2
2
1
1
0
1
0
1
1
0
1
1
1
0
1
214
214
213
213
213
212
213
215
216
215
215
215
216
217
216
216
215
215
215
215
215
215
215
214
214
214
213
213
213
212
213
212
211
212
211
212
211
211
210
210
210
210
209
209
209
208
208
209
202
199
84
9
2
1
0
1
0
1
3
1
1
1
1
2
1
2
1
1
1
1
1
2
3
2
2
2
2
0
1
1
2
1
1
2
3
24
9
2
29
26
2
22
46
2
1
7
11
51
19
3
17
29
12
4
22
12
5
4
0
5
16
3
2
6
3
5
4
1
1
1
6
7
40
3
6
8
28
21
14
20
25
5
2
1
1
3
24
21
4
2
3
1
1
2
2
1
1
2
1
1
1
1
1
1
1
1
1
2
2
1
0
2
1
2
1
2
1
1
1
1
1
1
2
2
2
0
0
0
0
1
1
0
2
2
1
1
0
1
1
1
0
1
2
3
1
1
2
1
1
1
1
2
1
1
0
2
1
2
2
1
0
1
2
2
1
2
2
1
1
2
2
1
1
1
2
1
2
0
1
0
1
1
0
1
1
1
1
1
2
1
0
0
1
1
1
2
2
1
1
2
1
2
1
2
0
0
1
2
2
3
2
1
1
1
1
2
2
3
6
8
13
14
8
2
4
5
1
2
1
1
2
2
0
1
2
3
1
1
0
1
1
1
1
1
1
1
1
1
1
214
214
215
215
215
214
215
216
216
216
216
217
217
217
216
217
217
218
218
216
216
216
215
215
215
214
215
214
215
214
215
214
213
213
213
214
213
213
212
212
211
211
210
210
210
209
210
209
211
150
19
3
1
0
1
1
0
0
0
1
1
1
1
1
0
1
1
1
1
1
1
1
2
2
2
2
3
2
1
1
1
2
1
1
2
23
11
1
21
30
5
16
46
1
1
3
14
53
22
2
24
17
15
3
34
8
1
1
1
11
18
2
2
7
3
11
8
3
2
2
3
12
40
2
3
6
20
7
12
38
16
2
3
2
3
25
42
10
4
3
1
1
2
3
2
2
1
0
1
0
1
1
0
0
2
1
3
3
1
2
3
1
2
2
1
2
1
0
1
1
0
0
1
0
1
1
1
1
1
1
0
0
2
2
1
1
1
2
1
0
0
1
1
2
2
1
1
0
2
2
1
2
1
2
0
1
1
1
0
1
1
2
2
1
1
2
1
1
2
2
1
1
2
1
1
1
1
0
0
1
1
2
1
2
0
1
1
1
2
1
2
1
1
0
1
2
2
2
2
1
1
2
2
1
1
1
2
2
1
2
1
1
2
1
1
3
3
14
20
12
11
13
10
4
1
3
1
0
1
2
1
2
3
3
1
1
1
1
1
0
0
1
2
2
1
1
2
2
1
215
214
215
215
216
216
217
219
218
217
217
218
218
219
217
219
219
218
219
219
219
218
216
217
217
217
216
216
216
217
216
215
215
213
215
215
214
214
214
214
213
213
212
211
211
211
211
210
180
51
2
2
0
1
1
1
0
0
2
2
1
0
1
1
0
0
1
1
2
1
1
2
2
2
1
3
2
1
2
3
2
1
1
2
2
28
16
3
20
32
6
15
52
2
3
2
27
53
25
4
15
14
10
4
40
3
1
1
3
17
16
1
3
2
2
9
4
2
3
3
2
27
41
2
1
8
8
2
18
41
2
2
2
2
9
33
10
4
2
2
2
2
2
1
1
2
1
2
1
1
1
0
1
1
1
8
7
4
4
2
3
1
1
0
1
0
1
2
1
0
1
1
1
1
0
0
0
1
1
1
2
1
2
2
2
1
1
1
1
1
1
0
2
2
2
1
1
1
0
1
1
1
0
1
0
2
2
1
1
0
1
1
1
1
0
1
4
3
2
1
1
1
2
1
1
1
0
1
0
1
1
2
0
1
3
2
1
1
0
0
1
2
2
1
0
0
1
2
2
2
2
2
2
1
1
2
1
2
1
1
1
1
1
3
2
1
6
25
25
19
10
9
5
2
1
0
0
1
1
0
0
2
2
0
1
2
1
1
0
1
1
1
2
1
2
4
3
1
2
216
216
217
218
219
218
218
219
220
220
219
220
220
220
220
221
220
219
221
221
221
219
218
218
219
219
218
218
217
218
217
217
216
216
216
216
216
216
216
215
214
214
214
213
213
213
212
206
87
8
2
2
0
0
1
1
0
1
2
1
0
1
1
2
0
1
0
0
2
1
2
4
2
2
1
2
1
3
3
2
1
1
0
1
3
27
25
2
11
17
13
17
56
8
2
2
34
61
31
6
16
21
11
6
38
2
1
1
1
22
8
2
3
1
5
12
2
1
1
8
6
34
33
2
5
25
8
5
47
23
1
2
1
2
8
9
2
2
1
2
3
1
3
2
1
2
1
0
1
1
0
0
1
1
3
7
5
2
1
2
1
1
0
1
1
0
0
1
0
1
1
0
0
1
0
0
1
2
1
1
3
3
3
3
2
1
1
1
0
1
0
1
3
3
2
2
1
0
1
0
1
2
1
1
1
1
1
1
1
1
2
1
1
0
1
2
2
1
2
2
2
2
1
1
2
1
1
2
0
0
1
2
1
1
2
1
0
0
1
0
0
1
1
3
2
1
1
1
1
2
2
3
2
1
1
3
2
3
2
1
0
1
2
2
2
3
12
20
31
17
7
4
2
2
2
1
1
1
0
1
1
1
1
1
2
1
2
2
1
1
1
1
1
2
1
2
2
1
1
218
218
218
218
220
220
220
220
220
221
220
221
220
220
221
222
221
221
222
221
221
220
219
220
221
221
220
220
219
219
218
218
217
218
217
218
217
217
216
214
214
214
215
215
215
214
212
140
11
2
1
1
0
0
0
0
1
1
0
0
0
1
1
1
0
1
1
2
1
2
2
2
2
2
1
1
1
3
3
3
2
1
0
2
2
20
31
1
12
18
16
17
60
16
2
2
23
54
35
9
17
33
14
12
38
2
1
1
3
25
4
2
2
2
4
16
1
1
2
4
5
40
22
4
10
19
6
10
30
8
2
3
3
2
2
4
3
2
1
1
1
1
2
0
2
7
2
3
2
0
2
1
1
1
1
2
2
2
2
0
1
1
1
2
1
0
1
0
0
1
0
0
0
0
0
1
2
2
2
1
2
3
2
3
2
1
0
1
2
1
2
3
1
1
2
1
1
1
1
1
1
1
2
1
2
1
0
1
0
1
2
1
1
1
2
1
1
1
2
1
0
1
2
1
2
1
1
1
1
1
2
2
2
2
0
0
0
0
1
0
0
1
3
2
1
1
1
0
1
1
1
3
2
0
1
1
1
1
1
2
3
3
3
2
1
11
17
11
20
9
1
1
1
2
1
1
1
1
1
1
1
2
1
1
3
3
3
2
2
2
2
2
2
1
1
2
2
1
1
218
218
218
220
221
221
221
222
222
222
223
222
222
222
222
222
222
223
224
223
222
221
221
222
222
221
221
221
221
221
220
220
219
218
218
219
218
218
217
217
217
215
217
216
217
215
191
49
3
2
1
0
0
0
0
1
1
1
0
2
1
1
1
1
2
1
1
1
2
2
1
1
1
1
2
3
1
1
2
3
1
1
0
7
11
8
18
2
11
13
20
22
61
26
3
2
15
49
41
27
31
17
3
16
30
3
2
2
8
22
3
2
3
2
7
14
1
1
2
7
8
45
14
3
7
5
4
5
3
0
3
2
4
8
3
2
1
1
1
1
0
2
0
3
12
9
2
4
1
1
2
1
1
1
1
1
1
0
1
2
1
1
1
1
1
1
2
1
1
1
0
1
1
0
0
1
1
1
2
1
1
1
3
1
1
1
1
1
2
1
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
1
2
1
1
1
1
0
0
2
1
1
1
1
1
2
2
1
1
1
0
1
1
1
1
1
1
1
1
1
1
2
2
1
0
0
2
1
1
2
2
2
3
2
1
1
1
2
1
1
2
4
2
1
1
2
9
14
17
8
3
2
4
1
0
1
1
0
0
0
1
1
2
0
1
3
2
1
1
1
3
2
1
1
0
0
2
1
1
1
219
219
220
220
220
220
222
223
224
224
225
224
224
225
224
224
224
224
224
225
225
225
224
223
223
222
223
223
223
223
221
221
221
219
220
220
219
219
218
219
219
218
218
216
214
213
109
10
2
2
1
0
0
0
1
0
1
1
1
2
1
1
2
1
3
1
1
2
2
5
2
1
1
1
2
2
2
2
2
2
1
1
1
15
31
12
5
3
27
31
25
27
54
31
2
2
5
37
48
36
48
11
2
28
33
1
1
1
8
11
2
2
2
2
13
11
3
2
4
18
14
52
14
1
2
3
2
7
1
0
1
0
3
7
3
1
1
1
1
1
3
3
3
4
6
3
2
2
4
16
3
1
1
1
2
0
1
0
1
2
1
1
1
1
0
0
0
0
1
0
1
1
1
0
1
1
2
2
2
3
2
1
2
3
0
2
1
1
1
1
2
2
3
1
1
1
1
1
1
0
2
2
1
0
1
1
1
1
1
0
1
3
3
2
3
3
3
2
2
1
2
1
0
1
0
1
1
1
1
0
0
1
0
0
1
1
1
0
1
1
1
1
0
1
1
2
1
1
0
0
2
1
1
2
1
1
2
2
1
2
4
3
2
2
3
6
15
9
3
3
2
3
1
0
1
0
0
1
0
2
1
1
1
3
2
1
1
1
1
1
2
3
3
2
1
0
0
1
0
221
221
221
222
222
222
222
224
225
225
226
226
225
225
225
225
225
225
225
226
226
225
225
225
226
225
225
224
224
224
222
222
222
220
221
220
220
220
218
219
219
219
217
218
220
185
34
3
1
1
1
1
0
1
1
0
1
1
0
0
2
2
1
1
2
2
1
2
2
2
4
1
2
2
1
1
2
3
1
1
2
1
9
24
41
17
7
5
28
29
37
37
46
42
4
3
2
26
64
43
34
18
3
30
22
2
3
2
18
11
2
1
1
3
20
12
1
2
10
23
18
52
8
3
2
1
1
1
1
3
2
1
1
0
1
2
1
3
1
1
1
2
6
14
8
9
1
2
4
19
4
2
1
1
0
1
1
2
1
2
2
2
2
1
1
1
1
0
2
1
1
1
1
0
2
2
3
2
2
3
1
3
2
0
1
3
2
2
1
1
3
2
2
2
2
1
1
1
1
1
3
3
1
2
1
1
1
2
2
0
1
2
1
3
2
2
1
2
2
1
3
2
0
1
1
1
2
1
1
1
2
2
0
1
0
0
2
1
1
2
1
1
1
2
2
2
2
2
1
0
1
1
2
2
2
1
0
1
2
2
1
1
1
2
4
9
14
9
3
4
1
1
1
1
1
0
0
0
0
1
0
0
1
1
1
2
2
2
1
2
1
1
0
1
1
1
1
1
1
223
223
223
223
223
223
224
225
226
225
226
226
226
226
226
226
225
225
226
226
225
226
226
226
226
227
226
226
225
225
225
222
222
221
220
220
222
221
219
220
220
219
219
218
220
107
6
1
2
2
1
0
0
1
1
1
1
1
1
2
1
0
1
1
1
3
2
2
2
3
3
3
2
2
1
1
2
1
1
2
3
4
7
34
46
12
4
3
9
33
51
49
37
51
5
3
2
20
70
46
38
16
3
35
23
2
3
4
20
9
1
1
0
1
22
9
1
3
21
10
30
49
4
4
2
1
2
0
1
2
1
1
1
1
1
1
2
1
0
1
2
1
5
11
12
6
1
1
2
2
1
2
1
1
0
1
1
1
2
2
1
1
2
2
1
0
1
1
2
1
2
1
1
1
2
2
2
1
1
2
1
2
3
1
2
2
1
1
1
1
2
1
1
2
1
2
2
1
1
1
2
2
1
2
1
1
0
1
2
2
3
3
3
1
2
2
2
1
2
1
1
1
1
1
1
2
1
1
1
0
1
1
2
3
1
1
1
1
1
1
2
2
1
1
2
1
1
1
0
0
1
1
1
2
2
2
1
0
0
2
1
1
1
2
8
16
18
13
5
4
2
2
0
0
1
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
3
1
1
1
1
1
224
225
225
225
225
225
226
225
226
226
226
228
227
227
227
227
227
227
227
228
227
228
228
227
227
227
226
226
226
226
226
225
223
224
222
223
223
221
220
220
220
220
220
223
187
30
4
2
1
2
1
1
0
1
1
0
1
1
2
1
2
1
1
1
1
1
1
1
3
2
2
1
1
1
1
2
1
2
1
3
2
9
13
49
60
20
3
4
4
25
36
54
33
49
6
3
3
10
70
59
52
22
1
34
18
2
2
7
26
5
3
3
1
3
24
7
0
3
8
2
39
17
3
3
3
1
3
2
3
1
0
1
0
1
2
2
3
2
1
1
2
1
2
10
5
1
1
1
1
1
0
1
2
3
1
1
1
1
2
2
2
1
2
2
1
0
0
0
0
0
1
1
1
1
2
2
2
2
1
1
1
2
3
1
1
1
2
2
1
1
2
2
2
2
1
1
0
0
1
2
2
2
2
2
2
2
0
0
1
2
2
1
2
1
3
3
3
2
2
2
1
1
1
0
0
1
2
1
1
0
1
2
3
3
2
2
2
1
1
1
0
1
1
1
2
1
1
1
1
2
2
3
2
3
2
1
1
1
1
3
2
1
2
6
17
22
16
12
7
2
3
1
1
0
0
1
1
1
0
1
1
1
1
2
1
1
1
1
0
1
1
1
0
1
1
1
1
1
2
224
225
226
226
226
226
226
227
227
227
227
228
228
227
228
228
229
228
228
229
229
229
229
228
227
227
228
227
226
227
227
227
226
224
224
224
224
222
222
222
221
222
218
221
113
8
4
3
1
1
1
1
0
1
1
1
1
0
1
1
3
2
2
2
3
2
2
3
3
2
1
2
2
1
2
2
1
3
2
7
5
12
20
53
70
35
5
7
4
36
45
66
46
34
4
3
2
3
63
78
62
28
1
33
16
1
4
9
22
2
2
3
1
8
27
6
2
2
2
1
21
4
2
5
2
2
1
2
3
2
2
1
1
2
2
4
3
2
1
2
1
2
4
2
2
2
2
1
0
1
1
1
1
1
2
1
0
0
1
2
2
2
0
1
1
1
1
1
0
1
1
2
1
0
1
1
0
2
1
1
3
1
2
1
1
0
1
1
3
1
3
3
2
1
2
2
2
2
1
1
1
1
1
1
1
1
1
2
1
1
2
1
1
2
3
2
1
2
2
1
2
1
1
1
1
1
0
0
0
0
1
1
1
1
2
1
2
2
2
1
0
0
1
1
2
1
2
2
1
0
1
1
3
4
3
2
2
3
1
1
0
0
1
4
16
21
15
12
3
1
2
2
0
0
1
1
0
1
0
1
1
1
1
1
0
1
0
0
0
1
1
2
2
1
1
1
0
1
0
226
226
227
225
226
227
227
228
228
227
228
230
231
230
228
230
231
231
229
230
231
230
230
229
231
230
229
228
227
228
226
227
226
225
225
225
224
222
223
224
222
223
222
189
39
4
5
1
0
0
0
0
0
1
0
1
1
1
1
1
0
2
2
2
3
3
2
1
1
2
1
1
1
2
2
3
2
3
4
49
48
20
32
52
73
69
15
15
4
37
73
113
118
55
5
19
5
6
57
99
87
19
1
16
14
2
2
20
19
3
1
1
1
11
27
4
3
2
4
2
5
4
3
2
1
1
0
0
1
2
3
2
1
1
5
7
2
2
2
1
2
2
4
1
1
2
1
2
1
1
4
3
1
2
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
2
1
1
2
3
1
2
0
1
0
0
1
1
2
2
1
2
3
1
2
1
2
1
2
2
1
0
2
1
1
2
1
1
1
1
1
1
2
1
1
1
1
2
1
2
1
0
1
2
1
0
1
1
1
1
0
1
1
1
0
1
1
1
1
2
2
1
1
2
2
2
2
1
1
0
1
0
1
1
1
2
1
2
1
1
2
2
3
1
1
6
15
20
16
11
3
3
2
1
1
1
1
1
1
1
1
0
1
1
0
1
0
1
1
1
0
1
1
1
2
1
0
1
1
2
1
226
226
226
226
227
227
227
228
229
228
229
229
229
230
229
230
232
233
231
231
232
231
231
231
232
231
230
229
227
227
226
226
227
227
227
227
224
226
225
224
224
223
228
125
13
4
5
1
1
0
0
0
1
1
0
2
2
1
1
1
2
2
3
2
2
2
1
1
1
0
2
3
1
3
3
1
3
4
11
106
103
39
44
37
97
96
20
21
8
29
80
119
185
120
20
26
9
19
67
117
81
9
2
3
6
2
9
33
13
1
1
1
1
15
30
3
2
5
8
2
2
3
11
7
2
1
0
0
1
2
0
2
3
2
18
7
2
2
1
0
1
1
2
1
1
1
1
2
2
2
2
3
4
1
1
1
2
2
1
2
1
0
1
1
1
2
1
0
0
1
1
2
3
2
2
3
2
2
1
1
0
1
1
0
2
2
3
1
2
1
0
1
2
1
2
3
2
1
3
2
2
2
2
1
0
3
3
2
1
1
1
1
3
3
2
1
2
2
1
2
1
2
2
0
0
1
0
0
0
0
1
1
1
0
1
1
2
3
3
2
2
1
1
1
1
2
2
0
1
0
1
2
1
2
1
1
1
0
1
3
4
2
1
6
18
23
21
11
11
6
2
3
4
2
0
1
2
2
1
0
1
1
1
1
0
0
1
1
0
0
0
1
2
1
1
1
1
0
1
227
227
227
227
228
228
228
229
230
230
230
229
229
230
231
233
234
234
232
233
233
232
231
231
230
231
231
229
228
227
227
226
227
228
227
227
226
225
224
224
225
223
199
44
3
3
3
0
1
0
2
1
2
1
0
0
1
1
2
2
2
1
3
1
1
2
2
1
1
1
1
1
1
2
1
3
12
5
35
161
155
84
47
41
80
128
46
22
21
30
81
119
166
171
61
35
15
33
84
120
48
3
1
1
8
5
10
38
8
1
1
1
2
21
34
4
9
9
2
1
2
3
23
7
1
1
1
1
2
3
2
1
1
3
7
2
2
2
1
2
2
1
0
1
1
1
1
3
5
2
0
2
2
1
2
1
0
2
1
1
1
1
0
0
0
0
0
0
0
1
1
1
2
3
2
1
1
1
1
1
2
1
0
1
1
2
2
3
1
3
3
1
1
1
1
2
3
3
2
1
1
3
2
2
2
1
2
3
3
1
0
1
2
1
0
1
1
1
1
2
2
1
1
2
0
1
1
1
1
1
1
2
2
3
2
1
1
1
1
1
2
3
2
2
2
1
1
0
1
0
0
1
1
2
3
2
2
2
1
1
3
2
1
4
24
26
22
19
13
9
5
3
3
6
3
1
1
2
1
0
0
0
1
1
0
1
1
1
0
1
1
0
1
1
1
2
2
1
0
228
228
228
228
228
229
230
230
230
230
230
231
231
232
232
233
235
234
233
233
233
233
233
233
232
232
231
229
228
227
228
228
227
228
228
228
227
226
227
227
224
224
110
11
4
2
1
0
1
0
1
2
1
2
1
1
0
1
2
1
1
2
2
2
1
1
1
1
2
3
1
2
2
1
0
6
18
24
57
162
171
144
40
77
80
159
108
21
49
28
69
109
124
172
90
54
31
41
80
112
46
10
6
9
27
18
21
35
4
2
1
1
2
35
35
12
19
21
3
9
6
3
8
1
0
0
1
2
12
12
2
1
2
2
3
1
3
3
1
2
0
1
1
0
1
1
2
2
2
2
3
2
2
1
1
1
1
1
2
2
1
1
1
1
1
2
0
0
1
1
1
1
2
1
1
2
3
2
1
1
1
1
1
1
1
1
3
1
2
2
2
2
2
1
2
1
2
2
1
2
2
3
2
3
4
2
1
0
0
1
1
1
1
1
1
2
0
0
2
2
2
2
1
1
0
1
1
0
0
1
1
2
2
1
2
2
1
1
2
1
2
3
2
1
2
2
1
0
1
1
0
1
1
2
2
2
1
3
2
1
1
2
3
12
28
26
21
19
15
11
7
3
2
3
1
1
1
1
2
0
0
1
0
1
0
0
1
2
0
1
1
1
1
1
2
1
1
1
0
228
228
229
229
230
229
229
231
230
231
231
231
232
233
234
235
235
234
234
234
234
234
235
234
233
232
231
229
229
228
227
228
228
228
228
229
225
226
226
226
229
178
33
5
2
1
0
0
1
1
1
1
1
3
1
2
2
1
1
1
3
5
1
1
1
1
2
2
2
1
3
2
2
2
5
12
17
62
79
92
151
194
93
110
134
143
175
36
60
32
77
81
87
109
116
46
59
60
79
111
48
9
4
30
93
53
41
41
5
6
1
1
3
44
31
23
33
21
3
13
4
6
6
2
1
1
1
3
6
4
2
1
1
2
2
3
7
1
1
1
3
2
3
2
1
1
3
8
6
4
1
1
1
2
1
2
1
1
2
3
2
2
1
0
1
2
1
1
1
2
1
1
2
2
2
2
1
1
1
1
2
1
1
1
1
1
1
1
1
1
1
2
1
2
1
1
2
2
1
2
2
1
1
2
1
0
0
1
1
0
1
0
0
1
2
2
1
2
1
1
2
1
1
1
1
1
1
2
0
1
1
2
1
0
1
1
2
2
1
2
2
2
3
4
1
0
1
2
1
1
1
2
1
1
1
2
2
2
2
3
4
4
3
18
29
28
27
23
15
12
10
3
2
2
2
2
3
1
1
1
2
0
1
1
0
1
0
1
1
0
1
2
2
2
2
1
1
1
1
229
229
229
230
230
229
229
231
231
233
233
233
234
235
234
235
235
234
235
235
234
234
234
234
233
233
232
229
229
229
228
228
229
228
227
229
227
228
227
227
226
86
22
6
1
1
0
0
0
0
0
0
2
1
1
2
2
3
1
2
7
11
1
1
1
1
2
1
1
1
3
2
2
6
29
44
29
83
96
89
68
141
192
156
184
191
175
110
55
74
98
79
45
35
113
56
82
87
102
144
56
22
11
57
142
109
89
66
9
11
2
8
9
61
30
24
27
6
15
13
5
8
4
1
1
1
1
2
16
6
2
1
0
1
1
7
8
1
1
1
2
11
7
2
1
2
5
9
2
2
1
1
2
1
1
2
2
2
1
1
1
1
1
0
0
1
2
2
1
1
1
1
1
2
1
1
0
2
1
1
1
1
1
1
2
1
1
1
1
0
1
2
2
1
1
3
2
2
3
3
1
1
1
2
1
0
0
2
2
1
1
1
2
1
0
1
0
1
2
2
2
1
1
2
1
1
1
2
1
1
1
2
1
1
1
1
1
0
1
1
1
1
1
2
2
1
1
2
0
1
1
1
1
3
3
2
2
1
2
3
2
3
10
24
29
30
21
22
21
12
9
4
2
1
2
3
8
1
0
0
0
0
0
0
0
0
0
0
0
1
1
2
2
2
2
0
1
1
1
230
231
232
232
232
231
229
231
232
234
234
234
234
235
235
235
235
235
235
236
236
235
235
234
234
233
232
229
229
229
230
230
230
229
228
228
228
229
227
228
180
26
10
2
1
0
0
0
0
0
0
1
1
1
2
1
1
2
1
2
3
3
2
2
2
1
2
2
1
1
2
3
14
37
64
132
30
86
110
95
35
80
189
203
219
191
117
108
103
142
138
119
29
10
71
111
123
143
141
166
57
28
23
67
112
116
119
75
15
25
5
33
50
83
25
8
7
8
20
5
8
36
9
2
2
1
1
4
22
17
1
2
0
1
2
3
1
1
1
1
1
9
3
1
3
1
3
2
2
1
1
3
2
1
3
1
2
1
1
1
1
1
1
1
1
1
0
0
1
1
1
1
1
2
1
0
1
2
0
0
1
0
1
1
2
1
2
1
0
0
1
1
1
1
1
2
1
1
2
2
0
0
1
2
1
1
1
0
2
3
2
1
1
1
2
2
2
2
2
3
1
1
1
1
0
2
2
2
1
3
1
0
1
1
0
1
1
1
2
1
1
0
0
1
1
1
3
2
0
0
1
1
1
2
2
1
2
2
3
2
3
8
19
26
27
29
29
26
20
10
10
3
1
1
1
2
3
1
1
1
1
1
1
0
1
1
1
1
1
1
1
2
1
0
0
0
0
1
2
230
231
232
233
233
232
232
231
232
233
233
235
236
237
236
236
236
235
236
236
235
235
235
234
235
233
233
231
230
229
230
230
230
229
229
229
230
230
230
227
104
3
2
1
1
1
1
0
0
0
1
1
1
2
2
0
0
2
1
1
2
3
5
1
1
1
3
3
1
2
2
14
39
69
93
151
41
109
122
157
37
38
134
199
224
205
68
36
122
209
183
149
36
12
13
136
194
185
192
182
68
19
17
76
99
116
129
72
28
34
13
51
70
78
21
4
6
31
16
7
40
102
20
3
2
3
3
9
57
26
2
1
1
2
4
5
3
1
0
1
0
1
2
1
2
2
3
2
1
1
1
0
1
2
4
1
1
1
0
1
1
1
1
1
1
1
0
1
2
1
1
1
2
2
1
0
1
1
0
0
1
0
1
1
2
1
1
0
0
1
2
1
1
0
1
1
1
2
1
2
2
1
0
0
2
4
3
1
2
2
1
1
1
1
1
1
1
1
1
2
1
1
1
1
0
1
3
2
1
1
2
2
0
0
1
1
1
2
0
1
1
1
1
1
2
1
1
1
2
1
1
2
1
1
2
1
0
1
2
1
1
4
16
28
33
34
33
31
24
14
9
6
2
1
1
3
3
1
0
1
1
0
0
0
0
0
0
0
1
1
1
2
1
1
1
2
1
1
1
231
232
233
234
232
232
233
232
233
233
233
234
236
237
237
237
237
237
237
238
237
235
234
234
235
234
234
232
231
231
231
230
230
230
230
230
229
230
231
205
45
3
2
3
1
1
1
0
0
0
0
1
2
2
2
1
0
1
1
0
1
1
1
1
1
4
21
18
1
1
6
36
28
40
95
174
98
109
128
167
101
37
69
169
229
205
64
24
47
197
224
213
66
19
5
107
209
216
214
209
86
31
19
36
82
116
160
83
44
43
39
113
81
24
10
2
25
49
8
30
67
60
7
3
10
3
3
40
93
35
1
2
1
2
29
12
3
1
1
2
1
0
2
1
2
1
2
2
2
2
0
1
0
1
2
1
1
0
1
1
1
0
0
0
0
0
0
0
0
0
1
2
2
2
2
2
2
0
0
1
1
1
1
1
0
0
0
1
1
0
1
0
1
1
0
1
1
2
2
2
1
1
1
1
2
6
4
2
2
0
2
2
1
0
2
1
1
1
2
2
3
1
1
1
1
0
2
1
0
2
1
1
1
0
0
0
1
1
1
1
1
1
0
0
1
0
1
1
3
3
2
3
2
2
2
2
1
1
1
1
3
8
23
38
37
35
32
25
21
15
9
6
3
4
2
4
4
2
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
231
233
233
233
233
233
235
234
235
234
234
235
236
236
236
238
239
238
237
237
237
236
235
235
235
235
234
234
233
232
231
231
232
232
230
230
231
229
235
131
12
2
1
1
1
1
2
2
1
1
1
1
1
1
1
1
2
1
3
1
2
2
1
1
1
3
11
8
8
10
22
26
32
81
155
187
135
105
186
213
143
34
80
117
197
218
136
19
26
158
227
228
115
15
15
79
225
224
209
214
117
48
27
8
79
167
189
111
60
49
93
165
78
9
8
6
59
27
38
79
38
6
1
14
19
5
37
136
124
32
2
10
3
2
48
30
7
3
1
2
1
1
2
3
3
3
1
1
1
1
1
1
1
2
1
4
2
1
2
1
1
1
1
1
1
0
1
1
1
1
1
1
1
2
3
2
2
1
1
1
1
1
2
1
1
1
1
1
1
2
2
0
1
1
1
2
2
2
2
3
2
1
1
2
2
1
1
1
1
1
2
1
2
2
1
1
2
1
2
1
2
2
1
1
1
1
1
1
0
1
1
1
1
2
1
1
1
1
0
0
1
1
2
1
0
1
1
2
0
1
2
1
1
1
1
1
1
2
3
1
2
11
28
41
40
37
32
32
27
23
18
12
7
6
7
5
5
2
1
1
1
1
0
0
1
1
1
0
0
1
1
2
1
1
2
1
1
1
1
231
233
235
234
235
234
234
234
235
235
235
235
236
237
237
238
240
238
236
236
236
236
236
235
235
235
234
235
234
234
231
231
233
231
230
230
231
230
219
60
2
1
0
0
1
1
2
3
2
1
3
2
0
1
1
0
2
2
2
0
0
1
1
1
1
2
2
6
21
13
15
25
56
116
184
185
103
108
176
205
147
37
72
162
217
218
217
76
42
83
202
234
161
29
26
39
206
232
206
179
173
85
56
13
46
163
196
133
90
80
141
188
83
7
11
26
59
49
98
152
25
2
4
30
18
36
160
189
97
13
11
30
6
21
42
41
22
13
2
2
1
1
2
3
1
2
2
3
2
1
1
1
2
1
2
2
1
1
1
1
1
2
2
2
0
1
2
2
1
1
1
1
2
0
1
2
1
12
25
23
15
3
2
2
1
2
0
0
1
0
1
1
2
1
1
1
3
1
1
1
2
2
3
2
2
2
1
1
1
2
3
2
1
0
2
2
3
3
3
2
1
2
2
3
2
1
1
1
0
1
2
1
1
2
1
1
2
2
0
0
1
1
1
1
0
1
1
0
1
2
2
1
1
1
1
2
2
2
2
2
2
15
29
35
39
37
30
33
27
22
23
19
12
7
5
4
2
1
0
1
1
0
0
1
1
0
1
0
1
2
1
1
1
1
1
1
1
0
1
231
233
235
234
234
235
234
234
235
236
236
235
235
236
237
238
240
239
237
236
235
236
236
236
236
235
234
235
234
234
232
232
234
231
232
232
230
232
141
8
1
1
0
0
1
0
2
2
2
2
2
2
1
1
1
1
2
2
1
1
0
1
1
1
1
3
3
7
4
1
3
41
101
178
213
183
108
146
208
215
142
50
77
169
222
220
208
146
50
100
214
220
201
75
11
19
162
237
227
172
211
169
119
27
8
107
190
177
158
136
133
169
36
21
14
55
106
134
185
125
12
2
12
38
56
136
214
216
86
6
37
19
43
150
93
26
9
5
1
2
2
3
4
3
3
3
8
7
1
2
1
0
1
2
1
2
2
1
1
1
1
2
2
2
1
2
1
0
0
2
1
1
2
1
1
1
1
11
20
13
8
2
2
1
0
0
0
0
0
1
1
0
0
1
1
2
1
1
2
1
1
1
2
2
3
2
2
2
2
1
1
1
1
2
2
2
2
2
1
1
0
1
3
2
1
1
1
2
3
1
2
2
2
1
0
0
1
1
1
2
1
0
0
1
1
0
1
1
1
1
3
1
1
2
2
2
1
1
2
2
1
11
25
20
24
29
38
32
27
26
19
20
13
5
4
2
2
2
1
0
0
0
0
1
2
1
0
0
2
2
1
0
1
1
2
1
1
1
0
233
234
235
234
235
234
234
235
236
236
236
235
236
236
236
237
240
238
238
238
238
237
238
237
237
235
236
235
234
234
232
233
233
233
232
233
232
211
60
6
2
0
0
0
0
0
2
2
1
2
3
2
1
1
1
1
1
1
2
0
1
0
1
1
2
1
2
2
2
7
41
137
197
201
215
162
103
205
212
200
124
43
57
177
223
201
181
97
42
104
187
226
190
148
13
8
130
228
236
207
209
200
162
41
11
80
220
214
173
177
158
142
15
44
14
85
132
142
188
61
12
9
25
102
146
191
220
150
29
34
46
22
137
199
116
15
4
2
1
3
2
4
4
10
7
2
1
1
2
1
2
1
1
1
1
1
2
1
1
1
0
1
1
1
0
1
2
2
1
1
1
1
1
1
1
1
1
1
1
2
1
1
0
1
0
0
1
1
0
1
0
0
1
1
2
1
1
0
3
3
1
2
1
1
1
1
0
0
0
2
2
2
2
1
1
2
1
0
2
1
1
2
2
3
1
0
1
1
3
3
4
1
2
2
3
2
2
2
1
1
1
0
1
0
0
1
1
1
1
1
2
1
0
1
2
3
3
1
0
1
2
9
13
10
21
36
34
27
16
19
25
20
14
7
4
2
1
0
0
0
1
0
1
0
1
0
1
1
1
3
3
2
2
1
1
1
2
1
1
232
234
236
235
236
236
236
235
235
237
237
237
236
236
235
237
240
238
238
239
239
237
238
237
237
237
236
235
235
234
234
234
233
234
233
233
234
146
27
4
1
0
1
1
0
1
1
1
2
2
2
3
2
1
1
1
1
1
1
1
1
2
2
1
2
6
3
6
13
42
124
189
198
194
196
124
101
186
218
218
163
55
21
112
217
200
173
67
36
94
182
226
217
173
29
8
74
206
236
231
193
199
186
35
17
60
208
212
177
158
150
131
19
54
34
104
141
208
165
16
29
12
87
160
217
228
202
68
30
57
36
135
207
166
45
30
5
2
2
3
3
9
22
25
5
1
2
1
2
2
2
0
1
0
1
1
1
0
1
1
0
0
0
1
1
0
0
1
0
2
1
1
1
0
1
2
4
4
2
2
1
1
0
0
0
1
1
1
0
1
1
0
1
0
0
2
1
0
1
2
1
1
0
0
0
2
0
1
1
1
1
1
1
1
0
1
1
1
2
1
2
1
1
2
0
2
2
2
2
1
3
3
1
1
1
1
1
0
1
2
2
0
0
1
1
0
0
2
1
2
1
1
1
1
1
1
2
2
2
0
2
8
9
11
23
23
15
8
9
13
12
11
7
4
6
6
3
2
1
1
1
0
0
0
0
1
1
1
0
2
3
1
1
2
1
2
2
1
1
233
234
235
234
235
235
236
236
236
236
236
236
236
237
237
238
238
238
240
238
237
238
239
238
237
237
237
235
236
235
234
234
235
234
233
231
226
81
10
2
1
0
0
0
0
0
1
1
2
2
2
1
1
1
2
1
2
1
0
1
0
1
1
1
1
8
9
4
11
92
210
235
189
206
204
68
84
167
211
214
213
135
12
20
155
224
157
75
21
52
174
220
230
174
52
17
23
172
230
239
215
194
162
43
29
12
101
214
175
146
146
141
49
44
88
118
163
235
99
30
43
39
146
150
208
231
161
25
35
28
111
219
186
107
47
40
10
3
2
2
2
5
4
2
2
2
1
1
2
1
1
0
1
1
0
2
3
2
1
1
1
0
1
1
0
1
1
2
2
1
2
2
2
0
1
1
2
2
1
2
1
3
2
1
1
1
0
0
1
0
1
2
1
2
2
1
1
1
1
2
1
2
0
0
0
0
0
1
1
0
1
1
2
1
0
1
2
1
1
2
1
1
0
2
1
2
2
1
1
1
1
2
0
1
1
1
1
1
2
1
2
0
0
1
1
1
1
1
1
0
1
2
1
1
0
1
1
1
2
2
1
10
12
18
14
7
7
10
9
9
3
2
1
2
3
3
4
3
2
1
1
2
1
0
1
2
1
0
0
1
2
0
1
2
3
1
1
0
0
234
234
235
234
235
236
235
236
236
236
236
235
237
239
239
238
238
239
240
239
237
238
239
238
236
235
236
237
235
234
234
235
237
235
233
235
192
30
4
5
3
0
0
1
1
0
1
1
0
1
2
1
1
3
2
1
1
2
1
0
1
0
1
1
7
13
19
18
93
198
216
241
224
235
222
95
40
132
189
217
192
182
46
11
60
176
185
79
19
23
114
220
216
195
119
31
24
113
223
222
231
213
166
59
41
1
36
190
174
129
153
164
90
48
124
196
211
194
53
62
33
91
184
184
197
214
92
31
36
57
163
203
146
97
46
16
2
2
2
2
3
3
1
3
1
2
2
2
2
1
1
1
2
2
1
1
1
2
1
1
1
1
1
0
0
0
0
1
2
1
1
1
1
1
0
0
0
0
1
1
0
1
4
3
1
1
0
1
1
0
1
2
1
2
2
1
1
1
0
1
2
1
1
1
2
1
1
0
0
0
1
1
1
1
0
1
1
1
0
1
1
2
2
1
1
3
2
1
1
0
1
1
2
2
1
1
1
2
2
1
2
1
1
0
1
1
2
2
1
1
1
1
2
2
1
0
1
1
1
2
3
5
12
13
13
9
7
11
8
4
4
1
3
3
3
3
2
2
2
2
2
1
3
2
0
1
1
0
1
1
1
1
2
1
1
1
1
1
1
235
235
235
235
236
237
237
236
237
237
237
236
238
240
240
240
239
239
240
239
238
238
238
238
238
237
237
238
237
236
236
234
236
237
235
239
111
8
5
16
5
1
1
1
1
1
1
0
2
1
0
0
2
2
2
2
1
1
1
2
1
0
5
19
20
13
44
132
191
195
222
232
238
233
217
126
57
109
194
202
210
173
117
34
17
43
150
162
47
26
45
197
205
200
199
102
36
59
207
217
230
236
194
80
69
16
12
145
211
182
198
162
104
29
138
234
220
164
70
87
47
146
217
216
153
143
66
64
65
180
224
189
176
92
7
3
1
4
6
23
37
52
37
18
12
35
29
10
1
2
2
1
2
2
2
1
0
1
1
2
2
1
1
1
1
1
0
0
2
1
2
1
0
1
1
0
0
2
2
1
0
1
1
0
2
2
1
1
3
2
1
1
2
1
1
1
0
0
1
0
1
1
1
1
1
1
1
1
2
1
2
2
2
1
1
1
2
1
1
1
2
2
1
0
0
1
2
1
1
0
0
0
2
1
1
1
1
1
1
1
2
1
2
0
1
1
3
2
1
2
2
2
2
2
1
2
3
2
2
2
2
6
6
14
10
16
12
5
4
4
2
2
3
2
2
2
2
1
1
2
2
2
1
1
0
1
3
3
1
2
1
2
1
2
2
1
1
2
0
235
234
236
237
238
239
238
237
237
237
237
237
240
240
240
240
240
240
240
239
238
238
238
238
238
238
237
238
237
237
237
236
236
236
235
212
46
4
6
8
1
1
1
0
1
2
1
0
2
2
1
1
1
1
2
2
1
1
0
2
1
1
10
27
14
48
155
190
188
222
240
237
242
222
207
111
74
65
137
180
195
183
149
79
23
9
46
143
114
19
14
118
226
188
193
179
51
29
159
231
213
236
228
130
114
32
11
124
220
225
171
132
45
9
136
234
205
171
154
104
167
210
236
168
62
131
122
97
184
231
236
198
145
35
9
4
2
8
33
61
73
68
103
112
58
75
74
45
16
4
3
1
3
1
1
1
1
1
0
1
1
1
1
1
1
0
1
1
1
0
1
1
0
1
1
1
1
2
2
1
1
2
0
1
2
1
2
2
2
2
2
2
2
1
1
1
1
1
1
1
2
1
1
0
2
1
1
1
1
0
1
1
1
1
1
0
1
1
1
0
0
0
0
2
1
2
1
2
2
1
0
0
1
1
1
2
2
1
1
2
1
1
1
2
1
2
2
1
1
2
1
2
2
2
2
2
2
2
1
1
6
9
11
13
18
12
15
9
3
3
4
3
3
2
1
1
2
2
3
4
3
2
1
1
1
0
1
1
0
2
1
1
2
3
1
3
3
1
2
234
235
237
237
238
239
239
238
237
237
238
238
239
240
240
239
240
239
240
239
238
238
238
239
239
238
238
239
237
237
238
237
236
235
238
164
28
2
8
6
4
1
0
0
0
0
1
1
0
1
2
1
1
3
3
1
1
1
1
1
1
2
11
26
68
117
173
181
200
231
235
235
217
195
208
172
66
33
98
179
181
133
187
145
66
21
6
79
160
59
10
64
217
192
163
209
91
9
69
182
214
233
230
141
142
56
21
113
228
227
148
104
17
10
104
191
214
184
194
200
238
221
230
98
79
172
134
182
238
242
233
152
85
34
16
3
5
47
91
90
125
104
86
157
156
127
111
156
125
82
13
2
2
2
1
1
1
0
1
2
4
2
1
2
2
1
1
1
1
0
0
1
1
0
1
1
0
1
1
1
0
1
1
2
1
2
1
1
1
3
2
2
2
0
1
1
1
1
0
0
1
2
1
1
1
1
1
0
1
2
1
1
1
2
1
2
3
1
2
2
1
2
1
1
1
2
2
2
1
0
1
1
0
0
1
0
1
0
2
1
2
3
3
2
2
0
1
1
1
0
1
1
1
2
1
1
1
1
1
1
5
10
12
15
11
7
9
6
3
1
9
10
1
2
2
1
2
2
2
1
2
2
2
1
1
1
2
2
2
2
1
1
1
3
2
2
2
2
1
236
236
238
238
238
239
239
238
237
237
238
239
239
239
240
239
239
239
239
238
238
238
238
239
239
238
239
238
237
237
237
238
237
232
228
99
13
8
12
5
3
1
0
0
0
0
0
1
1
1
1
1
1
2
2
2
2
2
3
1
1
3
32
67
101
159
211
215
222
230
239
222
176
175
226
227
189
48
97
187
190
64
149
164
102
71
12
33
134
122
12
44
179
227
150
192
139
18
14
94
201
229
228
202
172
69
31
87
183
224
164
82
6
19
58
109
215
213
215
226
236
198
155
56
92
217
194
207
233
242
223
109
56
28
3
19
56
72
125
141
128
149
126
150
207
161
150
205
132
89
34
7
3
1
0
0
1
1
2
2
2
1
1
2
3
1
1
2
1
1
1
1
1
1
2
1
0
1
1
1
2
1
1
1
2
1
1
1
1
2
2
1
1
0
1
1
1
1
0
1
0
0
1
1
1
1
1
0
2
2
2
1
2
1
1
2
2
1
2
1
0
1
1
1
0
1
1
0
1
1
2
3
1
0
1
1
1
1
0
1
2
2
2
2
1
3
2
2
0
0
2
2
3
4
1
1
2
1
1
6
10
14
12
4
7
6
2
2
3
3
2
2
2
1
1
3
3
4
1
2
2
2
1
1
2
1
1
2
1
2
2
1
2
1
2
2
1
1
2
237
238
239
238
238
239
239
238
239
238
237
237
238
239
239
238
237
237
238
238
238
239
238
238
238
238
239
238
237
237
238
238
235
236
203
35
4
8
8
2
3
1
1
1
1
1
2
2
1
1
1
3
2
2
1
2
2
2
1
2
1
7
33
81
137
200
224
216
228
230
234
216
192
217
230
232
239
133
47
139
161
79
80
162
126
95
21
19
97
144
39
14
114
232
196
159
190
45
5
37
156
192
209
230
167
65
49
117
177
212
201
63
5
30
44
55
186
196
207
224
214
188
60
33
97
228
219
235
230
234
213
126
38
5
16
53
97
86
106
152
175
179
149
136
203
212
166
158
135
88
55
44
49
27
4
3
1
3
2
2
2
1
1
1
1
1
1
1
1
0
1
1
1
1
2
0
0
0
0
0
0
1
0
2
2
2
1
1
1
1
2
1
1
3
1
1
0
0
1
1
0
0
0
1
2
1
1
1
1
2
3
2
2
1
1
2
1
1
2
1
0
1
1
1
1
2
2
1
1
1
1
2
2
0
1
1
1
2
1
1
2
2
1
2
2
3
2
1
1
0
1
1
1
2
2
3
1
3
2
9
18
11
12
15
11
11
3
7
4
2
2
2
2
2
2
2
4
3
2
2
3
1
1
2
2
0
1
3
1
1
2
1
2
1
1
2
1
3
3
237
238
238
239
239
239
239
238
238
239
238
237
238
239
239
239
238
237
238
239
239
238
238
238
239
239
239
238
238
238
238
238
235
241
145
23
9
15
5
6
2
0
1
0
1
2
1
1
2
1
1
1
2
2
3
1
2
1
1
3
7
22
51
127
220
234
216
218
221
230
207
201
208
211
219
238
240
175
88
68
157
162
56
98
154
104
16
26
80
167
93
9
48
205
230
138
163
120
4
6
96
149
194
238
155
113
103
139
171
200
175
40
18
62
36
44
202
211
210
219
212
139
42
48
181
227
214
230
243
231
206
115
30
17
18
42
148
157
88
134
176
211
213
155
133
155
179
149
118
119
80
70
96
108
25
2
2
2
1
2
1
2
3
1
1
1
2
2
1
2
0
0
1
0
0
0
1
0
0
1
1
1
2
0
1
1
0
0
2
2
2
1
0
1
0
2
2
1
1
1
1
1
0
0
1
1
1
2
1
2
2
2
2
3
1
2
1
1
0
2
2
4
3
1
1
0
1
1
2
1
1
1
0
1
0
0
1
1
0
1
3
2
2
1
1
1
1
1
2
0
1
2
3
2
1
2
2
3
3
10
12
17
13
19
13
11
8
5
4
1
1
1
0
2
3
4
2
2
1
2
1
2
1
1
3
3
1
0
2
2
3
1
1
2
2
1
1
3
2
238
238
238
239
239
239
239
238
238
239
238
237
238
239
239
239
239
238
238
239
238
239
238
239
240
239
239
239
238
238
239
239
239
241
94
32
13
17
6
7
1
1
1
1
1
2
2
1
0
1
0
0
1
3
1
1
1
1
3
5
17
73
168
216
244
216
221
194
202
231
216
222
231
222
229
238
222
222
135
132
115
196
114
54
144
196
58
16
82
227
141
26
20
139
225
208
169
160
32
4
43
136
190
233
189
155
147
110
80
173
129
47
37
104
38
59
219
237
229
214
171
90
15
52
216
234
215
230
247
209
132
84
55
23
10
71
181
209
111
113
172
208
221
223
178
128
141
139
167
107
113
96
74
106
75
11
1
1
1
1
1
1
3
1
1
3
1
0
1
1
1
1
0
0
1
0
0
0
0
0
0
1
2
1
1
1
0
1
1
1
1
2
2
1
0
0
0
0
1
1
1
1
0
0
2
1
1
1
0
2
2
2
1
1
1
0
1
1
1
1
1
1
1
1
1
2
1
1
1
1
1
2
1
2
0
1
1
1
0
0
1
1
2
1
2
3
4
2
1
0
1
2
4
2
1
2
2
2
3
10
12
17
19
21
24
25
9
3
2
1
0
1
0
1
2
2
2
1
2
2
1
0
2
2
3
1
2
1
1
2
2
2
1
2
2
2
2
3
2
238
239
239
238
239
239
239
238
238
239
238
237
238
239
239
238
239
238
239
239
238
240
240
240
240
239
240
240
239
239
239
238
238
211
59
26
11
6
5
3
1
2
2
0
1
2
4
1
2
1
0
1
2
1
2
1
2
2
5
27
87
170
169
204
237
217
224
206
215
224
227
222
227
233
228
212
211
232
197
142
59
74
145
70
137
224
157
20
59
207
161
40
34
117
226
238
233
172
83
8
12
79
186
230
214
137
158
72
20
151
132
101
89
117
49
88
239
241
214
154
133
57
4
63
214
238
223
231
231
220
108
74
45
10
16
71
181
221
150
105
151
197
218
234
236
184
113
109
187
155
97
144
99
91
97
67
38
24
4
1
2
3
2
1
1
1
1
1
0
1
0
0
0
1
1
0
1
1
1
0
0
1
1
1
0
1
1
1
1
3
2
1
0
0
0
0
1
1
1
1
1
1
0
0
3
2
1
1
3
4
3
1
1
2
1
3
0
1
1
2
2
1
1
1
1
1
2
1
1
1
2
2
1
1
1
2
1
2
2
3
4
2
2
2
1
2
2
1
1
1
0
1
2
3
1
1
1
1
2
7
16
25
29
23
25
28
13
3
2
3
0
1
0
1
3
1
2
2
2
2
3
2
2
1
2
1
2
2
2
3
3
1
1
1
2
1
3
2
2
237
238
238
239
238
238
238
238
238
239
238
237
238
239
238
238
238
237
238
239
238
240
240
240
240
239
240
240
239
239
239
239
238
168
53
12
6
2
1
3
4
3
3
0
1
1
3
1
2
2
1
0
1
1
1
3
2
11
35
70
106
119
147
223
237
233
209
189
212
220
219
223
220
224
227
204
217
232
219
193
141
31
57
129
158
222
175
74
26
160
149
23
24
117
228
237
244
172
93
16
6
48
142
230
213
143
150
36
36
160
195
167
158
110
67
139
242
244
195
137
121
29
8
125
216
239
232
236
214
224
116
62
22
5
48
109
184
231
151
145
130
186
216
232
233
173
94
95
154
195
158
136
126
110
152
127
81
67
27
14
3
3
2
1
0
1
1
1
1
1
0
0
0
0
0
0
1
1
1
0
2
1
0
1
1
1
2
3
3
3
2
1
1
0
1
0
1
1
1
1
0
1
1
0
1
1
1
1
2
3
2
2
2
1
0
2
2
1
2
3
1
0
0
1
0
0
1
1
2
2
1
1
1
1
1
1
1
1
1
1
2
2
2
1
2
4
2
1
2
2
1
2
2
2
1
1
0
1
3
8
16
21
24
23
17
17
11
6
2
2
1
1
1
1
2
2
1
1
0
3
1
1
1
0
1
1
2
1
2
5
2
1
2
2
2
1
2
2
2
239
238
237
238
238
238
239
239
239
238
238
238
238
238
238
238
238
238
238
238
237
239
240
240
240
239
239
239
240
239
239
238
230
111
39
2
2
1
1
4
2
1
2
1
1
3
1
1
1
2
1
1
2
1
1
2
10
24
34
61
102
143
210
228
227
234
177
175
197
182
191
196
199
216
227
220
223
228
216
205
205
155
31
72
162
181
121
37
12
57
178
68
7
101
222
236
226
195
108
29
2
27
108
146
203
169
122
12
57
101
169
175
162
151
143
220
244
232
184
145
56
14
43
189
214
239
239
232
180
179
78
20
11
9
102
133
168
229
142
170
180
152
201
227
220
125
149
137
112
151
202
169
105
159
184
152
81
85
80
57
40
9
3
1
2
2
3
1
1
0
1
1
1
1
0
2
1
1
1
2
2
1
2
1
0
1
0
1
1
2
1
1
1
0
2
1
0
2
1
1
1
1
2
1
0
1
0
1
2
0
0
2
2
1
2
0
1
2
2
1
2
2
2
1
1
1
1
1
1
0
2
2
1
2
3
2
1
1
1
1
1
1
1
1
2
2
1
1
1
1
1
2
2
3
1
0
1
1
3
7
12
17
19
17
7
7
12
13
6
1
1
0
0
0
1
1
0
2
1
1
1
1
2
1
1
0
1
0
2
1
1
1
1
2
2
0
1
1
1
239
238
238
238
238
238
239
238
239
238
238
239
238
238
239
238
239
239
239
238
237
239
240
239
239
239
239
239
240
240
239
240
208
77
28
2
1
1
1
2
1
2
1
2
2
1
0
1
2
3
1
2
1
1
3
2
4
2
7
55
137
168
215
225
232
226
172
186
193
178
196
191
161
168
198
218
227
229
227
199
206
225
142
17
86
148
106
8
3
14
114
133
32
23
142
196
205
208
97
34
3
31
113
148
201
185
117
27
41
69
115
155
153
171
204
240
240
235
191
126
28
32
129
214
211
226
236
223
143
83
28
28
23
55
174
134
137
214
138
172
221
178
164
210
200
99
146
190
157
122
181
219
125
107
137
135
135
100
164
104
71
55
6
1
3
2
3
3
2
1
2
1
2
1
1
1
2
1
1
1
0
0
0
0
0
1
1
1
0
2
2
1
1
1
1
1
0
0
0
0
1
1
0
1
1
1
0
0
0
1
2
1
1
0
1
2
2
1
2
1
1
1
1
2
1
1
1
1
1
0
1
1
1
2
0
1
0
1
1
1
2
2
2
3
2
2
2
3
2
2
1
2
2
1
3
1
1
1
1
5
14
16
12
9
8
4
14
12
3
1
0
1
1
0
0
0
0
1
1
2
2
1
1
2
3
2
2
1
1
1
1
0
1
6
5
1
1
1
1
238
238
238
237
238
238
238
238
239
239
239
239
238
238
239
239
240
240
240
239
239
241
240
240
240
240
241
240
240
242
238
242
157
53
15
1
0
1
1
0
1
2
0
2
1
0
1
2
4
2
2
1
1
1
1
0
2
3
21
126
178
207
211
229
232
211
167
176
204
201
193
212
194
190
176
183
211
229
235
212
200
213
218
99
27
132
142
46
2
27
67
77
101
7
40
184
160
214
125
40
2
39
135
186
215
195
102
49
56
37
93
190
169
192
208
235
239
224
175
83
44
124
192
217
233
226
240
203
106
54
59
50
44
105
180
195
142
185
132
166
214
222
177
178
165
127
118
165
190
173
157
201
189
123
149
110
146
162
196
205
148
111
53
4
2
2
2
1
1
2
1
1
1
2
1
0
0
1
2
2
1
1
1
0
0
0
2
1
0
0
1
0
1
2
1
3
2
0
2
1
1
1
1
1
1
1
2
3
2
1
0
1
1
1
1
2
2
1
1
1
1
2
2
0
1
0
0
0
1
1
1
0
1
2
2
2
1
1
2
0
0
1
2
2
3
3
1
2
2
1
2
2
1
1
1
2
2
1
3
8
11
13
13
8
4
1
7
13
2
1
0
1
0
1
0
0
0
1
2
1
1
2
4
3
2
3
2
2
1
0
0
0
1
1
1
1
1
0
0
237
237
238
238
239
238
239
238
239
239
239
239
238
238
238
238
239
238
238
239
239
241
240
240
240
240
241
240
241
241
237
240
123
51
8
4
0
0
1
0
1
0
1
0
0
2
3
2
1
3
2
0
2
2
1
2
4
20
100
201
206
214
213
230
201
210
178
194
201
199
194
220
205
200
205
199
174
190
229
230
195
196
220
222
65
74
142
96
10
25
75
26
86
35
10
134
142
174
186
81
4
48
169
215
211
185
130
86
99
17
76
212
198
194
200
225
238
207
147
127
133
152
162
222
237
228
222
154
66
70
59
29
93
189
163
204
208
195
136
156
213
235
217
167
129
192
157
129
177
174
169
173
190
160
144
103
118
165
200
223
206
95
46
24
3
2
2
2
4
1
3
1
1
3
1
1
1
1
0
0
1
0
1
1
1
0
0
0
1
0
1
0
1
0
1
1
2
2
2
1
1
0
0
2
2
2
2
0
1
1
1
0
0
1
1
1
1
1
1
2
1
0
2
1
1
1
1
0
1
0
1
1
1
1
1
1
2
2
1
1
2
2
3
2
2
3
3
3
3
5
2
2
1
2
1
1
1
2
5
6
8
11
13
7
3
2
2
5
1
0
1
1
1
0
0
0
0
1
2
1
2
1
2
4
3
1
1
2
0
1
1
1
1
2
1
1
2
1
1
237
237
238
238
238
238
239
238
239
238
239
240
239
239
238
238
238
238
238
239
239
240
240
240
241
240
241
241
242
240
239
225
104
45
7
5
0
0
1
0
2
0
1
1
2
1
2
2
1
2
1
1
1
1
1
3
7
90
202
221
227
221
211
200
205
202
186
196
207
213
212
215
217
211
211
213
209
177
186
230
219
201
206
229
168
36
71
120
30
14
80
29
33
69
37
92
109
83
169
110
9
45
182
216
227
186
150
151
109
25
115
221
224
201
211
232
227
181
136
135
93
31
167
221
233
222
171
130
79
51
27
25
137
215
174
157
205
227
141
123
203
235
226
159
138
207
167
137
130
139
167
187
191
153
105
107
136
159
148
160
185
159
80
37
5
3
2
1
2
1
1
3
2
2
1
1
0
1
1
1
0
0
1
0
2
1
1
1
0
1
1
1
0
1
0
1
1
1
2
1
2
1
1
1
2
3
1
1
2
1
1
1
1
2
1
2
2
2
1
1
1
1
1
2
1
1
1
1
2
2
1
1
1
2
2
2
1
1
1
2
0
1
2
2
1
2
2
3
4
4
1
1
1
2
1
2
2
3
2
3
8
14
16
10
2
1
1
1
1
0
0
0
0
0
0
1
0
1
2
1
1
1
1
2
1
2
1
2
0
1
1
1
1
1
2
1
1
0
0
237
238
238
238
238
238
238
238
239
239
239
239
239
239
239
240
240
238
239
239
239
241
241
241
241
241
242
242
241
240
241
200
84
46
10
1
1
0
0
0
1
1
4
2
4
2
2
2
2
2
3
1
4
2
2
3
34
169
222
233
239
191
173
213
216
187
195
199
210
222
213
204
206
200
203
201
207
208
192
191
226
227
221
207
224
110
21
77
55
26
77
53
5
69
77
133
109
32
92
105
30
42
152
205
234
214
170
151
92
46
129
216
227
229
231
231
217
155
136
77
8
51
215
230
233
231
189
107
47
7
8
38
159
208
169
176
179
243
156
143
181
226
219
130
143
177
179
196
190
185
176
163
189
138
141
179
196
205
209
200
167
110
125
107
69
25
2
2
2
3
1
1
1
3
1
1
1
1
1
1
1
0
1
0
1
1
1
0
0
0
1
1
0
1
1
1
1
2
2
2
2
1
3
2
1
1
0
1
1
0
1
1
1
0
1
1
0
1
1
1
1
3
2
0
0
2
3
2
1
0
2
3
1
1
1
2
1
1
1
0
1
1
1
3
3
1
2
2
1
1
1
2
2
2
0
1
1
1
1
2
10
13
14
7
2
3
2
0
1
1
1
1
0
0
0
1
3
3
4
4
2
1
3
3
0
1
2
1
1
1
2
2
2
0
1
1
1
0
0
237
238
238
238
238
239
238
238
239
239
239
239
239
239
240
240
240
239
239
239
239
241
241
241
241
241
240
241
241
242
243
173
65
29
8
1
1
0
0
1
1
2
2
3
2
2
4
3
1
1
2
3
2
1
3
10
97
196
231
235
230
181
198
221
196
203
204
220
202
193
186
176
182
184
192
189
184
197
200
203
199
229
232
210
217
195
76
33
65
25
106
95
10
58
103
133
135
24
51
100
76
71
143
215
226
160
159
130
90
64
127
201
229
219
231
229
220
136
72
15
15
137
225
236
231
233
185
69
15
10
37
133
204
192
152
206
205
234
159
219
216
208
175
110
131
159
185
177
194
227
213
165
133
114
151
179
194
208
218
167
186
116
72
97
121
111
23
2
3
1
0
1
1
1
0
1
1
1
0
1
0
0
1
1
1
1
0
1
0
2
2
0
0
1
1
1
0
1
2
1
1
1
2
2
2
2
2
1
2
3
2
0
0
1
2
1
1
1
0
0
0
1
1
1
0
2
2
1
1
1
2
2
1
2
2
1
1
1
1
2
1
2
2
2
2
2
2
2
3
2
2
1
1
1
1
1
3
1
3
4
5
5
4
3
2
3
3
1
2
3
1
1
0
1
1
1
3
5
3
4
3
1
2
1
1
1
1
2
2
1
1
2
3
0
1
2
0
1
0
239
239
238
239
239
239
238
239
239
240
240
240
240
240
241
240
240
240
240
240
240
241
241
241
241
242
242
243
242
242
239
133
44
16
5
2
1
1
0
1
1
0
1
1
1
3
4
1
3
2
3
2
2
5
9
49
99
224
233
215
228
186
213
217
208
204
174
127
92
84
94
89
92
91
109
140
174
175
174
189
197
216
234
227
203
218
184
45
60
23
94
148
44
45
54
54
160
26
39
120
118
126
170
215
118
98
157
123
133
136
174
218
173
177
233
234
197
83
22
35
132
189
233
241
238
186
98
46
29
39
164
178
208
159
158
220
224
172
183
213
236
190
154
164
173
195
190
196
203
206
234
191
136
187
189
187
189
180
149
144
162
166
81
88
89
93
39
9
2
1
2
2
0
1
1
1
1
1
1
2
1
0
1
1
1
1
1
1
1
2
2
1
0
0
1
1
1
1
2
2
3
2
1
1
2
2
1
1
1
3
2
1
2
1
3
4
1
0
0
1
1
1
0
1
1
2
2
1
0
0
2
1
1
2
2
2
2
2
4
3
2
2
2
1
1
2
2
3
2
2
2
2
0
1
3
1
1
1
2
2
0
2
2
1
1
0
1
2
1
1
1
1
1
1
1
4
3
2
2
0
1
3
1
2
3
1
0
1
2
3
1
2
0
1
1
1
1
0
0
239
239
238
239
239
239
239
240
240
240
240
240
240
240
240
240
241
241
241
241
241
241
241
241
241
241
241
243
243
241
232
95
17
23
8
1
0
2
1
0
0
1
2
2
1
3
1
2
3
3
2
3
1
2
9
40
159
238
219
203
223
187
218
220
192
123
69
97
135
159
177
181
176
165
131
97
88
143
184
171
166
203
217
238
207
209
236
149
69
33
66
141
67
75
56
28
154
40
34
131
149
185
191
141
40
103
172
123
132
157
196
174
45
125
231
204
146
72
67
119
122
166
218
239
223
119
68
53
35
47
215
215
213
192
161
229
188
125
202
186
210
176
153
142
169
180
141
201
235
216
232
221
185
172
159
155
127
126
195
185
134
191
101
92
67
32
49
34
2
2
2
1
1
0
1
1
0
2
1
1
0
1
1
1
1
1
1
1
1
2
3
1
1
2
2
1
0
0
1
1
1
2
1
1
1
1
1
1
0
2
3
2
2
0
1
1
0
0
1
1
1
1
0
1
0
1
1
2
2
0
1
2
1
1
0
2
2
1
0
1
1
3
2
3
2
1
1
2
2
2
2
2
3
1
0
1
2
1
2
2
1
1
2
1
0
1
1
0
2
3
2
1
1
2
1
2
1
1
1
2
2
1
1
2
2
0
1
1
2
2
2
2
2
1
1
0
1
1
1
238
238
238
238
238
239
239
239
240
240
239
239
240
240
241
241
240
240
242
242
242
242
241
241
241
241
243
242
242
241
206
43
7
18
2
1
1
2
1
1
1
1
1
3
3
2
2
3
2
3
2
2
4
4
13
118
228
238
220
224
224
200
220
215
116
87
132
181
202
197
196
190
192
192
185
177
144
95
126
183
169
173
203
230
217
196
221
220
98
38
41
126
97
115
89
17
110
41
58
159
163
150
139
83
36
137
166
127
143
151
172
53
32
137
171
134
108
103
117
53
45
201
234
233
217
106
73
27
10
111
229
218
231
218
167
222
154
154
166
148
133
131
153
193
200
175
217
204
167
143
156
163
142
140
129
132
161
192
197
141
78
144
99
63
70
89
100
89
63
27
4
1
1
1
1
1
1
1
1
0
1
0
0
1
1
1
0
2
1
2
2
1
0
1
1
2
1
1
0
0
3
2
1
2
1
1
1
1
1
1
1
0
0
1
2
1
1
1
0
0
0
1
0
0
0
2
0
1
1
1
1
1
1
1
1
2
2
2
2
2
2
0
2
2
2
3
2
2
3
1
5
4
2
1
2
1
0
2
3
2
1
2
1
3
2
1
1
2
3
1
1
1
0
1
0
1
4
2
1
1
1
1
1
0
2
3
1
1
3
2
1
2
3
1
1
1
0
1
0
238
238
239
239
240
240
239
239
240
240
240
239
241
241
242
241
240
239
241
241
241
242
241
241
241
243
243
242
242
244
159
18
4
8
1
0
1
1
1
2
1
3
3
3
3
1
2
1
2
3
4
8
5
5
80
217
241
231
227
218
224
214
237
194
83
129
195
212
192
184
185
183
181
187
184
182
174
158
107
127
182
183
180
201
230
215
208
231
135
24
29
61
115
129
109
22
85
25
83
155
151
124
102
46
41
184
179
145
139
146
56
13
84
152
143
145
129
95
45
14
89
240
240
225
219
92
18
5
52
193
236
216
218
183
168
206
154
138
101
103
123
154
179
194
198
209
231
228
166
134
120
110
90
84
106
182
228
173
153
143
80
79
71
62
64
71
87
100
109
97
48
6
2
0
1
1
1
0
1
2
3
2
0
1
1
1
0
0
0
0
0
2
1
0
1
2
1
1
0
2
2
2
2
2
1
2
2
2
1
0
1
0
0
0
1
1
0
0
0
1
1
1
1
1
1
1
2
2
1
1
2
2
2
1
0
1
2
2
2
4
1
1
3
2
1
2
2
1
1
1
3
1
1
1
2
0
0
1
2
2
8
4
2
4
2
2
3
2
1
1
1
1
1
0
1
1
1
0
0
1
1
1
1
0
1
3
1
2
0
1
2
1
2
0
0
0
1
1
1
238
238
240
239
241
240
240
240
240
240
240
240
241
241
241
241
240
239
241
241
241
242
241
241
241
242
242
243
242
238
101
8
2
2
0
0
1
2
2
2
1
1
1
2
2
1
1
1
2
3
6
6
4
17
164
231
241
226
228
222
219
234
232
144
88
138
178
218
195
174
176
186
186
192
192
181
173
169
158
108
166
184
157
168
223
229
209
228
177
27
45
32
95
131
92
25
95
20
71
172
172
125
71
36
79
209
210
189
148
88
29
44
130
201
184
122
91
35
11
47
195
242
236
169
114
34
16
77
184
225
225
201
207
204
222
189
120
103
118
160
206
215
218
218
219
213
236
189
97
90
98
97
112
129
202
241
216
133
138
150
146
129
121
111
104
99
104
86
75
75
81
41
6
1
1
1
1
2
2
2
1
2
1
1
1
0
0
0
0
0
1
2
1
1
1
1
0
1
1
2
1
2
2
2
2
1
1
0
1
3
2
1
1
1
1
1
0
0
0
1
1
1
2
1
1
2
1
1
0
1
1
2
1
1
1
1
1
2
3
2
3
3
2
2
2
1
1
2
1
1
3
3
3
2
1
1
1
3
2
3
10
3
2
3
1
1
1
1
1
2
2
2
1
0
1
1
0
1
1
1
1
1
2
2
2
1
0
1
0
1
1
1
2
1
0
1
1
2
1
239
239
240
239
241
240
239
239
240
240
240
241
240
240
240
240
241
240
242
242
241
242
241
241
241
243
241
243
241
213
61
7
2
1
1
0
2
1
1
1
2
1
1
1
2
2
2
1
2
2
3
1
4
62
221
238
237
232
229
223
210
242
222
104
105
126
146
173
171
167
183
177
182
187
183
188
185
176
164
143
118
183
160
143
187
241
222
225
199
70
66
17
83
116
107
50
65
10
50
148
136
105
88
73
171
236
222
159
126
57
39
133
189
213
168
90
35
26
40
176
239
240
236
155
65
55
116
208
226
211
194
212
160
211
214
142
129
194
221
225
217
216
222
220
220
212
218
123
92
101
133
150
186
218
225
227
155
97
109
126
129
121
118
110
114
111
116
117
120
111
94
76
46
13
6
3
1
1
3
1
1
2
2
1
1
0
1
1
1
0
1
0
0
1
1
1
1
1
0
1
2
1
2
2
1
1
1
1
0
1
1
1
1
0
1
1
1
2
1
2
1
1
1
2
1
2
1
1
1
2
1
2
1
1
1
1
1
1
1
3
2
1
2
1
1
2
2
3
3
2
3
6
2
1
1
1
2
2
2
2
2
2
3
1
0
1
2
1
0
1
2
1
1
0
1
0
0
1
1
1
1
1
2
2
2
2
1
0
2
2
1
1
1
1
3
3
2
1
0
239
239
240
239
240
239
239
239
239
239
240
241
241
240
240
240
241
240
242
242
241
241
241
241
241
243
241
242
242
175
30
4
2
1
1
1
0
1
3
2
1
1
1
1
1
2
1
1
1
1
2
3
8
100
232
241
234
235
231
215
215
243
206
105
113
121
131
155
178
173
168
176
185
183
188
188
198
184
167
153
116
152
186
143
170
240
219
230
201
89
80
24
83
102
109
81
80
11
45
149
150
140
129
120
205
227
196
112
99
42
33
160
208
207
105
45
42
55
152
236
225
239
236
123
94
145
220
240
227
173
209
160
162
184
128
132
163
180
190
193
171
172
199
207
195
194
150
112
130
165
182
180
190
210
199
157
103
96
84
93
116
121
116
119
118
116
126
125
117
113
108
96
81
72
48
9
3
2
2
0
1
1
1
1
0
0
0
0
0
0
1
1
0
0
1
0
0
0
0
1
1
0
2
2
1
1
1
1
2
2
1
0
0
0
1
1
1
1
0
0
1
1
0
1
1
2
2
2
1
1
1
0
1
1
1
1
1
1
1
2
2
1
1
1
0
1
2
2
1
2
2
3
2
3
2
1
2
2
1
2
2
3
2
2
2
1
2
2
2
2
3
2
1
0
0
0
0
0
0
0
1
1
0
1
1
1
1
1
1
0
0
1
2
3
2
1
2
1
0
238
238
240
239
240
240
240
240
241
241
241
241
240
241
240
239
240
239
241
241
241
242
242
241
243
243
242
241
240
142
8
2
1
1
0
0
1
1
1
2
2
1
2
2
2
1
2
1
1
1
1
1
19
148
238
242
227
240
227
216
224
241
192
99
145
149
124
137
140
134
87
71
113
173
176
193
195
189
176
153
132
110
173
152
147
237
227
223
220
99
90
29
83
104
112
76
46
12
60
169
206
167
134
159
217
203
192
89
22
12
107
208
233
164
81
61
50
168
209
232
236
224
168
101
118
171
206
184
169
194
180
149
115
110
125
144
155
162
165
164
166
146
166
204
129
96
111
150
181
211
232
242
237
206
170
132
114
96
97
114
118
121
116
108
105
103
103
101
102
104
97
93
89
86
75
42
7
2
1
2
1
1
2
1
0
1
0
0
1
0
1
1
1
1
1
1
1
1
1
0
0
1
1
1
0
1
2
1
2
2
1
1
0
0
1
1
1
1
2
2
0
0
0
1
1
1
1
1
0
0
0
1
0
0
1
2
2
2
2
2
1
1
1
1
1
1
2
2
4
2
2
3
2
2
2
1
2
1
2
4
6
3
1
1
2
2
2
2
1
1
2
2
0
1
0
1
1
1
1
0
1
1
1
1
1
0
1
2
3
1
1
1
2
2
2
1
2
2
1
239
238
239
239
240
240
240
240
241
240
240
240
240
240
240
240
241
240
241
242
241
242
242
242
243
242
242
240
241
107
2
2
1
1
1
0
1
2
2
3
1
1
2
2
2
1
2
2
2
2
1
2
20
173
239
232
230
242
221
217
227
238
182
92
165
192
146
136
93
16
6
3
10
54
153
184
192
192
189
157
135
100
161
162
149
234
231
222
221
112
94
44
103
131
103
44
5
17
65
149
211
200
146
161
192
170
150
38
2
53
183
227
217
144
68
39
50
206
236
235
244
214
126
92
90
91
74
84
178
195
167
172
163
169
194
184
196
217
218
208
188
165
181
208
142
75
111
126
162
207
230
236
222
154
138
131
116
108
123
141
149
152
146
141
137
129
125
122
114
107
94
87
76
62
48
39
13
2
2
2
2
1
1
1
1
2
1
1
2
1
1
1
1
1
1
1
1
0
2
1
1
1
1
1
3
2
1
2
2
2
2
0
1
1
2
1
1
1
1
2
1
1
0
2
3
1
2
1
1
0
2
1
1
1
2
1
2
2
2
2
2
2
4
2
1
2
3
2
2
2
3
3
1
1
2
1
2
2
3
7
5
4
2
1
0
1
2
1
2
1
1
1
1
1
0
0
1
0
0
0
0
1
1
1
1
1
2
2
1
0
2
3
2
2
1
2
1
1
0
239
240
240
240
241
240
240
240
241
242
241
240
240
240
240
240
241
241
242
241
241
242
243
243
242
242
242
241
220
55
1
1
2
0
1
1
1
2
1
1
1
2
3
3
3
1
3
2
2
1
2
1
34
191
243
224
235
240
218
219
211
233
157
83
141
156
123
114
18
3
2
1
3
6
66
190
204
201
192
167
133
100
138
174
158
233
230
232
205
113
78
62
130
178
87
24
9
52
108
175
216
225
138
115
153
140
41
7
36
144
224
235
191
87
20
7
63
200
231
234
235
223
117
64
30
17
27
165
165
172
143
140
179
188
193
202
220
217
196
202
172
149
181
201
167
162
189
208
217
216
210
221
187
116
108
106
104
108
116
131
127
118
117
106
87
70
49
34
28
23
19
14
11
4
2
4
3
4
2
2
1
2
2
1
1
1
1
1
1
1
1
0
1
2
1
1
1
0
0
0
1
0
1
1
1
2
3
2
2
1
2
2
1
2
0
0
1
3
3
1
2
1
1
1
0
0
1
0
1
1
1
1
2
2
0
1
2
1
2
1
2
2
2
1
1
2
2
2
1
2
1
1
0
0
1
1
2
3
10
12
3
1
1
1
1
1
1
1
1
1
0
0
2
1
1
1
1
1
0
0
0
0
0
1
0
1
1
2
2
1
1
2
2
2
1
3
2
1
0
238
239
240
240
241
241
241
240
241
241
241
240
240
240
240
240
241
241
242
241
241
243
243
244
243
242
243
241
155
22
1
1
1
0
1
1
1
1
0
1
2
4
3
2
2
2
2
3
2
2
2
4
49
207
242
219
239
234
216
221
211
233
169
81
146
124
110
76
31
4
1
1
1
3
15
162
202
201
198
166
130
100
140
177
158
230
234
234
184
82
41
64
140
155
79
8
23
100
151
206
230
208
115
116
153
47
6
49
124
187
225
221
186
39
10
36
157
232
229
232
235
179
45
21
24
19
112
186
133
139
143
183
217
229
218
199
184
173
162
139
133
181
214
217
210
202
202
202
201
200
203
169
115
106
109
113
120
119
107
86
62
34
11
10
11
7
8
6
2
1
2
1
1
0
1
2
2
3
5
2
2
2
1
1
0
0
2
1
0
2
1
0
1
2
1
0
1
1
0
0
2
1
1
2
1
2
2
1
2
2
2
1
2
2
1
1
0
1
1
1
2
2
2
1
1
1
2
1
1
2
2
1
1
1
0
1
2
2
1
3
3
2
1
2
1
2
2
0
2
2
3
2
1
1
1
1
1
9
18
7
1
1
1
1
0
0
1
2
2
1
1
2
1
1
2
1
1
1
0
0
0
0
0
0
1
1
2
2
2
1
2
4
4
2
2
1
0
1
1
237
238
239
239
240
241
242
241
240
240
240
240
240
241
241
241
241
240
241
242
242
243
243
244
243
242
240
227
70
7
1
0
1
0
1
2
2
2
1
1
0
3
2
4
0
0
1
3
1
0
2
2
46
203
243
223
243
234
218
219
198
233
188
82
108
123
110
79
89
10
2
2
1
3
9
159
195
197
195
162
127
99
142
170
172
236
242
227
151
68
17
73
131
120
65
9
41
109
161
200
189
156
114
148
72
7
21
136
182
210
219
225
122
18
36
155
203
242
236
231
167
52
35
38
55
145
216
159
127
137
179
197
213
193
118
124
146
159
149
126
169
227
201
178
160
165
185
178
180
179
137
106
109
107
99
87
57
33
18
10
4
1
1
1
3
2
2
1
2
2
2
1
1
1
1
2
1
2
3
2
1
2
1
2
1
1
2
0
2
1
2
1
1
0
1
1
1
0
0
1
1
1
1
2
3
5
2
2
2
3
2
2
1
0
0
1
1
1
0
1
3
3
2
1
2
1
1
1
3
2
1
2
2
1
2
2
4
4
1
2
1
1
2
3
2
1
1
1
1
1
2
1
0
1
2
2
4
8
6
3
3
2
0
0
0
1
0
1
1
0
2
2
2
1
1
1
0
0
1
0
0
1
1
0
1
0
1
1
1
0
1
2
1
1
2
2
2
2
0
239
239
240
240
240
241
242
241
241
241
240
240
241
240
240
241
242
242
241
242
242
242
242
242
242
242
244
190
14
2
2
1
0
0
0
1
0
2
2
2
3
3
4
3
1
2
4
2
1
0
2
3
52
200
239
221
244
234
218
216
195
227
212
106
97
135
110
103
58
19
4
2
0
4
42
175
197
204
195
152
127
97
146
166
196
238
238
219
139
82
30
108
160
108
23
11
61
138
163
145
125
125
115
114
23
8
51
155
187
219
223
131
30
46
161
225
211
244
220
149
90
83
64
122
192
207
186
137
132
137
167
178
183
151
167
182
199
190
133
111
178
229
162
172
118
114
145
162
138
108
110
100
90
73
44
18
3
1
1
2
2
2
1
2
1
2
1
1
0
1
1
0
0
0
1
3
2
1
2
3
3
2
2
0
0
1
2
1
1
1
1
1
2
0
1
2
1
1
0
1
1
0
1
1
1
1
1
5
5
5
2
1
0
0
1
2
1
1
1
2
1
1
2
0
0
1
2
1
1
1
3
2
3
4
2
2
3
1
1
2
2
3
2
1
3
4
2
3
1
2
2
1
1
2
1
3
7
18
14
5
2
1
1
0
0
1
2
1
1
0
3
3
3
1
0
0
1
0
0
0
1
1
1
1
2
1
2
1
0
2
1
1
1
2
2
2
2
1
1
239
239
240
240
240
241
242
241
241
240
240
241
241
241
241
242
242
241
240
241
241
242
241
241
242
240
244
120
5
2
2
1
0
0
1
1
1
2
3
7
3
4
7
3
3
1
2
2
1
4
2
3
80
217
241
226
243
238
218
213
209
212
223
148
80
111
110
112
79
20
4
5
3
34
132
187
205
199
183
145
120
96
152
168
208
239
239
213
118
80
66
149
191
70
8
33
77
162
167
108
135
108
31
28
11
28
104
156
224
212
149
80
29
87
225
224
213
239
177
120
100
104
118
171
198
195
186
133
122
150
174
145
168
216
239
219
204
150
104
145
198
205
196
209
114
136
174
156
101
81
51
18
15
11
5
0
0
1
2
1
1
2
1
1
2
1
1
1
1
2
1
1
2
0
0
2
1
1
1
1
1
1
2
1
2
2
1
2
0
0
0
1
1
0
1
1
1
1
1
1
2
1
1
0
2
1
1
10
8
5
1
1
1
0
0
0
1
0
1
2
1
1
2
2
1
1
2
3
2
2
2
3
5
4
1
1
1
2
1
1
2
3
2
2
2
3
1
2
1
2
1
2
1
2
1
4
8
7
5
1
2
1
1
1
1
1
0
0
0
1
2
2
1
2
1
1
1
1
1
0
0
1
1
0
1
0
2
1
0
1
2
1
0
2
2
2
2
2
2
239
240
239
240
240
240
241
241
241
240
240
241
240
241
240
241
240
241
240
241
240
241
242
241
241
242
236
62
6
3
3
0
1
2
1
1
2
3
7
13
6
10
5
2
1
2
1
1
1
2
2
3
110
231
241
238
241
239
216
217
225
191
223
203
107
93
99
105
120
115
98
92
117
165
194
195
205
193
163
135
104
95
162
165
228
240
222
168
91
76
116
191
170
36
7
57
109
158
170
98
124
62
12
39
43
127
153
192
237
129
84
34
8
114
216
206
206
231
149
84
60
40
125
214
182
201
207
112
147
179
173
191
220
229
233
190
118
106
144
169
179
219
222
156
128
148
145
85
43
18
6
6
5
11
5
1
1
1
1
1
0
0
1
1
1
0
0
0
0
1
0
0
0
0
0
0
0
0
1
1
3
1
2
2
1
1
1
1
0
1
2
1
1
1
1
1
1
0
1
1
1
0
0
0
1
1
1
4
3
4
1
1
1
0
1
1
1
1
1
1
2
1
0
2
1
1
2
2
2
2
1
5
2
1
1
1
1
1
1
1
1
1
2
2
3
1
1
1
1
2
2
2
1
1
1
3
5
3
3
3
2
1
0
1
0
1
0
2
3
2
1
1
2
2
1
1
1
1
1
1
2
1
1
0
1
2
1
2
2
2
1
2
2
1
1
1
2
2
1
239
240
239
240
240
241
241
241
240
240
241
241
240
241
240
240
240
241
240
241
240
241
241
242
242
241
207
34
3
4
5
1
0
2
1
1
2
2
6
8
10
16
3
2
1
1
1
2
2
3
3
3
112
230
238
242
239
238
214
215
226
200
207
223
164
83
106
113
119
132
155
165
175
195
198
198
194
177
143
124
99
138
149
190
233
236
173
119
75
72
155
179
117
13
10
81
125
155
139
96
85
19
27
83
120
161
175
208
227
90
38
8
45
194
211
205
205
215
106
18
23
35
168
194
192
219
191
124
180
200
206
216
212
212
180
106
123
168
165
177
221
228
164
123
120
94
47
18
9
6
6
6
2
3
3
1
1
1
0
0
0
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
2
2
2
2
2
1
1
1
2
0
1
1
0
1
0
0
0
0
1
1
2
2
1
0
2
3
3
3
2
0
1
2
2
1
0
1
1
2
2
0
2
1
0
1
1
2
2
1
2
2
1
2
3
3
2
1
1
1
2
1
1
1
3
1
2
2
2
2
2
2
3
2
1
1
1
2
2
3
4
6
4
1
0
0
0
1
1
1
2
3
1
1
1
1
1
1
1
1
1
2
2
1
1
1
1
2
1
1
4
4
1
1
1
1
1
1
1
1
2
241
241
240
241
241
241
241
241
240
240
241
241
240
241
240
241
241
242
240
239
240
241
240
241
242
241
162
13
2
4
2
1
1
1
1
1
0
3
2
3
15
11
3
2
2
1
1
2
2
3
2
3
62
233
232
243
243
241
220
215
221
215
189
211
206
139
89
103
118
135
151
164
183
188
185
187
180
147
130
100
124
161
150
212
237
222
143
105
57
76
175
149
75
7
24
93
97
115
96
97
46
25
58
95
136
168
188
219
204
52
5
36
166
231
181
185
150
78
35
20
47
135
170
166
221
216
150
196
177
185
170
157
163
125
109
164
198
182
211
226
221
156
99
73
35
14
4
2
5
2
1
2
2
2
1
1
1
0
0
0
0
1
1
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
1
3
1
0
1
0
0
0
2
0
1
1
1
2
1
0
0
0
1
1
2
1
2
1
1
2
1
1
1
1
1
2
1
0
1
1
1
2
1
2
2
2
1
1
0
1
2
1
1
3
6
4
2
2
2
2
1
1
1
2
2
2
2
2
3
2
2
1
1
1
1
2
2
1
3
1
1
3
3
3
3
4
2
1
0
0
0
0
1
1
1
3
2
2
1
2
2
1
1
0
1
1
2
2
1
1
1
1
3
1
1
3
0
1
2
2
2
2
2
240
241
240
242
242
242
241
242
241
239
240
241
240
241
240
240
240
241
241
240
240
241
243
241
240
239
118
14
4
3
1
2
2
1
0
1
1
3
3
6
19
3
2
1
3
1
1
2
3
4
3
15
44
216
233
240
245
239
229
211
217
217
215
185
215
196
135
83
113
143
146
158
165
171
173
169
152
123
96
129
161
157
174
228
239
206
121
100
66
134
201
195
61
8
38
115
100
103
110
94
48
41
100
101
138
192
219
216
161
18
25
157
236
218
134
113
89
67
54
108
185
170
149
202
237
178
115
168
155
171
157
160
112
124
205
204
191
220
216
202
170
60
26
9
10
3
4
1
1
0
1
0
1
1
1
1
1
0
0
0
0
1
1
0
0
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
1
2
1
1
2
2
1
1
1
1
1
1
1
1
0
1
1
1
0
1
1
1
2
1
1
1
2
3
2
2
1
1
1
1
1
0
2
2
2
4
3
1
1
1
1
2
3
1
2
3
6
4
2
2
2
2
2
1
1
1
1
2
2
3
3
3
2
1
2
1
1
2
1
2
2
1
1
2
2
1
1
1
2
0
1
1
0
1
2
3
2
2
1
0
1
2
3
2
2
3
2
1
1
3
1
2
1
1
2
2
3
3
1
1
2
2
2
2
2
241
242
241
241
242
242
242
242
241
240
240
241
240
241
240
240
240
240
241
240
240
241
241
240
239
227
80
16
1
1
2
5
2
2
2
1
3
4
4
4
5
1
1
1
2
2
0
3
2
4
2
10
27
182
236
237
245
240
236
206
204
212
218
210
183
198
189
139
100
108
131
151
155
152
151
134
124
136
153
163
142
161
208
231
205
152
112
98
131
184
207
168
26
25
67
134
142
88
112
92
67
103
112
132
196
212
206
200
83
5
61
222
240
191
126
99
89
115
206
232
202
156
192
228
224
115
115
164
206
195
142
123
170
224
209
194
200
189
158
120
47
5
10
12
7
1
1
0
0
1
0
1
1
1
0
1
0
2
2
1
0
0
0
1
1
0
0
0
1
1
1
1
0
0
1
0
0
0
0
0
1
2
2
2
1
2
0
1
0
0
1
0
0
1
1
0
1
1
3
4
2
0
1
1
2
2
3
2
2
2
2
1
1
1
1
1
1
2
2
2
3
2
3
3
2
1
2
1
1
1
3
6
3
2
1
1
1
1
0
1
1
1
1
3
4
3
2
2
2
2
1
1
3
1
1
1
1
1
1
1
1
2
1
1
0
0
1
1
2
3
2
1
1
2
1
1
2
1
1
2
2
1
2
4
2
2
3
3
2
1
1
1
1
2
2
1
1
1
0
241
241
241
241
242
243
243
242
241
241
241
241
242
242
240
240
241
240
240
240
241
242
241
243
244
196
47
11
2
1
1
1
2
1
1
2
2
2
2
1
1
1
1
1
2
2
1
1
2
2
3
4
22
179
241
234
242
242
237
225
211
202
209
219
207
179
184
188
167
143
112
111
101
112
129
152
188
179
162
158
151
178
229
218
160
138
110
116
189
147
198
134
15
51
113
147
151
66
43
102
110
160
153
163
171
226
220
104
9
19
101
211
244
168
137
107
171
210
203
227
152
195
216
162
135
131
151
201
210
142
116
192
235
225
195
143
120
96
39
8
2
1
4
3
1
0
0
0
0
1
0
0
1
0
1
1
1
4
3
1
0
0
1
2
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
1
0
1
2
1
1
2
1
1
1
2
1
1
2
1
1
2
1
1
1
1
1
1
1
2
1
0
1
1
1
2
1
2
1
1
3
3
10
5
2
2
2
2
1
3
2
1
2
2
2
1
1
1
1
1
0
2
1
2
2
2
1
1
2
4
2
3
2
3
3
4
2
2
1
2
1
0
0
1
0
0
0
0
1
2
1
1
2
2
3
2
1
1
0
2
2
2
2
2
4
2
3
3
2
1
1
1
1
1
1
1
2
1
2
2
1
241
241
241
241
241
243
242
240
239
240
241
240
241
242
240
240
241
240
241
241
240
240
240
242
244
140
48
14
3
1
1
2
1
3
2
2
4
2
2
1
1
3
2
1
1
1
2
2
1
2
2
2
33
203
242
234
234
242
237
228
220
219
194
200
210
203
200
187
177
170
164
178
175
187
198
191
180
155
162
151
158
212
219
185
165
147
74
144
180
119
187
69
20
95
148
120
114
35
26
101
153
205
188
151
182
200
162
20
14
97
207
218
234
157
98
84
62
52
175
192
140
186
138
123
162
182
194
199
153
112
157
218
229
195
182
106
45
14
6
2
3
6
9
2
0
0
0
0
0
1
0
0
0
0
1
2
3
4
3
1
0
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
2
1
3
3
1
3
2
1
2
1
2
2
3
2
2
2
2
1
1
0
1
1
1
2
1
0
1
2
1
2
2
2
3
2
0
2
2
5
3
1
1
1
3
2
2
2
1
2
3
4
1
3
2
0
1
1
1
1
2
2
3
3
2
4
3
3
2
3
2
3
11
4
3
3
2
1
0
2
2
1
0
1
1
0
1
2
1
2
1
3
2
1
2
2
1
1
2
3
2
2
3
3
2
3
2
0
2
1
1
1
1
2
1
1
1
1
241
242
241
241
240
241
242
240
240
241
241
240
240
241
241
240
240
240
240
241
241
242
242
244
237
97
39
9
2
1
2
2
4
3
1
1
2
1
5
3
3
1
0
1
2
1
1
1
3
3
2
3
41
198
238
240
228
239
238
228
215
222
227
197
182
192
200
204
204
198
193
203
202
198
190
179
173
173
184
190
189
226
185
140
127
118
73
183
117
124
135
30
51
117
126
76
69
10
36
113
141
200
148
160
171
114
42
18
106
219
228
210
207
130
33
25
14
60
173
134
158
144
151
162
159
176
161
154
144
161
220
231
182
137
87
17
3
8
7
6
4
7
6
1
0
0
0
0
0
1
0
0
0
0
3
4
5
1
1
0
0
1
1
1
2
1
1
1
1
0
1
0
0
0
0
0
0
0
0
0
2
1
0
0
1
0
2
1
0
3
2
0
1
0
0
1
2
2
2
3
3
1
1
1
1
1
2
1
0
1
1
1
2
3
2
1
2
1
2
3
2
4
1
2
2
2
2
1
2
1
1
7
7
4
5
2
1
1
2
0
1
2
2
2
1
1
3
2
3
3
2
2
3
7
12
7
2
2
3
4
0
0
1
0
1
1
0
0
0
1
3
2
2
1
1
1
0
2
3
1
3
2
3
2
2
1
1
2
0
1
1
1
1
2
3
1
1
3
1
241
242
241
242
241
242
243
241
241
240
240
240
240
241
241
241
241
241
241
241
241
241
242
243
208
72
33
6
2
1
1
3
6
2
2
1
1
2
2
4
6
2
1
1
1
1
2
1
3
2
4
3
33
192
233
239
234
226
234
235
220
203
219
227
205
188
186
189
195
206
204
209
206
207
209
203
196
191
191
177
189
224
149
137
144
126
170
164
50
114
109
78
151
151
140
62
27
4
84
131
130
138
169
145
107
46
16
131
223
223
192
144
93
47
32
26
68
159
205
129
141
91
98
128
148
147
150
155
174
223
223
200
109
57
15
5
4
9
5
2
2
3
2
2
0
0
0
0
0
0
1
1
1
3
4
9
6
3
2
2
2
0
1
2
1
1
1
1
0
0
1
1
0
0
1
0
0
0
0
0
0
2
2
0
2
2
3
2
3
2
1
1
2
2
1
1
2
1
3
2
4
3
2
2
2
2
1
0
1
1
0
1
2
2
3
1
3
4
2
1
4
3
1
2
2
2
3
1
1
3
3
7
10
7
13
5
2
2
2
3
2
2
2
1
1
1
2
3
4
15
2
3
8
16
20
16
7
1
4
7
2
2
1
1
1
0
0
1
1
1
2
1
2
1
2
1
1
2
2
1
2
2
2
2
2
1
2
1
2
2
2
1
2
2
1
2
2
2
1
241
242
241
243
242
243
243
241
241
242
241
241
241
241
241
241
241
242
240
240
242
241
241
242
163
61
18
2
2
1
2
1
1
1
2
2
3
6
3
3
2
2
3
2
2
1
3
2
3
2
2
1
35
196
231
233
238
232
222
232
235
225
198
198
220
215
202
194
185
203
214
213
217
223
211
191
178
182
182
192
199
202
126
151
154
174
209
76
25
112
139
123
206
181
124
29
11
18
155
161
96
133
195
87
25
3
65
230
234
173
112
65
61
60
97
165
202
209
204
116
108
94
133
133
119
171
186
181
224
213
186
111
26
13
15
8
3
2
1
0
0
0
1
1
1
1
0
1
0
1
3
3
2
3
3
6
4
3
2
4
2
1
1
1
0
0
1
0
0
0
0
1
1
0
0
0
0
0
0
0
1
0
1
0
1
1
1
2
12
19
12
6
3
2
6
4
6
4
6
6
3
2
1
1
1
1
0
0
0
1
0
1
1
1
2
2
5
3
2
2
3
1
2
1
2
4
2
3
3
4
7
14
17
18
13
5
8
3
7
7
3
2
1
3
2
1
4
3
3
3
2
1
5
11
14
17
7
2
1
2
1
2
1
1
1
0
2
1
0
0
1
1
1
1
1
1
2
2
2
1
3
2
1
3
3
3
2
3
2
0
1
1
1
1
1
2
1
2
2
241
242
242
242
242
241
242
240
241
242
241
240
240
240
242
242
240
241
240
241
242
241
241
235
130
49
7
2
1
1
2
1
1
1
1
3
3
4
2
2
2
2
2
1
2
3
4
5
4
2
2
3
61
215
228
233
234
237
223
220
233
238
233
211
207
187
197
213
219
221
221
218
227
225
204
201
201
185
187
200
177
195
118
145
184
222
151
48
34
117
145
167
205
112
50
6
21
54
156
184
104
152
127
26
2
43
163
243
222
154
86
45
25
126
221
210
221
223
189
109
103
132
126
113
170
203
196
227
216
179
116
31
15
16
14
5
2
1
0
1
1
0
0
1
0
0
0
1
0
2
6
4
2
2
2
2
1
2
4
3
2
0
0
1
1
1
2
1
0
0
0
1
1
1
1
0
0
0
0
0
0
0
0
0
1
1
3
2
10
30
32
33
23
5
8
19
19
22
12
7
4
3
1
1
2
1
1
0
0
0
1
1
1
1
3
5
3
2
2
2
2
2
1
2
3
3
1
2
3
4
9
17
17
18
14
7
12
7
15
12
10
7
4
5
3
2
17
8
2
1
1
2
2
6
16
13
4
4
2
2
2
2
2
0
1
1
1
1
1
0
1
1
1
1
2
2
1
1
1
2
1
1
2
1
1
2
4
2
2
2
1
2
1
0
1
1
0
1
2
241
241
241
242
241
241
242
241
243
244
242
241
241
241
242
241
240
241
242
241
241
241
241
227
102
47
4
2
1
3
1
1
1
1
1
1
2
2
1
4
3
2
2
1
3
3
1
4
2
3
2
2
85
209
233
238
228
240
241
214
223
241
229
220
217
219
219
221
222
232
219
211
209
220
199
187
169
188
186
170
183
200
142
133
184
204
137
72
102
188
153
184
145
63
14
11
64
103
181
178
125
147
40
14
26
156
235
236
196
101
48
7
47
173
219
204
213
218
171
91
109
136
113
154
211
200
227
201
156
96
30
21
17
12
5
3
3
1
0
0
1
1
2
2
1
0
2
2
3
6
7
4
2
1
1
2
2
3
6
2
1
1
1
1
1
0
1
1
0
1
1
1
0
0
1
0
0
0
0
0
0
0
1
1
0
1
4
5
13
34
40
47
45
25
11
21
45
32
57
32
12
3
1
2
2
1
1
1
1
1
1
1
1
1
6
8
6
2
1
1
4
4
1
3
4
1
2
1
3
8
19
18
17
19
9
4
7
3
3
4
3
3
2
1
2
2
8
4
2
2
2
5
9
6
6
15
7
3
1
2
3
3
1
2
2
2
1
1
1
0
1
2
1
1
1
1
1
0
1
1
1
2
1
1
3
4
2
3
2
1
1
2
2
1
1
0
1
1
2
241
241
241
242
241
241
242
242
243
242
241
242
242
241
241
241
241
241
241
242
242
239
241
211
77
46
5
1
1
3
1
1
1
1
2
2
2
1
1
1
2
2
2
2
1
4
1
3
5
2
5
6
120
200
231
234
226
238
246
236
209
190
194
215
221
218
223
227
223
224
205
193
200
201
170
184
192
166
141
177
196
223
142
103
155
194
131
119
182
227
188
143
70
49
7
52
164
168
209
126
149
94
47
35
85
184
228
235
150
31
18
14
112
203
235
210
215
214
125
86
117
141
122
213
197
222
207
151
86
25
23
22
22
25
7
3
3
1
1
1
2
1
2
2
1
0
2
2
2
5
3
2
1
1
1
1
1
5
4
3
2
1
1
1
2
2
1
1
1
1
1
1
0
0
1
0
0
0
0
0
0
0
2
1
0
4
5
8
16
35
50
59
60
60
46
14
44
53
65
85
69
31
6
2
2
0
0
1
1
1
1
2
1
10
10
3
0
1
1
2
2
4
2
2
2
2
3
7
9
16
23
17
13
10
6
5
9
4
2
3
1
1
1
2
1
2
2
3
1
1
5
7
5
4
3
6
8
2
1
0
2
2
1
1
1
1
1
3
2
1
1
1
1
0
1
1
1
0
1
1
1
2
1
3
2
3
3
2
2
2
2
2
2
2
2
0
1
1
2
241
241
240
241
240
241
241
242
241
242
241
241
242
241
241
241
242
242
242
242
243
241
242
180
59
22
7
2
1
1
2
1
1
2
2
3
4
2
1
1
1
1
3
3
3
3
3
3
3
3
9
30
148
210
229
227
236
231
223
221
198
94
58
57
102
161
217
223
199
199
188
119
79
82
177
213
179
162
185
192
214
178
115
63
116
166
171
199
211
215
137
30
22
38
8
118
180
189
202
150
172
58
23
60
186
219
204
146
56
27
21
65
203
233
237
206
215
196
93
102
142
132
198
208
199
222
165
90
18
17
26
30
30
8
1
1
1
1
4
2
1
0
0
0
1
0
2
3
6
6
4
3
1
1
4
8
7
4
2
3
1
0
1
1
0
1
1
0
1
0
0
1
1
0
0
0
0
0
0
0
0
0
1
0
0
6
9
8
15
34
48
71
84
76
74
49
30
50
61
87
96
66
14
3
4
4
3
1
1
1
1
1
3
13
13
4
0
1
1
1
2
1
1
2
1
1
2
8
17
29
25
17
15
13
14
11
9
5
3
1
2
3
2
1
2
4
2
2
1
1
5
11
2
6
11
5
5
4
5
4
2
0
1
1
1
1
1
1
1
0
2
2
2
1
1
0
2
3
1
1
1
2
3
4
3
2
3
2
3
3
2
1
2
1
2
1
2
2
2
242
242
240
240
241
241
241
242
242
243
242
241
241
241
240
241
241
241
241
241
243
240
242
138
39
15
9
2
1
2
1
1
1
1
2
2
8
1
1
3
2
0
2
12
5
2
4
2
1
2
5
30
76
114
181
201
158
102
85
111
162
221
194
152
124
161
213
218
193
197
165
124
87
96
103
117
157
191
198
210
203
147
116
32
99
179
203
226
173
174
85
5
21
47
55
152
199
176
201
208
178
39
19
154
212
148
95
63
36
70
130
162
239
244
234
199
210
149
86
130
129
166
216
180
215
175
79
14
11
10
23
27
13
1
2
2
1
4
6
1
1
1
1
0
1
2
3
5
5
6
5
3
1
1
5
6
5
5
2
2
2
1
2
2
1
0
1
1
0
2
1
0
0
0
0
0
0
0
0
0
1
0
1
1
1
7
7
7
10
34
48
70
94
98
87
89
63
40
65
72
101
88
38
11
13
13
7
3
2
1
1
3
2
0
2
2
1
1
1
1
2
2
2
2
2
2
4
6
12
12
9
12
5
4
4
3
2
2
1
2
3
2
1
2
8
12
2
2
4
2
1
2
2
6
12
6
4
8
5
6
3
1
1
1
3
2
1
2
1
1
1
1
4
3
2
3
2
1
2
1
2
3
2
4
2
1
4
3
3
4
2
2
1
2
2
1
1
1
1
241
242
241
241
240
241
241
240
241
242
242
241
240
240
240
240
241
242
241
241
242
239
237
100
22
9
3
4
2
1
1
1
1
1
4
2
2
1
3
2
2
3
3
5
3
2
5
3
2
1
5
46
79
32
32
82
160
158
98
60
64
135
209
192
176
188
193
191
185
163
143
160
149
82
49
79
186
214
199
199
188
155
83
30
119
164
215
226
125
125
72
7
40
77
104
193
190
143
189
218
132
20
88
206
212
128
74
44
42
146
173
218
242
240
208
183
172
91
108
134
147
225
183
175
163
65
13
13
5
14
39
19
2
1
1
1
1
3
3
2
1
1
1
1
2
3
8
7
6
8
4
1
2
3
4
4
4
5
4
1
1
4
4
2
1
1
1
2
6
4
0
1
1
1
1
0
0
0
0
0
0
0
1
0
1
7
7
6
9
36
49
62
77
92
91
93
85
58
54
97
125
119
76
45
14
5
7
4
3
3
1
3
2
2
2
2
1
2
2
2
2
2
2
1
1
5
8
18
29
23
17
15
11
8
10
9
4
4
4
3
6
3
2
2
4
3
2
2
2
3
4
10
13
14
32
9
5
13
11
7
2
1
1
1
1
1
1
2
1
2
1
2
3
1
0
1
1
1
2
1
1
1
0
2
4
2
2
2
1
2
2
1
1
2
1
1
1
1
1
242
241
242
241
240
242
241
241
242
242
242
243
242
241
241
242
243
242
242
242
242
240
220
62
16
6
1
6
7
2
2
1
1
3
2
1
1
2
3
1
2
3
7
2
2
2
3
3
2
2
6
55
137
157
84
59
88
177
173
147
143
181
221
173
93
59
50
66
58
37
37
110
194
194
174
216
223
182
163
210
186
118
111
92
161
196
216
173
130
145
54
22
87
107
130
186
160
150
195
151
47
99
174
206
175
126
35
13
58
177
157
204
234
229
165
153
102
97
133
125
209
186
146
125
52
9
3
4
17
37
21
1
1
1
1
0
0
1
2
4
2
4
1
2
2
8
8
7
5
8
6
3
2
4
5
5
3
5
7
3
3
4
3
1
1
2
4
8
5
2
1
0
0
0
0
0
0
0
0
1
1
0
0
0
2
10
8
10
15
41
53
66
80
91
88
87
88
83
79
72
109
124
102
65
36
9
3
10
13
6
4
1
1
2
1
2
1
3
2
3
2
2
2
3
4
9
9
21
29
19
21
25
23
23
17
15
8
5
5
5
10
8
2
2
3
2
3
2
1
3
22
22
14
13
15
5
3
10
8
7
4
1
1
0
1
2
1
1
1
2
0
0
1
1
0
1
1
1
1
1
2
1
2
2
2
1
0
0
2
2
1
2
3
1
2
2
2
2
1
242
241
242
241
241
242
242
241
242
241
242
243
242
241
241
242
243
242
241
241
241
241
198
51
11
2
2
11
11
3
0
1
1
3
2
2
1
2
1
4
1
2
4
3
1
2
1
3
1
3
5
43
121
196
169
180
192
199
173
76
27
60
132
186
209
209
203
205
191
173
188
197
195
194
199
185
156
174
197
210
140
111
136
162
210
203
163
103
168
129
61
60
119
125
164
194
174
198
185
66
76
212
176
170
78
41
16
45
121
200
164
163
224
218
138
95
97
134
130
178
215
141
112
34
7
3
4
14
47
34
9
1
1
1
1
1
0
2
1
2
3
1
1
1
3
8
7
5
4
3
3
2
2
2
2
1
3
3
3
1
1
0
1
1
1
4
11
6
2
2
1
0
0
0
0
0
0
0
0
0
1
0
0
0
2
7
7
12
17
41
56
67
75
79
83
86
85
87
90
101
115
128
113
67
27
33
11
7
16
19
17
7
3
2
1
0
1
1
2
4
2
3
4
9
10
20
24
26
31
34
33
37
32
23
16
6
2
2
2
2
1
2
1
3
8
5
2
2
2
3
6
9
8
8
6
4
3
5
10
6
3
2
1
1
1
0
1
3
3
3
3
2
2
2
1
1
1
1
2
1
1
1
2
2
2
2
2
1
3
3
3
2
2
0
2
2
3
4
2
241
241
241
240
240
242
242
241
241
241
241
241
241
241
241
241
243
243
240
241
241
242
162
39
7
3
3
7
4
0
0
1
0
0
2
2
1
0
1
2
2
3
4
1
1
2
3
2
2
2
2
11
77
178
207
201
223
229
220
201
143
90
77
128
192
209
206
188
175
182
188
198
180
133
75
69
136
186
189
197
127
97
178
221
199
128
115
97
189
141
106
167
162
136
174
223
215
207
132
61
172
158
80
60
45
32
51
126
171
227
181
178
210
219
123
83
140
134
148
215
166
82
27
3
6
9
12
19
14
2
1
1
1
1
0
0
2
2
2
2
4
2
0
1
5
5
7
7
6
1
0
1
2
2
1
5
6
3
4
1
1
3
2
1
5
11
3
1
1
0
0
0
0
0
0
1
1
0
0
1
0
0
1
0
1
2
7
13
22
45
57
64
71
78
83
81
83
92
98
99
124
140
132
89
31
37
37
13
8
11
22
19
9
11
7
8
9
8
5
7
9
20
20
15
19
24
29
35
32
43
46
45
40
35
30
23
14
8
2
1
2
1
2
2
2
3
2
1
2
10
21
24
16
16
14
9
3
2
7
3
2
1
1
2
2
1
2
2
2
1
2
1
2
0
1
2
2
1
2
1
1
1
1
1
1
1
2
4
3
2
2
1
1
1
1
0
1
2
1
242
242
241
241
241
242
242
241
241
241
241
241
241
241
242
243
243
244
242
242
241
236
119
25
3
3
3
2
2
1
1
0
1
2
1
1
2
0
1
2
2
4
4
1
4
1
2
2
3
1
3
3
14
84
145
167
176
197
196
207
226
232
225
227
228
229
209
198
202
191
179
158
168
183
170
84
49
109
196
212
105
61
194
212
158
135
97
54
181
164
153
212
200
122
166
230
227
210
97
86
89
29
34
33
51
119
196
198
224
234
174
156
192
191
99
118
148
118
195
193
78
15
3
6
8
13
16
11
2
1
1
1
1
2
0
0
1
2
2
2
2
2
1
2
3
6
8
4
5
2
1
1
2
2
4
3
4
3
2
1
1
3
1
3
9
6
1
2
1
1
0
0
0
0
0
1
1
0
0
1
0
0
1
0
1
3
6
8
21
44
54
63
72
81
83
85
86
96
94
94
107
123
132
70
31
24
38
25
8
3
7
13
13
13
17
19
23
22
18
25
22
26
34
26
23
23
30
38
35
46
47
45
43
36
31
25
21
12
5
1
2
5
5
7
7
8
8
6
5
12
24
34
28
24
20
7
2
1
3
2
2
2
1
2
1
1
1
2
2
1
2
3
2
1
1
2
1
2
2
1
2
2
2
2
2
2
2
3
2
1
1
3
2
2
2
2
2
1
1
242
242
242
241
242
242
242
241
241
242
242
242
241
242
242
242
243
243
243
243
240
222
90
32
5
2
2
1
2
2
1
1
2
4
2
1
3
1
1
3
2
3
3
2
2
2
3
2
2
3
19
49
37
13
15
22
36
83
141
206
223
211
198
178
108
68
49
57
64
43
31
41
90
176
209
193
178
179
218
188
82
27
146
197
186
194
53
39
181
203
192
223
214
128
173
223
235
189
42
27
21
107
74
51
102
136
208
196
231
235
159
128
160
122
97
137
128
183
195
96
12
3
8
8
14
11
3
1
1
2
2
1
0
1
1
2
4
3
2
2
2
1
2
2
4
12
8
3
5
2
1
2
2
3
4
4
4
3
5
3
3
2
3
12
4
2
2
1
1
1
1
0
0
1
0
0
0
0
0
0
1
1
0
0
3
4
4
7
16
34
49
64
77
85
83
87
88
96
94
94
86
89
88
81
35
26
18
30
23
7
4
3
4
7
7
8
15
20
18
12
15
30
37
31
37
44
49
47
40
43
44
41
34
32
28
22
11
4
4
7
23
30
37
42
38
33
40
23
14
14
26
36
22
16
16
9
2
3
5
4
3
1
0
1
1
1
2
2
2
1
1
1
2
0
1
0
1
3
1
2
2
1
2
4
3
3
2
3
3
3
3
2
2
2
1
1
1
2
0
240
241
242
241
242
242
241
241
241
241
241
241
241
241
242
242
243
242
243
243
242
188
58
24
5
3
2
1
1
1
2
2
3
1
2
2
2
3
5
3
1
2
1
2
2
2
1
2
2
6
28
98
123
101
83
57
62
53
85
182
220
221
198
178
142
116
114
136
168
141
82
91
122
204
207
191
226
222
182
181
126
41
136
214
223
178
41
43
174
226
212
231
198
131
199
228
211
87
5
25
98
182
96
19
10
70
194
186
218
237
149
117
119
94
131
123
139
193
124
19
4
9
14
9
5
2
3
7
9
8
2
3
3
2
1
3
8
9
2
2
1
1
3
2
9
8
3
4
2
0
2
2
3
5
3
1
2
4
5
15
12
2
11
7
2
0
1
1
1
1
0
0
0
1
0
0
1
0
0
1
1
0
0
1
4
5
3
6
12
27
46
64
74
81
78
84
85
88
91
82
73
55
38
27
24
11
9
14
40
23
3
1
1
0
8
16
15
29
26
31
23
25
27
39
54
60
70
71
66
54
52
42
28
15
6
4
3
6
14
28
43
48
56
60
56
53
48
38
28
27
31
23
18
9
8
9
3
2
2
2
2
1
1
1
1
2
2
2
2
1
2
3
2
1
2
1
1
1
1
2
0
0
1
3
2
2
1
2
2
1
0
2
1
1
2
3
1
1
2
238
240
242
242
242
241
240
240
241
240
240
240
241
241
241
242
243
242
243
243
244
153
38
18
4
1
0
1
1
1
1
1
1
0
3
2
1
1
2
3
2
2
3
3
3
4
2
3
1
1
28
67
141
161
159
190
216
210
201
209
201
181
159
170
196
209
213
209
197
202
203
205
215
208
202
225
216
181
193
207
160
136
188
239
196
123
57
66
179
233
223
239
204
132
157
219
129
31
51
138
177
150
32
6
25
164
226
188
235
218
123
102
95
114
132
116
166
136
31
5
12
15
8
4
6
6
6
13
7
2
3
3
1
1
2
6
7
3
2
2
1
3
4
4
6
3
5
4
2
1
3
7
6
5
2
4
5
4
4
10
18
10
11
2
1
0
0
1
2
1
0
0
0
1
0
1
2
1
0
1
1
1
1
1
3
6
5
5
6
21
42
58
65
70
74
77
80
81
78
68
71
51
20
3
23
5
5
6
21
29
10
2
2
1
2
8
23
34
39
40
43
42
39
46
60
69
77
85
87
75
69
76
57
52
40
43
45
45
42
40
37
39
45
51
51
45
43
29
30
30
27
28
22
15
11
10
3
2
3
5
4
4
2
2
2
2
1
2
2
2
2
2
2
3
2
1
2
1
1
0
1
2
0
1
1
2
1
2
1
1
2
1
2
2
1
2
2
0
1
239
240
241
241
241
240
240
240
240
240
240
241
241
241
241
241
241
242
241
240
239
109
20
11
3
1
0
0
1
1
1
1
1
2
2
2
2
2
1
2
1
2
3
3
3
4
4
2
1
2
4
38
124
170
191
189
203
200
171
83
35
13
12
40
153
210
212
207
213
216
202
205
197
214
226
200
179
205
183
178
181
211
232
220
124
117
121
125
184
228
232
242
191
113
132
168
91
32
136
192
110
38
13
30
157
244
210
197
241
175
99
87
112
127
101
126
127
34
8
14
11
7
6
7
10
9
11
8
4
3
3
2
1
3
5
6
4
5
3
1
2
2
2
4
5
4
7
4
3
4
7
10
3
1
2
5
8
9
10
7
12
21
8
2
1
1
1
1
1
1
1
2
1
1
0
1
1
1
1
0
0
0
1
1
2
2
1
3
1
10
30
49
54
59
64
65
68
69
65
54
59
57
14
1
15
12
2
3
4
24
24
3
1
1
2
3
13
31
44
53
62
75
84
75
74
75
90
99
101
87
80
90
87
94
63
53
52
57
58
60
57
47
38
39
42
39
39
38
38
32
25
25
19
15
6
4
2
2
2
4
4
4
2
3
2
2
2
2
2
2
1
3
1
3
2
2
3
3
2
1
1
2
2
1
2
2
2
2
2
1
1
1
2
3
2
2
1
1
2
239
240
241
240
240
241
241
240
240
241
241
240
241
242
242
241
241
242
242
240
223
70
15
8
6
3
1
2
5
2
0
1
1
2
1
1
1
1
3
3
1
3
1
4
4
11
7
2
2
3
2
5
17
59
116
143
158
182
189
144
116
100
130
169
191
173
127
90
76
127
189
208
168
188
185
210
183
94
135
195
228
225
222
177
115
155
161
169
194
234
238
238
168
95
108
110
38
30
170
139
35
18
52
155
234
237
190
204
223
119
72
97
132
108
90
110
41
16
21
19
15
20
10
13
15
11
8
6
6
3
4
2
2
3
3
5
5
5
4
1
2
1
2
4
2
3
7
11
8
5
6
4
2
1
5
7
9
9
12
7
8
7
2
3
3
3
1
1
1
1
1
3
1
1
1
0
0
0
0
0
1
0
1
2
2
2
1
2
1
1
16
41
43
47
50
52
58
59
54
42
43
41
10
1
5
10
2
2
3
9
21
9
1
1
2
2
2
11
37
48
57
68
86
105
99
83
94
115
110
95
97
94
99
98
94
77
75
73
64
66
59
58
52
46
44
31
30
27
28
29
20
21
19
13
7
6
3
1
2
2
7
6
2
3
2
2
3
5
4
3
2
2
1
1
1
1
2
3
2
1
1
1
1
1
2
1
1
1
1
2
1
1
2
1
2
1
1
2
1
240
240
240
240
240
241
241
241
240
240
241
241
240
241
241
243
243
243
242
243
209
47
14
10
3
3
1
2
5
2
0
1
3
2
1
1
2
1
3
2
2
1
3
3
13
28
3
3
2
12
28
33
31
16
5
9
22
37
61
131
210
224
208
166
73
38
22
41
101
115
86
50
31
48
107
216
183
31
69
176
200
214
219
152
151
198
201
169
167
221
239
221
143
96
75
35
11
94
205
105
31
35
157
209
238
237
168
201
168
63
74
119
118
87
89
38
15
30
27
22
19
16
11
14
16
12
6
5
4
4
5
5
4
4
3
3
3
4
1
1
0
1
3
4
4
8
15
14
5
4
4
4
4
3
5
7
7
7
7
7
8
6
2
2
2
2
1
1
1
1
3
2
1
0
1
1
0
1
1
0
2
1
0
2
1
0
1
1
1
0
5
20
22
22
32
36
50
57
48
36
35
40
13
1
1
6
2
1
1
2
8
10
5
2
1
2
1
2
20
35
51
54
84
106
117
93
89
124
132
110
98
95
100
96
96
81
78
78
69
71
65
60
54
48
43
40
33
29
23
20
15
15
19
13
7
7
7
1
1
1
6
6
2
1
1
1
2
2
3
1
1
2
2
2
1
1
2
3
2
1
1
0
1
1
1
1
1
1
2
2
2
1
1
2
1
2
1
1
1
240
240
240
241
241
241
241
240
241
241
241
242
241
242
242
242
243
243
243
247
185
26
6
1
1
1
1
2
2
1
1
3
2
3
2
0
2
2
0
1
2
3
2
3
5
7
3
2
2
15
85
116
109
130
86
43
23
25
38
88
180
201
202
199
186
192
179
198
219
207
160
94
75
117
177
228
205
65
12
147
213
212
206
160
169
228
182
112
83
217
234
207
150
89
25
19
71
162
212
106
43
39
69
173
242
237
141
157
85
56
99
112
82
82
57
20
18
19
21
15
13
14
16
13
12
9
7
5
6
11
7
6
5
3
5
2
2
5
4
1
1
2
4
5
8
17
9
7
4
6
7
5
4
4
6
7
5
4
6
5
6
3
3
3
3
3
2
1
2
1
8
2
0
1
0
1
0
1
1
0
1
1
0
2
1
0
2
1
1
1
2
16
43
29
26
32
41
45
32
28
35
23
7
2
2
3
4
1
0
0
1
4
3
2
1
0
1
1
8
15
34
56
94
94
120
110
96
115
138
141
114
102
91
92
91
86
76
76
73
64
62
57
51
45
42
38
27
29
19
17
12
13
24
16
15
9
10
3
1
2
3
3
2
3
1
3
3
2
2
3
1
2
1
1
0
3
4
1
1
0
0
0
0
0
0
1
0
1
2
1
1
1
1
1
1
2
1
0
2
240
240
240
241
241
241
240
240
241
241
241
242
242
243
243
243
243
241
243
245
158
17
6
1
2
2
1
2
2
2
1
4
2
1
1
1
1
2
1
2
1
2
4
3
1
2
3
2
2
40
131
155
161
189
221
183
168
179
130
78
146
116
65
126
157
204
221
217
214
219
221
194
189
230
238
226
202
103
24
137
213
209
167
110
202
231
168
30
97
213
224
230
170
69
52
130
183
181
184
56
19
12
52
210
237
227
146
107
57
76
106
88
68
59
38
30
15
10
13
11
9
11
20
19
12
10
5
6
9
13
7
4
4
5
3
1
3
3
1
1
0
2
4
5
12
8
8
8
6
10
8
5
4
3
6
8
9
7
7
8
4
5
3
2
4
3
5
2
2
1
7
1
1
1
1
1
1
1
1
0
0
0
0
0
0
1
2
0
0
0
1
10
35
38
25
27
32
31
25
29
34
20
2
1
3
2
4
3
2
1
1
1
2
3
2
1
1
0
4
8
18
50
100
96
123
125
108
116
134
153
145
111
87
93
86
87
80
75
70
62
56
56
48
42
40
37
29
24
15
15
10
5
11
11
9
16
12
4
1
1
1
2
1
1
3
3
2
2
1
2
2
2
1
2
1
1
1
1
1
1
0
1
1
1
0
0
1
1
0
1
2
1
1
0
1
1
0
0
1
240
240
241
241
241
241
241
241
240
239
240
242
241
243
243
243
243
242
243
244
122
19
16
5
3
1
1
1
2
2
1
3
2
1
1
1
1
2
1
1
2
1
2
5
2
2
1
2
4
57
136
139
180
212
227
214
206
191
165
114
28
34
25
25
48
139
214
232
234
227
205
208
227
232
236
211
152
130
118
158
224
215
71
100
224
196
83
28
161
216
234
228
131
74
120
207
203
169
103
13
6
39
123
175
226
228
186
80
55
89
105
68
60
48
44
21
12
8
6
11
10
15
26
24
15
10
7
17
13
10
4
5
5
7
6
4
4
3
2
1
1
3
4
8
7
8
10
10
10
8
5
4
4
6
6
10
10
10
8
8
4
3
5
5
5
8
5
2
2
0
4
2
1
1
1
1
1
1
1
0
0
0
1
0
1
0
1
0
0
0
2
2
13
22
17
22
23
25
30
32
34
22
4
0
2
2
2
3
2
1
2
2
1
2
2
1
1
2
4
6
10
54
103
92
116
134
118
131
138
150
160
131
94
90
89
82
84
78
72
63
57
53
51
42
41
34
22
21
15
21
13
9
16
12
7
13
7
3
2
0
1
4
1
1
2
1
4
3
2
3
3
3
1
1
1
0
1
1
2
1
1
1
0
0
0
0
0
0
1
1
1
0
1
1
2
1
0
1
0
240
240
241
241
240
241
241
241
240
240
240
241
241
242
242
243
245
244
242
242
81
34
19
17
3
2
1
1
1
1
2
1
1
2
3
2
1
2
2
2
2
3
3
3
3
3
1
1
3
26
75
107
148
192
206
178
170
192
196
171
117
58
40
58
126
202
233
211
162
162
166
202
229
238
233
178
132
171
193
228
206
140
26
94
195
175
53
98
212
233
234
187
104
77
128
225
203
108
19
11
53
182
193
171
220
227
214
81
55
93
79
50
47
46
50
20
16
7
6
11
9
25
17
9
13
10
16
16
10
7
4
5
6
7
8
11
6
4
2
2
3
4
6
8
6
9
9
10
7
5
3
3
5
10
10
22
28
16
9
6
11
8
7
6
11
7
1
2
0
1
2
1
1
1
1
0
0
0
0
0
1
0
1
1
0
0
0
1
1
2
1
1
5
17
13
13
19
24
33
35
35
17
3
2
1
1
1
1
2
1
1
2
1
4
2
1
0
1
1
1
9
53
110
101
113
129
122
138
128
152
153
151
127
106
87
85
82
81
75
65
58
51
50
39
33
35
24
22
18
25
20
13
20
14
13
20
6
3
3
1
0
3
2
2
1
1
2
1
2
2
1
2
2
2
1
2
1
0
1
0
1
1
1
0
1
1
1
1
1
1
2
3
3
2
3
1
0
0
0
239
239
240
241
241
242
241
240
240
240
241
241
241
242
242
243
244
242
243
234
66
50
16
11
3
2
1
1
1
1
1
1
1
3
2
1
2
2
2
3
3
5
5
6
3
2
2
3
4
8
14
7
14
37
99
169
197
214
218
219
215
194
191
217
218
168
91
40
8
10
48
169
243
238
215
146
159
218
225
220
143
100
14
101
221
148
94
142
190
224
207
121
34
34
127
228
141
41
29
64
182
228
181
174
219
220
218
109
53
70
52
51
53
38
23
37
15
6
5
9
9
17
5
6
7
8
18
12
3
5
6
5
5
9
6
8
4
1
1
2
5
6
6
4
6
10
10
7
5
4
4
3
4
9
20
38
15
11
8
7
7
8
9
15
11
3
0
1
1
2
2
0
0
1
1
0
0
1
1
0
2
1
4
6
1
1
0
2
0
1
1
1
1
16
23
15
9
11
22
30
34
16
2
1
1
1
1
1
2
1
2
1
1
2
2
2
2
2
3
8
16
60
114
112
111
136
117
135
116
136
152
157
142
123
108
94
80
79
69
66
60
54
48
44
36
30
28
35
24
33
24
15
21
18
15
17
12
6
3
2
4
4
3
3
3
2
1
1
2
5
3
2
1
2
2
2
0
1
0
1
1
3
2
0
0
1
2
1
1
2
2
2
2
3
2
1
1
1
1
239
239
241
241
241
241
240
240
240
241
241
241
241
242
243
243
243
243
243
221
67
43
13
12
4
2
1
0
0
1
1
2
1
2
2
2
0
1
2
2
3
3
3
3
2
3
2
6
36
62
93
79
48
35
46
109
118
100
104
155
218
233
228
229
207
151
77
51
53
96
154
226
240
227
206
157
189
231
224
167
112
141
55
154
220
138
113
135
211
215
151
47
8
29
141
205
99
49
74
124
229
231
184
175
222
203
179
104
67
48
45
51
47
19
39
54
16
9
6
6
6
5
4
8
7
9
13
8
5
4
4
6
7
9
7
4
3
1
2
3
10
10
5
5
9
11
7
6
4
5
7
5
7
19
42
15
10
8
9
8
6
4
5
6
10
5
1
1
1
2
1
0
0
0
0
1
3
1
1
2
2
3
4
5
1
1
2
2
0
1
1
1
2
4
20
32
10
5
13
27
28
14
2
1
0
0
1
1
2
1
1
0
1
1
2
2
7
6
8
15
22
73
118
118
105
143
131
126
131
116
150
139
159
127
99
108
96
81
73
68
63
55
47
42
39
30
29
38
34
36
27
16
21
19
17
28
20
11
5
7
4
3
3
1
3
3
7
9
8
10
5
3
1
2
2
2
2
2
1
2
0
1
1
0
1
1
1
2
3
3
4
3
3
1
1
2
1
1
1
239
240
240
240
241
241
240
240
240
240
240
241
241
241
243
243
243
244
243
210
58
25
20
14
3
0
1
1
0
1
0
1
1
1
1
1
0
2
1
1
2
2
4
4
4
4
2
12
66
113
117
134
155
100
35
22
14
18
55
139
213
194
169
160
192
222
220
213
218
236
226
228
229
226
206
159
214
223
193
122
127
169
160
219
225
148
120
190
209
151
51
16
45
149
192
180
121
59
42
91
226
225
212
186
170
137
120
82
82
53
25
48
58
18
71
53
19
11
9
6
6
6
5
7
8
7
12
7
6
3
5
5
12
13
9
8
3
2
3
6
10
9
6
8
15
8
5
9
11
13
19
11
21
37
14
10
12
8
7
7
5
6
6
7
3
1
2
2
1
2
2
0
0
0
0
2
3
13
11
2
3
1
4
4
1
1
1
1
1
2
1
1
1
1
4
18
24
5
10
20
18
11
2
2
0
0
0
0
1
1
0
1
2
1
3
1
5
15
23
24
39
90
126
120
101
133
153
122
148
117
135
146
128
156
118
100
87
84
91
75
66
56
47
41
38
33
28
33
37
37
30
28
27
14
11
28
29
17
16
11
11
11
6
4
7
6
2
5
6
4
7
8
4
1
2
1
1
2
2
2
3
2
1
1
0
2
2
3
2
2
4
3
4
5
3
1
1
0
1
239
239
239
240
240
241
240
240
240
240
241
241
241
241
242
243
243
244
243
205
53
22
18
6
3
2
2
3
1
1
1
1
2
1
2
2
1
2
1
3
3
2
4
5
2
2
3
17
68
71
129
183
190
175
146
154
133
142
155
95
76
29
30
102
162
155
141
175
225
224
223
231
232
202
162
180
229
195
167
122
121
186
213
227
228
156
108
187
180
108
79
102
179
182
155
154
84
27
14
91
200
204
212
208
191
214
178
76
76
90
35
46
65
28
65
53
30
14
9
7
6
4
6
7
5
10
17
7
6
5
8
8
18
22
15
10
2
1
2
6
6
8
8
11
12
5
7
10
10
14
16
18
25
13
10
12
11
10
10
8
8
8
6
5
4
1
1
1
2
2
2
0
0
0
1
2
9
31
21
13
13
5
3
4
2
1
0
2
1
2
0
1
0
1
1
5
22
8
8
10
10
9
2
2
1
0
0
1
0
1
1
0
0
1
2
3
5
17
39
42
56
109
129
119
109
115
146
144
146
140
123
142
133
142
157
116
103
78
69
66
64
55
49
45
40
39
37
23
33
35
34
34
26
21
19
23
23
19
20
15
11
8
13
14
12
12
8
5
4
5
2
2
1
3
2
1
1
1
1
1
4
2
1
2
1
2
0
2
1
2
3
3
5
6
3
1
1
2
1
239
239
239
239
241
240
240
240
241
241
242
242
241
241
241
242
243
244
241
200
50
16
5
5
3
3
1
1
1
1
2
1
1
1
0
1
2
2
2
2
3
5
4
3
2
3
2
6
11
33
146
165
167
208
209
215
220
216
183
150
133
85
42
53
31
9
35
127
232
238
218
217
180
147
148
218
224
94
95
119
133
219
230
220
193
108
76
196
147
120
165
203
224
174
93
43
19
19
67
123
163
202
227
222
227
222
143
97
71
98
86
36
45
19
51
59
26
27
17
10
9
6
10
8
9
18
12
6
7
7
9
11
13
15
10
4
2
3
5
7
8
10
9
12
9
6
8
13
15
13
13
13
9
10
9
10
9
8
10
10
12
8
8
5
4
1
1
2
0
1
1
0
1
0
1
4
27
48
36
31
23
8
12
3
2
1
1
2
1
2
2
1
1
1
1
2
10
16
4
2
6
6
1
1
1
1
1
0
0
1
2
1
1
1
1
2
5
6
40
60
76
119
130
125
122
113
127
145
145
151
131
128
145
139
160
161
128
91
67
61
60
53
48
49
45
44
42
31
31
37
36
33
31
24
23
18
14
16
12
11
10
10
12
16
16
18
12
7
5
7
9
11
6
6
3
3
1
1
1
1
0
0
1
1
3
2
1
3
2
2
3
3
2
1
1
1
1
2
1
239
239
239
239
240
241
240
240
241
241
242
242
241
241
242
242
243
243
239
197
44
11
8
1
2
1
0
0
1
1
1
2
1
1
1
1
2
2
2
2
2
3
2
2
2
5
1
2
6
10
65
135
204
220
223
215
190
129
117
167
225
219
192
164
91
89
140
201
238
195
103
61
44
61
126
190
224
63
35
120
167
224
217
196
150
44
85
202
159
149
180
218
198
84
33
22
12
75
136
122
172
216
238
239
242
182
139
139
83
80
105
71
29
39
39
83
28
36
43
25
9
10
15
16
9
13
8
8
9
11
11
12
14
11
4
3
1
2
8
10
11
9
10
11
6
12
14
13
12
12
7
9
9
8
7
7
8
8
10
8
6
5
7
7
4
1
1
0
1
2
1
1
2
0
5
23
36
39
52
51
23
12
12
2
1
1
2
1
1
2
2
0
1
1
1
1
3
5
1
0
3
3
0
1
0
0
1
0
0
1
1
1
1
1
0
1
3
12
36
73
87
119
133
136
125
124
104
141
143
161
147
125
135
149
143
170
172
137
74
51
55
55
48
45
45
45
42
36
36
35
34
31
29
22
24
31
23
16
11
9
6
10
16
20
19
13
13
14
6
7
6
8
8
15
5
2
1
1
0
1
1
1
3
2
2
1
1
2
2
2
4
5
3
4
3
1
0
1
2
238
238
240
241
239
240
241
241
242
241
241
241
241
241
241
242
243
245
241
186
64
30
13
1
3
2
3
4
6
2
2
2
2
1
2
2
3
2
3
2
2
1
3
2
2
4
3
16
43
18
15
65
113
135
163
111
43
17
31
120
217
234
223
219
206
223
234
236
226
149
52
25
22
27
60
167
236
105
8
92
195
212
193
190
126
22
129
201
170
182
235
223
132
62
66
89
144
196
218
205
213
227
240
236
188
130
152
163
164
70
77
88
51
66
50
84
73
25
37
35
10
11
12
15
26
30
11
12
13
14
11
11
8
4
1
2
10
19
12
8
8
9
8
7
5
11
7
12
14
8
8
10
9
9
8
8
9
9
5
7
7
11
8
6
2
1
2
2
2
7
2
4
4
13
41
35
28
32
55
48
12
14
4
2
2
1
2
1
2
2
1
1
1
0
0
0
1
0
0
1
1
0
0
0
1
1
1
0
1
1
0
0
1
2
0
1
3
16
48
79
98
126
134
151
144
122
111
115
146
142
171
144
130
149
153
158
164
171
144
95
58
53
51
46
41
35
35
36
30
35
36
29
24
28
24
16
24
19
13
11
7
3
8
8
7
9
17
10
6
8
12
20
13
4
4
1
1
2
2
1
2
1
2
5
3
2
2
1
2
2
2
1
2
3
1
2
0
1
1
239
239
241
240
240
241
242
241
241
242
242
242
242
241
242
243
245
245
242
184
54
17
9
2
2
1
2
4
4
1
1
1
1
3
3
2
2
3
3
4
3
3
2
2
2
2
2
19
81
73
20
8
7
11
46
90
118
131
166
199
229
234
215
221
233
230
225
212
169
137
173
175
175
167
172
228
237
123
7
93
183
159
182
220
78
37
115
199
214
224
217
185
131
63
110
135
163
189
197
203
218
218
210
166
137
150
166
178
203
156
59
57
62
43
45
62
78
78
30
30
12
15
16
21
31
21
15
15
17
15
15
12
6
3
4
6
9
9
4
7
7
6
8
9
9
8
10
9
9
9
9
8
8
10
11
9
10
8
8
16
16
10
6
3
3
1
1
2
4
10
1
1
11
43
36
19
32
37
42
43
17
17
3
7
7
1
0
1
1
2
1
1
1
1
0
1
1
0
1
1
0
0
1
1
1
2
1
0
0
0
1
1
0
2
1
2
2
19
69
91
99
130
139
150
163
124
110
113
139
135
153
178
139
146
165
161
162
162
159
123
83
47
48
44
41
35
31
35
34
30
33
29
26
26
23
26
25
22
9
8
4
6
9
4
5
6
7
10
8
10
10
11
5
11
9
4
3
2
3
3
3
1
2
4
5
6
3
4
2
1
1
1
5
6
5
7
2
1
1
240
240
241
240
240
241
242
241
241
242
242
241
242
242
242
243
244
245
245
182
44
11
3
1
2
1
0
1
1
0
2
1
3
2
3
2
1
2
3
3
2
2
2
2
4
3
3
6
72
129
117
116
122
120
150
193
228
227
208
222
228
207
204
218
225
214
178
130
81
103
153
207
225
214
206
236
224
121
34
82
128
160
222
190
78
86
185
230
231
224
204
126
88
73
155
189
207
210
211
203
175
157
183
205
217
209
191
187
176
146
98
71
69
52
23
44
67
81
61
24
17
18
20
21
20
14
14
18
23
14
12
10
12
34
20
4
2
6
8
8
9
9
13
10
7
10
13
13
10
7
11
12
17
18
10
9
11
10
13
13
9
8
5
2
3
1
1
3
4
11
2
13
20
44
42
30
34
45
53
43
33
20
8
10
4
2
3
2
1
1
1
0
1
1
0
1
1
0
1
2
1
0
1
1
0
1
1
0
0
1
1
0
1
2
1
1
2
17
75
112
114
140
150
142
154
142
113
112
120
145
130
171
167
144
160
174
164
149
165
125
101
62
43
38
39
34
29
29
35
34
27
27
31
28
15
23
24
18
15
7
6
10
16
5
9
6
5
5
4
2
5
12
15
16
7
5
7
4
3
5
2
3
1
2
2
3
2
2
2
2
2
2
3
3
3
5
3
1
1
240
241
242
241
241
240
241
242
242
242
242
242
242
244
244
244
244
244
244
159
27
4
2
3
1
2
1
2
1
1
2
1
2
2
1
3
2
4
3
1
2
2
2
1
1
1
1
2
57
147
191
204
212
229
224
215
231
199
153
137
102
73
114
192
229
153
38
13
6
18
88
210
232
217
211
231
202
105
95
123
160
194
224
166
115
153
208
220
227
225
153
44
45
133
204
229
216
202
193
195
207
224
224
212
187
142
107
90
106
137
130
81
76
79
64
34
53
94
88
60
26
19
20
30
25
15
14
19
21
14
7
9
32
28
8
4
3
8
6
6
9
14
11
7
7
11
9
9
8
8
11
11
24
17
10
10
12
13
8
8
7
8
5
6
5
3
2
2
4
10
12
18
19
44
31
27
32
37
39
30
28
18
19
15
1
2
1
1
1
2
1
1
1
0
1
0
1
2
1
1
1
1
0
0
0
0
0
0
1
1
2
1
1
1
1
1
2
17
77
122
129
146
154
152
147
155
120
119
115
128
142
136
166
156
128
153
168
157
135
138
110
77
66
36
33
34
29
28
36
33
24
16
23
25
21
21
15
12
14
11
5
3
4
5
7
6
6
11
8
5
4
3
2
3
4
2
6
7
5
4
3
1
3
3
4
8
3
1
2
1
2
4
6
3
1
2
3
2
4
241
242
242
240
240
241
242
241
241
242
242
242
241
243
244
243
243
243
243
130
21
2
1
3
2
1
1
1
2
1
2
1
1
2
1
1
1
4
3
2
2
1
3
3
2
1
2
2
19
75
130
186
207
224
233
223
198
128
89
64
59
67
140
215
233
170
66
67
99
131
194
228
227
203
221
228
150
102
135
163
166
121
128
163
125
148
192
231
214
141
57
33
42
130
210
203
177
175
203
210
198
169
140
138
125
111
96
72
53
98
144
96
68
60
60
52
19
47
89
92
27
35
23
29
22
17
16
15
16
11
11
11
10
8
5
3
3
5
7
9
13
10
8
7
8
12
7
10
10
12
9
17
15
13
11
12
10
8
8
8
9
8
7
4
2
2
4
3
6
17
17
9
37
51
19
34
42
36
34
28
27
23
16
7
2
2
1
1
1
1
1
2
2
1
2
2
2
2
1
1
1
1
1
0
1
1
1
1
1
0
1
1
0
1
1
1
4
23
75
104
130
152
157
159
149
148
128
125
119
115
123
146
147
168
128
114
139
153
135
123
101
82
71
55
46
29
18
25
34
28
25
25
26
22
25
16
15
14
9
4
4
12
6
5
7
6
8
5
4
5
6
6
7
1
1
3
4
3
4
3
4
3
6
5
6
3
3
1
3
4
2
2
2
2
1
2
2
2
4
242
242
241
241
241
241
242
242
242
242
242
242
242
243
243
244
243
244
236
107
17
2
0
4
2
1
2
1
2
2
2
3
2
3
2
1
1
3
3
2
2
2
2
2
2
2
2
4
22
43
25
106
211
233
203
158
134
136
190
211
217
212
217
200
185
143
150
216
229
221
233
212
183
198
206
169
146
132
181
173
115
29
90
167
144
168
147
191
105
58
63
51
66
132
154
154
174
204
208
182
155
167
190
184
144
111
77
38
28
23
51
78
67
57
52
48
42
17
30
74
53
39
37
25
18
17
17
15
16
13
10
8
3
3
3
3
6
7
9
11
13
12
9
7
7
11
14
13
12
15
12
11
10
10
12
8
9
9
7
8
8
9
8
3
3
2
6
5
9
17
13
35
45
23
31
45
43
35
30
29
26
23
11
10
5
11
1
1
0
1
1
1
0
1
1
1
1
1
0
0
0
1
0
0
1
1
0
1
2
1
2
1
1
1
1
2
3
23
68
106
130
167
163
159
157
142
133
133
128
113
104
129
134
157
143
124
118
156
150
106
100
78
68
61
42
49
39
23
25
21
20
22
26
22
28
24
22
19
16
7
6
12
16
13
16
18
4
3
1
1
2
4
10
2
2
1
1
2
3
1
1
4
7
8
6
6
4
2
2
5
4
4
3
3
2
2
2
1
1
242
242
242
241
242
241
241
241
241
243
243
242
242
243
243
244
243
241
231
93
13
1
1
2
2
2
3
3
2
1
2
1
1
2
1
1
2
1
1
3
2
1
2
2
2
1
3
14
73
140
53
63
145
138
63
26
17
39
105
218
220
173
125
77
33
20
104
219
227
196
165
112
123
103
125
208
173
134
171
185
65
20
155
163
185
101
116
181
101
84
73
94
123
157
180
210
217
205
165
157
199
207
194
154
104
83
78
60
46
35
21
20
32
38
33
27
31
33
16
15
66
31
28
24
18
17
17
16
15
13
11
7
5
4
4
4
11
10
11
10
13
10
9
9
9
7
13
9
10
12
12
12
12
13
11
9
11
8
5
8
8
6
2
3
2
3
5
8
10
13
26
42
21
34
42
47
40
29
26
25
27
26
12
9
14
24
4
1
1
1
1
0
0
0
0
1
0
0
0
0
1
2
0
1
2
1
1
1
2
1
1
0
0
1
0
1
3
16
55
109
123
157
165
165
163
146
136
136
137
106
101
120
133
146
137
117
109
129
136
112
73
91
70
56
53
33
37
39
26
18
20
22
21
23
26
21
23
17
19
9
13
10
8
12
17
21
18
12
4
1
2
2
3
2
1
1
1
1
1
2
1
2
5
4
1
5
3
1
2
3
7
16
11
6
2
1
2
3
3
242
242
242
242
242
242
242
241
241
242
242
242
242
243
243
244
243
242
223
68
16
23
5
2
3
11
17
7
2
2
1
1
2
1
2
2
2
2
2
1
1
2
4
1
1
1
3
32
106
186
106
29
22
10
20
74
124
138
172
230
188
129
54
14
34
95
184
233
163
68
21
17
27
15
32
149
141
124
200
177
69
120
208
171
104
48
161
174
113
120
157
185
195
219
221
194
192
201
199
212
199
173
124
74
48
69
92
126
121
90
65
32
16
24
20
5
3
9
15
4
29
54
31
24
20
16
15
15
15
17
13
8
3
3
4
8
13
12
12
13
13
10
11
11
8
8
12
9
11
11
9
12
12
12
12
13
13
9
7
5
5
5
3
5
2
4
4
8
9
25
36
30
29
44
45
40
40
36
34
27
34
32
14
18
92
82
28
7
1
1
1
0
1
1
0
1
1
0
0
1
2
1
0
1
2
1
0
1
0
1
0
1
1
1
0
1
2
19
45
78
121
129
139
157
164
153
139
140
141
117
99
114
133
144
144
109
108
107
118
119
97
67
83
70
63
52
38
34
30
26
23
26
24
16
23
24
21
16
15
17
15
22
15
17
11
9
20
24
9
3
2
1
1
1
2
2
2
1
0
1
2
4
3
1
1
2
3
2
1
2
3
6
3
2
3
2
3
1
2
242
242
242
242
242
242
242
241
241
242
242
242
242
243
243
244
242
243
219
52
16
63
38
15
9
33
70
56
5
3
1
2
3
4
3
1
1
2
2
3
2
2
3
3
3
2
1
15
105
202
203
147
115
85
99
191
230
211
228
225
154
186
166
136
188
215
210
189
126
132
112
115
142
87
11
29
113
167
225
175
158
217
186
125
79
73
165
184
156
182
205
207
207
195
175
200
220
210
215
188
140
89
58
25
48
95
127
157
154
123
136
110
60
32
25
15
2
5
4
2
7
60
47
26
22
14
18
18
19
14
9
5
4
5
6
9
11
11
10
12
14
8
6
8
6
7
10
10
12
12
12
12
13
12
11
11
9
7
8
7
6
4
2
5
3
1
2
4
11
24
27
29
42
45
44
38
39
36
39
36
38
38
18
31
173
175
112
43
7
2
1
0
1
0
0
2
1
1
0
0
0
0
0
0
2
1
1
1
0
1
1
1
1
1
0
1
2
16
50
61
92
129
106
140
164
169
144
135
145
131
109
106
125
131
143
109
114
107
100
103
102
80
71
86
84
68
58
42
41
38
33
34
30
27
23
23
21
30
24
20
28
21
19
19
20
18
4
2
1
2
2
1
1
2
2
1
2
2
1
2
1
1
1
2
3
5
6
6
3
2
5
5
5
3
1
2
2
0
2
242
242
242
242
241
241
241
241
242
243
242
242
242
243
243
244
243
245
218
44
3
11
19
9
4
4
14
71
62
8
2
4
6
2
4
1
1
0
1
2
2
2
3
1
1
2
1
3
40
180
215
194
217
217
202
222
224
225
218
169
165
206
216
208
201
166
149
128
176
201
203
192
192
199
123
85
149
182
228
198
200
238
177
83
118
131
110
133
98
127
153
179
190
206
232
226
203
201
158
99
40
36
43
63
76
129
128
120
124
116
121
145
136
101
64
26
4
6
5
2
6
36
82
38
32
18
21
20
19
13
7
4
3
4
8
10
8
8
15
17
9
5
9
9
8
10
12
16
17
13
13
13
11
14
11
10
9
8
8
8
12
5
1
4
4
3
2
3
8
9
20
41
47
40
49
43
41
35
35
38
38
32
18
66
198
196
189
150
80
21
3
1
1
0
1
0
1
1
0
1
1
0
1
0
0
1
2
0
1
0
0
1
2
1
1
1
2
5
43
57
75
118
103
125
151
159
145
134
143
134
119
106
125
127
134
120
108
122
104
99
90
85
83
79
83
72
55
57
39
47
51
49
45
46
32
31
29
34
31
31
22
22
16
13
16
18
17
5
1
2
1
2
1
2
2
1
1
1
1
1
0
3
4
2
3
4
6
12
5
2
2
3
7
4
1
3
3
16
3
242
242
242
242
242
242
241
241
242
242
242
242
242
243
244
244
243
244
214
33
2
3
1
3
3
2
5
10
56
71
11
7
2
1
3
1
1
1
1
3
2
2
1
1
1
1
1
2
8
95
216
222
226
221
218
222
183
159
103
54
60
102
170
203
162
88
47
38
62
169
229
201
173
211
201
150
170
192
234
205
219
203
141
68
154
97
55
41
54
148
202
224
232
240
226
189
158
98
37
10
8
6
29
23
29
43
35
56
80
104
104
116
127
137
141
111
36
4
3
1
9
4
30
74
80
54
23
21
20
11
7
6
6
7
6
7
8
14
23
8
4
8
11
7
8
12
15
16
14
14
13
12
14
13
11
10
10
10
9
10
9
5
3
3
4
3
2
3
11
11
22
48
40
31
45
50
47
36
31
32
32
25
28
128
202
195
197
195
181
118
38
4
3
1
2
1
1
1
1
2
1
1
1
0
1
1
1
1
2
2
1
2
2
2
1
2
1
1
32
44
72
70
83
117
130
128
127
125
144
140
120
115
118
124
121
117
102
109
109
101
94
86
87
81
80
84
56
57
67
57
58
66
58
55
59
48
43
38
38
38
44
32
24
21
21
20
20
10
5
3
2
2
2
1
2
3
2
1
1
3
3
3
3
3
3
3
3
2
1
1
2
2
6
4
6
2
1
6
1
242
242
242
242
242
242
241
241
242
243
243
242
242
243
244
244
244
244
213
32
3
2
1
2
1
2
3
3
7
47
66
17
4
2
1
1
2
2
2
1
2
3
1
1
1
1
1
2
3
33
124
168
181
201
215
162
102
43
12
7
9
53
183
231
162
78
25
35
66
79
95
103
183
229
190
158
197
206
236
227
165
66
54
80
106
58
49
87
170
225
226
232
229
198
153
88
33
21
24
18
9
5
7
7
9
14
16
21
25
51
81
108
116
125
131
136
126
25
4
3
6
5
5
25
90
116
65
23
17
13
10
7
7
4
6
7
11
14
10
8
6
10
10
7
8
14
12
11
14
15
13
14
13
12
9
9
11
10
11
9
7
4
3
4
4
3
2
3
14
19
19
32
20
25
36
45
42
38
29
29
28
31
70
182
198
197
196
195
197
189
138
48
8
2
2
1
1
0
2
1
1
1
1
0
1
1
1
1
2
2
1
1
2
1
1
2
1
1
17
45
44
48
20
93
125
119
121
120
143
147
136
122
106
121
106
113
94
89
106
100
94
93
89
71
75
79
68
40
54
60
59
73
78
71
67
66
65
61
70
69
59
42
48
36
27
20
15
12
10
3
9
5
2
3
2
3
1
1
1
2
2
2
4
2
6
4
2
1
3
1
2
3
4
4
3
1
4
5
1
242
242
242
242
242
242
242
241
241
243
243
242
242
243
244
243
245
244
215
39
8
2
2
3
2
1
1
2
3
5
46
67
9
2
2
3
2
1
2
3
3
3
1
2
2
1
1
2
1
1
5
14
60
155
163
160
127
75
71
80
101
151
179
140
127
175
184
174
165
70
16
23
124
219
206
195
201
215
236
202
51
10
41
107
117
100
158
214
227
219
222
200
167
119
52
21
19
42
23
18
6
8
8
5
5
11
10
15
14
14
52
118
115
123
117
125
117
79
22
4
10
2
14
2
19
98
125
57
31
12
9
20
13
8
7
12
13
10
8
5
7
8
8
7
8
8
11
10
10
14
11
11
11
10
12
11
13
11
11
10
6
5
3
4
4
4
3
6
18
16
23
16
17
28
39
44
35
27
29
33
28
47
133
202
196
195
198
198
194
193
193
160
87
20
3
3
1
1
0
1
0
0
2
1
0
0
1
1
0
0
2
1
1
1
2
2
1
1
5
34
17
30
12
42
107
109
121
129
136
136
148
147
119
109
108
99
103
85
86
110
107
87
80
86
80
71
59
44
37
35
45
51
66
73
89
82
77
76
85
92
80
69
53
48
33
25
25
17
13
10
8
8
4
5
3
1
1
2
2
2
2
1
2
2
9
6
7
3
5
3
2
3
4
7
4
4
5
3
1
242
242
242
242
242
241
242
241
241
243
243
242
242
244
244
243
244
243
220
49
13
3
3
28
16
1
2
3
1
3
8
54
37
4
2
2
1
2
2
2
2
2
2
1
0
0
1
2
3
3
12
7
14
66
122
95
105
160
189
194
133
53
22
13
32
145
225
180
190
183
152
145
190
212
215
208
187
208
209
138
36
51
142
172
166
174
216
216
192
194
187
167
132
55
9
12
22
20
30
10
7
7
6
9
15
13
8
12
9
22
26
32
62
98
109
102
100
84
38
19
7
4
12
1
3
22
77
115
49
19
32
51
40
21
36
27
17
10
7
5
6
6
8
6
6
8
8
9
8
10
11
11
10
9
13
14
15
14
11
9
6
4
5
4
3
2
5
18
19
15
23
16
28
26
37
35
26
21
26
23
40
78
187
201
198
198
197
196
195
195
195
193
179
109
36
5
2
1
1
2
2
1
0
0
0
0
0
1
2
0
0
0
1
1
1
1
2
3
3
24
34
10
6
20
89
94
112
127
124
125
141
155
131
110
111
97
106
90
67
81
106
109
92
71
77
83
72
47
45
39
32
28
32
36
70
86
86
73
86
102
101
88
71
64
46
32
24
20
14
12
10
9
5
1
2
1
1
1
1
1
2
2
3
2
6
7
5
5
4
1
1
2
3
4
4
3
3
1
3
242
242
242
242
242
241
242
241
241
243
242
242
241
244
244
243
243
242
218
52
17
3
3
31
17
2
3
2
3
4
3
46
91
10
3
1
1
2
0
1
2
5
2
2
1
1
1
2
3
1
8
4
2
2
2
7
29
99
189
184
65
28
39
58
102
148
137
105
177
212
175
216
194
194
195
151
91
113
169
146
139
181
183
187
213
203
178
158
186
208
192
113
35
9
9
15
16
21
20
14
12
12
16
17
19
40
36
53
27
25
22
14
17
23
47
63
75
54
33
17
9
3
9
1
1
1
11
57
88
70
38
38
73
59
64
55
34
12
9
6
6
7
10
12
9
12
10
8
10
14
13
13
11
10
10
12
14
13
11
9
7
6
6
7
3
5
10
23
11
17
21
19
27
42
36
47
27
26
20
27
54
138
203
199
198
198
198
196
195
193
194
193
196
187
147
64
9
1
3
1
1
2
0
2
1
1
0
0
1
0
1
0
1
1
1
1
2
1
1
4
35
14
4
10
75
96
109
111
92
119
130
138
162
119
95
103
96
100
78
53
82
92
99
95
61
63
66
61
49
43
46
28
14
14
15
39
84
88
57
60
71
79
77
57
46
42
34
26
14
9
8
4
2
2
1
0
0
0
1
1
1
1
1
1
4
3
4
3
3
4
1
2
2
3
2
2
3
1
1
242
242
242
242
241
242
242
242
241
242
242
243
242
243
244
243
242
247
203
39
5
6
12
4
2
2
2
2
8
9
3
17
75
18
4
1
2
1
1
1
2
10
2
1
1
2
1
1
2
1
1
1
2
3
13
33
16
91
134
115
95
152
185
157
141
52
18
62
170
203
88
168
184
98
125
138
48
13
47
143
139
135
139
195
166
139
175
212
222
196
113
19
5
13
17
18
28
38
17
19
17
19
20
19
18
22
40
32
18
13
14
9
22
29
42
38
31
49
51
55
40
10
3
1
0
1
1
6
27
73
79
39
29
22
57
65
56
13
13
7
9
6
7
9
8
7
7
8
13
11
9
11
11
9
9
11
12
12
10
8
8
8
8
8
6
5
16
11
11
14
16
27
44
37
45
26
26
29
20
35
77
184
200
202
198
199
198
196
196
195
196
195
194
193
191
163
78
12
2
1
0
1
2
1
1
1
0
1
1
1
1
0
1
0
1
1
1
1
1
2
10
23
4
5
58
82
92
107
90
111
120
119
153
145
89
98
109
94
92
59
40
90
86
82
69
55
50
47
50
45
43
36
17
17
17
12
21
54
76
75
65
57
55
53
44
40
39
33
24
16
7
2
2
2
3
1
0
1
1
1
1
0
0
0
2
3
3
3
2
3
1
1
2
2
2
2
2
2
2
242
242
242
241
241
242
241
241
241
241
242
243
242
243
244
243
242
240
163
30
5
4
7
1
2
7
5
3
3
4
4
4
42
49
3
3
2
1
1
1
2
2
2
1
1
1
1
2
1
0
1
2
2
2
18
46
10
14
6
3
14
38
52
48
86
98
102
153
209
118
64
173
100
77
131
122
45
21
14
36
25
45
77
121
153
212
230
224
183
96
20
5
7
15
18
18
21
26
26
20
30
24
19
21
13
26
31
18
13
26
25
20
34
49
29
21
16
16
60
93
64
33
17
2
1
0
0
0
2
10
68
126
68
17
40
115
41
23
25
26
6
7
7
5
5
7
25
31
19
11
8
9
6
6
9
10
6
9
6
9
8
8
7
3
6
12
24
7
6
9
17
43
49
49
32
8
28
28
24
41
130
201
199
201
199
200
199
198
197
197
196
194
194
195
195
194
178
113
31
5
1
2
1
1
1
0
0
0
0
0
0
0
2
1
1
0
1
1
0
0
1
14
10
3
26
65
43
87
88
102
112
108
126
146
106
75
109
104
98
64
26
38
87
67
58
59
46
43
38
34
31
34
20
19
22
18
14
8
14
28
50
54
48
46
44
43
35
31
22
16
10
6
5
3
2
1
0
0
0
0
0
0
1
0
1
1
1
1
1
2
3
3
2
2
3
2
2
1
3
240
240
240
240
240
242
242
242
242
241
242
242
242
243
243
242
244
224
99
34
3
2
4
1
1
18
14
1
2
2
1
3
16
74
17
4
1
0
2
2
2
3
2
1
1
1
1
1
0
0
0
0
1
20
71
28
5
17
45
36
12
9
20
54
138
205
220
216
210
172
171
193
133
115
68
19
32
81
47
12
23
62
103
170
217
221
218
186
99
14
8
12
14
13
17
19
23
23
23
26
30
27
30
46
26
25
18
17
15
17
25
34
56
21
27
19
29
56
79
79
41
48
29
5
0
1
1
0
1
1
6
49
112
81
33
90
96
26
41
40
7
9
12
19
31
26
28
63
46
11
15
21
25
17
15
18
14
7
5
8
15
21
9
6
7
12
5
5
5
12
41
50
49
23
16
16
32
30
33
67
182
203
201
200
202
200
199
198
198
199
197
196
195
196
196
195
194
192
142
64
16
3
1
3
2
0
0
0
1
1
1
0
0
0
0
0
0
0
1
0
0
2
20
7
7
42
54
56
73
99
107
102
93
131
132
86
76
120
91
95
37
4
42
78
60
54
58
53
42
33
30
29
21
22
23
22
16
12
8
7
8
19
27
31
36
38
37
32
28
20
8
5
3
5
4
1
1
0
0
0
1
0
1
0
1
1
2
2
3
4
4
2
4
3
3
2
2
2
7
240
240
240
240
240
242
242
242
242
241
242
243
243
243
243
242
245
229
72
21
1
1
2
1
1
5
3
2
2
1
0
1
6
47
23
3
2
1
2
1
1
2
1
1
1
1
1
1
1
1
0
0
2
11
93
79
33
34
60
55
59
100
117
109
152
171
131
153
208
198
197
215
166
73
10
4
22
62
27
14
60
99
133
189
202
208
177
103
23
5
7
10
15
23
31
19
24
25
23
24
29
29
36
27
24
30
26
26
21
14
13
65
36
13
13
23
84
87
72
67
60
56
19
2
0
0
1
0
0
1
1
3
21
58
78
80
105
102
81
88
32
22
32
32
51
38
28
62
81
52
52
60
72
62
54
39
65
15
11
16
27
34
24
15
11
5
1
7
10
32
58
43
29
6
13
26
30
31
31
114
202
202
202
202
203
202
200
200
199
199
197
196
195
196
196
195
194
196
192
165
95
30
3
2
1
1
0
0
0
1
1
0
0
0
0
1
0
0
2
1
0
2
7
12
3
10
42
41
66
85
112
99
98
118
130
99
70
84
101
81
67
14
11
46
51
40
45
44
37
28
29
26
19
19
17
16
12
9
9
10
15
11
13
17
18
29
35
33
31
17
8
11
12
3
4
1
1
0
0
1
0
0
0
1
1
0
0
1
2
2
3
3
3
3
4
3
2
3
4
240
240
240
240
240
242
242
242
242
241
242
243
243
243
243
243
244
242
81
23
5
3
2
1
2
2
1
0
1
1
1
1
3
3
3
2
1
1
1
1
1
2
2
1
1
2
1
1
1
1
1
1
1
3
35
30
24
39
6
7
43
94
108
139
110
40
73
152
168
103
184
174
119
28
4
1
1
2
3
17
53
89
159
201
182
168
97
46
13
10
6
11
17
38
42
30
25
25
23
29
33
28
31
30
21
34
23
24
24
14
11
48
27
5
20
61
68
64
70
39
68
92
39
5
2
2
2
1
1
2
1
5
5
7
24
53
61
93
83
94
91
77
71
45
39
32
39
66
75
59
45
39
53
45
41
22
49
60
20
40
50
39
55
39
5
1
2
6
15
51
41
24
10
4
15
31
32
29
43
172
205
202
203
203
203
203
202
200
200
200
201
198
197
197
196
197
196
195
195
195
184
140
65
14
1
0
1
1
1
0
0
1
1
1
0
1
1
1
1
0
1
1
2
1
3
2
7
18
40
57
104
102
96
104
120
67
36
51
84
95
58
18
11
13
30
35
29
37
39
29
27
29
23
25
26
17
18
21
14
8
6
9
13
19
12
11
23
20
15
13
7
6
5
1
1
1
1
1
2
1
0
1
0
1
1
0
0
2
1
2
2
2
2
3
9
32
45
34
12
241
241
241
240
241
242
242
242
242
242
242
243
242
242
242
242
244
246
93
12
3
3
0
2
1
2
1
1
1
2
0
0
1
1
1
2
1
1
2
1
2
1
1
2
1
2
2
2
1
2
1
1
0
1
3
4
11
35
6
2
11
63
109
115
73
120
185
168
99
25
122
105
46
19
4
7
6
3
13
40
57
116
192
192
149
99
38
18
12
6
9
12
20
24
32
36
29
25
27
28
23
26
53
37
23
19
20
32
30
12
16
43
30
15
28
54
51
58
41
18
50
87
23
6
13
41
30
16
5
2
1
7
12
9
20
36
27
40
59
72
74
82
107
75
25
34
43
40
30
35
20
15
29
37
28
18
29
39
20
43
37
23
36
14
1
1
4
6
24
54
22
12
5
7
15
33
32
30
106
203
203
202
202
203
203
204
203
202
201
200
200
200
197
198
198
196
197
197
197
196
196
196
168
90
19
2
2
1
1
2
1
0
1
1
2
2
1
2
1
1
0
1
1
1
2
2
1
7
34
49
78
100
98
101
114
98
45
31
47
99
84
39
6
4
7
21
20
26
34
28
22
18
12
14
19
13
6
14
12
10
9
6
4
11
11
5
5
14
16
15
10
3
7
5
1
1
3
2
2
1
2
4
2
2
1
2
1
2
2
1
2
2
3
14
76
97
70
88
94
241
241
241
240
241
242
242
242
242
242
242
243
243
242
242
242
244
244
118
5
2
0
0
2
1
1
0
1
0
0
1
0
0
0
1
2
1
1
2
0
2
1
1
1
1
0
1
1
0
1
0
1
1
1
0
2
10
25
5
12
30
53
42
44
93
92
108
104
36
63
51
19
30
5
3
8
6
17
47
78
113
159
175
136
91
58
14
19
8
9
15
23
24
19
38
39
31
39
46
48
32
28
32
40
28
19
26
21
28
23
25
35
38
30
59
57
53
58
35
34
49
81
29
13
39
66
41
54
32
6
2
1
5
4
3
9
14
15
22
20
28
61
108
99
69
47
27
19
15
17
14
11
15
18
13
15
15
13
15
32
24
20
29
8
3
4
4
3
30
27
4
5
4
7
12
32
32
45
178
206
205
203
204
203
203
203
204
203
202
201
200
200
199
197
198
198
197
197
197
198
198
194
195
186
116
34
5
2
2
2
1
3
3
1
1
2
1
2
1
2
0
0
1
2
2
0
1
1
22
24
60
84
84
54
82
111
57
34
41
60
70
64
27
10
9
7
16
17
61
38
19
14
7
4
12
12
3
4
14
15
11
5
2
2
3
5
3
6
16
16
12
6
5
5
1
1
1
1
1
0
1
3
2
2
0
1
1
2
3
3
2
2
5
81
76
140
168
150
76
241
241
241
240
241
242
242
242
242
242
242
243
243
242
242
244
243
245
132
6
4
1
1
1
1
1
0
1
1
1
1
0
0
0
0
0
0
2
2
2
1
3
2
1
1
1
0
1
1
1
1
1
1
1
1
5
7
9
3
11
18
34
8
18
70
95
45
27
57
36
16
15
7
3
2
2
2
16
69
107
132
159
128
98
80
31
17
18
17
22
18
26
26
26
33
46
42
41
55
49
41
38
43
35
27
34
41
23
33
34
31
26
53
52
56
64
51
62
53
46
53
73
79
73
75
77
72
84
77
30
5
2
4
2
4
10
24
43
44
40
29
24
54
106
95
49
52
37
38
41
30
9
7
9
9
10
9
15
23
32
23
21
28
10
5
2
5
6
25
6
2
2
3
3
21
32
23
89
208
205
205
204
204
203
204
204
204
204
203
203
202
200
199
199
199
200
199
199
199
199
197
196
198
198
188
138
55
11
5
3
2
3
2
1
1
2
1
1
1
1
1
1
1
0
2
1
0
2
18
30
34
56
31
6
38
87
71
20
32
43
49
46
25
14
12
10
7
14
15
18
14
15
7
2
4
7
1
3
6
7
3
2
1
2
1
2
2
6
5
8
6
3
1
4
1
2
1
1
0
2
2
1
1
1
1
2
0
1
1
3
3
4
33
89
106
148
120
144
113
241
241
241
240
241
242
242
242
242
242
242
243
242
242
242
243
243
245
147
7
3
2
1
0
1
2
2
2
1
1
1
0
0
0
2
1
0
2
1
2
1
1
1
0
1
1
0
1
0
1
2
0
1
1
1
5
3
1
2
2
3
9
5
24
57
84
36
4
6
4
2
5
2
1
1
4
7
36
84
113
133
129
114
83
58
29
36
19
23
22
21
24
29
28
31
36
52
43
58
37
40
44
34
19
22
48
49
36
24
42
41
21
52
46
52
61
63
51
47
44
55
63
78
81
78
67
48
81
76
44
30
14
4
2
5
12
12
25
31
48
45
34
28
45
83
87
89
64
52
52
68
54
20
13
10
5
11
23
37
31
24
24
20
10
4
4
3
19
24
4
5
2
2
11
33
29
25
154
210
206
206
205
205
205
206
206
205
204
204
204
203
201
200
201
199
200
199
199
198
198
198
197
196
196
196
195
164
93
40
10
10
12
7
2
1
2
2
4
2
2
2
1
2
1
1
2
2
1
7
42
28
12
5
2
30
66
50
35
16
14
28
34
28
14
6
8
12
11
12
7
9
8
3
2
10
15
6
10
9
6
5
8
4
1
2
2
2
3
2
2
3
3
3
10
8
3
3
2
3
3
3
2
2
3
2
0
1
2
1
2
2
4
49
83
71
10
3
7
68
241
241
241
240
241
242
242
242
242
242
242
243
242
242
242
243
243
245
174
12
2
2
1
1
1
1
1
1
2
1
1
1
0
0
2
1
2
2
1
2
1
1
2
1
2
1
1
1
1
0
1
0
1
2
1
2
1
1
1
0
1
1
2
3
6
27
20
2
2
3
1
2
2
1
2
6
25
72
100
110
126
124
93
55
33
49
39
20
26
24
23
20
26
27
31
42
34
44
59
56
41
40
31
25
34
49
50
54
51
68
48
29
38
27
53
72
55
50
34
25
37
37
36
37
36
35
43
54
59
50
32
32
23
8
2
10
18
34
63
56
51
44
40
11
9
30
41
71
77
84
83
95
50
14
12
9
14
28
37
35
25
28
7
6
3
4
5
20
10
6
2
2
4
30
41
37
58
200
208
209
207
206
206
206
207
207
206
206
205
204
204
204
203
201
200
199
200
199
198
198
199
199
199
196
197
198
199
184
128
60
50
37
36
16
4
10
7
7
2
1
1
1
1
1
2
2
1
2
18
22
4
2
4
2
30
78
48
41
19
18
12
29
19
24
18
14
6
3
7
9
4
7
4
2
6
10
4
6
6
7
6
15
16
5
2
3
2
3
3
4
1
1
3
12
14
5
6
9
7
6
6
2
1
2
2
1
1
1
1
2
2
4
36
87
65
26
4
15
60
241
240
241
240
241
242
242
241
241
242
242
243
243
242
242
242
242
245
202
29
6
1
2
3
2
1
1
2
2
2
1
2
1
3
1
2
1
1
2
1
2
1
1
2
1
2
1
1
0
0
1
0
1
1
0
0
0
0
2
1
1
3
2
3
2
2
4
1
1
1
2
1
1
2
2
8
41
85
88
115
128
110
70
47
32
43
38
36
36
35
29
20
33
29
23
35
35
27
59
53
53
33
27
48
92
59
62
50
29
43
61
55
37
30
47
60
20
15
13
16
15
14
24
15
10
8
11
18
23
36
52
51
41
21
11
6
8
27
38
42
45
64
49
13
13
17
7
7
15
41
89
105
87
62
19
12
20
27
34
41
40
42
10
4
1
2
6
13
7
12
4
5
20
47
39
40
133
215
210
210
208
207
208
208
208
208
208
207
207
205
205
204
203
202
203
202
201
201
199
200
199
199
199
198
198
198
197
199
197
161
116
98
104
75
33
34
26
11
2
1
1
1
1
2
2
2
5
27
15
5
3
2
3
10
29
40
46
44
35
20
14
17
16
13
22
12
16
17
6
2
2
7
7
3
6
6
2
2
3
7
7
9
10
9
5
11
11
9
4
3
2
2
1
4
7
9
6
6
3
2
2
1
1
1
0
1
1
1
2
1
1
1
9
87
101
49
6
12
53
240
240
241
240
241
242
242
241
241
242
242
243
243
242
242
243
244
243
223
64
12
4
3
3
1
2
1
1
1
1
1
0
3
2
2
2
1
1
2
1
2
1
1
0
1
0
1
0
0
1
0
1
0
2
2
2
2
2
4
2
0
1
2
2
1
1
1
1
3
1
1
1
1
2
12
34
66
76
103
129
121
96
67
45
44
50
34
36
35
35
34
27
40
42
26
34
34
41
64
56
34
43
38
33
32
33
65
48
31
45
32
40
36
39
51
26
20
18
19
28
19
15
12
9
10
7
8
7
9
14
20
23
31
39
43
33
10
30
47
44
49
51
41
21
21
18
17
2
3
3
6
39
107
108
68
11
8
17
40
42
50
77
21
4
1
2
10
14
13
13
6
13
50
44
38
89
205
212
212
211
210
209
210
209
209
208
209
209
208
207
206
206
206
205
204
203
202
201
199
200
201
200
200
200
200
198
199
199
200
202
196
169
172
161
101
61
38
25
6
2
1
1
2
3
2
8
26
35
10
3
1
1
3
19
42
40
49
40
38
34
28
14
11
5
9
20
18
16
22
17
4
5
4
4
8
9
3
4
6
13
20
15
10
11
8
7
12
8
3
2
3
3
3
3
4
7
4
3
2
3
4
4
4
4
2
1
0
1
1
2
2
2
2
19
85
90
59
86
98
240
240
241
240
241
242
242
241
241
242
242
243
243
242
242
243
245
239
233
110
15
2
1
2
2
1
0
1
1
1
1
1
3
7
19
4
2
2
2
1
1
1
1
0
1
0
0
1
0
1
0
1
1
1
2
1
1
1
2
1
2
1
1
2
1
3
2
1
2
2
2
1
2
3
19
39
55
82
118
124
106
86
73
68
62
50
32
41
41
33
37
32
43
30
23
32
26
52
48
95
57
32
43
50
29
50
59
36
27
26
32
44
29
34
50
29
46
29
33
26
24
19
18
14
15
12
10
6
6
7
11
10
10
16
15
24
26
17
23
48
43
30
21
19
18
5
6
4
1
1
3
3
35
114
147
34
7
10
23
38
46
54
19
5
1
3
16
13
7
12
9
30
42
33
58
185
216
212
212
211
210
210
210
209
209
208
209
209
209
208
208
208
206
205
206
203
202
201
201
201
201
201
201
202
202
201
201
201
202
202
204
202
207
196
161
104
58
40
17
3
2
2
3
4
32
30
23
16
5
3
2
2
3
14
37
40
45
42
39
29
18
24
22
16
8
12
19
14
13
14
15
4
4
5
4
7
3
5
6
11
25
24
20
18
11
9
12
9
7
7
7
4
3
1
1
2
5
9
4
3
5
3
3
5
4
3
1
2
2
2
1
2
1
1
13
41
51
46
35
239
239
241
240
241
242
242
241
241
242
242
243
243
242
243
242
247
237
193
159
31
11
2
1
1
1
1
1
1
1
0
1
2
4
28
4
2
2
1
0
1
1
0
0
0
1
0
1
1
1
0
1
1
0
1
0
3
1
3
1
1
1
1
1
2
2
2
2
1
2
2
2
1
2
14
35
48
105
124
113
79
105
84
88
76
77
58
41
56
40
38
41
54
37
35
33
30
40
48
43
66
37
24
22
30
31
38
26
30
32
39
36
37
28
36
36
45
44
35
34
33
22
24
23
23
20
17
11
9
6
8
11
9
11
13
15
21
25
28
37
42
36
38
25
13
18
25
16
5
3
1
2
5
57
174
46
13
23
37
35
31
39
18
4
3
7
24
16
6
13
19
41
30
31
143
221
213
212
212
210
211
209
209
209
209
208
209
209
210
208
207
208
207
206
205
205
204
203
203
203
203
203
204
205
204
204
202
202
201
203
205
203
204
205
200
168
115
62
35
14
6
4
16
42
56
33
17
7
4
1
2
3
5
14
24
38
46
48
36
37
33
24
25
24
21
12
12
10
5
6
7
2
2
4
8
8
3
5
2
3
9
19
21
18
18
14
11
11
10
9
7
6
6
4
3
4
10
10
4
6
5
2
2
2
1
1
1
0
0
0
0
1
1
0
3
2
3
6
120
238
239
240
240
241
242
242
241
241
242
242
243
243
242
243
243
243
242
162
165
67
15
2
1
1
2
2
2
1
1
1
1
2
1
5
3
1
0
0
0
0
1
0
1
1
1
1
0
1
1
0
3
3
1
0
1
2
1
1
2
1
2
1
1
2
1
1
2
3
2
1
1
2
2
17
51
85
117
119
100
91
132
103
107
109
100
76
80
72
46
45
52
38
46
55
43
45
45
41
26
45
43
52
29
32
44
38
30
37
52
48
34
64
39
32
32
29
24
26
29
30
32
28
20
21
22
26
29
47
19
12
13
14
14
19
26
27
26
36
56
60
57
39
30
29
28
19
6
2
3
1
0
1
15
131
67
21
37
46
31
20
19
17
9
5
18
25
10
6
9
29
34
26
64
203
215
214
212
212
210
211
210
210
210
210
209
210
210
209
209
208
209
208
206
206
206
206
204
204
203
204
206
205
206
205
205
204
204
203
204
205
204
204
206
207
201
169
121
59
37
18
19
65
59
37
22
12
7
4
2
3
4
4
13
18
32
43
48
46
39
42
31
28
16
21
23
12
12
6
4
5
3
2
2
13
13
3
4
3
2
5
8
6
5
6
5
3
3
5
5
6
9
11
11
5
9
12
15
13
8
3
2
1
2
2
1
1
0
2
1
1
0
2
2
3
2
4
13
122
239
240
240
240
240
241
241
241
242
242
242
242
243
241
242
243
241
247
177
156
97
8
3
1
2
2
1
1
1
0
1
1
1
0
1
1
2
2
1
1
2
1
1
2
1
0
1
0
1
1
3
29
24
3
1
1
1
1
1
2
3
1
2
1
1
1
1
1
1
1
2
3
2
4
32
72
111
122
107
98
130
135
130
142
158
150
127
112
96
79
64
62
44
38
56
56
57
47
38
54
62
75
79
45
28
38
54
58
57
73
76
58
81
84
70
55
43
38
37
42
36
38
31
29
26
28
29
37
52
35
24
18
23
23
27
28
31
28
28
43
66
66
65
40
23
14
7
4
3
2
2
1
1
3
82
103
33
48
45
26
14
16
19
17
22
32
28
14
10
20
30
27
28
136
219
213
214
212
212
211
211
211
211
210
210
210
210
210
211
211
209
209
207
206
208
207
207
206
206
206
207
206
207
207
206
206
207
206
205
205
205
206
205
208
208
209
205
180
133
64
55
94
79
50
31
17
11
4
2
3
3
4
1
5
24
24
28
43
38
41
47
40
32
29
19
13
17
12
8
5
8
6
2
3
5
12
5
6
8
4
8
13
9
7
5
3
2
4
7
10
11
11
9
11
15
22
24
30
30
18
10
8
3
1
1
1
1
0
1
1
1
1
2
3
2
1
4
10
128
239
240
240
240
240
241
241
242
242
242
242
242
241
242
243
244
243
245
208
136
114
11
5
3
1
2
1
1
0
1
1
0
1
2
0
0
1
2
1
1
1
2
2
20
6
2
0
1
2
0
2
4
5
2
2
1
0
2
3
1
1
1
1
1
2
1
1
1
0
2
1
1
5
9
42
96
122
122
102
109
128
129
140
160
164
175
168
173
141
111
98
114
86
56
67
50
66
74
54
60
88
80
87
51
50
51
62
65
83
112
117
107
115
127
121
115
109
90
84
84
76
67
57
55
48
44
42
45
42
45
36
40
43
44
32
30
51
41
25
25
39
48
59
81
63
14
8
4
1
1
1
1
1
3
49
123
59
59
39
21
6
10
18
20
27
36
23
16
19
30
34
29
58
201
217
215
214
213
211
211
212
212
211
211
210
211
211
211
211
210
210
209
209
209
209
208
208
208
208
208
206
206
208
208
207
206
205
204
204
205
206
206
209
208
210
208
210
217
169
105
79
76
73
44
22
14
6
3
1
1
5
2
1
6
20
22
15
22
31
26
33
42
33
16
23
23
16
9
9
6
5
6
3
2
4
12
13
11
9
7
5
5
6
4
6
6
7
6
10
11
11
8
10
13
13
16
23
31
33
32
27
11
7
2
2
1
1
1
0
1
1
1
1
2
1
1
1
7
129
240
240
239
240
240
242
242
242
242
242
241
242
240
243
243
243
243
240
230
123
116
16
6
2
3
1
0
1
1
1
0
1
2
0
0
2
2
0
2
1
2
1
3
10
4
3
0
1
1
0
1
2
1
2
2
3
2
1
1
1
1
2
1
1
1
2
1
1
1
2
2
10
17
34
79
113
125
104
111
109
153
140
151
168
170
184
184
193
185
171
169
178
168
140
129
113
95
112
105
83
92
126
124
94
115
123
109
99
123
146
150
149
153
153
154
156
153
155
142
124
119
109
102
98
86
79
70
68
67
66
66
76
80
76
68
72
71
58
81
40
38
46
54
57
72
64
18
5
3
1
1
1
2
2
29
140
84
65
37
16
4
4
10
17
27
35
25
16
28
38
33
22
134
224
217
216
214
214
213
212
212
212
212
213
213
212
212
212
212
213
212
211
210
209
209
208
209
210
210
210
210
210
210
209
209
209
207
206
207
207
208
207
208
209
213
215
199
153
138
127
82
53
43
40
20
14
6
3
3
5
3
1
1
7
17
13
18
15
8
17
23
40
38
25
13
22
22
19
20
13
7
5
2
2
2
5
16
22
15
10
11
14
11
12
7
5
11
10
11
13
12
12
8
14
19
26
20
29
36
34
32
15
8
2
2
1
1
2
1
1
1
1
1
1
1
1
1
3
26
239
240
238
240
241
242
242
242
242
241
239
240
240
241
243
243
244
241
235
114
78
45
26
2
2
1
0
1
0
1
1
0
2
1
0
1
2
1
2
1
1
1
1
2
2
1
1
0
0
1
0
1
2
2
1
1
1
2
1
1
2
1
1
1
1
1
1
2
2
5
22
40
30
81
112
122
115
105
115
135
168
150
162
172
184
188
192
198
191
192
195
194
187
189
185
179
167
166
164
147
163
175
177
179
168
176
175
155
157
163
164
163
157
161
163
162
163
163
158
150
147
142
137
127
125
121
108
101
96
93
84
88
81
80
89
89
88
58
57
74
77
62
58
69
55
60
69
64
22
5
2
1
1
2
21
138
102
63
29
10
2
2
12
19
30
31
22
19
33
31
27
55
204
218
217
216
216
214
214
213
212
212
213
213
214
214
214
214
214
214
213
212
211
210
211
210
210
210
210
210
211
210
210
210
209
208
207
208
209
207
207
208
215
215
195
166
147
155
149
122
77
41
24
29
20
11
5
2
5
5
3
2
1
1
3
10
10
15
7
6
16
36
38
36
31
27
21
12
13
27
16
6
10
10
3
3
5
12
24
22
22
20
15
19
10
4
6
12
14
19
21
24
18
28
23
24
28
36
34
30
37
21
15
6
2
1
1
1
0
0
1
1
1
2
1
2
2
2
49
240
240
238
239
240
241
241
242
242
242
242
241
239
240
242
242
244
242
240
145
68
57
32
6
2
1
1
1
0
1
0
1
0
1
0
0
1
2
2
1
1
0
1
1
1
1
1
1
1
3
1
1
2
1
1
3
2
1
1
1
0
2
1
1
0
1
1
1
19
29
38
32
70
112
127
119
107
114
114
160
152
157
163
176
189
190
202
197
189
192
201
206
193
197
191
188
189
187
183
182
175
176
201
199
180
184
182
174
169
171
170
171
168
170
169
166
163
165
163
163
161
153
154
155
151
153
148
141
135
128
123
122
123
120
104
115
93
89
90
90
79
47
38
47
51
42
58
89
105
70
21
4
2
2
11
120
110
55
23
3
1
3
11
20
32
32
27
22
37
31
35
130
222
218
219
216
215
214
213
213
213
212
213
213
215
214
214
215
215
214
214
213
211
211
213
212
212
212
212
212
211
210
210
210
209
210
207
209
210
212
210
201
175
140
134
151
182
162
130
93
53
33
23
18
17
10
5
3
3
1
1
1
1
1
2
5
5
3
8
10
12
27
35
42
40
38
36
30
29
24
23
15
20
18
10
8
4
6
8
15
29
28
26
21
14
11
13
20
21
26
32
32
29
34
42
33
33
29
32
31
29
17
16
9
2
3
2
0
0
0
1
1
2
2
1
2
3
10
125
240
239
239
239
240
242
241
242
242
241
241
241
242
242
236
241
244
233
221
193
57
36
19
7
2
1
1
1
0
0
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
2
1
0
1
2
2
1
1
1
1
1
1
1
0
3
1
2
1
2
3
2
2
9
53
41
43
51
99
129
123
111
126
112
138
161
149
152
165
181
190
198
209
203
195
197
205
207
203
209
201
200
201
198
191
184
201
216
175
177
188
191
177
189
182
182
177
179
172
173
174
171
172
173
171
168
170
154
161
163
160
160
162
161
157
153
150
147
148
163
152
134
108
112
117
106
92
74
75
80
79
70
64
61
69
105
120
85
33
10
7
102
101
46
13
2
1
3
12
21
24
25
22
26
36
34
62
205
221
219
219
216
215
214
214
214
214
213
213
214
214
214
215
216
215
215
215
214
214
213
212
213
213
212
214
213
212
211
210
209
211
211
210
200
185
170
155
153
173
188
192
181
175
145
99
60
36
27
21
16
13
8
10
10
5
3
2
2
1
3
2
1
6
3
6
21
29
27
34
38
43
46
35
35
45
43
30
24
23
24
22
22
14
10
4
1
8
23
40
45
30
21
22
29
33
35
42
44
42
47
52
47
39
33
24
17
14
17
14
12
4
2
3
1
2
1
1
2
3
6
4
3
3
13
128
240
239
240
240
241
242
242
242
242
241
241
241
241
242
241
238
241
232
204
193
57
38
16
3
1
0
0
1
1
1
1
0
1
1
0
0
1
1
1
0
1
1
0
1
1
1
2
1
1
1
2
1
0
1
2
1
0
0
1
1
2
2
2
1
3
11
35
53
69
60
81
97
128
131
118
114
130
120
165
153
184
162
175
189
193
199
204
203
200
206
212
200
200
202
206
205
208
204
196
194
215
217
167
188
202
202
195
191
187
182
186
187
180
176
179
178
179
176
174
174
168
163
167
170
172
172
171
169
167
162
159
158
153
152
165
159
135
116
119
111
103
97
106
111
104
100
94
86
78
81
104
121
109
95
56
86
85
34
7
1
2
5
11
21
21
20
19
27
33
32
126
226
221
220
218
217
216
216
216
215
214
213
214
214
214
214
215
215
214
215
214
215
214
214
213
213
211
211
214
212
211
210
214
214
209
191
177
178
189
199
206
210
196
190
184
178
156
119
72
48
22
18
14
13
9
10
33
24
18
6
5
4
4
4
2
1
6
5
8
10
27
21
19
39
41
42
41
34
40
47
36
29
29
30
24
27
19
16
10
5
3
5
14
36
49
53
51
43
42
48
49
50
50
53
54
53
45
45
36
32
22
14
13
10
12
6
7
6
3
1
0
1
1
2
1
1
2
3
63
240
239
239
240
241
242
242
242
242
241
240
241
241
242
243
243
236
207
170
162
97
5
4
3
2
1
1
1
1
1
0
1
2
1
0
1
2
0
2
1
0
0
0
1
2
1
1
1
2
1
1
1
1
2
1
1
1
2
1
1
1
1
1
2
20
67
89
45
79
91
107
135
144
133
110
125
118
166
170
182
190
168
190
191
196
203
203
203
208
206
207
202
201
203
197
204
214
209
203
209
209
211
180
205
206
206
205
198
193
187
185
185
182
182
186
187
184
181
178
177
172
168
172
175
181
178
177
177
174
173
168
163
159
160
162
167
174
150
125
122
116
111
109
116
128
123
116
116
108
100
102
108
113
116
124
107
97
53
15
3
2
5
11
20
18
14
19
25
30
64
200
222
221
220
219
217
217
217
216
215
214
214
214
215
215
215
217
216
216
215
216
214
215
214
213
214
212
210
201
202
208
209
197
177
169
182
203
214
218
213
210
205
187
178
177
165
138
92
46
33
17
15
12
11
14
98
110
34
21
21
18
12
14
8
11
4
3
4
8
9
10
8
12
14
32
40
44
48
45
43
43
41
39
37
34
29
25
20
27
29
22
9
2
5
20
40
64
79
80
62
54
59
59
68
66
60
58
63
57
42
40
36
26
17
8
6
9
13
11
4
1
2
1
2
1
2
5
14
87
240
239
239
240
240
242
242
241
240
241
241
240
242
242
242
243
238
175
149
111
116
19
3
2
3
1
1
1
1
1
0
0
0
0
1
1
1
1
1
0
0
1
1
0
1
2
2
3
1
2
1
2
1
2
2
1
8
5
1
2
1
1
6
28
75
94
94
100
97
104
124
153
145
146
136
131
138
175
165
192
168
178
192
198
198
204
204
211
208
206
208
205
204
206
205
204
206
219
208
219
208
203
208
221
195
207
199
197
187
181
181
181
182
189
192
187
185
191
192
176
168
172
175
177
177
182
182
184
182
180
170
168
165
167
163
159
160
168
168
144
121
120
118
122
127
126
123
123
126
113
104
108
115
119
115
112
115
109
83
29
4
3
12
17
13
13
18
25
35
121
223
220
219
220
219
218
218
218
218
216
215
214
215
216
216
216
215
215
215
215
215
215
216
214
207
194
183
169
164
158
158
168
174
192
208
213
214
216
216
212
205
193
184
172
167
154
117
62
37
25
18
13
10
11
73
207
198
108
35
34
35
31
31
18
7
7
10
4
9
18
18
18
14
8
9
19
30
49
57
48
44
44
44
35
34
32
17
28
26
24
29
27
18
11
9
19
22
38
65
72
70
67
66
72
76
75
65
62
65
61
50
40
33
32
25
17
9
5
3
1
0
1
0
1
2
2
5
20
139
240
240
239
240
239
241
241
241
240
241
240
241
241
242
243
243
238
178
101
84
54
39
13
4
3
1
1
0
1
1
1
1
1
1
1
1
0
1
0
0
1
1
1
1
1
2
1
2
2
2
1
0
1
2
2
4
21
5
1
0
1
8
50
73
110
101
108
124
128
139
146
159
133
111
137
139
171
173
189
181
164
192
200
197
209
208
206
208
208
209
207
207
206
208
209
212
213
215
204
206
197
196
200
201
191
200
197
186
180
179
181
184
182
189
187
182
188
194
190
184
177
173
177
177
177
185
186
186
186
188
186
185
187
185
167
160
158
154
157
166
164
130
119
118
116
117
105
113
121
116
104
97
100
104
109
112
113
118
118
112
19
6
11
12
11
18
20
15
65
199
226
223
223
220
219
218
218
218
218
217
217
216
216
216
216
216
216
218
216
215
216
211
202
190
191
186
177
173
178
187
196
203
210
211
214
215
216
217
216
201
187
178
171
163
156
135
77
47
42
25
16
10
11
62
193
216
217
202
135
52
61
67
51
44
18
9
13
10
13
18
18
15
17
14
12
14
17
26
44
65
53
41
49
49
42
36
32
24
27
16
11
29
33
28
27
49
50
29
23
26
53
71
79
89
91
90
82
78
72
68
62
57
49
42
34
27
17
10
4
2
2
1
1
0
1
1
3
10
45
240
240
239
240
239
241
241
241
240
241
241
241
241
241
243
242
245
209
104
79
39
14
24
6
2
1
1
1
1
1
0
1
2
1
2
1
1
2
1
1
1
1
0
1
1
1
2
1
1
2
1
2
2
2
6
11
15
3
1
1
2
20
82
93
94
113
115
124
149
142
168
142
111
126
132
164
166
192
208
159
184
201
201
201
210
207
207
209
218
210
207
210
204
212
216
221
223
214
200
194
206
206
198
200
195
206
198
183
180
181
183
190
186
184
184
186
187
183
184
187
183
179
181
179
181
184
185
181
182
184
188
192
194
198
176
164
166
157
158
158
164
157
117
117
112
105
106
99
91
86
80
76
74
78
81
88
100
116
128
136
78
9
7
7
14
21
11
10
135
226
224
224
223
221
220
221
220
219
219
218
217
217
217
218
217
217
217
216
217
215
198
186
189
195
190
181
181
183
185
196
201
205
212
214
216
216
215
212
199
173
170
169
159
148
133
99
55
45
36
19
6
7
36
185
220
217
217
216
213
153
72
94
97
66
41
21
20
21
9
15
20
19
12
18
18
12
19
33
32
32
52
50
46
54
57
51
36
32
17
15
22
24
26
24
28
36
48
49
46
29
24
25
42
58
79
100
104
90
83
77
72
68
66
57
50
46
36
29
18
9
6
1
1
1
2
0
3
19
141
240
240
240
239
239
240
240
241
240
240
240
240
241
242
244
242
244
245
165
76
71
20
8
21
4
2
2
0
1
1
2
3
2
1
1
1
1
2
2
1
1
0
0
1
1
0
2
2
2
2
1
2
1
5
24
15
2
1
1
2
8
54
83
119
121
116
125
127
143
157
164
129
110
123
157
174
203
201
188
172
198
200
198
203
206
208
211
214
214
211
211
208
204
210
216
221
214
206
195
195
205
205
199
201
198
199
197
190
186
183
188
194
193
187
186
183
188
183
185
181
181
177
177
185
189
186
184
181
182
182
186
189
190
200
191
174
163
160
160
166
169
178
123
117
114
109
108
102
92
90
80
75
73
72
68
80
88
96
109
128
137
44
5
6
15
20
11
50
206
225
226
226
225
224
221
221
221
219
218
218
217
217
219
218
216
217
216
215
202
180
183
194
193
192
187
185
184
184
190
199
204
206
210
212
211
209
207
190
170
163
162
150
141
121
96
69
55
38
20
8
6
25
157
223
219
216
215
216
215
216
193
151
159
140
70
36
30
28
18
17
18
24
23
24
27
21
16
33
45
46
36
30
38
51
61
60
43
35
28
23
24
28
34
24
26
33
39
33
44
46
28
20
25
35
36
46
58
79
89
85
83
83
83
77
72
62
59
57
47
37
24
8
1
0
1
1
5
17
111
240
240
240
239
239
239
239
240
241
240
240
240
240
241
242
242
242
242
239
141
59
60
17
4
4
1
0
2
1
0
1
1
0
1
0
2
2
0
1
2
0
0
1
1
1
1
1
1
1
1
0
1
1
4
21
11
1
2
2
4
32
111
131
126
145
150
133
141
145
168
135
122
118
135
163
190
202
191
181
192
200
201
205
208
206
209
212
217
207
208
207
205
210
212
211
209
204
199
192
204
209
204
198
199
195
205
199
192
192
188
188
191
189
189
187
189
190
184
180
178
174
178
178
185
191
186
187
185
186
183
183
187
188
196
188
176
162
155
163
172
176
193
127
114
112
113
115
102
95
88
82
78
71
68
68
72
90
85
95
108
124
130
47
12
18
18
22
121
230
225
226
225
225
222
223
220
220
221
220
219
219
217
219
220
218
213
191
172
169
184
190
189
189
190
189
189
190
190
194
199
204
204
201
198
198
194
180
151
147
148
131
117
106
81
61
56
47
27
12
9
25
144
219
216
216
217
218
215
216
214
215
215
213
206
169
102
47
34
27
24
25
27
28
29
23
33
31
19
31
37
36
25
29
35
44
67
63
55
49
40
27
23
30
35
31
27
29
37
37
43
47
47
48
27
10
14
20
25
39
61
71
74
73
65
73
74
77
74
70
60
56
41
27
18
12
30
41
15
12
240
240
240
239
239
239
239
240
240
240
241
242
241
241
242
242
243
244
243
227
79
21
18
2
1
1
0
1
1
1
1
1
1
2
1
1
1
1
0
1
1
1
1
2
1
1
1
0
1
1
0
1
1
5
22
9
1
3
2
15
69
122
128
163
174
133
139
142
154
152
121
125
122
160
175
173
182
188
191
196
197
206
208
207
207
209
214
218
206
208
207
209
213
217
212
211
205
195
189
209
208
199
201
199
206
203
199
194
193
196
198
198
189
187
189
192
186
177
178
178
180
184
185
190
192
187
188
186
187
185
182
186
192
196
193
177
170
163
173
180
193
167
114
122
118
113
111
104
96
89
85
88
74
73
75
89
81
82
86
103
125
160
154
72
24
20
55
182
234
229
229
230
228
227
226
226
226
225
224
224
221
216
207
191
175
163
170
175
181
186
187
187
187
188
191
192
197
197
199
202
205
203
193
178
183
171
143
122
121
101
88
83
54
47
33
46
39
22
14
16
114
217
216
217
216
217
218
217
216
216
215
215
216
216
211
188
127
63
35
23
21
31
33
37
37
29
36
23
15
17
19
21
28
33
36
58
65
51
53
49
45
39
33
34
39
39
35
34
38
45
42
51
53
51
37
23
16
14
14
22
34
39
42
40
44
46
61
67
63
57
53
51
53
53
46
117
194
168
170
240
240
240
240
240
240
239
239
240
240
241
242
242
241
241
242
244
245
243
243
184
37
17
3
2
2
1
0
1
1
3
3
2
2
1
1
2
1
0
1
2
0
1
1
2
1
1
1
0
0
1
1
1
13
24
18
17
16
28
89
141
159
149
183
172
162
156
143
153
130
121
112
165
176
176
178
190
193
197
198
208
210
203
204
209
209
213
210
212
212
207
206
205
211
212
212
204
201
195
209
209
198
199
197
203
209
198
194
196
201
197
194
189
190
191
189
181
178
180
180
178
176
186
190
189
185
188
190
192
192
184
184
195
195
199
191
191
174
176
193
209
153
129
115
116
116
107
105
100
98
93
84
79
81
78
99
88
86
91
111
133
165
173
165
130
94
108
189
205
200
199
194
201
192
193
188
183
176
173
173
154
160
170
168
171
174
178
172
184
186
187
186
187
188
195
200
203
203
201
202
205
200
157
156
144
123
119
112
94
86
74
50
31
26
36
43
23
17
19
96
217
218
217
216
217
217
216
215
218
215
216
216
216
215
218
218
204
164
92
43
14
21
34
41
41
37
31
26
21
15
12
12
16
25
34
46
61
42
40
42
44
45
43
44
39
40
46
47
44
48
53
45
41
40
45
46
44
39
29
19
17
21
26
23
18
16
24
24
30
31
25
33
29
27
33
82
95
96
95
239
240
240
240
240
240
240
239
239
240
241
242
242
241
241
242
243
244
242
242
243
152
39
10
1
2
2
2
2
1
1
1
0
1
1
2
3
0
2
1
1
2
2
1
2
1
1
1
1
2
2
1
1
16
25
41
54
69
71
94
153
172
179
173
149
165
156
149
141
128
117
108
175
170
169
187
197
199
201
205
210
202
204
207
212
209
216
207
215
215
217
208
207
216
212
206
205
210
208
206
202
200
197
194
199
206
199
192
197
196
193
195
198
194
194
192
185
183
177
173
175
170
176
181
184
185
185
187
189
192
185
184
190
189
196
184
185
173
170
171
191
148
138
124
120
120
116
111
102
101
102
90
84
93
100
92
86
93
117
148
166
179
176
173
174
178
146
130
143
141
141
140
134
136
145
140
147
151
159
166
173
175
182
181
177
181
178
180
187
187
188
189
188
187
193
202
203
204
204
203
190
160
136
135
114
130
129
109
105
68
45
26
25
43
49
29
17
18
81
206
219
218
217
217
216
217
217
216
215
216
216
215
215
216
215
216
218
211
179
117
50
13
6
13
34
29
30
27
24
18
16
14
15
32
30
33
46
42
37
42
41
32
35
42
50
49
45
50
54
56
55
54
49
39
38
47
53
56
52
45
36
31
27
16
12
15
14
8
12
7
3
5
5
19
77
15
7
4
5
240
240
240
240
240
239
240
239
239
240
240
241
241
241
242
243
244
245
244
243
245
232
116
18
4
1
2
2
1
1
2
2
1
0
1
1
1
1
1
0
1
0
1
1
1
1
1
1
0
1
0
0
2
25
50
58
67
64
117
159
165
157
169
189
169
167
149
146
128
123
110
163
198
186
185
195
203
205
205
211
208
204
211
212
209
212
210
210
215
216
212
214
208
215
212
203
205
199
202
209
207
203
200
198
202
198
197
195
200
198
194
194
193
192
195
194
195
197
185
184
189
187
186
173
183
187
185
185
179
175
176
180
192
189
199
190
176
180
178
175
195
136
137
127
128
126
119
116
115
112
105
102
98
101
98
111
126
152
149
165
179
175
171
168
171
176
180
168
178
182
181
178
176
184
191
186
181
176
177
180
184
185
186
185
185
187
189
191
191
192
192
191
191
191
195
204
205
199
185
171
154
143
130
120
160
136
117
118
83
45
32
30
55
63
37
23
23
72
201
220
220
219
217
217
217
216
216
216
216
216
216
216
215
216
216
215
215
217
215
197
150
79
33
13
6
16
22
30
32
28
22
17
18
29
23
22
33
43
43
42
45
47
44
41
33
36
45
45
47
51
57
57
57
56
50
47
50
56
57
56
56
51
46
39
28
16
6
2
4
2
2
2
2
22
155
176
171
167
171
240
240
240
240
240
239
240
239
239
240
241
241
241
241
242
243
243
243
244
243
244
228
160
89
15
7
2
2
2
2
2
1
1
1
1
2
2
2
1
1
1
1
1
2
1
2
1
1
1
1
0
1
1
21
66
79
105
108
124
199
209
202
214
178
179
170
151
146
119
129
130
208
182
179
183
200
207
206
209
214
205
205
209
218
209
217
209
211
211
212
218
220
221
215
206
202
205
202
206
214
208
204
203
199
197
197
197
195
200
198
194
195
196
196
191
186
189
189
189
199
202
194
190
190
192
184
183
184
178
177
177
181
184
190
194
188
173
181
176
178
197
141
132
135
136
133
133
133
135
136
117
117
113
115
105
177
184
169
179
183
176
170
164
159
167
171
175
176
180
178
173
175
179
184
185
183
180
179
182
185
189
191
190
191
193
194
194
193
194
194
195
194
191
196
199
200
199
152
159
158
151
125
95
143
149
131
133
82
49
37
58
59
70
42
25
22
62
188
221
219
218
220
217
217
217
216
217
216
217
215
216
217
215
216
216
215
216
216
217
217
207
170
115
54
18
10
20
24
26
29
22
17
17
18
14
13
24
34
46
53
47
45
47
45
43
42
42
43
46
55
57
57
61
62
60
57
54
54
56
60
61
58
55
55
53
45
33
18
8
3
2
2
3
23
130
109
108
110
104
240
240
239
239
239
240
240
240
240
240
241
242
242
241
242
242
242
242
241
241
239
236
168
146
104
23
12
2
2
2
2
2
3
2
0
0
3
1
1
3
2
1
2
3
1
0
0
1
2
0
2
2
1
14
27
49
136
181
201
213
211
168
135
168
173
163
152
137
118
109
176
194
184
177
191
207
207
212
219
214
206
210
221
220
214
216
209
213
220
220
226
216
216
212
216
208
199
200
210
212
214
212
207
200
197
195
196
197
199
195
192
199
198
193
190
193
190
188
192
197
197
196
198
190
186
190
186
178
183
181
185
180
181
187
180
178
173
179
184
196
180
118
120
137
139
143
153
145
138
132
128
125
122
134
148
189
157
178
188
182
181
171
164
163
171
172
174
179
181
179
177
179
184
187
187
186
186
184
190
192
196
197
199
197
198
199
198
197
198
198
199
198
199
200
202
199
147
131
159
162
141
113
116
113
139
131
96
49
55
107
114
80
47
24
27
59
187
222
220
219
219
219
217
217
217
217
217
216
215
217
215
215
216
216
216
217
216
217
218
217
218
213
194
145
89
38
22
22
26
30
26
24
21
20
17
18
19
26
37
56
63
51
47
51
48
52
53
54
51
52
53
58
61
64
66
64
63
61
54
55
62
63
62
61
62
60
58
52
41
33
20
7
3
23
103
18
49
87
6
240
240
240
240
240
239
238
239
239
239
240
241
242
242
242
242
241
242
243
238
200
211
172
130
147
100
28
20
4
1
2
3
1
1
1
1
2
2
1
2
1
1
3
2
1
0
1
0
1
0
1
1
2
24
51
83
161
176
157
183
215
187
175
172
166
152
157
126
113
152
207
172
189
186
199
207
211
214
214
210
207
212
216
216
211
212
214
215
223
223
226
222
211
220
219
214
215
218
222
214
206
207
198
198
200
197
205
198
196
194
196
195
194
192
193
203
195
194
195
194
186
193
202
191
182
190
187
178
196
189
187
180
184
188
186
185
186
187
189
202
167
127
132
142
147
146
147
143
146
160
143
145
176
185
184
175
168
192
190
186
184
166
167
173
180
181
181
185
184
186
187
186
188
190
189
189
190
191
191
194
199
200
200
198
202
203
201
200
201
201
201
204
204
197
182
142
126
150
154
157
142
133
136
124
136
89
53
61
113
99
61
38
30
34
59
180
224
220
219
221
219
218
217
218
217
217
217
216
215
216
216
215
215
215
217
217
217
218
218
217
219
218
218
207
176
118
61
29
22
25
25
25
23
19
19
17
17
18
23
41
60
62
49
51
50
50
54
58
59
61
61
60
60
62
66
67
70
71
67
61
55
61
65
65
65
65
64
61
60
57
54
42
30
23
125
156
170
74
6
240
240
239
239
239
238
237
238
239
239
239
241
241
241
241
240
241
242
243
240
205
136
166
152
106
114
69
42
23
7
2
3
3
1
1
1
0
1
1
3
2
2
1
2
1
0
1
2
2
1
1
0
3
39
116
144
152
122
188
204
201
189
178
164
162
160
155
116
136
205
189
173
181
194
206
211
214
214
214
207
208
215
217
217
210
213
216
211
223
223
224
221
221
220
213
217
221
215
212
204
201
203
200
202
199
205
199
197
199
206
198
191
192
196
194
197
193
194
190
193
188
190
203
199
192
187
189
178
189
193
192
188
192
196
187
176
180
175
186
204
202
191
181
175
176
157
147
152
163
170
175
186
190
186
183
186
195
196
191
188
185
167
170
181
181
184
181
179
188
191
191
193
191
191
191
190
190
187
189
194
199
203
203
204
206
204
203
202
203
203
203
195
176
155
143
134
150
127
138
169
145
149
145
127
83
41
56
117
88
53
44
35
35
61
180
223
221
221
219
221
221
219
218
218
217
216
217
215
216
216
216
215
216
216
217
217
218
218
217
215
216
218
218
219
216
195
155
92
37
21
27
30
28
25
21
17
16
20
22
28
40
53
50
46
47
48
52
55
60
65
71
71
70
67
65
68
75
76
79
78
69
58
61
65
66
64
65
64
64
63
61
59
54
47
53
128
96
18
14
240
240
240
240
239
239
239
240
240
239
239
240
239
240
240
240
241
242
243
243
239
180
108
143
117
63
61
77
25
16
12
4
2
2
1
2
1
2
0
1
1
1
2
0
0
0
1
1
0
1
1
0
12
55
108
134
121
220
211
211
202
195
183
181
161
168
135
116
177
199
183
196
197
203
212
220
217
216
209
210
213
213
217
213
208
213
213
215
216
225
222
204
211
205
203
211
206
203
202
206
204
205
204
208
208
204
206
206
206
203
196
193
193
195
193
190
190
189
186
190
192
191
202
206
197
188
186
184
179
183
187
188
201
207
189
173
169
178
188
196
193
188
185
176
189
190
170
170
185
170
184
196
200
194
191
196
198
196
197
194
190
186
182
187
186
182
180
190
195
196
197
197
194
195
195
192
191
188
191
197
203
204
207
206
208
206
204
203
200
190
180
162
147
148
133
146
117
107
152
151
162
153
137
91
70
103
126
80
54
45
39
43
62
178
228
222
221
220
220
221
220
219
218
217
217
216
217
215
215
217
216
215
217
217
217
217
218
218
217
217
219
218
218
218
218
219
211
185
132
72
33
28
30
31
30
27
24
22
23
33
36
36
40
44
43
43
45
50
56
63
69
72
78
80
75
71
76
79
80
84
84
76
64
65
68
68
69
69
66
65
64
61
62
61
52
36
81
81
106
239
239
240
240
240
240
240
240
240
240
239
240
239
240
240
241
241
242
241
242
232
224
167
85
74
74
23
82
68
13
18
6
2
4
1
1
1
1
0
0
1
1
0
1
1
1
1
0
0
1
1
0
3
9
47
175
199
210
185
201
209
200
190
187
166
159
118
145
189
179
201
198
201
208
218
219
220
215
209
212
213
212
214
210
208
219
210
211
214
228
218
207
211
204
203
199
195
209
205
204
204
205
205
211
213
210
207
202
203
198
195
195
195
196
193
196
193
192
186
188
193
199
194
193
191
182
182
178
179
175
183
190
202
203
191
165
141
165
188
191
191
191
188
177
180
177
175
167
169
172
189
196
199
198
199
199
198
199
201
201
196
192
190
189
187
191
194
198
200
200
200
198
198
198
198
197
192
190
195
201
205
206
208
206
203
199
197
192
180
174
182
178
163
134
119
106
91
145
156
156
149
146
118
106
138
138
83
57
47
42
47
68
172
225
224
222
221
221
220
220
220
219
218
216
216
216
217
216
216
216
216
216
217
217
217
218
218
218
217
217
218
219
219
219
217
218
220
218
203
168
108
55
29
29
30
35
36
32
27
30
38
40
35
39
40
39
41
43
49
58
67
69
73
80
80
81
81
79
78
84
87
88
81
71
66
73
72
72
71
68
69
67
66
64
63
58
140
103
107
239
239
239
240
240
239
239
239
240
240
240
240
239
240
240
241
240
242
241
241
241
222
188
179
91
54
37
9
20
10
13
3
6
6
3
1
2
0
1
0
0
2
1
2
1
0
2
1
1
0
1
2
3
29
95
157
147
159
208
209
203
178
184
170
172
137
132
165
195
201
201
203
208
214
222
223
221
216
217
215
214
215
210
213
225
223
205
208
214
216
207
213
210
209
207
205
209
210
205
204
206
205
203
209
215
215
203
201
204
198
194
196
195
195
194
200
200
198
186
188
200
205
193
194
196
193
189
183
195
190
195
196
195
190
186
169
128
160
186
188
191
188
190
192
175
171
166
170
188
186
193
197
199
198
199
198
198
204
205
203
200
194
193
195
198
198
201
203
205
204
203
203
202
201
201
202
200
198
200
202
206
203
204
201
193
186
172
167
159
165
141
136
112
101
95
111
156
173
163
125
110
109
139
169
141
95
68
53
48
55
72
178
227
225
223
222
222
221
220
219
219
219
218
217
217
218
217
218
217
216
217
217
217
217
218
219
220
218
219
218
218
219
217
217
218
219
219
218
220
219
196
161
102
52
29
25
28
32
36
35
35
36
32
30
35
36
38
39
45
51
58
61
65
72
77
84
89
87
85
81
85
85
87
82
69
70
74
75
75
74
72
73
73
73
72
67
117
182
184
239
239
239
239
239
240
240
239
240
240
240
240
239
240
240
240
241
241
242
242
243
241
200
147
146
92
24
3
7
14
24
6
10
13
9
3
2
2
2
0
1
1
2
0
0
1
1
0
0
1
1
1
3
32
59
108
135
181
210
206
202
186
179
173
169
126
148
188
209
203
205
211
218
221
222
223
221
218
220
214
215
215
209
217
224
217
204
211
211
209
211
215
209
213
207
210
217
209
204
205
207
207
204
205
212
215
203
201
203
201
197
196
200
195
192
198
195
194
186
190
199
199
193
193
194
198
182
188
198
192
194
193
194
195
200
183
159
178
184
183
192
188
179
179
179
171
173
189
193
190
195
193
194
196
198
199
201
202
203
202
201
199
200
201
204
205
203
203
203
203
203
197
197
201
202
203
200
197
197
196
197
202
193
197
199
181
162
144
129
135
123
116
105
123
147
172
177
151
118
106
75
111
175
149
111
75
58
54
57
78
172
225
223
224
223
222
221
221
220
219
219
218
217
216
216
216
217
217
217
217
217
217
217
217
218
219
219
218
218
218
218
218
219
218
218
218
219
220
219
223
220
211
185
139
74
36
22
17
25
33
42
39
32
28
28
30
34
35
39
45
51
54
57
60
65
70
78
85
89
89
86
81
81
83
75
71
76
79
78
77
77
77
76
75
75
74
68
93
61
239
238
238
238
238
239
238
238
239
240
240
240
239
240
240
241
242
241
242
242
242
241
234
159
97
104
71
7
1
2
2
2
12
10
4
2
1
3
1
1
1
2
2
1
1
0
2
0
0
1
1
2
3
5
27
89
109
207
207
208
197
190
172
168
137
138
182
203
207
208
212
222
221
222
224
222
220
219
217
216
218
212
211
218
216
210
205
207
208
214
214
209
206
209
204
204
204
201
204
208
211
209
205
206
207
213
208
208
201
201
202
200
200
194
194
195
189
191
188
194
195
191
187
186
191
194
190
190
192
190
191
194
196
200
204
200
198
199
187
175
184
187
186
176
173
181
189
192
193
194
192
190
192
195
199
203
205
207
205
204
203
202
204
207
209
205
204
202
200
193
195
185
185
188
192
191
192
190
188
187
189
186
152
147
142
131
130
118
118
148
136
121
150
154
172
159
125
109
76
64
76
177
149
116
90
61
54
63
87
186
228
225
225
225
225
222
222
221
220
221
219
219
218
216
216
216
217
217
218
217
218
218
218
218
220
221
220
219
218
218
219
219
219
218
218
219
219
220
222
221
222
223
222
208
169
111
58
24
15
9
14
13
14
13
9
10
12
20
24
29
37
43
47
50
53
55
60
69
74
76
76
73
70
71
74
75
72
72
73
72
71
69
69
69
71
68
122
170
137
239
238
238
238
238
238
239
238
238
240
240
240
239
239
240
240
241
241
240
242
242
240
244
202
102
92
56
12
2
2
2
2
2
5
15
7
1
3
2
3
10
2
1
0
0
0
0
1
1
0
3
1
2
21
71
65
137
190
199
164
192
185
168
158
130
167
205
209
212
217
223
225
222
224
224
222
222
219
218
219
220
211
212
218
213
209
206
207
210
211
209
208
208
205
202
207
200
203
205
209
211
206
205
202
209
209
209
207
199
196
202
207
207
202
199
191
189
193
190
194
195
197
191
184
194
188
188
186
187
187
191
192
197
200
202
204
203
201
193
189
180
176
180
180
176
185
192
194
197
194
193
194
198
200
205
206
207
208
203
201
209
210
205
212
203
199
187
169
181
168
183
182
171
173
184
185
186
190
183
188
178
139
129
115
123
131
119
120
124
118
136
175
176
163
143
111
109
86
64
57
113
174
123
100
69
58
67
92
187
227
223
225
224
225
224
224
222
222
220
221
220
219
219
218
218
217
218
217
218
218
218
218
218
219
220
220
219
220
219
218
219
219
219
219
218
219
219
220
221
221
223
223
224
227
219
193
144
79
37
18
8
4
3
2
2
1
1
4
4
6
14
23
28
33
37
40
44
50
59
66
69
67
64
63
67
70
73
72
70
69
69
68
68
67
67
65
130
85
104
238
238
239
239
238
238
238
238
238
239
239
240
239
239
240
240
240
240
240
242
242
242
241
242
189
119
92
59
19
8
2
1
3
4
15
16
3
3
2
2
5
3
2
2
1
0
1
2
0
1
1
1
2
17
52
142
169
172
183
188
193
181
173
154
169
189
206
212
221
224
225
224
226
225
220
223
222
219
219
222
215
210
212
214
210
208
209
209
213
212
208
210
212
206
203
206
197
202
204
205
211
207
206
208
213
213
209
207
200
196
198
201
203
203
196
196
193
190
191
189
189
187
185
197
193
190
192
186
186
188
192
196
197
193
191
196
199
198
196
196
187
183
189
196
190
186
187
190
196
195
192
198
199
200
205
204
204
210
221
212
195
182
172
188
189
190
179
185
182
131
160
174
170
162
130
131
145
169
172
146
134
135
126
128
133
129
127
128
137
166
183
190
146
115
88
84
76
66
64
63
120
142
102
70
63
71
98
196
225
226
224
224
224
224
223
223
221
221
221
220
221
220
220
219
219
219
218
218
218
219
219
219
219
220
221
220
220
221
220
220
220
220
220
220
219
220
220
220
220
221
223
224
224
225
227
224
208
175
118
53
26
18
11
1
1
1
1
1
1
0
1
5
6
8
10
18
21
27
34
43
48
51
59
64
64
62
64
69
70
71
70
67
67
66
66
62
133
174
84
239
239
240
239
238
239
239
239
239
238
238
238
238
238
239
240
241
241
240
241
242
243
242
242
242
202
124
63
26
20
4
3
1
2
2
2
1
1
2
1
2
1
2
2
2
1
2
2
1
1
0
1
3
1
14
116
75
141
180
190
191
183
176
157
177
198
211
219
224
229
228
226
227
223
221
221
222
220
222
218
214
214
217
215
211
210
211
212
213
211
204
207
212
200
200
197
196
203
207
214
207
203
205
213
212
209
203
200
199
204
200
192
193
194
199
196
193
188
190
192
189
190
195
201
197
194
191
189
191
194
197
197
198
194
189
192
198
201
198
200
198
199
197
195
195
192
193
184
182
192
194
195
195
196
201
200
199
207
221
181
161
180
177
194
185
188
197
187
175
178
162
139
142
134
121
129
130
127
144
127
132
138
135
138
137
138
149
163
179
182
178
151
99
88
88
79
73
72
70
73
121
114
74
68
77
108
201
226
225
224
226
225
225
224
223
222
220
222
221
220
220
220
219
220
219
218
218
218
218
219
219
220
220
221
220
220
220
221
222
221
220
219
219
219
218
220
219
219
222
222
223
223
225
225
226
225
229
225
203
155
86
37
14
2
2
2
1
0
1
1
0
1
3
1
2
2
3
6
10
20
31
39
44
55
57
57
48
55
70
70
69
69
67
66
65
67
87
69
69
239
239
239
239
238
239
238
239
239
238
238
238
238
238
239
239
240
240
240
241
242
241
242
243
242
240
230
189
81
23
11
14
8
2
10
4
1
3
1
2
2
1
2
1
1
2
2
1
2
1
1
1
2
3
10
70
120
169
144
174
188
187
181
175
180
203
216
221
225
227
225
223
226
226
224
220
221
223
222
216
216
217
219
214
213
214
213
212
211
209
203
206
210
197
200
193
198
201
201
208
206
202
208
206
204
211
200
199
201
205
199
193
192
195
198
195
190
189
190
191
193
194
204
205
205
201
197
198
196
196
199
197
197
201
200
199
198
200
202
206
204
203
201
198
199
201
198
183
181
192
195
179
184
185
188
193
196
205
206
141
171
198
194
184
182
182
192
202
199
177
160
133
135
138
132
134
143
141
138
135
138
138
136
138
148
168
166
157
162
152
127
102
92
88
81
78
76
73
76
98
120
83
74
79
118
209
225
225
225
225
224
224
223
224
224
223
221
221
221
221
221
220
219
220
220
219
219
220
219
220
220
221
220
220
219
219
220
221
221
221
220
220
220
220
220
221
221
221
222
222
223
224
226
226
227
229
229
231
229
212
181
119
58
25
11
7
4
2
1
1
1
1
1
1
1
0
1
0
1
3
10
22
29
34
37
36
24
24
47
60
66
69
68
66
66
64
120
103
132
238
238
238
238
239
239
238
239
239
238
238
238
239
239
240
240
239
240
240
240
240
241
239
242
241
242
241
241
226
163
101
39
26
15
15
6
2
2
2
2
3
1
1
2
1
1
0
1
0
0
2
1
4
3
15
79
143
135
146
182
185
201
169
180
194
206
217
222
224
225
226
228
227
227
226
224
224
223
220
217
217
221
218
211
214
214
212
211
209
210
206
206
206
197
197
197
201
202
197
205
209
200
213
213
213
216
202
200
198
202
205
198
194
193
193
192
191
190
192
193
192
190
201
205
203
204
201
197
196
194
198
199
201
202
202
206
198
195
203
205
205
205
204
202
203
202
198
196
193
193
190
181
185
209
209
208
212
205
180
167
191
175
170
160
157
181
197
190
157
150
163
142
145
151
145
148
148
146
145
143
142
143
153
159
181
170
151
144
128
117
124
125
98
88
85
82
78
81
90
116
90
81
87
132
216
228
225
224
226
225
226
225
224
224
224
222
222
223
222
222
221
221
221
222
221
220
220
221
220
221
222
221
222
223
223
223
222
222
221
221
222
221
220
221
221
222
221
221
223
223
225
227
228
228
228
228
230
228
228
230
227
203
163
113
75
59
46
38
33
29
25
25
21
16
11
6
2
1
2
1
1
2
6
11
17
16
5
1
8
20
36
52
59
63
67
64
144
125
137
239
239
239
239
239
239
239
239
239
239
239
238
239
238
239
239
239
239
239
240
241
241
242
241
241
242
242
243
240
232
186
99
34
34
11
2
2
2
2
1
2
1
0
1
1
2
0
1
1
1
2
1
2
2
4
25
90
147
186
189
172
186
134
169
198
209
219
224
223
224
226
227
227
225
224
225
225
221
222
220
219
218
213
213
218
221
215
211
211
214
210
199
205
203
203
200
201
200
201
206
204
208
220
218
216
212
200
197
198
205
212
205
192
194
194
192
190
193
196
195
195
200
192
200
199
201
193
191
194
194
196
197
198
195
198
196
196
196
199
201
200
200
200
200
199
197
197
199
197
197
193
189
208
224
203
190
204
186
138
158
179
180
179
169
169
205
194
142
134
136
143
145
144
148
151
156
153
151
148
148
151
151
155
162
174
157
147
144
125
123
138
113
91
90
88
85
82
89
102
96
86
92
145
220
227
226
225
224
225
225
226
225
225
225
224
222
223
223
222
222
222
221
220
221
220
220
221
222
220
221
222
222
222
222
222
222
222
222
222
222
222
220
221
222
222
221
222
221
223
224
225
227
229
228
228
228
228
229
229
231
231
228
213
190
141
109
94
87
81
76
73
72
67
64
59
45
28
13
6
1
1
1
1
1
5
9
6
3
2
1
5
14
28
42
47
54
94
165
171
238
238
238
239
239
239
239
239
239
239
239
238
239
238
239
240
239
239
239
239
239
240
240
240
241
241
240
239
240
240
236
197
80
22
16
10
4
3
2
1
2
1
2
1
2
1
1
1
1
1
1
2
1
1
1
9
60
117
171
186
171
193
176
178
200
208
219
225
227
226
226
224
223
223
223
224
224
224
224
219
219
219
216
216
215
216
213
212
213
213
205
200
202
201
201
202
203
208
219
208
200
206
209
211
206
195
194
199
198
196
200
193
189
194
191
191
190
191
197
194
197
191
190
192
197
191
191
188
190
190
190
191
189
186
186
178
186
191
193
194
191
198
199
199
197
197
201
202
202
196
204
223
222
200
214
194
206
181
132
163
187
183
183
190
188
184
159
156
161
156
145
148
152
151
153
158
163
157
166
161
154
151
162
152
159
141
139
139
120
110
101
94
92
91
93
89
92
97
96
93
105
163
226
226
225
225
226
226
225
225
225
225
225
225
224
223
223
223
222
222
222
223
223
222
222
222
221
221
221
222
223
223
221
221
223
222
222
222
221
222
221
221
221
222
222
222
222
224
225
227
226
227
229
229
229
230
230
229
231
231
230
229
230
226
201
168
123
113
107
98
93
90
85
85
83
78
71
63
52
38
24
11
4
2
3
8
14
11
6
4
3
2
3
7
16
27
60
56
50
238
238
238
239
239
239
239
239
239
239
239
238
239
238
240
240
239
239
239
238
238
239
239
239
239
240
239
240
238
238
239
211
143
99
46
9
7
4
2
1
2
0
1
0
1
0
1
1
1
1
2
1
2
2
1
2
15
107
174
190
191
178
162
182
193
207
216
222
226
227
226
220
221
224
224
222
225
224
222
220
220
224
223
220
214
212
212
211
209
208
201
203
204
202
201
201
209
214
216
206
208
208
205
206
200
197
196
196
195
194
192
191
192
193
195
196
190
192
196
198
190
181
184
187
184
179
182
184
184
183
182
184
189
190
184
178
184
188
191
191
189
192
192
194
193
192
199
198
197
197
219
229
202
182
222
181
184
176
165
170
179
175
164
183
174
167
171
165
173
170
149
152
153
151
154
159
168
164
163
154
149
152
157
137
143
133
127
115
110
104
105
102
97
96
95
97
100
98
98
112
184
225
224
226
227
226
226
225
224
225
225
226
226
226
224
223
223
223
223
223
223
224
224
223
222
222
222
222
222
223
223
223
223
222
223
223
222
222
222
222
222
222
222
223
223
224
224
225
227
228
227
228
229
229
229
230
230
231
231
231
230
230
233
231
226
212
179
142
125
121
108
101
98
95
90
87
85
83
79
76
69
54
39
28
14
7
8
10
11
10
8
4
2
4
3
15
140
195
184
238
239
239
239
239
239
239
239
239
239
239
238
239
238
239
239
239
239
239
239
239
239
239
239
239
239
239
239
239
240
241
239
208
140
80
18
2
3
5
2
2
1
0
1
1
1
1
1
1
1
1
2
2
1
2
3
19
106
167
169
178
153
163
178
192
206
218
223
224
225
228
222
222
222
222
222
225
224
222
220
220
222
222
219
215
215
215
210
206
197
200
205
207
208
206
208
206
206
201
205
204
206
207
211
205
200
196
197
199
193
191
190
192
197
201
201
195
191
190
190
184
187
202
201
196
194
194
190
189
188
191
199
199
204
202
197
198
197
196
194
192
189
190
187
185
191
199
198
197
214
214
206
195
195
182
177
165
148
145
171
198
181
180
189
177
188
171
154
153
165
161
152
152
154
155
155
154
150
156
156
167
158
139
131
129
128
127
114
108
107
105
101
99
98
100
101
99
101
134
205
228
226
227
228
226
226
226
225
225
224
224
224
224
224
222
222
224
224
224
224
224
225
224
223
222
222
223
222
223
223
222
223
224
223
223
223
223
223
223
222
222
223
223
224
224
225
225
225
227
227
226
228
228
229
229
230
230
230
230
230
230
230
230
232
232
230
218
196
153
126
126
118
112
107
99
94
93
90
88
89
85
80
77
75
68
57
48
36
25
21
19
14
10
4
4
12
94
69
45
238
239
238
238
239
239
239
239
239
239
239
239
239
238
239
238
239
238
239
238
238
238
239
239
239
239
240
240
239
239
239
239
241
240
196
77
22
15
14
4
3
2
1
0
1
0
1
1
1
1
2
2
1
2
2
3
5
91
141
146
186
166
139
169
184
199
216
222
224
224
226
225
226
227
225
222
223
223
221
221
219
217
218
216
217
217
215
210
207
199
208
208
208
211
209
208
207
207
209
207
205
204
209
206
211
197
196
196
196
195
194
191
193
203
201
186
192
190
189
188
188
193
200
197
196
200
200
200
197
198
204
207
214
213
206
201
194
192
193
189
190
191
191
193
194
192
198
190
202
212
215
207
215
199
154
178
166
135
132
144
175
188
179
182
172
176
181
181
166
155
158
158
158
151
150
149
146
150
150
162
166
142
133
131
128
122
115
111
108
108
105
102
103
106
102
102
107
155
222
229
225
226
226
225
226
226
225
223
223
222
224
225
223
223
223
223
223
224
225
225
225
225
225
224
223
223
223
223
223
222
224
225
225
225
224
224
224
224
223
224
225
226
226
227
227
228
228
228
229
229
228
229
230
230
230
230
230
231
231
231
230
231
231
232
231
232
233
225
201
158
122
125
129
131
122
108
105
105
100
96
94
92
89
89
88
89
93
88
81
77
68
58
47
37
28
25
135
149
117
238
239
237
238
239
239
239
239
239
239
239
239
239
239
238
238
239
239
239
239
239
239
239
239
239
239
239
239
239
239
238
239
239
237
235
139
44
29
17
3
5
3
1
1
2
3
1
2
1
2
2
1
2
2
1
2
6
96
135
155
197
154
139
169
177
193
213
219
224
224
223
223
226
227
227
223
225
223
221
221
219
219
218
217
218
215
215
212
210
210
209
208
206
206
207
206
208
207
209
208
208
210
208
207
202
196
197
206
212
208
195
191
195
206
197
186
189
191
188
190
185
187
189
196
189
188
186
193
197
200
202
208
213
213
209
197
185
181
178
178
178
179
182
187
194
192
190
183
205
210
208
207
222
166
139
146
147
144
148
157
174
179
191
187
185
190
181
173
169
164
159
164
161
150
157
166
176
168
157
145
143
149
142
133
129
124
120
116
114
112
106
108
113
112
107
118
181
227
226
225
227
227
226
226
227
227
225
223
224
222
223
223
223
223
224
224
223
224
225
226
225
225
224
224
224
224
224
224
224
225
225
225
225
225
225
225
226
226
225
226
226
227
227
227
226
228
228
228
229
229
229
230
231
230
231
230
230
230
231
231
231
231
230
231
231
231
231
232
225
211
169
120
112
123
132
133
126
118
111
105
105
104
101
99
95
95
96
98
98
100
96
92
89
89
90
79
84
132
139
237
237
237
238
238
239
239
239
239
239
239
239
239
239
239
239
239
239
238
239
239
239
239
239
239
239
238
238
238
237
237
239
240
239
241
201
128
91
36
29
9
1
2
2
2
2
2
1
2
3
1
1
2
1
1
2
5
73
136
156
170
173
136
170
180
189
210
217
221
225
226
225
223
225
222
222
222
221
222
220
218
218
218
217
217
213
214
213
209
210
210
211
209
208
207
207
209
207
208
208
208
209
211
208
205
201
205
219
222
217
201
196
196
193
192
187
197
189
187
189
185
184
196
213
210
189
179
185
186
182
186
198
202
203
202
191
186
190
186
173
176
182
180
182
185
187
204
205
207
213
208
215
192
139
157
145
144
160
177
184
173
181
185
182
193
177
170
151
153
160
163
178
163
154
154
150
153
151
145
133
141
134
131
124
138
130
119
114
114
111
109
115
118
117
142
210
232
227
228
226
226
227
226
225
225
226
225
224
225
223
224
222
222
223
224
223
225
225
225
225
225
227
226
224
223
225
225
225
225
226
225
226
225
225
226
226
227
227
227
227
227
227
226
226
226
228
229
229
229
230
231
231
230
230
231
230
230
230
230
230
231
231
230
230
231
231
231
231
232
230
219
188
129
103
96
104
120
133
133
127
120
114
114
110
110
109
107
107
108
107
108
106
104
105
108
111
105
118
129
237
237
237
237
238
239
239
239
239
239
239
239
239
239
239
239
239
239
239
239
239
239
239
240
240
239
238
238
238
238
238
239
240
239
240
226
157
138
139
115
34
2
3
2
4
2
1
1
1
0
1
1
0
1
1
3
4
35
112
167
171
173
155
152
195
194
209
217
222
223
225
226
224
223
220
220
221
220
220
219
220
219
218
218
216
215
216
213
212
213
212
214
209
208
207
207
208
207
207
206
205
208
209
207
206
205
207
219
226
221
209
203
196
198
193
196
196
188
194
193
193
189
203
215
210
190
181
180
178
177
182
189
193
191
186
188
189
184
173
179
179
183
186
187
189
190
215
199
199
203
200
196
184
168
180
145
172
180
180
170
173
171
194
200
192
171
154
148
148
143
148
175
155
156
150
141
139
142
142
128
130
135
132
132
130
124
124
113
110
110
112
117
124
168
221
228
227
227
228
227
226
227
226
225
225
225
225
225
225
224
225
223
223
224
225
224
225
226
226
225
226
228
226
225
225
226
228
227
227
226
226
227
226
225
227
227
226
227
227
227
227
227
227
228
229
229
230
230
230
230
231
232
230
230
231
230
230
230
229
231
231
230
230
231
231
232
232
232
229
231
231
218
196
147
108
88
79
88
102
123
133
134
131
129
125
123
120
117
116
117
118
118
117
116
117
115
134
177
186
237
238
237
238
239
239
239
239
239
239
239
239
239
239
239
239
238
238
238
239
239
238
238
239
239
238
238
238
239
239
239
239
238
238
239
238
231
233
208
121
73
27
16
8
8
1
2
2
1
0
1
2
2
2
1
2
2
12
79
126
160
165
180
171
186
203
213
218
220
223
224
223
222
222
222
222
221
218
221
221
217
219
217
217
219
217
218
223
224
218
215
213
209
208
207
209
207
207
207
206
205
208
209
206
204
207
205
209
215
212
211
207
196
193
197
188
187
201
204
193
195
195
198
207
201
191
190
195
194
193
192
193
197
194
195
191
184
177
170
175
178
185
190
193
192
209
211
182
209
210
210
179
178
183
178
172
183
188
184
193
182
187
208
199
176
163
170
162
141
153
173
158
147
143
144
140
138
134
133
135
136
137
136
125
120
116
116
112
110
114
120
145
199
231
231
229
229
228
227
226
225
226
226
225
225
225
225
226
226
225
226
225
226
226
226
225
226
226
227
227
228
227
225
226
228
227
228
228
227
225
227
227
226
226
228
228
228
228
229
229
229
229
230
229
229
230
230
231
230
230
231
231
231
231
231
231
231
230
230
231
231
230
230
232
231
231
232
232
230
232
232
233
223
208
173
127
107
85
63
52
61
87
110
131
140
142
141
136
133
132
130
127
126
124
124
116
158
115
109
238
238
237
238
239
239
239
239
239
239
239
239
239
239
239
239
238
238
238
239
239
238
238
239
239
238
238
238
238
238
239
238
239
240
238
240
240
238
235
222
205
145
76
13
3
2
2
6
3
2
1
0
1
2
2
3
1
7
44
76
137
172
174
169
172
197
216
224
221
223
224
222
223
223
220
220
221
218
220
221
218
217
215
217
219
221
218
223
220
218
218
215
213
210
206
208
206
205
206
205
204
206
206
204
205
208
205
206
207
205
204
206
201
200
198
188
194
200
202
188
189
193
191
193
190
190
197
203
202
198
197
198
198
200
199
194
188
185
184
184
186
186
188
192
209
221
192
182
206
205
201
178
187
207
198
190
175
187
190
185
194
199
185
169
180
162
156
152
140
150
169
154
147
152
154
147
149
137
137
137
135
134
129
124
106
108
108
118
112
119
170
220
230
227
229
229
228
227
228
227
226
226
226
225
226
226
226
226
227
226
227
226
227
226
227
226
226
226
227
227
227
227
226
227
228
227
228
228
227
226
227
227
227
227
228
228
228
228
228
228
228
229
229
230
229
229
230
231
231
230
231
231
231
231
231
231
232
230
231
231
231
231
231
231
231
231
231
232
231
231
232
230
231
226
213
187
148
113
100
76
43
22
23
45
68
92
118
130
137
140
141
136
134
132
131
128
169
182
159
238
238
238
238
238
239
239
239
239
239
239
239
239
239
238
237
236
237
238
237
237
237
237
237
237
237
237
238
238
239
238
238
239
238
238
239
238
239
239
239
240
225
119
42
16
4
6
33
11
2
3
2
1
2
2
2
2
2
2
12
74
118
144
167
156
180
203
229
232
225
225
224
227
224
220
220
220
221
220
219
217
215
218
219
216
216
215
213
214
217
217
214
215
216
214
212
207
206
204
205
205
202
202
203
204
202
207
210
209
209
210
212
209
207
204
201
201
198
197
194
198
195
192
190
195
194
196
193
189
189
185
193
190
188
194
195
192
193
195
194
194
196
193
201
213
215
182
171
201
191
212
179
173
187
184
191
186
190
187
162
159
142
149
161
146
142
139
159
178
181
167
165
154
157
148
141
139
135
136
132
132
132
128
122
117
118
122
134
148
200
231
230
230
229
229
228
228
228
227
227
226
226
227
226
226
227
227
226
226
227
226
226
227
226
227
226
226
226
226
226
224
225
226
226
226
227
226
226
227
227
227
228
228
227
228
229
229
229
229
230
230
230
230
230
229
229
230
231
231
231
231
231
231
231
231
231
231
231
230
231
231
232
231
231
231
232
230
231
230
231
231
229
232
232
231
221
205
173
135
110
94
73
47
21
6
10
20
38
62
84
105
120
128
136
139
138
136
169
184
238
238
239
238
238
239
239
239
239
239
239
239
239
239
238
238
237
237
238
238
237
237
237
237
237
237
237
237
237
237
239
238
239
238
238
238
238
238
238
238
239
237
202
102
19
12
22
25
3
2
6
1
1
2
2
1
2
3
4
5
22
15
36
124
84
176
230
242
242
236
230
225
223
223
221
219
221
221
219
218
216
218
219
219
215
213
211
211
212
213
212
213
215
216
214
213
208
206
204
204
206
203
205
205
202
200
201
201
209
215
212
212
211
208
205
201
199
199
197
198
200
198
196
194
196
199
196
194
194
193
194
199
199
197
200
202
201
197
197
198
196
195
195
209
207
177
188
170
196
186
146
125
165
189
191
205
204
193
171
152
145
141
145
135
130
141
138
147
158
155
147
148
151
150
139
139
139
139
135
124
124
130
133
131
131
133
137
173
221
234
232
230
229
229
230
228
228
228
228
228
226
227
227
226
226
227
227
226
226
226
226
226
227
227
227
227
227
227
227
226
224
225
226
226
226
227
226
226
226
228
227
228
228
228
229
229
230
229
230
230
230
231
230
230
230
230
231
231
231
231
231
230
231
231
231
231
231
231
230
230
231
231
231
232
231
231
231
231
230
230
231
231
231
232
231
231
227
215
198
161
125
103
89
71
38
16
4
2
4
7
19
37
56
81
100
114
126
129
130
238
238
239
239
239
239
238
238
238
238
238
239
239
239
238
238
237
238
238
238
237
238
238
238
237
238
238
238
238
237
238
239
239
239
238
239
239
238
238
239
239
240
212
142
138
115
45
10
9
4
2
2
1
3
2
3
2
2
4
23
65
46
29
150
161
230
243
244
244
244
238
233
230
224
223
220
220
219
217
216
215
216
215
216
214
214
212
213
211
211
209
209
210
210
208
210
209
207
205
205
207
205
206
204
201
202
200
200
201
202
202
203
205
204
201
200
199
200
194
198
203
202
199
196
197
201
201
201
202
202
200
202
204
202
201
201
199
196
196
197
192
191
199
215
212
204
214
180
171
159
159
187
211
207
185
195
165
140
140
143
146
149
150
146
161
166
157
158
159
154
156
158
157
148
142
140
142
140
137
134
134
137
136
136
138
155
205
233
232
231
231
230
229
230
230
229
228
228
228
228
227
227
227
226
226
226
226
226
226
225
225
226
226
226
227
227
227
227
226
226
227
226
226
227
227
226
228
227
227
228
228
228
229
229
230
230
231
230
230
231
231
230
230
230
230
231
231
231
231
231
231
230
231
231
231
231
230
230
229
231
230
231
231
232
232
231
231
231
230
230
230
232
232
232
230
231
231
231
225
212
194
149
112
102
88
69
41
18
5
2
3
2
5
15
40
39
54
75
92
238
238
239
238
239
239
239
239
239
238
238
239
239
239
238
238
237
238
238
238
238
238
238
237
237
238
238
237
237
237
237
238
238
238
237
238
239
239
239
239
238
239
233
231
204
124
100
61
83
18
4
2
2
2
1
2
3
8
24
108
167
149
87
210
241
244
243
243
242
243
242
239
241
234
227
222
219
218
215
220
220
214
212
212
212
213
211
212
212
210
209
208
205
205
205
206
206
205
205
206
203
202
203
203
203
202
203
200
199
196
196
196
196
197
197
197
199
198
193
196
199
199
198
200
199
199
200
198
197
198
197
196
196
199
195
194
192
190
189
185
177
185
201
221
238
188
182
163
172
180
166
163
158
159
137
177
140
156
166
157
152
151
153
157
158
156
160
160
163
161
162
159
156
151
147
143
143
141
140
141
140
141
139
150
194
230
233
230
232
229
230
229
229
230
229
229
228
228
227
227
228
228
227
226
226
226
227
226
226
227
226
227
227
227
227
227
227
227
227
227
228
228
227
227
226
227
227
227
227
228
229
230
229
229
230
230
231
231
230
230
230
230
230
230
230
230
230
231
231
231
231
231
230
230
231
230
230
231
230
230
230
232
231
231
231
231
230
230
230
231
232
232
233
232
231
231
231
231
229
227
221
215
178
133
111
101
90
77
52
21
6
3
3
24
115
43
34
38
43
238
239
239
239
240
240
240
240
239
238
238
239
239
239
238
238
237
238
238
239
239
238
238
236
236
238
238
235
236
236
237
238
237
237
237
238
238
238
239
239
238
238
238
236
195
170
103
152
120
94
27
8
10
8
5
4
23
67
126
193
226
163
181
241
245
246
244
244
243
244
244
244
242
241
237
228
223
216
217
219
221
216
214
215
214
211
209
209
210
212
211
208
205
203
204
205
206
205
204
204
202
202
202
201
202
202
203
200
200
195
191
191
190
190
189
189
191
189
186
188
190
191
189
192
194
193
190
190
190
189
188
189
191
191
188
186
186
183
183
187
172
192
214
220
228
166
172
193
168
179
174
177
156
189
180
174
161
164
167
165
158
156
156
155
156
157
159
159
159
156
154
151
150
149
147
145
144
143
145
144
144
148
182
222
236
233
231
232
230
230
231
229
229
229
229
229
228
229
228
228
228
228
228
228
226
226
227
226
227
227
227
227
227
226
227
227
227
227
227
228
228
228
228
227
226
227
227
227
228
229
229
230
230
230
230
230
231
232
230
230
230
230
230
230
230
230
230
230
231
231
232
232
231
231
231
231
230
230
231
230
230
230
231
231
232
231
230
230
231
231
232
232
231
232
231
232
231
231
232
232
230
228
220
201
158
123
108
105
94
79
54
27
12
23
155
175
172
171
171
238
238
239
238
238
239
239
241
240
239
239
238
239
238
238
238
237
238
237
237
237
238
238
237
236
238
237
237
237
236
237
237
238
238
237
237
238
238
238
238
238
236
237
240
231
198
225
229
227
162
97
86
134
110
70
92
112
170
232
242
241
229
241
244
243
243
244
243
243
243
243
243
244
245
245
242
235
224
221
219
223
219
214
216
217
214
212
210
213
211
211
212
209
204
203
202
203
203
202
201
200
200
199
198
197
198
197
196
197
193
191
188
185
186
183
184
183
181
181
180
179
180
180
179
182
182
180
179
177
177
180
182
184
183
183
181
182
183
183
186
173
182
200
208
220
192
191
204
186
185
196
198
200
187
163
156
164
171
168
163
159
158
155
154
155
154
153
151
151
152
151
150
147
147
148
146
147
148
146
151
184
221
239
234
234
233
233
232
232
230
231
231
230
229
229
229
228
229
228
228
229
228
228
228
227
226
226
227
227
227
225
226
227
227
226
227
227
226
227
228
227
228
228
229
227
228
228
228
229
229
231
231
231
231
231
231
231
231
230
231
230
231
230
231
231
230
230
230
230
230
231
231
230
230
231
231
231
231
230
231
231
230
230
231
231
230
230
230
230
231
232
232
231
230
229
230
230
231
230
230
232
230
230
225
214
186
141
119
111
103
97
85
69
52
108
38
53
68
35
238
238
239
238
238
239
239
240
239
240
239
238
239
238
238
238
238
238
237
237
237
238
238
237
237
238
237
237
237
236
236
237
238
238
237
237
237
238
239
238
238
238
238
239
239
241
240
241
239
217
189
200
233
229
169
206
214
232
245
244
243
244
244
244
243
243
244
243
243
243
243
243
246
247
246
245
244
239
231
224
222
220
215
216
216
215
214
213
212
212
210
212
210
207
206
204
202
202
201
199
200
199
197
197
196
194
192
191
194
192
192
190
188
186
182
182
181
179
178
175
178
176
176
177
176
175
175
173
173
174
179
180
181
180
180
181
180
182
184
182
176
172
170
176
186
197
193
199
181
193
184
180
174
176
169
169
165
166
162
157
154
150
148
147
146
145
148
147
149
150
151
150
150
149
149
149
147
153
177
216
236
236
236
234
234
234
233
233
232
229
230
231
230
229
229
228
228
228
228
228
229
228
228
228
227
227
226
227
226
227
224
226
227
227
226
226
226
226
227
228
228
227
228
228
228
229
229
229
229
229
230
231
231
231
231
231
231
231
230
231
230
230
230
232
232
231
231
231
230
231
231
230
231
231
231
231
230
230
230
231
231
231
230
230
230
230
230
230
230
231
232
232
232
230
229
229
230
230
230
230
231
230
229
231
226
219
202
167
131
116
106
106
102
88
139
62
81
98
5
239
239
239
239
238
238
238
240
239
240
239
238
239
238
239
239
239
239
237
237
237
238
238
238
237
237
238
237
237
236
236
237
238
238
238
238
237
238
238
238
239
238
240
239
240
240
240
241
242
241
241
243
241
241
239
241
243
243
242
243
246
243
243
244
243
243
244
243
243
243
243
243
246
246
247
247
247
246
246
241
234
227
220
216
216
215
215
214
213
214
211
211
208
209
210
207
207
205
205
203
199
198
197
196
194
190
190
191
190
189
189
187
189
186
181
182
183
181
178
177
177
175
174
175
175
175
174
177
179
181
179
180
178
177
178
179
175
173
175
176
174
173
175
170
167
164
164
163
171
177
166
167
165
165
161
161
157
155
149
144
139
134
137
138
142
147
150
150
150
151
149
150
150
151
153
161
183
218
237
239
235
236
234
234
235
234
233
233
231
230
230
230
230
229
229
230
229
229
229
229
228
228
229
228
227
227
227
227
226
226
225
225
227
226
226
226
227
226
226
226
226
228
227
228
229
229
228
229
229
229
231
231
230
230
230
231
231
231
230
231
231
231
231
231
231
232
232
232
231
232
231
231
230
230
231
231
231
230
230
231
231
231
231
230
230
230
230
230
230
230
231
231
231
230
228
229
230
230
231
231
230
230
231
231
228
229
225
218
193
159
131
117
113
108
148
193
183
87
39
239
239
239
239
238
238
238
240
239
240
239
238
239
238
239
239
239
239
237
237
237
238
238
238
237
237
238
237
237
237
236
237
238
238
238
238
237
237
238
239
239
238
239
239
239
239
239
241
240
241
241
241
241
242
243
243
242
242
243
244
244
245
244
244
243
243
243
244
243
243
244
245
247
246
246
247
247
246
246
245
242
241
234
227
222
219
218
214
213
213
212
214
211
212
212
209
207
206
206
206
203
200
199
197
196
194
193
193
193
190
187
188
189
187
185
186
188
189
185
184
183
183
183
182
181
184
185
186
183
185
184
180
181
184
184
182
181
179
179
178
175
174
177
174
172
171
171
168
164
160
156
166
159
158
152
153
152
145
138
138
140
137
141
146
150
152
153
154
153
153
153
154
153
166
191
222
239
241
238
235
237
235
233
235
236
234
233
233
231
230
230
230
230
229
229
230
230
230
229
228
228
227
227
227
227
227
227
227
226
226
225
225
226
226
227
227
228
227
226
226
226
228
227
227
229
229
228
229
229
229
230
230
230
230
230
231
231
231
230
231
232
232
231
232
231
232
232
232
231
231
231
231
231
230
231
230
230
230
230
231
231
232
231
230
230
230
230
230
230
230
231
231
230
229
228
229
229
231
230
230
230
229
229
229
229
229
227
226
222
211
187
151
126
118
125
122
116
101
92
239
239
239
239
239
238
238
240
239
239
239
238
239
238
239
239
238
239
237
237
237
238
238
238
238
238
238
237
238
238
237
238
238
238
238
238
237
238
238
238
238
238
239
240
239
239
240
241
241
242
242
240
243
242
243
242
243
245
243
244
244
243
244
244
244
244
243
243
243
243
244
246
247
247
247
247
247
246
246
248
247
247
245
242
238
234
226
219
216
215
214
215
212
213
211
210
210
209
207
204
203
205
207
207
207
210
209
206
204
199
194
191
196
195
196
196
197
197
194
193
192
193
194
193
192
192
193
191
188
187
187
185
185
185
185
184
183
184
184
181
178
176
173
168
167
166
165
157
145
148
152
158
157
154
149
147
145
140
140
142
145
149
154
156
158
156
158
155
154
156
163
179
206
230
239
240
238
237
238
237
236
236
235
236
236
234
233
233
231
229
230
229
230
229
229
229
229
229
228
228
228
227
227
227
227
226
226
225
226
226
227
226
226
226
226
226
226
225
227
228
227
227
228
227
228
229
228
230
229
228
229
230
230
230
231
231
231
231
230
231
232
232
231
233
232
231
231
231
231
231
231
231
231
231
231
230
230
231
230
231
231
231
231
231
231
231
231
231
230
230
231
232
230
229
229
229
228
229
229
229
229
228
228
229
228
227
228
226
229
225
219
209
190
171
213
199
202
201
196
238
238
238
239
239
238
238
239
239
239
239
238
239
238
239
239
238
239
238
237
237
238
238
238
237
238
239
237
237
237
238
238
238
238
238
238
237
238
237
238
238
239
238
239
239
239
240
239
240
241
242
242
242
242
242
242
242
243
243
244
244
244
244
244
244
243
243
243
243
243
244
246
247
247
247
247
247
247
247
246
246
246
247
247
245
246
243
236
228
219
217
217
215
213
212
215
212
210
210
208
208
205
206
205
204
207
207
208
206
204
202
199
200
200
198
199
199
196
198
198
196
197
194
194
194
194
194
193
191
190
189
188
189
188
188
189
186
184
182
181
177
172
168
165
164
164
162
160
157
154
155
152
151
148
148
148
149
152
155
158
162
163
164
162
161
162
162
162
178
199
224
239
239
237
236
237
237
238
237
237
237
237
235
236
236
234
233
232
232
230
230
230
230
230
230
229
230
230
229
229
229
228
228
227
226
226
226
226
226
226
227
227
227
226
226
227
226
226
227
228
227
228
228
226
227
229
228
229
229
230
230
230
231
231
232
232
231
231
232
232
232
231
231
231
231
231
231
231
230
231
231
231
231
230
230
231
231
230
231
231
230
231
231
231
230
230
231
231
230
230
231
231
230
229
229
229
229
229
228
228
228
227
227
228
227
226
225
227
227
225
224
223
217
212
198
174
173
142
132
237
237
237
238
238
238
238
239
240
239
238
238
238
238
238
238
238
238
238
237
237
238
238
238
237
237
238
237
236
236
238
238
238
238
238
238
237
237
236
238
238
239
238
239
239
238
239
239
240
240
241
241
242
242
241
242
242
242
243
244
244
244
244
244
243
243
243
244
244
244
244
245
246
246
247
246
246
247
247
246
247
247
247
248
248
248
247
246
243
240
235
226
220
218
218
218
217
217
216
216
215
215
215
210
209
206
208
206
205
206
203
201
202
201
196
196
197
196
196
199
199
199
198
197
196
196
197
193
192
191
190
191
191
190
188
186
184
184
180
177
173
168
166
166
165
165
165
163
159
157
159
158
157
157
161
164
164
167
168
169
170
168
166
164
168
178
198
218
233
237
240
238
238
237
238
238
238
237
237
237
237
236
235
236
235
234
233
232
232
231
230
230
229
231
229
229
229
230
229
229
228
228
227
226
226
226
226
226
226
226
226
227
227
226
226
227
226
226
227
228
227
227
228
226
227
229
228
228
229
230
230
230
230
230
232
232
231
231
232
232
232
232
232
231
231
231
231
231
230
231
231
231
230
230
230
231
231
230
231
231
230
231
231
231
230
230
230
231
230
230
230
229
230
229
229
228
228
228
227
227
226
226
227
227
226
226
227
227
227
225
226
225
223
222
220
212
225
217
197
238
238
238
237
237
237
238
239
239
239
238
238
238
238
238
238
238
239
239
239
239
238
238
238
238
237
238
238
236
236
237
237
238
238
238
238
238
237
236
237
237
238
239
239
238
238
239
239
240
240
241
241
241
241
241
242
243
242
243
243
243
244
244
244
243
243
243
244
245
246
246
245
245
246
247
246
246
246
247
247
248
248
247
248
249
248
248
249
249
248
249
248
246
239
231
224
220
220
222
221
222
223
223
221
219
220
215
213
212
211
208
207
208
207
204
205
201
199
196
195
198
199
198
197
195
197
197
196
194
194
192
191
191
192
191
188
185
184
181
179
177
172
169
168
167
167
167
166
166
166
165
169
170
171
169
169
173
171
169
169
171
176
187
204
224
236
241
238
237
236
237
238
240
239
239
238
237
237
237
236
237
236
235
235
235
235
232
232
231
231
230
231
230
231
230
229
229
230
229
228
228
229
227
226
227
227
226
227
228
228
227
226
226
227
226
227
226
226
227
227
226
226
227
227
227
228
228
228
228
229
230
230
229
229
231
231
231
231
231
232
232
233
233
232
231
232
232
231
231
231
231
230
230
230
231
231
231
231
231
231
230
231
230
229
230
230
231
231
230
230
230
230
228
228
228
226
227
227
226
227
227
226
226
226
225
225
226
226
225
224
225
222
223
223
222
219
221
229
226
237
238
238
237
237
237
237
238
238
239
238
237
237
237
237
237
238
238
239
239
239
238
238
238
238
237
237
237
237
238
237
238
239
239
239
239
238
237
237
237
237
238
239
239
238
238
238
239
239
239
240
241
241
241
240
242
243
242
242
243
243
244
244
244
243
243
243
244
244
245
246
245
246
246
247
246
246
246
246
247
247
247
247
248
249
248
249
249
250
249
249
248
248
247
248
244
237
231
228
227
228
227
227
228
226
225
225
227
221
216
215
215
214
212
208
212
210
207
205
205
203
200
197
196
197
197
197
195
195
196
194
191
191
190
188
188
185
184
182
179
177
173
169
168
168
169
171
171
172
172
173
172
169
169
173
174
175
176
185
199
214
229
237
240
241
240
240
239
238
238
238
239
239
238
238
238
237
237
237
236
237
236
235
236
236
235
232
232
231
232
231
231
230
231
230
229
229
230
229
228
228
229
228
227
227
227
226
227
228
227
226
226
226
227
226
226
226
226
227
227
226
226
226
227
227
227
228
228
227
229
230
230
230
230
231
231
232
231
231
232
232
233
232
232
232
231
231
231
231
231
231
231
230
230
231
231
231
231
231
231
230
230
229
229
230
230
231
230
229
229
229
229
228
227
227
227
227
226
226
226
226
226
225
225
226
225
224
224
224
224
224
222
222
221
219
219
217
223
226
236
236
236
236
236
237
236
237
236
237
237
237
236
237
237
238
237
238
239
239
239
239
239
238
238
237
238
238
238
238
237
239
238
238
238
238
238
236
237
238
238
239
239
238
238
238
238
239
239
239
239
240
240
240
240
241
243
242
242
243
243
243
244
244
243
243
244
243
243
245
247
246
246
246
247
246
246
246
247
247
248
248
248
249
248
249
249
249
249
250
249
248
249
249
249
250
249
249
245
242
238
236
234
231
231
230
230
231
229
225
223
220
215
211
209
213
211
211
211
209
209
203
204
205
202
200
199
200
198
196
196
193
191
188
186
185
183
181
180
179
177
176
174
174
175
178
180
178
178
177
178
181
186
190
196
204
214
228
237
241
243
240
240
239
240
241
241
238
238
238
239
239
239
238
237
237
237
237
237
236
235
236
235
234
234
233
232
232
232
231
230
231
231
231
231
230
230
230
228
228
228
229
228
227
227
227
227
226
226
225
226
227
227
226
226
227
227
227
228
227
226
226
226
227
227
227
228
228
228
229
230
231
231
230
231
231
231
231
231
232
232
233
232
232
233
233
232
232
231
231
231
231
231
230
230
231
231
231
231
230
230
230
230
229
229
229
229
229
229
228
227
227
227
226
226
226
225
225
224
225
224
224
224
223
224
224
223
223
223
223
223
222
221
222
218
219
226
233
237
237
237
237
236
236
236
236
237
236
237
236
236
236
236
237
237
238
238
239
239
238
239
239
239
239
238
239
239
238
237
237
237
237
237
237
237
238
237
238
239
239
239
239
238
239
239
239
239
239
239
239
240
240
240
239
240
241
242
242
242
243
243
244
243
243
243
243
243
243
245
247
246
247
247
248
246
246
246
247
247
249
249
249
250
249
249
249
249
249
249
249
249
249
249
249
250
248
248
249
249
249
247
244
240
238
235
235
232
231
231
231
230
226
223
218
218
215
211
210
209
205
205
206
206
203
199
198
200
199
196
195
194
190
188
187
187
185
185
186
185
185
186
184
180
183
183
185
187
195
198
205
214
222
228
238
242
243
242
241
241
241
240
239
239
240
239
240
239
239
238
238
239
239
240
238
237
237
237
237
236
235
236
235
233
234
233
232
232
232
231
230
231
231
230
230
231
230
230
229
229
229
229
227
227
228
228
228
226
225
226
227
227
227
227
226
227
227
228
228
227
226
226
226
228
228
227
228
228
228
229
230
231
231
230
231
230
231
231
231
232
232
233
233
232
232
233
233
231
231
231
231
231
231
230
230
231
231
231
231
230
230
229
229
228
229
229
228
228
229
229
228
228
227
227
226
225
225
224
223
224
224
224
223
222
222
222
222
223
223
222
221
221
221
221
219
218
225
217
211
236
236
236
236
236
237
236
236
236
237
237
237
237
237
237
236
237
237
238
238
238
239
239
239
239
238
238
239
239
238
238
237
237
237
237
237
237
238
237
238
238
239
239
239
239
239
238
239
238
238
239
239
239
240
240
240
240
240
241
242
242
243
243
243
244
244
243
243
244
246
247
247
248
247
247
246
246
246
247
247
248
248
248
249
249
249
248
250
250
250
250
250
249
248
249
249
249
250
249
249
249
249
247
248
249
247
245
244
240
237
237
233
231
231
228
227
226
224
223
224
220
218
215
212
210
207
207
207
205
203
201
200
197
195
192
192
193
195
195
198
198
200
202
205
210
214
220
226
233
237
241
243
244
243
242
241
241
241
240
242
241
240
240
240
241
240
240
240
238
238
238
239
239
238
238
238
237
237
236
237
236
235
234
234
234
233
232
233
231
231
231
231
230
230
230
231
230
229
230
230
229
228
228
227
228
227
227
226
226
226
226
227
226
227
226
227
227
227
228
227
226
227
227
227
227
227
227
228
228
229
230
231
230
231
231
231
231
231
231
232
232
233
232
233
233
232
232
231
231
232
230
231
230
231
231
231
231
231
231
231
230
230
229
229
229
229
229
228
229
228
227
228
226
227
224
223
223
224
223
223
223
222
222
222
222
221
222
222
222
221
220
222
221
220
218
218
228
237
229
237
237
236
237
237
236
236
236
236
236
236
237
237
237
237
236
237
238
238
238
238
239
239
239
239
239
238
238
238
238
238
239
238
238
238
238
237
238
238
238
238
239
239
239
239
239
238
239
238
238
239
238
239
240
240
240
240
240
241
242
242
243
242
243
244
244
244
244
245
247
247
247
247
247
247
246
246
246
247
248
247
248
249
249
249
249
249
249
249
249
249
249
249
247
247
249
249
249
249
249
249
249
248
248
249
250
250
249
249
248
249
246
245
244
240
237
234
232
228
227
226
226
225
223
223
220
219
218
218
219
217
214
215
216
216
216
212
216
222
223
227
232
237
241
243
245
246
244
244
243
244
243
243
242
243
242
242
242
241
242
241
240
240
240
241
240
240
239
238
238
238
238
238
238
238
238
237
238
237
236
236
235
235
234
234
233
232
233
232
231
231
231
230
230
230
231
230
229
230
230
229
228
229
228
228
227
227
226
226
226
226
227
226
227
226
226
227
226
227
227
227
227
227
226
226
228
228
229
229
229
230
231
230
231
231
231
231
231
231
232
232
233
232
233
233
231
231
231
232
232
231
231
231
231
231
231
231
231
231
229
228
229
228
228
229
229
228
228
229
228
227
226
226
225
222
222
221
222
221
221
221
220
221
221
220
220
222
221
222
221
220
220
220
217
218
215
215
227
227
236
236
236
237
236
237
237
238
238
237
237
236
237
237
237
236
237
238
237
237
237
239
239
239
238
238
239
238
238
238
240
239
238
238
239
238
238
239
239
239
239
239
239
238
238
239
239
239
239
239
238
238
239
240
240
240
240
240
240
242
242
243
242
243
244
245
244
244
246
247
247
246
247
246
247
246
246
245
247
248
247
248
249
249
249
249
249
249
249
249
249
249
249
248
247
248
250
250
249
248
249
249
249
248
248
248
249
249
248
249
249
249
248
248
247
248
248
248
248
245
245
245
245
245
245
243
241
241
241
241
241
242
243
244
244
244
244
246
246
246
247
247
247
246
247
245
245
245
245
243
243
242
243
242
243
242
241
241
240
241
241
241
241
241
240
239
239
239
238
239
240
240
240
239
238
237
236
237
237
237
237
236
235
234
234
233
232
232
232
231
231
231
231
230
230
231
231
230
230
230
229
228
229
229
229
228
227
226
227
227
226
227
226
227
227
228
227
226
226
226
228
228
227
226
227
228
229
229
229
229
230
231
230
231
232
231
231
231
231
232
232
231
231
232
232
231
231
231
231
231
231
231
231
231
231
231
231
231
231
230
229
227
228
228
229
229
228
227
229
229
227
226
225
225
223
222
221
221
221
222
221
220
221
220
218
219
220
220
221
220
219
217
217
217
218
220
237
234
231
236
236
236
236
236
236
236
236
236
236
236
236
236
236
236
236
237
237
237
237
237
238
239
239
239
238
239
239
238
238
239
239
238
238
239
239
238
239
238
239
238
238
238
238
238
238
239
239
239
239
238
238
239
240
240
239
239
240
240
242
242
242
242
243
244
245
244
245
245
245
245
246
246
245
246
246
246
246
247
248
247
247
248
248
248
248
247
247
247
247
247
248
248
249
248
248
249
249
248
248
247
247
248
248
249
249
248
249
250
249
248
248
248
249
248
248
248
248
248
247
248
247
248
248
248
248
248
249
248
248
247
248
248
248
247
246
246
246
246
246
247
246
245
245
246
245
246
246
244
243
243
242
242
242
241
241
242
242
240
240
240
240
240
240
239
239
240
240
238
238
238
239
239
239
239
238
237
237
237
236
235
235
235
234
234
233
232
232
231
230
230
230
230
230
230
231
231
230
229
229
229
228
228
228
228
227
226
226
227
227
226
227
226
226
227
227
227
227
226
226
226
227
227
227
228
229
228
229
230
230
231
231
231
231
231
231
231
231
231
231
232
231
230
231
231
231
232
232
231
231
231
230
230
231
231
231
231
230
230
230
230
228
228
229
229
229
227
227
228
228
227
226
226
224
223
223
222
221
221
220
220
220
219
219
218
219
220
220
219
218
218
216
216
214
215
216
231
226
223
235
235
235
235
235
235
234
234
235
234
235
236
236
236
236
236
237
237
238
237
237
237
237
238
238
238
238
238
238
237
238
238
238
239
239
239
239
239
239
239
239
237
238
239
239
238
239
238
239
239
238
238
239
240
240
239
239
240
240
242
242
242
242
242
244
245
244
244
245
245
244
246
246
245
246
247
246
246
247
248
247
247
247
247
247
247
247
247
247
247
248
249
249
248
248
247
248
249
249
248
247
246
248
248
248
248
248
249
249
249
248
248
248
248
248
249
250
250
248
248
248
248
247
248
247
247
246
247
247
247
247
248
247
247
248
247
248
247
247
246
246
246
246
245
246
245
245
244
244
244
242
242
243
243
241
241
241
241
240
240
240
240
240
240
239
239
240
240
238
239
239
239
239
238
238
239
238
238
237
236
235
234
234
234
234
233
233
233
231
231
230
230
230
230
230
231
231
229
229
229
229
229
229
228
229
227
226
226
227
227
227
226
226
226
226
227
226
227
227
226
226
227
228
227
227
229
228
230
230
230
231
231
232
232
231
231
232
232
231
231
231
232
231
230
231
231
231
231
230
230
230
229
230
230
230
231
231
231
231
231
231
231
229
230
230
230
228
228
229
228
227
226
226
224
222
222
221
222
221
219
220
219
219
218
217
217
218
218
218
217
217
215
215
214
215
214
217
213
214
235
235
234
234
234
234
235
234
234
234
235
235
235
236
236
236
238
238
238
237
237
236
237
238
237
237
238
239
238
238
238
239
240
240
240
239
239
239
239
239
238
238
239
239
239
239
239
238
238
238
239
239
239
239
240
240
239
239
241
242
242
242
242
243
243
244
244
244
244
245
246
247
246
245
245
247
246
246
247
248
247
247
247
248
248
248
248
247
247
247
247
248
248
247
247
247
248
249
248
248
247
247
247
247
248
248
248
247
248
249
248
248
247
249
248
248
249
248
247
247
247
248
248
247
248
247
247
247
247
248
248
248
247
247
247
246
247
246
246
246
246
245
245
246
246
245
245
245
243
242
242
242
242
242
242
241
241
240
240
240
239
239
239
239
239
239
240
240
239
240
239
238
238
237
237
238
238
237
237
235
235
235
233
233
234
232
232
232
231
231
230
230
231
230
230
231
230
229
229
229
228
228
228
228
228
227
227
227
226
226
227
226
226
227
226
226
226
227
226
226
227
227
228
228
228
230
229
229
230
231
231
232
233
233
232
233
232
232
231
232
231
230
230
231
231
231
231
232
231
231
229
230
231
230
231
231
231
231
231
231
231
230
229
230
230
229
227
228
227
227
226
225
224
224
222
222
221
221
220
220
219
217
217
218
218
217
218
217
216
216
216
214
214
214
216
213
218
234
240
235
235
234
234
234
235
235
234
234
234
235
235
235
236
236
236
237
237
238
237
237
236
237
238
237
237
238
239
239
238
238
239
238
239
239
237
238
238
238
238
238
238
238
239
239
239
238
238
238
239
239
239
239
240
240
240
239
239
240
241
241
241
242
242
243
244
244
243
244
245
247
247
247
246
246
247
247
246
247
247
247
247
246
247
247
247
247
247
247
247
247
248
248
247
247
247
247
248
248
248
248
248
248
248
249
249
249
248
248
248
248
249
248
248
248
248
249
248
247
247
247
248
247
247
247
247
247
247
247
247
246
246
247
247
246
246
247
246
246
245
245
245
246
246
246
245
245
245
243
242
242
242
242
243
242
241
241
240
240
241
240
238
239
240
239
240
239
239
238
240
239
239
239
238
238
238
237
237
236
235
235
235
234
234
234
233
233
232
230
229
228
230
230
230
230
230
230
229
229
228
227
228
228
229
229
227
227
227
226
226
227
226
226
226
226
227
226
228
227
227
228
227
228
228
230
231
230
230
231
232
232
233
233
233
233
233
232
232
232
232
231
230
230
231
232
231
231
231
230
231
231
231
231
230
230
230
230
231
231
231
231
230
229
230
230
229
227
227
227
228
227
226
225
224
223
222
222
220
220
219
218
217
218
217
218
217
216
215
216
215
214
212
212
213
214
212
226
213
212
234
234
234
235
235
234
235
233
234
234
235
235
235
236
237
236
236
237
238
237
237
238
238
239
238
239
238
239
239
239
239
238
238
238
237
237
238
237
237
237
237
238
238
238
239
240
240
239
239
240
238
238
239
240
240
239
239
239
239
240
239
239
241
242
243
243
243
244
245
246
246
246
246
246
246
247
247
246
246
245
245
246
246
247
248
248
248
247
247
248
248
248
248
248
248
248
248
248
247
247
247
247
247
247
248
248
248
248
248
248
248
248
248
249
248
248
249
249
247
248
247
247
246
247
247
247
248
248
247
246
246
246
246
246
246
246
246
245
245
245
245
246
246
247
246
245
244
244
243
244
243
243
243
242
243
242
242
241
241
241
240
239
239
240
241
241
239
239
238
240
240
240
240
239
239
238
237
236
236
235
236
236
234
234
233
233
232
232
231
229
229
229
229
229
229
229
229
228
229
229
227
227
228
229
229
227
227
227
227
227
227
227
227
226
227
228
227
228
229
228
227
228
228
228
229
230
231
231
232
233
233
234
234
234
234
234
234
234
234
233
231
231
231
231
231
231
231
231
230
231
232
231
231
231
230
229
229
231
231
231
230
229
229
230
230
229
227
228
228
228
227
226
226
225
224
221
221
220
220
217
217
218
219
217
217
216
214
213
214
213
212
212
211
211
212
213
227
227
216
234
235
235
235
235
235
235
233
233
235
235
235
235
236
236
236
236
237
238
237
237
237
238
238
237
238
238
239
239
239
239
238
239
238
237
238
238
237
237
238
238
238
238
238
239
240
240
240
240
240
238
238
239
239
239
239
239
239
239
240
240
240
242
243
243
244
243
244
244
245
245
245
246
246
247
247
247
247
246
246
246
246
246
247
247
248
248
247
247
248
248
248
248
247
247
247
247
247
247
247
247
247
247
248
249
249
249
249
249
249
248
248
248
250
249
248
249
249
247
247
247
247
246
247
247
247
247
247
246
246
247
247
246
246
246
246
246
245
245
245
245
246
246
246
245
245
245
244
243
244
243
243
242
242
243
242
242
242
241
242
240
239
239
239
240
240
238
239
238
240
240
240
239
238
237
237
237
237
237
236
235
235
234
234
233
232
231
231
230
229
229
229
228
229
229
230
230
228
228
228
227
227
228
228
229
228
227
227
227
227
227
227
228
226
228
228
227
228
229
229
227
228
229
228
230
230
232
232
233
234
233
233
233
233
234
233
234
234
234
233
232
232
231
231
231
231
231
231
231
232
232
231
231
230
230
229
229
231
231
230
229
229
230
230
229
228
227
227
228
227
226
225
225
223
223
221
222
220
219
218
218
217
216
217
217
215
214
214
213
212
212
212
211
210
212
213
215
231
234
232
233
233
233
234
234
235
234
235
234
233
234
235
236
235
235
236
236
237
238
238
237
238
237
236
237
237
238
238
239
238
239
238
237
238
237
237
237
238
238
238
237
237
239
239
240
240
239
240
240
239
240
240
239
239
240
240
240
239
240
239
239
241
242
242
242
242
242
244
244
244
245
246
246
246
247
247
246
247
247
247
247
248
248
247
248
248
247
247
247
247
248
248
248
248
248
247
247
248
248
248
248
247
248
248
249
249
249
250
248
247
249
249
249
249
248
248
248
247
247
248
248
247
245
246
246
246
246
246
246
246
246
246
246
245
245
246
246
246
245
245
246
246
246
246
246
245
245
244
244
243
243
243
243
243
241
242
242
241
241
241
240
239
239
240
240
239
238
238
239
238
239
238
238
237
236
236
236
236
236
234
234
234
234
233
232
232
231
230
230
230
229
228
228
228
228
228
227
227
227
228
228
227
228
228
228
228
227
227
227
227
227
227
226
227
227
228
228
229
229
228
228
230
229
230
231
232
233
233
234
233
233
233
233
234
234
234
234
234
233
231
231
231
232
231
231
231
231
231
233
232
231
231
230
230
229
229
231
231
230
229
229
229
230
228
228
227
226
227
227
225
225
224
222
221
222
221
221
218
217
218
217
216
215
214
214
214
212
212
211
211
210
210
211
209
211
220
234
222
233
233
233
233
233
234
234
233
233
233
233
234
234
234
235
235
236
236
236
237
237
237
238
238
236
237
236
238
238
239
239
238
237
238
238
237
238
236
237
238
238
237
237
237
238
238
238
238
238
238
240
240
240
239
240
240
240
240
240
240
240
240
242
241
242
242
242
242
243
243
245
244
245
244
244
246
247
247
247
246
247
247
247
247
247
247
246
247
247
247
248
247
248
247
247
247
247
247
247
247
248
248
247
247
247
248
247
247
248
246
246
247
248
248
248
248
248
248
247
248
247
246
246
246
247
247
246
246
246
245
246
246
244
246
246
245
246
246
246
246
246
247
247
247
246
246
245
244
244
244
245
244
243
243
243
242
243
243
242
243
243
241
241
241
240
240
240
239
238
237
237
238
237
237
237
237
237
235
234
233
233
233
232
232
233
232
231
231
230
230
229
229
229
229
228
229
228
229
228
229
227
228
228
228
228
228
228
229
228
228
228
228
227
227
227
227
227
228
228
228
230
230
231
230
232
233
233
232
232
233
233
234
232
233
234
233
233
233
234
233
232
231
231
231
231
232
232
232
230
231
230
229
230
230
229
229
229
231
231
229
229
230
230
229
228
228
226
225
224
225
224
224
224
223
221
220
220
220
218
217
218
218
217
215
214
213
212
211
210
209
210
210
210
209
209
211
223
216
221
232
232
234
233
233
233
233
233
233
233
233
234
234
234
234
235
237
237
236
237
237
237
238
238
236
236
236
237
238
238
239
238
237
238
238
237
237
236
237
238
238
237
237
237
238
239
238
238
238
237
239
240
240
239
240
240
240
240
240
240
240
241
242
242
242
242
242
243
243
243
244
244
244
244
244
246
247
247
247
247
247
247
247
247
247
246
246
246
246
247
247
247
247
248
248
248
247
247
247
247
248
247
247
247
247
248
247
247
248
247
246
247
248
248
248
248
248
248
247
248
247
246
246
246
247
246
246
246
246
245
246
246
245
247
246
245
245
245
246
246
246
246
246
247
246
246
245
244
244
244
245
244
243
243
243
243
243
243
242
243
242
241
241
240
240
240
239
239
238
237
237
237
238
237
237
238
236
235
233
232
233
232
231
231
232
232
231
229
230
231
230
229
228
229
228
228
228
229
228
229
228
229
228
228
228
228
228
230
229
228
228
228
228
228
228
228
228
229
229
228
230
230
231
232
232
233
234
232
233
233
233
234
233
233
234
233
234
234
234
233
233
231
231
232
231
232
232
232
229
230
229
229
229
229
230
229
229
231
231
229
229
230
230
229
229
228
226
225
225
225
223
223
224
222
221
219
218
218
219
217
217
217
216
215
215
213
211
210
210
209
210
209
210
209
210
208
225
232
219
231
231
233
233
232
233
233
233
233
233
233
234
234
234
234
235
237
237
237
237
237
236
236
237
237
236
237
236
237
237
237
236
236
237
237
237
236
236
236
236
236
238
238
237
238
238
239
238
238
238
240
239
238
240
240
241
241
240
240
241
241
241
242
242
242
242
242
243
244
243
243
243
244
243
243
245
246
246
247
247
246
246
247
247
246
246
247
246
246
247
246
246
246
246
246
246
246
247
247
247
247
247
248
247
247
247
247
247
248
248
247
247
247
248
248
248
248
247
247
248
247
246
247
246
246
246
245
245
245
245
245
244
244
245
246
245
244
245
246
245
245
245
245
245
245
245
244
244
244
245
244
243
243
243
243
243
243
243
242
243
241
241
241
240
241
240
238
238
239
238
238
239
239
237
237
236
234
233
233
233
231
231
232
232
233
233
230
229
230
231
229
228
228
230
229
229
228
228
228
229
229
230
228
229
230
229
229
229
228
229
229
228
228
228
229
229
229
229
230
230
232
232
233
233
232
233
235
234
233
233
233
234
234
233
233
233
234
233
233
232
232
231
231
231
231
231
231
232
230
231
230
231
229
229
230
229
230
230
229
229
229
230
229
228
228
228
226
226
224
225
224
223
222
219
219
218
217
217
217
215
215
216
215
214
213
211
211
211
210
209
209
208
208
206
209
209
221
220
205
232
231
231
232
233
233
232
233
234
233
233
234
234
233
234
235
236
236
236
237
237
236
236
237
237
236
237
237
237
237
236
236
236
237
235
236
237
237
236
236
236
237
237
238
238
238
239
238
238
238
239
238
238
239
240
241
241
240
240
241
241
241
242
242
243
242
243
243
244
243
243
243
244
243
243
245
244
246
247
247
246
246
247
247
246
246
246
246
245
246
246
246
246
246
246
246
246
247
248
247
247
247
248
247
247
247
247
247
247
247
247
247
247
247
248
248
248
247
247
248
246
246
248
246
246
245
244
244
244
244
244
244
245
245
245
245
244
245
246
245
246
245
244
243
244
244
244
245
245
245
243
243
244
244
243
244
243
242
242
243
241
241
240
239
240
240
238
238
239
239
238
238
238
236
236
236
234
233
233
232
231
232
232
232
233
232
231
230
232
231
229
229
229
230
229
230
229
229
228
228
229
230
228
229
230
230
229
229
228
229
229
229
228
228
229
229
229
230
230
231
233
233
234
233
233
234
235
234
233
233
233
234
234
233
233
233
234
233
232
232
233
231
231
231
232
232
232
232
230
231
231
231
230
229
230
229
229
229
228
229
229
229
228
228
227
227
226
226
224
224
223
222
222
220
218
218
218
217
217
216
215
214
214
213
213
212
212
211
210
209
208
207
208
206
207
206
218
218
215
232
231
231
231
233
232
231
233
234
233
233
233
232
232
233
235
236
236
237
237
237
237
237
237
236
237
236
236
237
237
236
236
236
236
234
235
236
237
237
236
236
237
237
238
237
237
239
239
238
237
239
239
238
239
239
239
240
240
241
242
242
241
241
242
243
242
243
243
243
243
243
243
243
244
243
244
244
246
247
247
247
247
247
247
246
247
246
246
246
246
247
246
246
246
246
247
246
246
247
247
247
247
247
247
247
247
247
247
247
247
247
247
247
247
247
247
248
247
247
248
246
246
247
246
246
246
245
244
244
245
244
244
245
245
246
245
245
245
246
246
246
245
245
245
245
244
244
245
244
244
243
242
243
243
244
244
244
242
242
243
241
240
239
238
238
238
238
237
238
238
239
237
236
235
236
235
234
232
233
233
232
232
232
232
231
231
231
231
232
230
231
230
230
231
230
229
229
229
229
228
228
229
228
229
230
230
230
230
229
229
229
230
229
230
229
229
230
230
231
231
233
233
234
233
235
235
235
235
233
233
233
233
233
233
234
233
234
233
232
232
233
232
231
231
231
231
232
232
229
230
230
231
230
230
229
229
228
229
229
229
228
228
228
228
227
226
227
226
225
224
223
223
220
218
218
218
217
217
216
215
213
213
214
212
213
212
212
211
211
209
209
207
207
207
207
205
223
234
227
232
231
232
231
232
232
232
231
231
231
232
233
233
233
234
235
235
235
236
236
236
236
236
236
237
237
236
236
236
237
236
236
237
237
236
237
237
237
236
237
237
236
236
237
237
238
238
238
238
238
239
238
239
240
240
240
240
240
240
241
240
240
240
240
242
242
243
243
244
244
244
244
243
243
243
243
243
243
244
246
246
246
245
245
246
246
246
247
247
247
247
247
247
247
247
247
247
246
246
246
246
246
246
246
246
246
246
246
246
246
246
247
247
247
249
248
248
247
246
247
246
246
245
245
245
244
245
244
244
243
243
243
245
245
245
245
244
244
244
243
243
244
244
245
244
245
245
244
244
244
244
244
244
244
243
243
243
242
241
240
240
240
239
238
237
238
238
238
238
238
236
237
236
236
236
234
233
232
233
234
232
230
232
232
232
232
232
232
231
230
230
230
230
230
229
229
229
230
229
227
227
228
229
229
229
229
228
229
229
229
229
230
230
230
229
230
231
231
232
233
234
234
234
234
235
236
237
236
235
235
234
233
234
234
233
232
232
233
233
233
232
233
234
232
231
231
231
231
230
231
230
230
230
230
229
229
229
229
229
229
229
228
228
227
227
226
226
227
225
224
222
222
221
219
219
218
216
218
215
214
215
215
214
213
212
210
210
209
210
209
209
207
207
205
205
205
225
214
200
231
231
232
232
232
231
232
231
232
231
232
233
233
233
233
234
234
234
235
235
235
236
236
236
236
237
237
237
238
238
237
237
237
237
236
237
237
236
236
236
236
236
236
237
237
237
238
238
239
238
239
239
239
240
240
239
240
241
241
241
240
240
240
241
243
243
243
243
244
244
244
244
243
243
243
243
243
243
245
246
245
246
244
245
246
246
247
247
247
247
247
247
247
246
246
246
247
247
247
247
247
247
247
247
247
247
247
247
247
246
246
247
247
247
248
248
248
247
247
246
246
245
245
245
245
244
245
245
244
243
243
243
245
245
244
244
244
244
245
244
243
244
244
245
245
245
245
244
245
244
244
244
244
244
243
242
243
242
241
239
240
240
240
239
238
238
238
238
238
237
237
236
236
236
236
235
234
233
233
233
231
231
231
231
233
233
231
231
232
231
231
230
231
230
230
231
230
229
229
229
229
228
227
228
229
229
229
230
230
230
230
229
229
229
231
232
232
232
233
233
234
235
236
236
236
236
237
236
235
235
234
234
233
233
232
232
232
234
234
233
233
233
234
232
231
232
232
231
231
231
230
231
230
230
230
230
229
229
229
229
229
227
227
227
227
226
226
226
224
223
223
223
222
219
220
219
217
218
216
215
215
214
214
212
211
210
210
209
209
208
209
207
206
206
204
205
219
216
223
231
231
232
232
232
231
232
232
232
231
231
233
233
233
233
233
233
233
234
234
234
235
235
236
236
237
236
237
237
237
237
237
237
237
236
237
237
237
236
236
236
237
237
237
237
237
238
237
239
239
238
239
239
240
240
239
240
241
241
241
241
242
241
241
243
243
243
244
244
244
244
244
243
243
243
243
244
244
245
246
245
246
246
247
247
247
247
247
247
246
246
246
246
247
247
246
247
247
247
247
247
247
247
247
247
247
247
247
247
247
246
246
247
247
247
248
248
247
247
246
246
245
245
245
245
244
244
245
245
243
244
243
245
244
244
244
244
244
244
244
244
244
244
245
245
245
245
244
245
244
245
244
244
244
244
243
243
242
241
241
241
241
241
240
239
238
238
238
237
237
237
236
237
236
236
235
234
233
233
233
232
231
231
232
233
233
232
232
232
230
231
230
230
230
229
229
230
230
229
229
228
228
228
230
230
230
229
230
231
230
230
230
230
230
231
232
232
232
233
233
234
235
236
235
235
235
237
236
235
235
235
234
233
233
232
232
233
234
234
233
233
233
233
232
231
231
231
231
231
231
231
231
230
230
230
229
229
228
228
229
229
227
228
228
227
226
225
225
224
223
223
222
221
219
219
218
217
217
216
215
216
214
213
212
211
210
210
209
208
208
208
206
204
206
204
200
224
210
214
231
229
229
229
231
231
232
231
232
231
232
231
232
232
233
233
233
234
233
234
234
234
234
235
235
236
235
236
237
237
237
237
237
237
236
236
236
236
235
235
236
236
237
237
237
237
237
238
238
239
238
239
240
240
240
239
240
242
242
242
242
242
242
242
244
243
243
244
244
244
244
244
244
244
243
245
245
245
245
245
245
246
246
246
246
246
247
247
247
247
247
247
247
248
248
246
246
246
246
247
247
247
246
247
247
247
247
247
247
247
246
246
246
246
247
248
248
247
247
246
246
245
246
245
245
244
244
244
244
243
244
244
243
243
244
243
243
243
242
243
243
243
243
243
243
244
244
244
244
244
244
244
244
244
244
243
243
243
242
242
241
239
239
239
238
238
238
237
237
237
237
237
238
237
237
237
235
235
235
235
234
232
233
233
234
232
233
233
232
231
232
231
231
230
229
230
230
230
231
230
230
230
231
231
231
230
230
231
231
230
231
231
231
231
231
232
233
233
235
235
235
236
236
236
236
236
237
236
235
235
235
235
234
234
233
233
232
233
233
233
232
232
233
234
233
232
232
232
232
231
231
231
231
230
229
229
229
229
229
229
229
227
227
227
227
227
226
225
224
223
223
221
220
219
220
218
217
216
215
215
215
214
213
212
211
210
210
210
209
208
207
205
205
204
203
201
215
234
234
230
229
228
229
230
230
231
229
230
231
232
232
231
231
232
232
233
233
233
233
233
234
235
234
234
235
235
236
237
237
237
237
237
237
236
236
236
236
235
234
235
236
236
236
236
237
237
239
238
238
238
238
240
240
240
240
241
243
243
243
244
243
243
242
244
243
243
244
243
243
243
244
244
244
243
244
245
244
245
246
246
247
247
247
246
246
248
248
248
248
248
248
248
248
248
247
247
247
246
246
246
246
246
247
247
247
247
247
248
247
247
247
246
246
247
248
247
246
246
247
245
244
245
244
243
245
244
242
243
243
244
244
242
242
243
242
242
243
242
243
243
242
243
244
243
245
245
244
245
244
245
244
244
243
244
243
243
242
242
241
240
238
239
238
239
239
239
238
238
238
237
236
237
237
237
236
235
235
234
234
234
233
233
233
234
235
234
233
232
232
231
232
232
230
231
231
231
231
231
231
231
231
230
231
230
231
231
231
231
230
231
232
231
231
232
233
233
235
236
236
236
236
235
237
237
236
237
237
236
236
236
235
236
236
234
233
234
233
232
233
233
232
232
233
234
233
233
232
232
231
232
231
231
230
229
230
229
229
229
228
228
228
227
227
226
226
225
225
223
223
221
220
219
219
220
218
217
216
216
216
215
213
212
211
210
209
209
210
209
208
207
205
204
203
202
202
205
202
200
229
229
228
229
228
230
231
229
229
229
230
231
231
232
231
231
233
233
233
233
233
233
234
235
234
234
234
237
237
237
237
237
237
237
237
236
235
236
235
235
234
237
236
235
235
237
238
238
239
238
238
239
239
240
240
241
242
242
242
242
243
243
244
244
243
243
243
243
243
243
242
243
243
243
243
245
246
246
245
245
247
247
246
246
248
248
247
248
248
248
248
248
248
248
248
248
247
247
246
245
247
247
246
246
246
247
247
247
247
247
247
246
247
246
247
247
247
247
247
248
246
245
246
243
243
244
243
243
243
242
243
242
242
242
244
242
243
242
242
242
242
242
243
244
243
244
244
245
245
244
244
244
243
243
243
243
242
241
241
240
240
239
240
239
240
239
238
239
238
238
236
236
237
236
236
236
236
235
235
234
234
234
233
233
234
235
234
234
232
231
231
231
232
231
231
232
231
231
230
230
230
231
230
231
230
230
231
231
232
232
233
232
232
234
232
232
235
236
236
236
235
235
235
236
237
236
237
237
237
235
236
235
235
235
234
234
233
233
232
232
232
233
232
234
234
233
232
231
231
232
231
230
229
229
230
229
229
230
229
228
228
229
228
227
226
226
225
225
224
222
221
221
220
220
219
218
216
216
216
215
214
213
212
210
211
210
209
209
207
208
208
206
204
203
201
202
221
235
233
229
229
230
229
229
230
230
228
228
228
228
231
231
231
231
232
233
233
233
233
233
234
234
234
235
233
233
236
237
237
237
236
236
236
236
236
235
235
235
234
234
235
235
235
236
237
238
238
238
239
238
238
239
240
240
241
241
242
244
243
243
244
244
244
243
243
244
244
245
245
244
244
243
243
243
245
246
245
245
246
246
247
246
247
248
249
248
247
247
247
247
247
248
247
247
247
248
248
247
247
247
247
246
246
246
247
247
247
246
247
247
247
247
247
246
247
247
247
246
247
245
244
244
243
244
245
244
243
243
242
243
243
242
242
242
240
242
243
243
242
242
242
243
243
243
243
244
245
245
245
243
244
244
243
242
243
243
241
239
238
238
239
239
238
239
238
238
238
238
238
237
237
237
237
237
237
236
234
234
235
233
233
233
233
235
234
233
233
233
231
232
233
233
233
233
233
233
233
232
232
231
231
230
231
230
232
232
232
233
232
233
234
234
234
234
233
235
236
237
236
237
237
236
237
237
238
237
236
236
236
236
236
235
235
235
235
233
234
234
233
233
233
232
232
233
233
234
233
232
231
231
231
230
230
230
230
230
229
228
228
227
227
228
228
227
227
226
224
224
223
222
222
221
220
218
218
216
216
215
214
214
212
211
210
210
209
208
207
206
205
205
205
204
203
202
200
212
205
198
228
228
230
229
230
230
230
228
228
228
229
230
231
231
231
231
232
232
233
233
233
234
234
233
235
234
235
237
237
237
236
237
235
235
236
236
235
236
235
234
234
234
234
235
236
237
238
238
238
239
238
238
239
240
240
241
241
242
243
244
243
244
244
244
243
244
245
244
246
246
246
246
243
244
244
245
246
245
246
246
246
247
246
247
249
249
248
247
247
247
247
247
247
247
247
247
249
248
248
249
247
247
247
246
246
246
246
247
246
247
247
247
247
247
246
247
247
246
247
247
246
245
245
244
244
245
243
243
244
242
242
242
243
243
242
240
242
242
242
241
240
242
242
242
242
243
243
244
244
244
244
244
244
244
242
243
243
241
239
238
238
239
239
239
239
238
239
239
239
239
238
237
236
237
237
236
236
235
235
234
234
234
234
233
234
234
233
233
233
232
232
233
234
233
233
234
233
233
233
233
232
233
232
231
230
231
232
232
233
233
233
234
234
234
235
235
235
235
236
236
236
237
238
237
237
238
238
236
236
236
237
237
235
235
236
236
235
235
233
233
233
233
232
232
231
233
234
234
232
231
231
232
231
231
230
230
230
229
227
228
228
227
228
228
227
227
226
225
224
223
222
221
220
220
219
218
215
217
215
214
214
212
212
210
210
209
209
208
206
204
204
205
204
204
201
199
222
213
195
227
227
229
228
228
228
229
228
229
228
230
231
231
231
231
231
231
231
233
234
233
233
233
235
234
236
236
237
237
237
237
237
235
234
236
237
237
237
236
236
235
234
234
236
236
237
238
237
238
238
239
239
240
241
241
241
241
242
242
243
243
243
244
244
245
245
246
245
246
246
246
246
244
245
246
245
245
245
245
246
246
247
247
247
248
248
247
247
247
247
247
248
248
248
248
248
249
248
248
248
247
246
247
247
247
247
247
246
247
246
246
247
247
247
246
246
246
245
246
246
246
245
244
244
244
244
243
243
244
243
242
242
242
242
242
240
241
242
242
241
241
242
242
242
242
244
243
243
244
243
244
243
243
243
242
243
242
241
238
239
238
238
238
238
237
237
238
238
238
238
238
237
237
238
237
237
235
235
235
234
234
234
233
232
232
233
233
233
233
233
232
233
233
233
233
233
232
233
232
232
233
233
232
233
233
232
232
232
233
233
233
234
235
234
235
235
236
237
237
237
236
238
238
238
237
238
237
237
237
237
237
237
236
236
236
236
234
235
235
234
233
233
233
232
232
233
234
234
233
232
231
231
232
232
230
230
230
229
228
229
229
228
227
227
226
226
226
225
224
223
223
222
221
221
219
218
216
217
215
214
213
212
212
210
210
209
208
207
205
203
203
203
202
201
200
198
206
229
222
227
226
227
228
228
228
228
229
230
230
231
232
231
231
231
230
231
231
233
234
233
234
234
235
236
235
236
237
237
237
236
237
237
236
236
236
236
237
237
236
236
235
236
237
237
237
237
237
238
238
239
239
240
240
241
240
241
242
242
243
242
242
243
245
245
246
246
246
246
246
246
246
245
245
246
245
245
246
245
245
247
247
247
247
247
247
247
247
247
247
247
248
248
249
249
248
248
248
247
247
247
247
247
248
248
248
248
247
246
246
246
247
247
247
246
246
246
245
245
245
246
245
244
244
244
243
244
243
243
243
243
242
241
241
242
241
241
241
241
242
242
242
242
242
242
243
243
243
244
243
243
243
243
243
243
242
242
240
239
239
239
238
238
237
236
237
238
238
237
237
238
237
237
238
237
237
235
235
235
234
234
234
234
233
232
233
234
234
234
233
233
233
233
233
233
232
232
232
232
233
233
232
232
234
234
234
233
232
234
233
233
235
235
235
235
235
236
237
238
238
238
238
239
238
238
238
237
237
237
238
237
237
238
238
237
237
236
235
235
235
234
234
234
234
234
233
232
232
233
232
232
231
231
232
231
231
230
228
229
230
229
229
226
226
226
225
226
225
223
222
222
222
220
220
218
217
216
217
216
215
213
213
212
211
211
209
208
208
205
205
205
202
201
206
225
218
216
216
212
226
226
226
227
227
227
227
229
229
229
231
232
232
231
230
230
231
231
233
234
233
234
235
236
236
235
236
236
237
236
236
236
237
237
236
236
235
237
237
236
236
236
237
236
236
236
237
238
238
238
239
239
239
241
241
242
243
242
242
242
243
243
244
245
247
246
246
246
246
246
246
246
245
245
246
246
246
246
246
246
246
246
247
247
247
248
248
248
248
247
247
248
249
249
249
249
249
249
247
247
248
247
247
249
249
248
248
248
247
246
246
246
246
247
246
247
247
246
246
246
246
246
246
244
244
244
243
242
242
242
242
241
241
241
241
241
241
240
240
241
240
241
242
242
243
243
244
244
244
244
244
244
245
244
242
242
241
240
239
239
239
237
237
238
237
238
239
239
238
238
238
237
238
236
237
236
236
235
235
234
235
235
234
232
233
233
233
233
234
234
234
233
233
233
234
232
232
231
232
233
232
232
232
233
233
234
234
234
234
233
234
235
235
235
235
235
236
236
238
238
239
238
239
239
238
238
239
238
238
239
239
239
238
237
238
238
236
236
234
234
235
234
234
234
234
233
233
232
232
232
232
232
232
232
231
232
232
230
230
230
229
228
228
226
227
226
225
225
224
223
222
221
220
219
218
219
217
216
216
214
214
213
212
210
210
209
208
207
206
205
204
202
200
204
217
218
222
219
215
226
226
227
227
226
227
227
228
228
228
229
230
230
231
231
231
231
231
232
232
232
234
234
235
236
236
237
237
237
236
236
236
237
237
236
236
235
236
237
237
237
236
236
236
236
237
237
238
238
238
239
239
240
242
242
242
242
242
242
242
242
242
244
245
247
246
246
246
246
246
246
246
245
246
246
246
246
246
246
246
246
246
247
247
247
247
247
247
247
248
248
248
248
248
249
249
250
249
248
249
248
247
247
247
248
248
247
248
247
247
247
247
246
246
246
247
246
245
246
246
246
246
245
245
245
244
243
243
242
242
243
243
242
241
242
241
241
240
241
241
242
241
242
243
243
243
243
244
244
242
242
243
243
243
243
243
242
241
239
239
239
237
238
238
238
238
237
237
238
238
237
237
238
237
237
236
235
235
234
233
234
235
234
233
233
233
233
233
232
233
233
233
233
233
233
232
233
232
232
233
232
233
232
233
234
234
233
234
234
235
235
235
235
235
234
234
236
237
238
238
238
238
239
239
238
239
239
238
238
239
239
239
238
237
237
237
237
237
237
236
235
236
235
235
235
233
233
233
233
233
232
233
234
233
232
232
232
230
229
229
229
229
229
228
227
226
225
225
223
223
222
220
220
218
219
218
217
218
216
214
213
212
213
212
211
209
208
207
206
205
203
201
201
199
198
198
218
199
190
100
99
99
98
97
95
94
93
92
88
89
89
87
85
83
81
78
77
76
74
74
73
72
71
70
69
68
67
66
66
64
65
63
62
61
61
60
58
56
56
56
55
56
54
54
54
53
54
53
52
49
45
44
41
40
39
39
38
35
32
29
30
31
31
30
31
30
33
34
36
37
39
42
42
43
44
43
45
45
46
47
48
51
52
52
54
53
53
53
51
52
51
54
56
57
57
60
62
65
65
66
65
67
66
64
66
65
64
64
63
62
65
64
66
65
66
65
66
66
67
66
66
67
65
64
64
64
64
65
64
63
65
67
65
65
66
64
65
66
69
72
75
77
77
76
77
76
76
76
73
71
68
67
68
66
65
65
66
67
67
67
65
66
67
70
70
70
70
68
66
66
63
61
61
61
60
61
58
58
58
56
56
55
56
55
54
57
58
57
57
58
59
59
57
55
56
56
54
55
54
53
52
51
48
47
45
46
45
45
44
44
45
43
43
41
41
43
44
44
46
48
52
52
52
54
57
62
65
66
68
70
74
77
78
80
93
95
95
86
65
53
37
49
57
53
35
52
44
42
46
40
43
40
40
37
26
36
37
40
40
38
45
45
42
45
41
38
40
38
37
40
34
30
35
35
39
43
45
41
38
36
38
38
39
39
38
39
37
42
45
40
40
40
40
40
39
37
35
40
99
98
98
96
96
96
94
92
93
89
90
89
86
83
82
81
78
78
76
74
72
71
70
71
71
69
69
67
65
64
64
63
62
62
61
62
61
60
57
56
56
57
55
54
54
55
54
53
54
53
51
48
45
43
42
41
40
40
37
35
32
28
30
31
30
32
34
35
39
39
39
40
41
44
42
43
44
47
47
47
49
50
51
51
52
53
54
54
51
51
50
53
56
57
59
59
62
64
64
66
66
66
65
66
65
67
66
65
63
62
62
64
63
66
66
67
67
66
67
66
66
67
67
65
66
66
66
64
65
64
65
65
67
66
67
67
66
67
68
72
74
77
78
80
79
79
79
80
79
77
74
71
70
67
66
66
66
65
66
68
68
66
67
68
70
70
69
70
67
65
65
63
63
64
63
60
59
57
57
57
56
56
56
58
57
56
56
58
57
57
59
58
58
56
56
57
56
56
55
54
53
53
51
47
44
45
47
47
45
45
47
45
43
43
43
43
43
42
43
46
47
49
50
52
55
58
61
64
66
70
71
77
80
84
93
96
78
79
44
47
48
51
55
54
52
37
47
47
38
38
38
41
44
41
36
30
32
38
39
39
41
42
40
41
39
38
38
40
38
42
32
35
39
39
35
38
46
54
51
44
40
43
41
38
38
40
40
38
37
38
39
39
39
40
40
38
37
36
37
100
98
97
98
95
95
94
93
94
91
90
88
85
84
83
81
80
80
77
74
73
73
71
70
69
69
68
66
64
63
62
62
61
61
60
60
60
60
57
57
56
56
57
55
54
53
53
54
53
53
53
47
46
44
43
42
41
39
39
34
32
29
30
31
32
34
36
37
39
40
38
40
41
43
45
45
44
46
47
48
50
51
53
53
53
54
53
54
51
52
52
57
58
57
60
60
62
64
65
65
65
66
65
67
68
67
65
66
65
62
61
64
64
64
67
67
67
67
65
64
66
67
67
66
65
66
65
67
67
65
66
64
66
68
69
69
70
71
72
74
74
78
82
81
81
81
80
81
80
77
74
73
72
70
67
66
67
67
67
67
68
67
68
69
70
70
69
69
67
66
67
65
64
65
64
61
60
57
56
55
57
58
57
57
57
55
55
56
58
58
58
58
58
57
57
57
56
56
56
56
55
55
53
50
47
48
49
49
49
49
48
46
44
44
44
44
43
43
45
46
46
49
47
48
53
60
63
66
69
70
72
77
81
88
103
90
46
40
52
59
53
55
51
47
50
46
52
51
45
42
47
38
45
34
36
37
35
35
39
40
42
42
39
38
37
38
38
38
38
43
31
41
46
45
50
50
43
40
45
45
42
42
39
36
38
39
37
36
38
38
37
37
37
38
38
36
36
35
35
100
98
98
98
98
95
94
93
93
90
90
88
87
83
82
82
79
77
77
76
75
72
71
69
69
70
68
67
65
62
61
63
61
60
60
61
61
60
58
55
55
56
57
56
53
53
54
52
52
51
50
46
45
44
42
40
40
38
35
33
32
28
30
31
34
36
35
36
38
38
40
40
42
42
43
45
45
46
47
49
49
51
53
52
54
55
55
56
55
54
55
56
57
59
61
60
63
64
64
65
66
66
66
66
68
67
67
66
65
63
64
65
63
62
67
66
65
65
64
64
65
66
66
65
64
64
62
64
65
67
68
68
67
67
67
68
68
68
71
76
75
78
80
81
80
82
81
81
81
77
75
75
75
75
72
70
68
68
67
68
69
68
69
70
72
71
70
70
68
68
68
66
65
64
61
60
60
59
58
56
57
57
57
56
57
56
56
57
59
59
57
58
58
57
57
57
57
57
57
56
56
55
56
55
54
53
51
50
50
49
50
47
44
44
46
44
44
43
45
47
47
49
48
49
54
60
64
69
71
73
75
80
79
106
95
59
34
53
62
52
52
50
47
47
52
47
42
43
42
40
34
35
40
39
42
42
39
33
35
39
40
40
39
37
37
38
39
39
43
37
31
44
43
43
45
47
51
48
42
38
36
38
38
37
37
37
36
37
37
36
36
37
37
36
36
34
33
31
32
100
99
99
97
97
97
95
93
92
90
88
86
86
83
82
82
79
78
77
76
75
73
71
71
68
70
69
66
65
64
63
65
61
60
59
61
60
60
57
56
57
56
57
55
54
55
54
52
53
51
49
46
46
46
45
42
40
40
37
33
32
30
31
32
34
36
36
37
36
38
39
42
42
44
45
45
44
45
47
48
50
51
54
55
55
54
55
54
56
56
58
58
60
57
58
61
62
64
65
67
66
65
66
66
68
68
66
64
65
64
65
67
64
63
65
66
66
65
63
64
65
67
67
66
66
64
62
64
66
68
68
69
68
67
68
70
70
72
75
78
78
80
81
83
82
83
83
81
82
78
75
75
75
75
76
75
72
69
67
68
69
68
69
71
71
69
69
70
69
69
70
68
66
65
62
60
60
60
60
59
57
56
56
55
55
55
56
57
58
58
58
59
61
59
57
58
59
58
56
56
56
56
56
56
55
54
52
47
46
45
47
46
44
45
46
44
45
45
45
46
48
50
51
53
56
61
65
69
72
75
76
84
89
100
55
44
50
55
43
46
47
48
47
44
47
46
37
39
34
34
39
43
48
47
46
46
43
40
38
39
39
39
39
38
38
39
43
42
41
39
42
47
46
44
46
50
51
48
51
49
43
39
35
36
35
36
36
37
37
36
35
34
35
33
33
32
32
31
34
98
99
99
97
97
95
94
93
92
90
87
85
85
85
85
83
80
78
77
76
75
73
71
69
67
68
67
65
65
64
63
63
60
60
60
60
59
58
57
56
57
55
56
54
55
54
54
54
53
49
47
45
46
46
44
42
40
38
37
34
32
30
31
31
32
34
34
35
37
38
40
40
40
42
44
45
45
45
48
50
50
53
53
54
54
55
55
56
56
57
57
58
59
59
60
61
63
64
64
66
66
67
67
67
67
67
65
64
65
63
63
63
64
64
64
65
67
68
65
64
65
65
67
69
67
64
62
66
66
67
67
68
68
67
69
70
73
77
80
81
82
82
83
83
82
83
83
83
84
82
79
78
76
75
76
75
73
71
69
69
69
70
70
71
71
70
68
69
69
69
70
68
68
67
63
60
60
60
60
59
58
56
57
55
55
56
57
59
59
59
60
60
60
59
58
60
59
58
58
59
57
56
55
56
56
55
55
48
45
46
48
46
44
45
45
45
46
47
46
46
48
49
50
54
56
60
63
65
74
77
74
86
115
80
60
53
53
38
42
39
33
49
51
49
45
43
33
32
37
41
47
51
49
45
48
42
44
42
41
41
41
42
42
39
40
40
39
44
43
36
45
43
43
48
41
42
43
43
44
45
43
47
45
41
36
36
36
36
36
35
34
34
33
32
30
29
30
36
36
99
100
99
97
96
95
94
92
92
89
87
86
85
84
84
83
80
80
78
76
75
75
73
70
69
68
67
66
66
65
63
62
62
60
59
59
59
57
58
56
55
56
56
56
55
54
54
54
53
51
48
46
44
45
43
41
39
40
37
34
33
31
31
31
32
34
33
34
36
37
40
40
40
42
43
45
46
47
48
49
48
51
53
54
54
56
56
57
56
57
58
60
61
60
60
62
62
65
65
67
66
67
67
66
67
65
64
64
65
66
64
63
65
66
66
65
66
66
65
66
66
66
67
68
67
63
62
63
64
66
67
68
67
66
69
71
76
80
83
83
84
83
82
84
83
83
84
84
85
85
83
82
80
79
77
75
74
71
71
68
69
67
68
70
71
71
70
70
69
69
70
69
68
67
63
61
61
59
60
60
58
57
58
56
55
56
58
58
59
59
60
60
61
60
61
60
60
59
59
58
56
58
56
57
57
55
53
48
47
48
49
46
45
44
47
46
47
47
47
46
49
49
49
53
57
59
59
64
64
70
78
95
92
69
78
52
51
46
44
32
39
53
43
36
36
29
34
43
48
49
43
48
47
38
41
40
45
41
41
41
42
50
40
38
40
42
39
37
44
38
45
45
46
47
42
43
42
41
40
40
42
41
43
41
40
37
37
36
36
37
35
31
30
30
31
30
30
40
54
99
99
97
97
95
94
93
94
90
88
88
87
85
84
84
84
81
80
78
77
77
76
74
71
69
67
65
67
66
65
63
61
60
61
60
59
59
58
57
56
55
55
56
56
56
54
54
52
51
51
49
47
45
44
44
41
43
42
38
36
33
31
30
31
33
35
34
34
36
35
38
41
42
44
45
47
48
50
50
51
51
52
55
53
54
56
57
58
59
60
59
61
62
62
62
62
63
65
65
66
66
67
66
66
64
63
65
66
66
66
65
65
66
67
66
66
64
64
65
66
67
67
66
66
68
65
64
62
63
66
64
67
66
66
69
73
79
82
82
82
83
82
83
84
86
85
85
85
85
84
84
82
79
80
79
77
76
73
71
68
67
67
69
70
72
71
70
70
70
70
70
69
68
67
64
64
62
61
62
61
58
56
56
57
57
58
58
59
60
59
60
59
60
61
60
60
61
60
59
59
58
58
56
56
55
53
51
50
48
47
48
46
46
48
49
47
45
46
47
47
49
50
50
55
60
60
61
67
67
76
80
108
70
60
70
44
53
49
38
37
50
54
39
28
31
36
38
39
44
47
43
42
46
44
40
41
47
43
42
41
40
43
45
47
43
42
43
40
45
47
46
43
48
44
39
40
44
44
44
40
38
38
38
39
39
37
37
37
36
35
34
33
33
34
35
33
34
32
31
100
99
97
96
95
95
92
92
91
89
87
86
84
85
83
83
81
78
78
77
77
75
74
72
69
67
66
67
65
64
62
62
60
59
59
59
58
57
57
56
56
56
56
56
56
55
55
52
51
50
48
47
47
47
44
43
42
40
38
34
32
31
30
32
33
34
35
34
36
38
39
42
42
44
45
46
49
50
51
52
52
53
55
54
55
56
59
61
61
60
61
63
62
62
62
63
64
66
66
67
67
66
65
67
64
65
66
67
67
66
66
66
66
68
67
67
64
66
65
65
65
67
67
68
69
67
67
65
65
66
64
67
67
68
72
78
83
83
83
83
84
84
84
85
87
86
86
86
86
84
84
82
80
81
81
80
77
76
75
72
69
70
70
70
71
70
70
70
69
70
69
69
68
67
65
64
64
62
61
62
61
57
57
58
58
58
58
58
59
60
61
60
60
62
61
61
61
60
61
62
59
58
58
55
55
53
52
51
50
48
49
48
47
49
51
49
47
47
47
48
50
51
50
54
58
59
61
67
66
74
82
98
64
45
39
42
47
38
44
48
51
53
39
34
34
38
39
35
42
46
51
43
44
46
47
44
43
44
44
41
39
37
40
38
44
43
41
49
47
43
45
47
41
39
39
40
41
38
38
39
36
37
37
36
37
37
36
36
36
34
34
33
32
35
36
34
33
33
31
100
97
96
96
96
94
92
92
89
88
88
88
86
85
85
82
81
79
79
78
75
74
75
72
70
68
67
67
66
65
63
60
62
61
60
58
58
58
56
56
56
55
55
57
56
55
56
53
51
49
49
47
49
48
46
41
43
42
38
36
36
35
35
35
34
33
35
38
37
38
39
41
40
44
46
48
49
51
53
52
52
53
55
56
56
56
59
60
60
59
60
63
63
63
62
64
65
66
67
67
67
65
66
67
66
67
66
65
64
66
65
67
67
69
67
67
68
69
68
67
67
68
67
69
68
69
70
70
69
68
67
67
71
74
77
79
82
84
85
85
86
86
86
86
87
86
87
88
87
84
84
84
85
85
86
84
82
79
78
74
73
71
70
70
70
70
70
71
70
70
70
70
69
69
66
64
63
64
64
63
61
58
58
58
59
60
60
60
61
62
62
63
63
63
64
63
62
61
62
62
60
59
59
57
56
54
52
50
51
51
50
50
49
51
52
49
49
48
47
48
50
51
49
53
56
57
55
60
68
77
85
85
59
42
37
45
42
53
51
47
51
51
37
34
34
35
42
45
42
49
45
49
44
46
48
45
44
42
43
43
43
41
37
40
51
45
45
47
51
57
45
43
41
44
45
39
39
39
38
37
36
37
36
37
35
36
37
36
36
34
31
30
34
33
31
36
35
31
32
100
99
99
97
96
95
93
90
89
88
88
87
88
85
83
82
82
81
78
77
77
75
74
72
70
68
67
68
66
64
64
62
62
61
61
61
58
57
56
57
56
54
56
56
55
55
54
52
50
49
48
47
47
48
45
43
43
42
41
38
35
37
36
36
35
35
37
37
39
39
40
41
41
44
46
49
50
52
52
52
52
53
57
57
57
58
57
59
59
60
60
62
64
65
65
66
66
67
67
68
65
65
66
66
67
67
67
66
67
66
67
67
66
66
67
67
70
71
70
69
71
71
71
69
69
70
69
72
71
69
68
69
73
76
80
80
82
84
85
85
86
88
88
87
87
86
88
89
88
86
87
85
85
86
88
86
85
80
78
76
75
73
71
70
71
71
70
70
70
70
70
69
68
68
67
67
66
65
64
65
61
60
60
59
60
59
59
60
61
63
64
64
64
64
65
65
63
63
64
62
62
62
59
58
56
55
54
53
52
52
53
52
52
53
51
50
52
51
49
50
50
51
51
54
54
56
60
60
65
78
103
70
44
31
36
50
48
53
46
44
51
49
33
39
39
42
47
53
44
44
49
50
44
47
49
43
44
45
48
47
44
39
40
46
48
57
44
43
46
49
45
40
36
43
41
40
38
40
38
37
37
36
36
36
37
37
37
36
35
35
31
32
34
36
30
30
30
30
31
100
99
100
98
96
95
94
91
88
87
89
87
87
86
84
83
82
81
79
77
76
74
74
72
71
69
66
67
66
63
63
62
61
60
60
61
58
56
57
56
55
55
56
56
57
56
53
51
51
49
48
47
47
47
45
44
42
42
40
37
37
35
35
35
35
35
36
36
37
39
40
42
43
44
45
50
53
53
53
53
55
54
56
56
58
59
58
59
59
60
60
62
63
65
68
66
67
69
67
68
66
66
68
66
68
69
68
66
67
66
67
68
67
67
68
68
68
70
69
71
69
69
72
72
72
71
70
72
73
73
71
74
76
77
81
81
83
85
85
86
88
90
90
89
91
90
90
89
89
88
87
86
86
86
87
85
85
81
80
78
78
77
74
71
71
72
70
70
70
71
71
70
70
68
68
68
67
65
63
65
62
61
62
60
61
59
60
61
62
65
64
64
64
65
65
65
65
65
65
64
62
61
60
58
57
55
54
52
53
51
52
53
53
53
53
53
54
52
52
52
51
51
51
53
53
55
58
61
62
76
104
62
40
49
54
52
50
52
44
49
49
46
35
43
39
46
49
55
52
39
48
42
42
47
42
38
44
46
42
43
43
42
38
50
51
56
53
44
49
44
41
44
46
44
41
39
41
44
40
37
37
37
37
37
38
38
36
34
32
34
32
28
28
30
30
30
30
31
30
101
100
99
97
97
95
93
90
89
89
89
88
86
85
84
83
81
80
80
78
77
74
74
74
72
69
66
66
64
63
62
62
60
61
61
62
59
58
57
54
56
56
54
55
57
56
54
52
51
49
48
46
48
46
45
42
41
42
38
37
36
35
36
36
37
37
36
37
39
40
42
41
43
45
47
48
49
51
53
54
55
54
57
56
57
59
59
60
62
62
63
63
65
66
67
67
67
69
68
68
70
70
70
67
69
67
68
69
67
66
67
67
67
67
68
68
67
69
70
71
70
70
72
72
74
72
70
72
72
74
75
79
79
80
83
86
87
87
87
88
90
92
91
91
92
91
91
89
90
89
88
87
87
87
88
88
88
85
85
81
80
81
78
73
73
72
71
70
71
71
72
71
70
68
68
68
69
67
65
66
64
61
63
61
62
62
60
63
64
66
66
67
67
66
66
65
65
65
66
65
62
61
58
57
58
56
54
52
52
51
53
53
53
53
54
54
55
52
52
52
52
52
51
50
52
55
57
61
63
74
103
63
44
72
61
55
56
45
43
49
43
43
40
37
40
47
54
37
65
36
44
44
47
45
41
36
38
41
36
29
38
39
52
44
52
54
51
54
45
47
48
45
42
42
43
43
42
44
42
40
40
39
39
41
44
41
38
39
38
38
28
26
34
34
32
36
31
30
29
100
98
96
96
96
94
92
90
90
91
90
88
87
86
84
84
84
81
79
79
79
76
75
73
72
70
67
67
64
63
61
61
60
60
61
61
59
56
55
53
55
56
55
55
55
56
54
51
49
49
48
46
47
45
45
43
41
41
38
37
36
35
35
36
37
36
37
39
40
40
42
44
43
46
49
49
51
52
52
54
54
55
57
56
56
58
59
60
62
62
65
65
66
67
68
68
68
69
70
69
71
70
70
70
70
69
70
69
69
69
67
66
69
68
69
70
68
68
73
73
73
72
72
73
76
73
72
72
74
74
76
81
82
82
85
87
89
89
90
90
90
92
91
91
91
91
91
91
91
88
88
88
87
87
88
88
87
85
85
82
82
82
79
75
73
71
72
71
71
72
72
70
69
68
68
68
69
67
65
67
63
61
62
61
62
62
64
64
66
68
68
69
68
68
68
66
66
67
67
67
64
62
59
57
58
55
53
53
52
52
53
53
53
53
54
54
55
52
52
52
52
52
52
52
53
56
58
59
62
79
100
56
55
70
59
52
53
44
47
42
47
46
45
34
38
46
53
35
65
38
42
43
47
44
41
36
35
43
43
38
44
47
51
54
53
48
47
49
48
48
46
45
44
44
42
41
43
46
39
40
39
38
39
39
46
37
34
36
30
29
26
28
39
35
33
35
31
32
30
99
97
94
95
96
93
92
92
90
89
89
89
88
87
85
85
84
84
82
78
79
77
76
73
74
70
68
66
66
64
62
62
61
59
60
60
59
56
55
55
55
56
56
56
55
55
53
49
49
50
48
47
47
46
45
43
42
41
39
36
37
36
36
36
36
35
36
40
41
41
42
44
45
46
50
48
48
52
52
54
54
55
59
57
57
58
59
60
60
63
65
67
67
68
69
66
68
69
72
71
70
69
71
70
69
70
69
68
70
70
69
68
69
69
71
71
71
70
72
74
76
74
72
71
74
73
72
71
74
75
77
82
85
87
88
88
89
90
91
90
91
90
90
90
90
92
92
92
91
88
88
88
87
88
88
88
88
86
86
82
82
83
81
77
75
73
73
71
71
72
72
70
69
68
69
70
71
68
67
68
64
62
63
61
62
63
63
64
67
68
67
69
69
69
69
68
68
69
68
68
67
63
60
58
58
55
53
54
53
54
53
53
54
54
54
55
56
53
53
52
52
52
54
57
58
58
57
57
62
79
97
54
52
61
55
43
46
38
48
40
51
49
44
40
37
43
45
39
42
49
35
44
45
45
42
38
36
45
45
43
44
49
47
57
54
49
49
48
46
47
46
45
44
43
37
35
36
37
38
38
34
39
43
41
37
29
27
24
21
24
32
35
37
32
32
32
31
30
30
99
99
97
96
95
93
90
89
89
89
88
89
86
87
85
85
84
84
82
80
79
78
77
75
74
72
70
67
65
65
64
64
62
61
60
60
58
57
55
55
54
56
54
55
53
53
52
48
49
49
47
46
47
45
44
43
44
40
38
36
34
36
37
36
35
37
37
39
40
40
41
44
43
47
49
49
49
52
52
53
55
55
56
57
56
57
60
60
59
61
63
64
65
67
67
67
69
71
71
71
71
71
72
71
70
70
69
68
69
70
71
71
72
72
72
72
74
73
73
74
74
74
74
72
73
72
71
72
75
77
79
84
87
90
89
90
91
91
90
90
89
90
91
91
92
93
92
90
89
89
88
87
88
87
89
89
89
88
88
87
84
82
81
78
75
74
73
71
72
73
71
71
71
70
69
69
70
68
67
67
65
63
64
64
65
64
65
65
66
70
69
70
71
71
70
69
68
68
69
68
65
62
59
57
59
57
55
54
55
56
57
54
53
55
54
56
57
56
54
53
52
52
56
59
60
59
57
58
62
73
100
62
57
58
51
40
45
42
46
42
43
48
39
50
39
42
38
51
38
50
37
40
44
47
43
43
47
47
46
49
47
50
48
48
58
54
45
47
52
45
48
41
42
37
37
38
40
40
40
46
45
45
39
30
30
28
25
27
27
32
42
34
33
32
32
32
31
30
30
98
99
99
96
94
92
91
91
89
89
86
86
86
87
85
85
83
84
81
81
79
79
78
77
74
73
72
70
67
67
64
65
62
60
59
59
59
58
57
57
54
54
55
55
54
53
52
50
51
51
47
46
47
46
46
45
45
42
39
37
36
37
36
36
38
39
39
40
42
42
41
45
44
47
47
51
52
52
53
56
56
54
54
57
56
54
58
60
58
59
61
64
63
65
67
69
70
73
72
72
73
73
73
74
73
72
70
68
70
70
72
73
71
71
71
72
73
72
75
75
73
76
75
75
72
72
73
73
76
80
83
85
86
88
88
91
92
92
92
93
92
91
92
92
95
95
92
92
92
91
89
89
89
89
90
89
91
89
89
89
85
83
85
82
78
76
74
72
74
74
72
74
74
71
70
69
69
67
68
67
63
63
65
67
68
67
67
67
68
70
70
71
73
73
72
70
70
70
70
70
66
65
64
61
58
57
57
56
56
57
58
57
55
55
56
55
56
54
53
55
57
57
58
61
61
61
62
59
60
77
95
65
52
48
44
36
50
42
65
47
47
47
36
49
38
35
39
43
38
48
50
40
41
39
43
44
50
56
50
51
50
45
49
51
43
46
61
54
45
44
44
44
46
49
50
45
44
40
40
38
46
38
30
32
32
31
32
34
26
33
34
33
33
33
32
32
32
31
31
99
98
98
94
94
92
90
90
88
90
87
86
86
86
85
86
84
83
82
83
80
79
79
76
74
73
71
71
68
68
65
64
62
60
60
60
59
61
58
57
55
54
55
55
53
53
51
50
51
49
47
47
46
46
45
44
43
43
39
37
38
35
36
36
39
38
39
39
42
42
42
45
44
46
47
50
52
52
53
55
55
54
54
56
57
56
57
60
58
59
62
64
65
66
66
70
71
73
72
73
73
73
73
73
73
71
71
73
73
72
72
73
70
70
71
72
72
71
74
75
74
76
76
73
73
74
76
76
80
83
86
87
87
88
89
92
92
92
92
97
96
94
94
94
95
95
93
92
92
91
91
91
90
91
91
91
91
89
88
89
86
85
86
83
78
76
74
72
72
73
73
72
72
72
71
71
70
68
68
68
65
64
64
65
67
68
69
67
68
69
69
71
73
73
72
70
70
69
70
69
66
67
66
63
58
56
54
55
56
56
56
57
55
54
56
57
57
56
57
57
59
57
58
61
62
63
64
60
62
78
102
70
48
40
39
38
44
38
53
55
55
46
43
50
43
37
43
39
45
39
45
43
41
37
38
42
36
42
49
51
50
52
43
48
46
41
34
41
51
46
45
48
54
50
61
49
45
42
41
34
31
32
32
42
37
34
30
25
32
36
32
32
31
32
33
32
31
27
17
99
99
98
95
93
91
90
90
90
88
85
87
86
86
85
85
85
84
83
84
81
82
80
77
76
74
74
73
70
68
66
64
63
62
61
60
60
62
59
57
56
55
55
54
53
53
53
51
51
51
49
48
48
46
45
44
45
44
40
39
39
38
37
37
38
39
40
41
42
42
42
47
45
46
47
50
51
52
53
55
55
55
56
56
57
55
59
60
60
59
63
64
65
67
68
71
72
74
73
74
73
73
74
72
71
71
73
75
75
73
73
73
73
74
74
73
73
74
74
75
76
75
75
75
76
78
79
82
85
86
88
89
89
90
92
94
96
96
97
95
94
96
94
94
92
91
93
92
93
93
93
93
92
92
93
92
91
90
90
89
89
88
86
83
80
77
75
75
74
75
74
72
71
70
68
69
69
68
69
67
67
66
65
65
67
68
69
68
69
70
69
71
75
74
74
73
73
70
71
70
67
67
66
63
60
59
59
57
57
59
58
57
58
57
57
57
56
59
59
57
58
58
60
62
64
66
67
65
65
80
106
67
43
34
40
45
38
49
51
58
50
50
45
41
49
38
37
44
44
43
35
36
36
33
41
49
54
41
43
46
50
54
59
50
49
52
45
32
31
39
57
70
63
59
48
51
48
42
37
34
35
38
41
41
41
36
31
31
38
36
38
44
39
33
32
28
31
30
27
97
99
95
94
93
93
91
90
90
88
86
87
87
88
85
85
83
83
80
81
82
81
80
79
77
76
77
72
69
67
64
63
63
63
63
62
62
62
60
58
57
56
54
54
53
52
55
54
51
52
50
49
48
46
45
43
45
42
39
39
38
38
36
37
37
38
39
41
44
43
43
46
47
47
47
51
52
53
52
55
54
54
56
57
57
56
60
59
59
61
65
66
65
66
68
70
72
72
74
73
72
73
71
72
73
74
73
73
75
74
76
75
74
76
76
75
75
77
75
75
77
75
75
77
79
79
81
81
86
89
90
91
92
93
97
96
97
97
97
96
96
98
96
95
95
93
93
92
92
92
92
93
92
94
92
92
91
90
91
91
90
87
85
85
85
83
79
76
75
75
74
71
70
69
70
69
71
70
69
69
67
66
67
68
67
68
67
69
70
71
71
72
74
76
75
75
75
75
73
74
72
69
66
66
64
61
58
57
60
68
71
69
71
68
66
68
68
67
68
70
72
74
74
77
79
83
81
82
82
95
99
54
41
40
37
48
51
53
54
55
57
46
46
39
40
43
37
43
37
41
35
38
42
38
42
42
41
43
49
48
37
39
44
45
46
47
46
54
44
30
44
83
80
60
63
63
57
56
51
45
40
40
37
35
35
36
40
47
41
41
42
35
30
39
30
35
39
38
36
100
98
96
92
92
91
90
89
89
88
88
86
86
87
87
86
83
83
82
81
80
79
81
79
78
78
76
73
71
70
66
65
63
63
63
63
63
62
60
58
57
56
56
55
55
54
56
55
52
52
51
50
48
46
45
45
44
44
41
40
39
38
35
36
38
37
39
42
44
44
44
47
46
49
49
51
51
52
54
55
56
55
55
57
56
58
60
59
60
62
64
66
66
67
69
69
73
73
72
73
72
73
73
74
75
76
76
75
76
73
74
75
74
77
76
76
78
77
75
76
77
75
75
77
80
83
84
84
89
93
93
94
97
96
96
97
98
98
98
99
98
99
99
99
99
98
96
96
97
93
93
93
93
93
93
92
93
94
95
94
92
88
87
87
87
86
83
78
75
76
76
72
68
67
69
70
70
69
68
69
67
66
68
69
67
67
70
72
71
73
74
74
74
76
75
74
74
77
75
75
76
76
75
76
77
77
71
67
66
63
61
63
71
81
74
71
68
69
69
67
62
56
55
53
51
50
52
53
58
62
92
62
52
42
44
52
53
52
54
57
50
46
46
40
37
37
38
35
36
42
39
37
40
43
43
46
46
45
41
39
43
41
38
42
33
36
41
39
45
41
45
54
66
87
95
60
55
53
45
43
42
42
45
39
39
53
46
44
43
41
36
42
46
58
53
50
46
44
42
99
100
96
93
92
93
91
90
88
88
87
86
86
85
87
87
84
82
81
80
79
80
80
79
79
77
76
75
74
71
66
67
67
65
63
62
62
60
59
59
60
57
56
56
55
54
56
55
53
52
52
50
50
47
48
47
46
43
42
41
41
39
39
38
40
39
40
42
44
44
45
49
48
49
51
52
53
54
54
55
55
55
57
57
55
60
60
59
62
63
63
68
68
68
70
71
72
72
73
75
74
74
74
74
76
75
77
77
77
75
76
77
76
76
76
77
79
78
77
78
78
79
77
78
79
84
87
90
91
93
95
96
96
98
97
99
99
99
100
100
100
101
100
100
99
99
100
100
101
96
95
95
95
95
97
93
95
97
97
94
92
90
88
88
90
88
86
83
77
76
73
70
68
68
71
73
69
71
73
72
68
69
72
73
74
71
77
79
77
82
84
83
84
85
85
82
81
83
83
80
76
80
74
69
62
58
48
40
38
30
27
35
32
31
32
31
31
30
30
24
33
36
34
40
38
32
33
31
30
27
82
77
62
47
56
50
47
49
57
55
52
46
42
38
37
36
36
38
32
40
42
40
42
42
40
40
41
42
42
40
52
44
40
36
44
38
31
28
37
42
41
47
44
49
48
55
65
52
49
46
48
42
46
46
46
51
49
53
64
60
68
68
67
59
57
50
48
47
44
99
98
95
93
93
93
91
89
89
87
87
87
88
88
87
87
84
83
81
81
81
82
80
79
79
78
77
77
75
74
69
68
67
66
66
65
64
62
60
59
60
57
56
55
56
55
56
54
53
53
52
51
50
48
48
47
47
44
42
41
42
41
40
40
40
41
41
42
44
45
44
47
49
51
51
54
54
53
53
55
54
57
56
55
57
59
58
60
62
62
62
67
68
68
68
68
70
70
72
74
73
73
73
76
77
77
79
78
79
78
77
79
78
77
78
78
80
80
81
82
80
81
80
81
84
87
90
91
92
94
96
97
96
96
97
99
99
100
101
100
100
102
101
101
99
99
99
100
101
99
98
96
96
96
97
95
97
98
98
95
92
90
89
91
92
91
90
86
80
77
73
72
70
73
74
72
71
72
73
75
81
81
75
79
86
83
80
81
73
72
72
67
64
61
59
53
52
57
54
43
36
39
35
35
35
39
35
35
38
37
36
36
33
35
36
35
37
37
38
35
33
37
32
36
32
29
32
35
35
28
78
83
59
39
50
49
47
50
51
48
44
42
36
37
36
37
45
46
28
37
40
40
41
40
39
41
42
41
42
42
45
48
47
46
46
39
33
37
36
42
41
39
39
36
30
24
20
42
49
55
56
47
41
57
70
68
74
82
83
77
78
71
71
62
57
50
49
46
43
99
98
95
93
92
92
90
90
89
89
88
87
86
87
87
87
84
84
82
82
82
82
81
79
77
79
78
78
78
75
73
71
68
66
67
67
64
63
62
62
61
59
59
56
55
55
57
55
53
52
52
52
51
50
49
48
49
47
45
43
44
42
42
42
43
42
43
44
46
46
45
48
51
51
53
53
54
54
55
56
55
56
56
55
56
58
58
59
60
64
63
64
67
67
68
69
71
71
71
74
73
72
75
76
77
77
77
77
78
77
76
77
77
77
78
77
79
80
81
82
81
81
82
83
86
88
89
90
92
93
95
96
96
96
98
99
99
101
101
101
101
101
101
101
100
100
101
101
100
100
99
96
96
96
99
95
96
99
99
94
95
91
91
92
92
91
92
89
86
82
81
78
78
79
78
76
83
88
89
86
80
71
58
48
47
44
46
51
44
38
39
36
36
36
37
37
37
37
38
39
42
43
44
43
41
39
38
38
37
35
33
35
38
38
37
37
37
40
40
39
34
34
33
31
37
37
35
35
38
36
74
86
49
46
39
44
52
50
47
50
45
42
38
37
38
38
42
41
32
32
42
44
38
37
38
39
40
40
41
42
37
41
45
42
35
44
32
33
39
38
36
34
32
40
35
23
28
48
66
77
86
85
77
76
93
97
95
100
96
86
78
76
75
66
59
51
48
42
38
100
99
97
93
91
90
90
92
91
90
89
88
88
87
87
86
84
83
84
83
83
83
83
81
80
80
79
78
79
77
75
72
69
68
67
67
65
65
63
60
61
61
61
58
57
57
55
56
53
52
53
51
51
50
50
50
50
48
46
45
46
45
45
45
45
45
44
45
48
47
47
51
51
52
52
52
55
54
54
56
56
57
59
57
55
58
59
60
60
61
63
64
65
68
69
70
72
72
73
75
76
76
76
77
78
77
78
77
78
77
77
78
78
79
79
81
80
81
80
80
81
82
83
85
87
89
91
92
93
94
97
99
99
98
98
100
101
103
102
103
104
103
102
103
102
102
102
102
101
101
99
96
96
98
100
98
98
103
100
97
97
95
94
96
95
97
99
100
101
104
100
88
79
75
72
63
54
46
39
36
42
45
48
44
49
47
39
46
45
44
46
46
44
44
44
44
43
43
44
45
46
43
41
43
42
38
34
31
32
35
36
36
38
39
36
37
38
36
40
38
37
42
48
46
40
43
43
40
41
33
51
77
55
55
39
47
52
49
51
43
46
37
35
40
39
41
41
43
38
27
37
40
42
38
35
39
38
38
40
40
33
31
30
37
27
31
29
46
46
41
35
32
31
28
31
39
38
58
66
81
95
101
107
99
88
91
105
106
102
98
85
80
72
63
56
52
47
42
34
99
98
96
94
92
91
90
91
91
89
89
89
89
87
88
86
85
85
86
85
84
86
85
84
84
83
83
82
81
79
78
76
72
70
68
67
66
63
63
63
61
61
59
58
57
57
57
56
55
54
53
54
53
52
52
52
52
50
48
47
47
47
46
46
47
47
46
45
47
48
48
50
50
52
53
53
54
55
56
55
57
55
56
56
56
59
58
59
60
60
62
64
66
67
69
71
73
73
72
73
73
74
76
78
78
78
78
78
78
76
77
79
79
78
79
80
81
80
80
80
82
86
88
88
89
91
92
95
96
97
98
97
99
100
101
103
102
103
103
104
104
104
105
103
102
104
103
102
104
104
103
101
100
100
102
104
103
107
103
110
108
108
108
108
103
94
85
77
68
57
51
49
48
51
47
43
41
47
50
51
48
48
44
43
46
45
44
47
44
46
46
45
46
47
48
47
43
42
42
44
44
45
45
43
40
39
38
38
37
36
34
36
36
37
39
40
40
38
41
42
38
41
52
51
47
44
43
42
43
38
47
77
48
54
41
48
54
45
44
44
47
39
35
39
42
43
43
44
43
34
30
37
37
38
38
36
36
37
36
35
29
36
33
35
42
40
40
40
35
41
37
36
32
30
27
30
33
57
91
86
83
93
103
110
107
95
93
95
88
87
79
75
66
59
53
46
43
38
34
100
98
96
94
93
92
91
90
91
89
87
88
88
88
88
87
87
87
88
87
87
88
87
86
85
86
86
84
83
82
82
79
75
71
68
68
67
65
63
62
61
61
59
58
57
56
57
56
56
56
55
56
55
52
51
52
51
51
49
47
49
49
48
48
48
46
46
44
47
47
51
52
52
52
54
56
57
54
58
58
57
57
58
58
57
60
59
62
61
61
61
64
66
67
68
69
71
73
72
73
75
76
75
76
78
77
78
77
77
77
78
80
79
79
79
79
81
82
80
83
86
90
93
93
94
95
96
95
98
98
97
99
99
101
101
102
102
102
102
102
105
106
106
103
102
104
105
108
108
106
97
88
90
97
101
90
70
67
67
70
69
80
79
70
60
49
44
41
45
47
45
47
48
48
46
46
45
47
46
49
48
42
43
45
46
42
43
44
44
45
46
45
44
47
49
45
42
44
44
45
47
47
45
44
40
40
38
37
37
38
40
40
40
40
41
40
41
40
41
39
37
37
36
35
41
52
49
46
46
41
42
80
60
49
44
45
52
51
45
47
51
43
45
49
44
43
44
43
47
40
30
36
38
42
40
36
34
34
33
32
29
42
47
30
36
43
44
47
43
42
38
34
32
31
30
33
38
38
85
97
91
82
83
92
97
101
102
98
80
68
71
67
55
47
47
42
40
32
31
100
97
97
95
95
92
92
91
90
89
88
88
88
89
88
88
88
88
88
88
89
89
89
88
88
88
87
86
85
83
82
80
77
72
69
69
67
65
65
63
61
61
60
58
56
55
56
55
55
55
55
55
54
51
51
51
51
50
50
49
51
50
52
50
48
46
46
45
47
47
50
52
53
53
54
56
54
57
58
59
59
56
58
58
58
58
59
59
61
63
65
64
67
69
69
69
71
73
74
73
72
74
74
75
77
76
79
78
79
79
78
79
79
79
79
80
81
82
82
83
87
90
92
94
96
98
98
98
98
100
100
101
102
102
102
102
106
107
107
106
108
107
109
111
108
96
87
76
62
61
70
68
70
59
49
37
40
42
44
41
40
51
55
49
47
47
47
48
47
46
42
42
43
45
47
45
45
46
47
47
43
48
47
46
46
45
45
45
45
46
47
45
44
47
46
45
44
45
46
47
48
47
46
44
43
43
41
40
38
39
41
40
40
40
41
41
40
40
39
38
38
37
37
37
39
45
46
43
41
40
35
70
71
49
44
47
47
47
52
48
45
45
43
52
41
41
42
43
43
37
34
35
42
38
35
35
33
32
32
31
36
31
44
50
30
34
44
44
37
39
41
36
33
31
30
29
32
29
53
72
84
91
78
76
82
87
94
90
82
73
70
59
51
41
41
40
34
36
33
100
99
96
95
93
92
93
92
91
90
87
88
89
91
89
90
90
89
90
89
90
90
91
90
91
91
91
88
87
83
82
80
76
71
72
70
68
66
65
65
62
61
60
59
57
56
56
55
55
55
55
55
55
53
52
51
51
49
49
50
50
49
48
47
47
47
48
46
48
49
52
54
54
55
54
56
54
56
58
59
58
57
58
59
58
57
60
61
63
62
63
66
66
67
69
70
73
72
72
73
73
73
74
76
76
78
79
78
81
80
82
81
79
78
78
80
81
82
82
85
87
90
93
94
95
97
98
100
98
97
100
102
105
105
102
105
99
96
96
103
110
108
96
84
67
54
47
39
49
54
47
42
42
37
45
47
44
42
44
46
45
46
47
47
50
51
48
45
39
38
40
42
42
42
42
41
40
40
40
41
42
41
42
44
46
46
48
48
47
45
44
43
42
41
42
45
46
46
45
45
45
46
45
43
42
39
37
37
38
38
38
41
41
41
41
41
41
38
37
38
39
38
38
38
40
44
48
50
45
44
43
55
74
58
42
41
56
51
53
48
46
43
42
46
40
37
37
38
41
37
36
34
33
32
33
31
33
32
30
32
32
38
39
59
47
34
31
35
36
33
34
33
34
32
39
37
29
29
36
45
56
71
79
75
72
70
66
69
69
65
62
58
52
49
47
49
45
38
34
99
98
96
95
93
91
92
92
92
90
88
90
91
92
91
93
92
91
91
91
91
92
92
92
92
92
91
88
88
85
83
79
77
75
72
69
68
66
65
66
64
62
61
60
59
57
58
56
57
56
54
55
55
54
54
52
52
51
51
52
49
46
47
46
47
48
49
47
48
50
53
54
55
56
55
55
55
56
58
59
59
58
58
60
57
58
59
59
62
64
63
65
67
68
70
70
71
70
71
73
74
76
74
76
75
78
78
78
78
80
83
81
80
80
81
80
82
83
87
87
89
92
93
96
96
99
100
100
100
101
105
101
84
71
74
66
53
62
67
74
73
61
54
51
45
50
47
42
46
41
46
44
48
46
44
45
45
45
45
45
45
43
44
45
45
44
44
41
37
38
43
42
41
43
42
42
42
41
41
42
41
42
43
44
45
46
48
48
46
43
42
41
40
41
40
42
42
42
41
42
43
44
42
41
39
36
38
37
36
37
38
39
39
41
39
39
38
37
37
37
38
37
36
34
38
40
41
46
42
37
38
45
68
51
45
38
53
67
54
48
47
43
41
41
37
36
37
36
36
36
38
37
35
29
31
33
33
36
29
33
36
43
45
52
49
41
27
29
33
34
34
30
28
28
39
38
43
41
35
28
28
40
52
72
69
66
65
66
71
62
55
62
61
62
64
62
53
55
50
100
99
97
97
94
93
93
92
92
91
90
90
91
91
92
92
94
93
94
92
91
92
91
92
90
91
91
89
88
85
85
82
80
76
73
71
70
67
66
67
65
61
60
59
56
56
56
55
55
54
54
55
55
54
54
53
51
50
53
51
48
46
47
48
47
47
48
46
49
51
54
55
56
57
59
57
58
57
58
59
60
59
58
60
59
60
59
61
62
62
63
64
67
68
69
70
70
71
72
73
75
76
77
76
78
77
78
80
79
81
83
82
79
80
82
83
83
85
88
90
91
94
96
99
101
102
103
104
103
94
75
55
37
47
48
35
50
50
44
44
40
51
48
40
41
44
43
46
49
48
50
48
46
47
45
45
43
44
46
47
44
44
45
45
43
42
40
39
41
41
43
43
43
44
43
41
43
42
43
45
44
44
45
47
47
46
46
46
46
45
43
44
43
41
41
40
40
40
40
40
42
43
40
37
38
39
37
37
40
40
39
38
38
38
37
38
37
40
38
34
31
31
31
30
32
36
39
36
36
37
36
38
56
49
46
45
42
60
56
49
48
42
40
40
38
37
37
35
35
35
37
35
35
35
29
33
36
32
32
29
36
41
57
55
40
49
47
33
33
36
34
31
30
34
40
50
55
57
63
59
55
64
71
72
100
104
98
90
93
89
112
97
102
99
100
99
84
82
63
100
99
97
96
94
94
94
92
92
91
91
93
93
93
95
95
97
94
95
93
93
92
92
91
90
90
90
88
86
84
83
80
81
80
76
71
71
70
69
67
67
63
61
59
58
58
57
57
56
55
56
54
55
55
53
52
52
51
52
52
47
45
48
48
46
47
48
47
48
50
54
55
56
58
58
57
58
58
58
59
61
60
58
60
60
61
59
61
61
63
64
64
65
68
69
69
70
72
72
74
75
76
77
75
76
76
78
79
80
81
82
80
80
79
82
83
83
85
87
89
91
95
96
100
99
102
101
84
63
48
36
44
46
46
42
41
43
42
43
45
43
44
46
44
43
45
47
48
49
48
47
46
48
46
44
44
46
46
45
43
42
43
44
42
40
41
40
42
44
43
43
43
43
42
42
43
44
44
45
44
44
41
40
40
43
42
43
44
44
44
42
43
41
40
40
41
41
40
40
41
41
42
41
40
41
38
38
40
40
40
39
36
38
39
38
38
38
38
36
30
33
35
33
31
32
36
37
36
36
38
39
39
47
54
47
53
51
44
55
44
46
43
39
40
37
35
36
34
34
35
34
34
34
31
29
32
43
33
34
36
33
37
38
53
54
48
42
49
44
43
44
42
38
59
58
50
54
58
60
70
72
73
77
74
96
118
135
124
117
118
154
150
102
105
111
108
100
97
96
100
98
98
97
96
94
94
92
92
94
95
94
95
95
96
95
95
94
94
94
91
93
94
91
90
89
87
87
87
85
83
81
80
81
77
76
72
71
71
68
67
64
63
60
58
58
56
56
57
56
57
56
56
56
56
54
53
53
52
51
50
49
48
46
47
47
46
47
49
50
53
56
58
60
59
58
58
58
59
59
61
62
62
62
62
62
60
60
62
63
64
64
64
65
68
70
70
71
72
74
73
76
77
78
77
78
79
80
81
80
81
82
80
81
82
82
84
87
89
91
93
96
98
100
93
80
66
51
44
46
47
49
47
44
44
48
48
47
47
46
45
45
46
47
46
47
48
48
47
48
47
47
49
46
44
45
46
45
42
42
42
42
43
42
41
41
41
41
44
43
40
40
42
43
44
45
45
46
43
39
40
42
44
43
42
43
43
44
44
42
42
41
42
42
41
41
42
43
42
42
41
40
41
41
40
40
41
42
41
41
40
38
38
40
38
37
37
34
37
40
40
38
35
35
37
39
39
37
37
34
33
31
35
56
58
62
56
49
45
47
43
40
40
42
39
35
36
35
35
36
35
36
34
31
28
30
42
47
42
42
44
44
39
37
31
31
32
31
31
33
40
40
44
67
81
53
61
66
69
73
77
78
77
76
88
116
125
119
81
128
141
184
147
108
107
109
114
109
109
99
99
97
98
94
95
94
93
95
94
94
95
95
95
96
96
95
95
95
95
94
94
94
91
90
89
87
86
87
85
86
83
82
82
80
78
75
71
71
69
68
66
64
61
61
60
57
57
55
58
58
56
56
57
57
54
53
54
52
50
52
53
48
45
46
47
47
48
50
50
52
56
58
59
59
59
61
60
60
60
60
62
63
62
64
63
62
62
63
64
63
65
66
64
66
67
69
70
70
72
73
75
76
76
78
77
79
79
81
81
81
80
79
81
82
82
85
89
92
95
96
90
81
70
58
48
46
46
45
43
41
41
44
45
45
50
50
48
49
47
46
46
47
48
46
47
48
48
47
48
47
47
48
47
46
46
45
43
41
39
41
41
41
41
40
40
43
44
43
42
40
42
43
41
43
46
44
42
41
42
41
44
44
42
42
42
41
41
42
42
43
41
42
43
42
43
41
42
41
40
42
40
40
41
41
41
41
41
41
41
40
38
38
40
39
39
39
39
38
36
34
37
40
39
39
38
37
34
34
32
30
29
28
44
55
63
50
48
47
46
42
37
38
36
35
33
35
34
35
34
36
33
33
31
27
32
44
47
44
53
43
46
40
40
45
33
32
39
44
38
40
40
46
34
38
55
61
67
73
77
79
79
77
78
82
101
95
126
83
108
120
156
149
156
128
107
113
111
116
100
98
97
97
97
96
97
95
96
95
95
96
96
96
97
97
96
97
94
94
94
92
93
92
90
89
88
85
85
85
87
86
83
83
82
81
77
73
73
72
70
67
65
64
61
60
58
58
58
58
59
57
58
57
57
55
54
56
54
52
53
51
47
46
47
46
46
48
51
52
53
56
59
58
58
60
62
62
62
63
61
61
62
64
64
61
61
62
62
64
64
64
64
64
68
68
69
71
71
72
73
74
77
78
79
78
79
79
80
79
80
78
79
81
82
83
87
91
94
87
72
55
47
46
45
47
49
47
45
45
44
45
48
48
47
50
50
49
49
49
46
46
48
46
45
47
47
47
48
46
47
45
44
45
44
45
45
42
40
38
39
40
40
39
40
41
42
41
40
42
43
43
43
44
44
44
43
44
43
43
40
40
41
42
44
44
42
42
42
42
42
43
43
42
41
42
41
41
40
38
40
41
42
42
41
41
42
41
41
39
38
37
38
39
39
39
38
34
33
35
39
39
38
38
38
40
38
36
35
35
33
30
29
39
60
61
49
51
47
47
39
37
46
40
34
32
34
35
35
34
32
31
30
32
29
38
46
54
51
53
45
41
42
41
36
41
39
42
48
42
35
40
41
47
42
47
58
62
67
71
71
72
76
75
72
75
68
108
89
107
75
127
126
146
150
117
114
107
104
99
98
98
98
94
95
97
95
96
97
97
98
98
96
95
95
94
95
94
90
93
93
93
91
91
92
91
88
85
86
88
85
84
82
84
81
78
77
74
72
71
70
67
65
61
61
61
60
60
61
61
60
60
60
58
57
56
55
56
54
53
50
49
47
47
46
46
48
51
52
55
58
59
59
61
62
62
63
64
64
63
63
63
64
63
61
62
64
64
64
63
62
65
67
67
69
69
69
70
72
73
75
76
77
76
77
78
78
79
78
80
80
80
81
83
88
87
88
74
47
43
46
47
47
47
47
48
47
44
44
48
49
48
48
48
50
49
49
50
48
46
45
46
44
44
45
46
46
45
43
46
43
42
44
44
44
42
39
37
39
41
39
38
39
40
42
40
39
43
45
45
45
44
42
42
43
44
43
43
40
42
42
43
43
45
44
43
42
41
43
43
44
42
40
40
42
41
39
39
40
40
41
40
41
42
41
42
40
40
40
40
39
38
39
38
38
36
37
39
41
39
37
38
39
40
38
37
36
36
36
35
37
35
30
56
61
53
45
45
54
48
45
47
37
37
39
33
34
32
31
30
28
30
28
38
55
53
55
50
51
52
51
46
45
37
36
41
40
38
35
38
35
36
38
43
46
49
54
64
70
67
69
74
68
65
67
67
80
85
74
46
94
123
120
139
123
132
109
115
98
98
97
98
95
98
99
96
95
96
97
98
97
97
97
98
95
96
95
93
93
93
94
93
92
93
92
89
86
86
88
86
85
83
84
82
79
77
74
72
71
70
68
66
64
64
62
61
60
61
60
62
61
62
59
59
57
58
58
56
54
53
50
49
47
48
47
49
51
52
55
58
60
62
61
62
62
62
64
63
64
64
63
64
64
62
62
64
64
64
63
63
64
66
67
68
70
69
69
70
73
73
74
75
76
77
78
78
78
75
75
78
73
80
78
72
64
54
46
43
47
47
46
47
46
47
48
46
47
48
49
48
49
47
47
50
49
49
48
47
46
45
45
41
46
46
47
46
45
44
44
43
44
44
44
41
40
39
40
39
40
39
38
39
41
41
40
42
45
44
45
43
42
42
44
46
46
44
44
44
43
45
44
43
43
43
43
43
42
44
44
45
42
38
40
40
41
40
41
42
42
41
40
41
41
41
40
41
41
41
39
38
37
38
40
40
38
37
36
37
39
40
39
38
38
38
38
36
36
35
33
33
31
31
48
62
65
56
47
62
61
45
46
41
38
44
44
33
35
29
28
24
38
47
52
61
56
54
48
49
50
50
45
42
45
41
39
38
38
39
37
36
36
35
36
60
81
57
58
67
66
66
68
63
64
66
72
75
65
51
37
52
107
109
139
122
115
105
60
99
98
96
97
97
98
98
94
96
95
99
99
97
96
96
96
96
95
96
95
95
93
94
93
91
92
91
88
89
88
88
87
87
85
84
84
80
77
74
72
71
70
67
66
66
66
64
62
61
62
61
62
61
61
60
61
61
58
57
56
55
53
51
51
48
49
50
49
51
53
55
59
61
61
60
61
64
64
65
65
64
65
65
64
64
63
64
65
65
64
63
64
64
67
68
68
69
70
70
71
72
72
74
74
77
77
77
75
77
80
73
68
63
60
56
50
47
47
48
48
47
47
47
47
47
48
49
48
49
50
50
48
49
48
48
48
49
49
49
48
49
47
47
44
46
45
47
47
45
44
44
43
45
44
44
39
41
40
40
40
39
39
39
40
41
42
43
45
44
43
44
41
41
46
48
47
45
44
45
46
46
45
44
44
44
44
42
42
44
43
43
43
42
39
39
39
40
40
41
42
40
39
40
40
40
41
40
41
40
40
40
38
37
37
40
41
41
38
37
37
39
39
39
37
37
37
35
34
34
32
32
32
32
31
35
54
63
54
57
61
64
49
41
49
38
39
48
29
39
31
23
33
40
53
57
57
50
49
50
47
47
50
44
48
36
41
37
39
41
36
34
35
38
35
33
35
53
73
74
61
66
68
68
67
67
68
71
64
52
40
34
41
71
82
115
148
103
122
46
98
97
95
95
95
98
97
97
97
97
99
99
97
96
95
96
95
96
96
95
94
94
94
94
92
91
92
91
90
89
87
86
87
85
84
84
81
78
74
71
70
70
67
67
67
66
64
62
60
60
61
60
60
60
60
60
60
59
58
55
55
54
52
50
49
49
48
49
52
55
57
58
61
62
62
62
64
65
65
65
66
64
65
65
66
65
64
66
66
65
64
65
65
66
68
68
71
71
71
72
70
71
72
72
76
77
75
74
73
66
58
55
45
40
49
51
46
45
48
48
46
48
48
48
47
47
50
49
49
49
49
47
49
49
48
49
48
48
49
51
50
48
48
45
45
45
47
47
44
43
43
44
44
41
41
41
40
41
40
40
39
40
40
40
43
44
45
45
44
44
42
45
46
47
46
46
46
46
48
48
47
47
45
42
41
42
43
43
42
42
42
43
41
38
39
40
39
39
38
39
38
38
42
43
40
39
38
40
40
40
41
40
39
41
41
42
39
37
38
38
39
36
37
38
36
33
32
32
36
36
34
31
31
30
30
49
61
53
66
57
63
60
45
52
49
34
34
31
33
34
25
31
39
52
55
54
50
53
50
49
46
46
48
40
42
45
42
43
40
37
35
36
38
36
32
37
53
54
60
82
71
64
67
67
66
68
72
59
47
32
33
39
42
47
92
146
106
110
77
98
96
93
94
95
97
98
99
98
98
99
99
97
95
97
97
96
95
95
95
95
94
95
94
92
89
90
90
92
92
89
88
88
87
85
84
83
79
75
72
71
72
70
67
67
66
65
64
62
60
62
61
63
60
60
60
60
61
59
57
55
55
52
51
50
50
49
51
54
55
57
58
60
63
63
62
65
65
67
66
67
67
67
68
67
67
66
68
66
65
65
66
66
67
67
67
70
70
70
70
71
72
73
73
72
71
75
70
56
47
49
46
50
48
45
48
48
49
44
44
47
48
50
49
47
47
50
50
50
49
49
48
49
48
48
49
47
47
47
54
48
50
48
47
42
47
46
47
43
41
42
42
42
40
42
41
40
42
41
40
40
41
42
43
43
44
46
45
43
43
46
47
46
46
44
47
48
48
48
45
45
45
43
43
42
42
44
44
42
42
42
43
39
37
39
41
39
38
39
40
40
39
39
39
38
38
37
39
41
42
43
42
41
40
40
40
40
40
37
35
36
37
40
38
34
33
35
35
36
32
28
28
30
30
31
35
51
56
57
62
56
55
49
40
37
35
32
32
32
36
33
33
37
40
44
47
50
50
50
48
47
46
50
40
42
42
37
42
38
38
38
35
36
34
36
39
51
65
65
66
74
76
64
62
63
72
65
55
46
32
32
35
37
41
55
118
105
95
92
101
98
96
97
97
98
100
99
100
99
99
100
99
98
96
97
97
96
97
95
95
95
95
96
93
91
93
92
91
91
89
89
87
87
87
85
84
82
76
73
72
73
71
68
67
66
66
64
62
61
63
62
63
62
62
62
62
62
59
58
57
56
52
51
50
50
50
51
53
54
56
60
61
62
63
63
64
66
67
68
68
67
67
67
68
67
66
67
67
66
65
66
66
67
68
68
70
70
69
72
72
73
72
71
79
81
66
57
52
49
49
52
48
45
49
50
44
46
48
47
49
49
49
49
48
48
49
50
50
48
48
49
48
48
51
50
48
46
54
49
45
46
46
46
42
47
46
46
42
43
42
43
41
42
45
42
42
42
42
41
41
40
41
43
43
44
46
44
42
44
49
47
47
45
45
48
47
45
45
44
43
42
44
45
43
44
44
43
43
41
42
42
39
37
39
40
38
38
39
39
37
39
39
38
39
40
40
41
41
42
41
42
42
42
41
41
41
41
39
38
39
37
34
36
36
35
35
34
33
32
33
38
39
38
37
32
32
52
54
58
62
52
53
45
38
45
44
34
33
43
38
37
48
43
34
45
44
45
46
47
44
45
46
46
42
37
37
37
40
40
37
37
35
36
37
41
47
67
69
75
73
69
74
69
61
76
63
54
44
36
34
35
37
39
36
100
116
79
50
99
99
98
99
100
99
100
100
101
100
99
99
99
99
98
98
97
97
96
98
97
95
95
94
93
93
93
94
94
93
91
91
89
87
86
85
84
83
80
78
76
75
73
70
69
67
65
64
62
62
61
61
60
60
60
60
61
61
60
61
61
57
54
53
53
51
52
51
51
54
55
58
61
61
64
63
64
63
66
68
69
68
69
68
68
66
66
66
67
67
67
66
66
67
68
69
70
68
68
69
70
67
69
72
70
58
50
51
49
50
50
49
46
49
50
46
44
49
49
49
50
49
49
50
51
50
50
49
48
47
48
47
46
47
49
50
48
47
54
49
46
45
47
48
45
45
48
45
43
43
43
40
44
44
42
43
42
42
42
40
41
43
45
45
45
45
45
44
45
46
49
48
48
47
47
46
43
43
43
43
44
45
44
44
45
44
44
43
41
42
42
41
40
39
40
42
41
38
37
37
38
40
39
41
42
39
39
40
41
42
43
44
44
42
39
37
37
37
37
36
35
33
38
40
39
39
36
37
38
39
38
40
39
38
35
31
31
41
56
54
58
51
47
38
40
43
41
39
33
36
41
35
43
43
37
33
44
46
41
39
41
45
42
40
41
32
41
38
38
36
34
34
34
35
37
38
46
69
74
76
76
77
71
67
65
67
52
53
47
40
37
36
36
35
34
63
75
26
17
98
97
99
100
101
103
102
101
101
101
101
101
100
98
97
99
98
97
97
98
98
97
97
96
95
96
96
96
98
96
94
93
91
89
87
85
85
84
82
81
77
75
72
71
71
70
67
65
63
63
62
62
63
63
63
62
60
61
60
61
60
55
54
52
50
51
53
50
51
53
54
57
59
61
62
63
64
64
65
66
67
67
68
67
67
68
66
66
65
67
67
67
69
70
68
67
66
69
69
67
71
65
63
62
51
50
51
50
48
48
50
49
48
48
47
51
49
47
47
48
49
50
50
51
50
49
48
49
48
48
48
47
47
47
46
49
47
49
46
48
46
46
47
48
46
46
47
46
42
42
40
42
44
43
45
42
42
42
41
40
42
44
46
46
46
47
45
44
46
46
49
47
46
48
48
46
44
43
44
45
44
44
44
44
44
43
43
43
41
41
41
41
40
40
39
40
40
39
41
42
42
42
41
41
39
39
41
43
43
43
42
42
42
41
41
40
40
41
39
37
38
39
40
39
39
41
39
39
38
38
37
38
39
37
36
33
30
29
47
61
53
48
54
34
37
33
37
35
36
40
43
40
38
41
41
35
32
44
48
45
46
43
41
40
32
37
41
42
45
44
39
37
39
41
39
45
49
74
76
76
78
75
70
68
66
65
56
46
42
42
42
37
35
35
30
29
26
19
16
98
97
101
101
103
104
103
102
104
103
102
99
100
99
99
98
99
97
96
96
97
98
99
97
97
98
99
98
97
94
95
94
92
90
89
87
86
84
82
81
77
76
72
72
71
70
66
65
63
63
63
63
64
63
62
63
63
63
61
61
60
55
51
51
52
51
51
49
50
52
56
57
60
61
62
62
63
64
65
67
67
68
68
67
67
68
66
67
65
66
67
68
68
68
67
66
65
66
66
66
66
67
63
48
49
50
48
48
47
47
48
47
49
51
52
51
49
48
47
47
49
49
49
48
49
49
48
50
49
48
47
47
46
45
47
49
49
50
48
48
46
47
47
47
47
45
46
48
42
41
42
46
45
44
46
42
42
43
41
43
45
48
48
47
47
46
46
47
47
48
45
46
49
48
46
46
45
44
45
45
44
44
44
44
44
44
42
41
41
41
41
41
40
41
41
42
42
43
42
41
41
41
41
39
39
43
44
43
43
42
42
40
43
42
42
43
41
40
40
40
39
40
41
40
40
39
37
39
39
40
38
36
35
33
37
37
39
36
31
52
52
45
51
42
35
40
42
38
36
36
42
40
37
40
40
40
37
31
43
49
46
41
38
42
33
38
40
40
45
45
47
47
50
48
50
59
63
74
79
78
77
70
64
63
66
64
61
51
40
35
38
40
36
34
30
23
22
20
17
98
100
100
105
105
105
104
104
105
103
101
100
99
98
98
99
99
98
96
96
97
99
98
99
98
98
98
97
96
95
95
94
93
91
90
88
85
85
83
81
77
75
72
72
70
69
66
66
63
62
63
63
63
62
62
62
63
63
61
60
61
57
56
52
52
49
50
50
50
52
54
54
60
62
61
62
63
64
65
65
65
66
65
66
67
67
68
67
66
67
67
67
69
70
66
68
66
61
54
58
59
49
46
48
46
47
48
49
48
46
45
48
48
51
53
51
48
51
49
47
48
47
49
50
49
48
49
49
47
47
48
48
46
45
49
51
51
48
48
48
45
45
47
48
49
46
47
45
42
42
45
46
45
46
42
43
44
42
44
46
46
48
48
47
44
44
46
46
46
45
45
48
48
46
45
45
45
46
46
44
44
44
44
44
45
44
43
42
43
42
40
40
39
40
40
40
40
41
40
40
41
40
39
42
45
45
42
39
40
41
41
40
40
41
43
43
42
41
41
41
40
40
38
40
39
39
38
39
38
38
41
40
41
42
42
42
39
28
23
35
56
45
51
63
47
38
43
43
36
37
41
38
37
36
38
38
40
42
30
39
45
40
41
48
42
34
38
43
43
45
46
46
55
57
61
64
72
77
83
84
79
67
62
64
60
53
54
53
49
42
37
35
34
36
35
31
29
23
20
99
101
102
105
105
106
107
106
106
105
103
102
100
99
98
100
100
100
97
98
99
100
101
100
98
100
100
100
98
98
98
96
94
92
92
90
88
86
84
82
79
78
74
73
72
72
69
68
64
63
63
63
64
63
63
64
64
64
63
62
63
59
56
54
54
52
52
51
52
54
54
56
61
62
61
62
63
64
64
65
65
65
66
66
67
66
66
67
67
67
67
68
69
69
68
65
62
49
51
59
53
51
51
49
49
50
49
45
45
45
48
47
48
49
50
49
52
52
48
47
48
49
53
50
49
48
49
45
46
48
49
49
48
49
49
51
51
48
47
47
46
46
48
48
49
47
47
45
42
42
46
47
46
40
41
45
42
45
47
47
48
48
48
45
43
43
45
47
46
47
50
49
46
45
44
45
44
44
43
42
44
44
44
44
45
44
43
43
44
41
39
38
39
38
38
40
39
38
39
40
39
39
40
39
38
39
39
37
38
39
41
42
42
42
41
42
44
42
42
42
41
40
38
37
39
40
39
39
38
39
42
39
38
37
38
38
25
25
29
31
37
47
46
47
57
38
36
47
45
37
40
46
40
31
35
39
40
41
40
33
29
25
27
34
37
39
29
36
44
46
52
55
58
57
56
67
74
81
87
86
79
71
66
59
54
50
45
44
44
44
41
37
34
26
19
26
26
27
20
101
101
104
105
106
106
106
106
104
104
104
101
100
99
99
99
100
101
101
100
101
100
102
101
100
99
100
101
100
101
100
98
97
95
93
90
88
87
85
82
78
79
76
74
72
71
70
68
65
64
65
64
64
64
64
64
64
64
64
66
63
58
57
54
52
53
51
51
52
52
53
55
60
61
63
63
62
64
63
64
65
65
66
66
67
66
66
67
66
69
67
67
67
68
68
60
45
56
53
52
50
50
47
48
50
52
47
47
47
48
49
47
49
49
47
49
51
49
49
49
49
50
50
49
50
48
47
47
49
50
50
49
49
49
45
50
46
47
49
48
48
48
48
48
52
48
46
48
41
46
45
44
45
39
45
46
43
47
48
49
49
49
46
44
44
44
46
47
47
49
49
47
46
44
43
42
42
43
42
44
45
44
41
42
44
45
44
43
42
40
38
37
38
38
37
39
39
39
39
38
37
39
41
40
39
41
42
41
40
40
42
44
43
42
43
43
42
43
44
42
40
39
38
40
40
40
39
37
37
37
39
39
38
39
39
36
35
34
27
30
26
48
35
35
56
53
31
34
39
38
35
39
44
43
39
38
36
39
39
32
33
36
32
29
33
33
37
28
31
42
46
52
55
57
63
75
85
86
89
89
81
73
66
58
50
47
39
36
34
34
34
35
36
33
25
17
12
14
19
102
103
105
107
107
107
106
106
106
104
103
101
101
100
99
100
101
101
102
102
102
101
102
102
101
101
100
101
102
102
101
99
99
97
96
93
90
87
86
84
80
77
75
76
72
70
70
68
67
66
64
63
65
65
65
64
64
64
63
65
62
57
57
54
53
52
51
52
51
51
54
55
59
61
64
65
62
64
64
65
66
66
66
65
66
66
67
68
69
67
63
67
67
62
57
45
62
55
51
51
49
48
49
52
50
45
48
46
46
48
47
49
47
48
48
49
49
49
49
48
48
50
47
52
51
48
49
50
49
49
50
49
47
46
45
47
44
47
49
51
49
46
47
47
52
47
46
45
45
47
44
46
43
43
47
46
47
47
47
51
49
48
46
44
44
45
47
47
49
49
49
46
45
45
43
43
43
42
44
44
44
42
41
42
43
42
42
42
41
41
39
37
37
36
35
37
38
40
40
38
38
39
39
41
41
42
42
44
44
43
43
42
43
43
41
42
43
44
43
42
40
40
40
41
40
40
39
38
39
39
39
40
39
37
36
35
30
18
24
36
37
37
34
25
40
55
38
32
31
37
33
41
41
40
45
43
35
33
35
34
31
29
28
31
34
37
41
35
30
37
45
49
52
59
64
81
88
90
92
95
86
76
67
59
51
46
39
36
34
33
29
27
28
26
20
20
19
12
6
104
106
108
108
108
108
108
106
105
104
103
103
101
102
102
101
102
102
104
103
103
102
103
103
102
104
103
103
104
104
102
101
100
98
97
95
93
88
88
87
83
80
77
75
74
74
69
66
66
64
64
64
65
66
66
67
65
65
64
64
62
59
58
55
54
53
53
53
52
52
56
55
57
61
65
63
64
63
65
65
68
67
67
67
66
67
67
68
69
67
67
67
64
66
78
68
51
48
50
49
50
51
48
47
43
49
47
45
49
50
48
50
50
49
49
49
49
48
48
47
47
47
51
50
49
49
49
50
49
50
48
48
48
46
46
46
44
48
47
48
48
47
48
49
50
45
46
46
46
44
44
46
44
49
48
48
48
49
49
47
47
48
47
45
45
45
46
47
49
48
47
45
45
43
42
42
42
43
44
44
42
40
42
42
40
39
42
41
39
37
37
37
38
41
41
43
43
44
43
40
38
38
40
41
42
43
43
45
45
44
43
42
41
41
41
40
43
42
40
40
40
41
42
41
39
39
40
39
38
38
38
39
38
36
34
26
17
21
37
40
36
34
30
22
30
43
47
38
35
40
32
37
45
40
37
40
44
41
30
30
35
33
31
40
36
38
37
38
38
33
39
47
55
73
78
86
95
98
95
92
87
79
71
61
51
45
37
37
34
29
25
23
22
21
18
21
22
24
20
107
108
109
109
108
108
108
107
106
104
103
103
103
103
102
103
102
102
103
103
103
103
102
103
103
105
104
103
103
103
102
101
100
98
96
95
92
90
87
86
83
80
77
75
74
73
69
66
65
64
64
65
65
65
65
67
67
66
62
63
63
61
60
58
56
54
55
54
54
54
56
56
58
59
62
64
65
65
66
65
67
66
67
68
67
68
69
70
66
69
64
67
65
60
65
54
49
50
48
51
52
49
44
43
49
47
45
48
51
50
50
51
51
50
49
49
50
47
47
47
49
49
48
48
49
50
50
52
50
50
47
49
48
44
49
47
47
46
47
50
50
47
47
49
46
44
45
46
44
44
46
46
47
50
47
47
50
50
48
47
47
46
45
45
45
45
47
47
46
47
46
44
43
44
43
41
41
43
42
42
38
41
42
40
39
40
40
40
38
35
38
39
40
41
39
39
40
40
39
38
39
38
40
42
43
44
44
45
45
44
43
42
41
41
41
41
42
41
41
42
42
42
42
42
41
40
39
38
39
38
38
38
36
36
31
23
25
38
37
37
29
34
19
22
29
37
42
42
39
41
41
46
45
46
46
49
43
43
44
33
36
34
32
42
35
35
39
38
37
33
28
32
57
76
88
97
102
97
93
93
87
79
70
59
48
44
42
34
31
31
26
23
19
20
21
21
21
21
19
108
109
109
109
110
111
109
107
107
106
105
104
105
105
104
103
101
101
102
103
104
103
102
102
103
105
105
104
101
100
100
101
98
95
94
92
91
91
89
88
86
81
76
74
71
71
70
66
66
65
64
64
64
64
66
65
64
65
61
63
64
60
60
59
55
53
53
54
54
55
56
57
59
61
60
64
64
65
66
67
66
67
67
69
68
68
68
67
66
66
78
73
55
51
49
47
52
64
50
51
50
48
48
48
47
45
48
52
53
52
52
54
50
50
50
50
48
47
50
51
48
49
49
49
49
49
52
52
49
48
49
51
46
45
49
48
51
48
48
47
48
48
48
51
44
45
45
43
47
47
46
46
49
49
46
48
52
50
47
45
44
46
46
45
44
45
47
48
46
45
45
45
45
43
42
41
42
41
40
38
39
42
40
39
41
40
40
41
40
37
38
38
37
40
40
41
42
42
38
37
40
41
40
41
44
45
44
45
45
44
44
43
43
40
40
41
42
42
43
43
42
43
42
41
40
39
38
40
41
41
41
41
41
41
40
39
40
40
37
31
33
19
13
22
31
34
28
32
40
36
34
44
50
47
41
43
45
50
53
47
37
33
31
42
41
34
32
34
32
32
27
20
37
74
89
101
99
98
94
91
88
77
69
55
55
49
42
35
33
25
30
26
19
20
24
20
23
18
22
109
110
111
109
109
109
109
109
107
107
106
106
106
105
105
104
103
103
104
103
103
104
103
104
105
104
105
104
103
100
98
97
96
95
92
92
90
90
91
89
86
82
79
76
73
72
69
67
66
65
66
64
63
63
64
62
64
64
63
63
62
59
57
55
52
52
51
54
54
55
55
57
59
62
61
63
64
64
65
66
67
66
67
68
68
69
70
68
64
67
63
56
55
51
50
50
49
49
50
48
45
48
51
48
48
46
50
50
50
50
50
50
49
50
50
51
49
49
50
50
47
49
50
49
47
48
53
51
47
47
48
48
43
48
47
47
50
48
46
50
51
49
48
49
47
46
46
43
49
45
46
48
48
45
48
51
50
48
47
46
47
47
46
47
45
44
46
47
48
46
45
43
43
41
42
41
41
40
39
39
42
40
39
41
40
40
42
42
39
39
38
39
40
38
37
38
39
40
40
42
43
42
43
44
42
42
43
45
45
44
43
44
43
44
47
45
43
39
39
41
42
41
40
41
42
41
41
40
39
39
40
40
41
40
39
37
38
36
35
38
25
16
25
30
25
16
16
24
29
35
46
50
44
39
42
37
42
32
32
32
38
36
32
43
47
45
40
33
30
33
32
30
32
57
86
100
98
101
101
90
83
78
67
58
54
49
43
39
36
32
29
30
24
20
22
23
24
25
22
110
110
111
108
108
110
109
108
108
108
107
108
106
105
106
106
104
104
104
104
104
104
105
106
106
105
106
104
103
100
99
96
95
97
95
92
90
90
92
91
88
83
80
78
74
73
72
70
67
66
66
65
64
64
63
63
65
65
62
61
60
58
57
55
53
52
53
54
53
55
55
57
60
60
62
64
64
65
65
66
66
67
66
67
67
68
67
66
68
63
51
52
51
53
49
47
49
48
45
44
50
53
50
48
45
51
51
47
48
50
51
47
48
49
50
51
51
51
51
50
46
49
48
48
46
47
52
48
44
44
47
44
44
49
46
47
47
46
48
51
48
46
48
49
48
46
46
47
47
43
48
49
46
46
57
51
48
47
46
46
48
47
47
45
45
45
47
46
46
44
44
42
41
42
41
39
41
39
37
40
39
38
40
40
40
40
42
41
39
40
39
37
38
36
36
37
41
44
45
46
45
43
41
41
41
42
44
44
44
45
45
46
44
39
37
35
38
38
40
41
42
43
42
43
44
42
39
40
40
38
39
40
42
40
38
38
36
37
39
28
27
35
28
13
18
17
19
24
21
26
40
44
44
42
38
37
36
44
39
31
30
34
36
42
45
45
49
44
35
36
36
35
37
47
80
97
96
98
93
90
80
70
66
60
52
48
48
38
40
36
28
29
24
21
20
21
23
26
23
109
110
110
109
111
110
109
110
109
109
108
108
108
107
105
106
106
106
105
104
105
106
106
106
106
106
105
104
102
99
99
99
96
96
94
92
90
91
92
89
88
85
80
79
76
74
73
70
69
68
65
65
65
65
64
64
64
64
61
59
58
59
57
56
53
51
52
52
53
55
55
56
58
60
62
62
63
64
65
67
68
67
65
67
66
65
69
79
89
58
51
55
51
50
49
50
49
45
46
51
50
50
50
45
46
49
48
47
48
50
48
46
48
48
47
50
51
51
51
50
47
50
47
49
48
49
50
45
46
44
48
46
45
49
47
45
45
46
50
47
45
46
51
46
47
47
47
45
46
48
48
48
48
50
51
48
47
47
47
47
48
48
47
47
46
46
45
45
46
43
43
42
41
41
40
38
37
37
39
41
39
41
40
41
41
40
40
41
40
38
37
37
38
38
37
38
44
47
47
45
43
44
44
43
43
43
43
45
46
44
41
38
38
39
40
40
41
41
40
40
42
43
43
43
43
41
39
40
40
40
43
43
42
41
40
40
37
38
38
33
34
26
21
28
35
29
28
25
24
25
25
35
44
44
40
39
47
43
38
45
43
34
36
32
44
46
44
52
52
47
42
43
41
56
79
98
96
93
91
82
77
68
66
62
53
44
45
37
40
31
32
38
24
27
24
23
22
21
24
109
110
110
110
111
111
110
112
111
110
109
108
108
108
106
107
107
107
108
107
108
107
107
107
107
105
105
103
101
99
99
99
97
95
93
93
90
91
91
89
88
86
84
81
79
75
71
69
68
67
65
65
65
63
63
62
62
61
57
57
57
58
57
56
53
52
51
50
53
55
55
57
57
60
59
60
62
62
64
65
66
65
67
67
66
70
79
69
58
52
52
52
51
50
50
49
45
48
51
51
50
50
47
48
50
48
46
49
49
49
47
47
49
48
48
50
49
50
51
50
48
50
46
48
49
49
45
44
45
43
47
44
51
52
46
44
45
49
50
49
45
48
49
44
46
49
48
45
47
48
47
50
49
50
49
48
48
50
48
49
48
47
48
48
46
45
46
46
44
44
43
41
41
41
40
37
35
39
42
41
41
42
41
41
39
38
43
42
37
38
38
39
38
37
41
44
44
43
44
45
47
45
43
41
41
43
43
42
42
42
42
44
43
40
40
41
37
36
38
41
42
41
41
41
41
41
42
41
42
41
43
43
43
40
39
40
37
34
33
29
33
34
35
30
30
32
30
29
28
23
14
25
34
35
37
44
49
42
38
39
41
41
38
33
32
39
37
44
45
41
40
43
51
66
85
98
96
90
85
80
69
64
62
61
47
40
44
38
35
31
36
41
32
26
24
23
25
16
16
109
109
109
111
111
112
112
111
112
111
109
108
108
109
109
108
108
107
108
107
107
107
108
108
107
106
104
102
100
100
100
97
96
94
93
93
90
90
90
90
87
84
85
83
79
73
69
68
66
64
64
64
63
63
63
60
59
58
57
55
56
59
56
54
53
52
51
51
51
53
55
55
55
56
56
59
61
61
63
65
65
64
63
64
73
76
56
49
51
52
53
50
49
50
49
45
45
47
49
50
48
44
47
50
50
47
48
49
50
50
48
49
50
50
51
50
50
49
48
48
47
49
49
48
50
50
45
46
45
47
44
45
50
45
42
46
49
49
46
47
46
52
45
47
48
50
49
48
46
45
48
50
49
50
48
48
50
51
49
48
48
49
49
46
46
47
47
44
41
42
42
42
42
40
39
36
37
41
40
40
39
40
41
39
40
41
42
41
39
38
37
38
38
40
43
43
41
44
45
45
44
41
41
42
41
42
42
41
40
40
40
39
39
42
42
41
41
40
41
40
41
42
42
41
41
42
42
40
40
41
42
40
42
42
41
37
35
37
38
35
35
34
35
34
31
31
33
34
33
26
9
9
21
27
35
33
40
46
42
41
36
30
35
41
27
28
28
25
32
35
34
35
43
66
83
87
89
85
81
76
70
64
60
51
48
45
39
34
34
32
32
31
30
28
21
21
21
18
13
110
110
110
113
112
112
114
113
112
111
111
108
108
110
109
110
109
109
109
108
108
108
109
108
106
104
103
102
100
99
99
97
95
93
92
92
92
91
90
89
86
86
86
84
81
76
70
68
65
64
65
64
63
62
62
59
58
57
55
56
57
58
55
54
53
51
50
51
51
53
55
56
54
54
55
55
58
59
62
63
64
63
61
69
72
59
54
51
53
52
49
51
51
49
48
47
64
47
47
47
45
43
48
50
50
48
50
48
49
49
48
47
49
49
50
49
50
47
48
48
47
48
48
48
53
50
48
49
44
47
46
45
48
44
43
46
51
49
46
45
43
51
47
49
50
50
49
48
46
46
49
48
46
49
48
48
51
51
50
48
48
48
45
46
47
47
45
42
42
42
42
41
41
38
39
38
39
37
37
40
41
40
39
39
40
41
43
42
39
40
39
37
37
41
43
43
44
45
45
44
41
41
43
42
40
40
40
39
38
38
40
39
41
43
41
40
40
38
38
39
44
42
41
42
41
42
44
43
42
42
41
42
45
41
36
39
42
39
36
36
39
44
44
39
36
35
36
33
31
25
16
10
6
12
22
30
29
40
48
38
39
35
29
38
28
26
28
25
20
25
29
29
29
42
62
76
83
81
74
69
68
59
55
48
45
41
38
37
31
30
29
27
24
25
24
23
19
22
21
112
113
112
113
112
113
113
113
111
110
108
109
109
110
110
111
110
110
111
110
109
109
108
106
105
104
103
100
97
97
97
96
95
92
92
92
91
89
89
89
87
86
83
84
83
77
71
70
68
67
66
64
62
61
60
59
59
56
55
53
52
52
52
53
54
52
52
53
52
55
57
56
55
56
55
55
57
63
65
64
62
69
71
68
57
51
47
52
52
50
50
49
50
49
48
48
55
44
46
47
50
61
46
51
49
49
51
47
49
49
47
46
48
49
49
47
48
47
49
49
47
48
48
46
53
50
50
52
44
49
48
46
45
44
45
47
51
48
46
48
52
51
53
49
50
51
50
47
47
48
52
46
48
49
48
50
51
50
50
49
46
45
46
47
48
46
44
43
44
43
41
38
37
39
39
35
34
38
41
39
39
40
42
41
39
40
39
39
39
36
35
35
38
42
43
44
45
46
44
43
44
44
41
40
40
40
41
41
42
42
43
44
44
42
42
41
41
39
40
42
40
38
39
43
43
42
42
40
37
39
39
41
38
40
43
42
37
41
44
42
42
39
35
32
30
29
28
23
16
15
14
12
4
2
10
21
32
40
41
40
36
33
36
29
25
27
26
26
19
25
30
29
23
26
26
28
43
62
67
72
64
57
56
48
45
44
39
36
31
28
25
23
22
24
24
21
21
22
25
114
113
113
113
112
113
112
111
110
109
109
110
109
110
111
109
109
109
111
111
109
110
109
106
105
105
102
100
97
96
96
95
94
92
92
92
90
91
90
89
88
85
81
84
83
78
74
72
69
67
65
64
63
62
60
59
59
58
55
53
52
51
50
50
52
53
52
52
53
54
55
55
53
59
56
56
60
63
63
62
70
73
61
56
51
48
48
50
51
51
51
49
50
48
47
46
45
48
50
42
70
88
54
49
47
52
52
48
47
48
49
47
47
50
49
49
49
47
48
48
46
48
48
47
52
49
50
49
48
51
48
48
46
46
46
50
50
45
46
49
56
42
52
50
53
50
45
46
47
50
49
46
51
51
47
48
48
46
47
47
46
47
47
46
43
43
44
43
43
43
41
40
39
37
36
41
41
38
38
39
40
40
41
40
38
37
34
34
34
35
40
41
41
40
43
44
46
44
43
44
44
43
41
40
41
40
40
41
42
43
43
42
43
44
42
40
41
43
39
36
38
40
41
42
43
42
43
42
40
38
38
41
44
42
39
42
44
45
44
40
34
29
29
31
33
31
29
29
29
29
27
22
11
7
4
5
14
30
39
40
46
39
40
33
33
32
33
27
22
17
28
29
24
22
22
23
24
26
27
42
56
58
59
55
51
49
43
38
33
29
27
22
21
22
19
16
17
19
21
113
113
114
113
112
113
113
112
111
110
110
110
111
110
110
111
111
111
111
112
110
109
108
106
104
103
100
100
99
96
94
94
93
92
92
91
90
89
89
88
88
86
83
84
84
80
77
72
69
67
66
65
64
63
62
61
60
60
58
53
53
50
49
49
48
49
50
52
53
55
55
55
54
56
55
57
62
64
64
66
74
59
50
51
48
52
51
51
53
52
52
50
48
46
45
45
49
47
48
46
48
47
57
50
48
48
46
47
48
47
49
48
47
51
48
48
49
48
47
47
45
46
48
48
50
48
52
47
48
50
48
48
48
46
47
52
45
44
45
48
53
49
48
48
52
48
45
47
48
50
45
48
51
49
46
49
47
45
46
47
48
47
45
45
44
40
41
43
44
43
41
39
35
38
41
42
40
39
39
40
43
42
39
37
33
33
36
38
41
43
43
41
38
39
42
45
45
44
45
46
44
44
42
41
41
40
39
40
40
41
40
40
43
42
41
43
42
38
38
38
39
41
43
42
43
42
43
41
38
37
39
40
39
42
45
46
45
41
34
31
33
40
43
43
40
35
31
29
25
21
17
13
9
9
6
5
4
10
23
38
41
41
44
42
40
43
37
29
28
27
25
28
29
25
23
21
21
24
17
16
14
22
35
43
50
52
51
43
38
33
28
24
21
20
17
16
15
21
20
114
115
115
114
113
113
113
113
111
110
111
110
111
111
111
111
111
112
110
110
109
108
107
106
105
104
103
100
96
95
95
94
92
91
91
90
89
89
88
87
87
86
83
83
82
79
74
72
69
68
67
64
64
64
63
62
60
58
55
54
51
52
48
47
48
48
48
50
52
53
55
56
55
56
56
57
62
64
70
67
61
54
52
53
52
50
50
51
51
51
52
49
48
49
49
49
48
45
46
50
50
51
48
55
48
48
47
49
49
45
47
48
48
52
48
49
51
47
46
47
45
47
50
47
47
49
63
48
47
48
47
46
48
45
49
66
46
46
47
52
47
51
48
49
50
46
47
49
51
47
45
48
47
47
47
48
47
46
47
49
48
46
46
45
41
42
45
43
40
36
40
40
39
40
40
41
41
41
42
41
41
38
37
36
38
41
40
39
39
39
39
38
39
41
43
44
45
46
45
44
45
42
41
42
42
39
38
40
39
40
40
40
40
41
44
42
38
39
40
40
40
42
41
39
39
40
40
40
38
38
38
42
47
49
46
38
32
32
39
44
44
40
39
39
36
35
31
28
25
22
20
15
8
7
6
7
9
11
13
20
26
39
36
37
41
42
43
40
36
40
27
24
26
22
20
18
19
19
13
17
14
8
6
12
21
29
39
48
48
39
32
28
25
22
21
17
16
14
14
114
113
115
114
113
112
112
112
111
109
109
110
111
110
111
112
111
110
108
109
109
109
107
108
107
105
103
100
97
96
95
95
93
92
92
91
90
90
87
86
86
84
83
84
82
78
74
73
71
69
68
65
64
62
62
59
59
58
55
53
50
49
50
49
47
47
48
51
52
52
54
54
57
57
57
57
58
83
64
55
52
51
52
52
51
49
51
51
49
51
50
47
49
52
51
48
48
47
46
51
50
48
49
52
51
49
48
51
49
44
47
48
53
53
48
48
50
47
46
47
47
50
51
46
44
48
53
48
49
46
46
47
51
44
49
49
45
47
49
52
45
46
48
48
49
46
50
51
50
47
47
46
45
46
49
49
50
49
48
48
48
46
48
46
43
45
44
43
37
37
40
39
39
41
43
43
42
44
44
41
41
40
39
40
39
39
37
36
38
40
39
39
40
42
43
45
45
45
44
44
45
43
42
42
41
38
37
39
38
40
41
41
42
44
41
40
39
40
41
41
40
38
40
40
41
40
39
40
40
40
43
47
49
42
34
33
40
45
44
39
39
40
41
39
38
35
32
28
26
26
23
20
16
14
13
11
7
8
10
18
8
15
20
27
36
33
37
41
32
34
33
33
30
26
25
23
21
19
14
14
14
11
11
10
8
12
18
14
25
34
37
33
32
32
30
22
19
9
8
114
112
113
114
113
112
112
112
112
111
110
109
110
111
111
111
111
112
110
109
110
108
107
106
105
105
104
99
98
97
95
95
91
91
91
90
89
89
87
86
85
85
84
85
83
79
77
74
72
68
68
67
63
62
60
61
60
57
56
55
55
50
48
48
46
46
47
49
49
52
54
54
57
60
60
60
69
68
52
53
53
50
52
52
51
50
48
49
48
48
48
49
50
51
50
47
48
50
49
48
51
50
52
51
48
48
51
50
47
47
48
47
52
48
49
48
53
45
46
46
47
49
49
48
46
48
55
47
48
49
48
49
52
44
50
44
48
45
49
48
45
44
46
48
49
50
50
49
49
48
47
46
46
47
47
50
50
49
47
48
47
49
49
47
48
46
45
42
39
40
40
41
42
44
44
42
42
41
38
41
41
40
40
39
39
40
40
41
41
37
38
40
41
41
42
44
44
44
44
44
46
45
44
41
39
39
41
39
39
38
39
40
42
42
41
41
41
42
41
38
38
39
43
43
42
39
37
39
43
46
46
43
34
34
42
45
42
40
41
44
44
40
37
35
34
34
35
34
32
29
29
26
23
22
22
22
23
27
29
30
25
21
11
8
19
28
31
29
30
38
40
41
37
32
29
22
18
16
15
17
17
12
11
9
7
5
9
14
11
4
8
9
14
18
24
24
23
26
30
112
113
112
113
112
110
111
111
111
111
110
109
110
111
113
111
112
111
110
108
107
107
106
105
104
104
102
99
98
97
95
94
93
92
90
90
90
91
87
86
86
84
84
83
82
79
77
75
73
69
67
65
63
65
62
60
60
59
58
56
55
50
45
43
44
44
46
48
50
52
55
55
59
58
58
67
58
53
52
52
51
51
50
51
50
48
47
48
49
48
50
50
50
51
49
47
47
50
50
48
52
51
49
48
46
51
50
46
46
54
49
49
52
47
47
46
50
46
46
47
47
49
46
47
47
49
50
49
47
50
49
49
47
47
52
44
47
46
48
46
46
48
46
46
47
50
49
47
50
49
49
46
47
47
48
51
49
48
48
48
49
48
46
47
48
47
45
40
38
39
42
41
42
43
41
43
44
36
36
39
39
39
40
40
41
39
39
40
42
41
38
38
39
41
41
44
44
43
45
45
45
45
44
41
39
40
41
39
38
36
37
40
39
40
40
42
42
39
37
39
45
46
44
42
39
38
38
41
45
43
37
34
41
44
41
41
43
44
44
41
41
40
39
37
36
34
33
32
30
29
30
29
27
23
22
26
29
30
28
24
20
19
15
12
10
10
17
23
29
34
40
41
43
38
30
28
23
19
16
17
18
13
9
9
10
12
10
12
11
8
10
6
5
10
18
16
12
9
12
111
113
112
112
112
110
111
110
110
110
109
108
107
109
109
110
111
110
109
107
105
106
106
105
104
102
102
100
99
99
94
94
94
93
91
92
92
90
88
86
85
86
83
80
80
80
77
75
74
70
66
64
64
62
60
58
59
59
56
56
54
51
47
47
46
45
45
46
47
50
55
55
56
54
69
57
49
49
49
48
51
52
50
50
50
49
48
49
49
49
51
49
49
49
47
47
46
49
48
49
51
49
50
47
47
54
49
43
48
51
47
52
55
49
49
46
51
47
46
47
48
50
47
50
50
52
48
49
47
50
45
54
45
52
49
46
49
48
48
46
49
50
46
46
46
50
47
49
50
52
50
48
46
46
47
48
50
48
50
48
49
48
48
48
47
47
43
41
41
42
40
40
39
41
43
40
34
35
36
38
40
39
41
41
41
40
42
42
42
42
41
39
37
39
41
42
44
44
45
44
43
43
43
42
42
41
42
40
37
37
37
38
39
41
43
41
37
39
47
49
46
42
39
39
38
37
43
43
42
39
40
45
42
39
41
44
44
44
44
42
42
40
38
34
33
32
34
34
33
31
30
29
29
25
23
24
27
29
29
28
22
10
5
9
14
14
12
12
13
17
29
34
40
39
38
37
31
26
24
19
14
15
16
12
15
9
8
8
8
14
15
8
9
5
8
15
25
22
22
114
114
112
113
113
111
110
109
109
109
109
110
110
111
111
111
112
110
109
108
106
105
107
105
104
104
102
100
100
98
95
95
95
94
93
92
93
90
88
86
85
85
84
83
80
80
78
76
74
71
66
64
63
62
59
58
58
57
56
57
54
50
49
46
43
42
43
43
46
49
50
53
53
66
66
54
54
50
48
48
52
52
52
50
50
49
48
48
48
51
50
46
47
47
46
48
47
51
51
53
50
48
48
49
48
50
45
47
51
47
47
50
51
49
48
49
53
45
47
46
46
47
46
54
47
57
46
48
50
49
46
58
48
56
46
48
48
51
48
46
49
49
49
48
48
48
49
49
48
50
49
48
46
46
48
49
49
49
49
49
47
45
46
49
49
45
43
43
40
38
40
38
39
44
39
33
36
38
38
41
43
42
41
41
41
42
43
43
43
43
42
41
42
42
41
41
43
44
44
42
43
43
43
42
43
42
41
39
39
40
41
42
41
41
39
39
45
49
48
47
44
40
38
40
39
38
40
41
43
44
41
43
44
43
41
42
44
43
43
43
40
38
37
33
33
34
34
33
33
32
31
29
29
25
23
23
26
28
27
29
28
16
10
16
20
21
20
17
15
11
12
16
25
33
42
49
46
44
40
34
30
30
26
17
11
6
8
14
23
24
23
19
21
14
8
5
14
16
22
114
113
114
113
113
112
112
110
111
110
110
111
111
110
112
110
109
110
109
108
106
107
106
105
105
102
101
100
100
98
96
96
96
94
94
93
92
90
88
86
86
85
84
83
81
80
79
77
73
71
65
64
64
62
59
57
58
57
56
55
56
53
50
47
45
42
41
43
44
49
53
54
62
56
60
52
49
51
53
52
51
51
50
49
50
50
50
47
49
49
46
47
46
44
47
50
49
50
52
52
49
49
49
53
47
46
46
54
47
53
52
55
50
49
46
48
50
46
46
46
46
47
46
55
46
49
44
48
46
45
49
53
49
46
45
51
48
55
45
47
45
46
49
50
48
48
51
50
46
47
48
48
48
48
48
50
50
47
49
51
47
44
47
48
46
45
44
42
39
41
40
39
41
40
38
39
38
40
42
43
44
46
42
41
43
43
43
43
42
40
41
43
45
45
43
41
42
44
43
40
42
43
43
44
45
43
41
39
40
40
41
41
41
40
43
48
48
48
47
46
45
42
42
41
40
40
39
41
43
42
44
46
43
42
42
42
41
40
40
41
40
38
36
32
32
33
33
32
32
32
30
28
27
24
22
24
29
32
31
28
27
26
24
26
24
22
18
17
17
15
15
13
11
9
9
11
13
20
22
23
23
21
17
8
5
5
5
8
18
26
28
31
29
23
15
13
15
16
17
113
114
113
112
112
113
111
110
111
110
111
113
112
111
112
111
110
111
110
108
107
107
107
105
102
100
101
98
96
97
96
96
94
94
92
91
90
86
87
87
86
85
84
82
79
79
78
76
74
71
66
67
66
63
58
58
57
56
57
55
55
52
52
46
45
42
40
45
45
44
51
53
52
53
54
48
48
49
51
51
49
49
50
47
48
51
48
49
49
47
48
48
47
44
48
48
47
48
51
54
46
47
49
50
46
46
53
50
45
51
43
62
48
47
48
51
50
49
43
44
45
46
48
49
54
49
46
48
43
46
59
51
48
43
46
51
44
47
44
51
45
45
47
48
46
50
51
48
46
44
47
51
50
49
51
50
49
47
50
48
46
47
48
47
44
42
43
43
41
41
38
37
37
36
37
41
40
42
42
43
45
38
42
43
46
44
41
40
39
41
41
45
45
45
44
44
44
43
40
40
41
43
44
44
42
39
38
37
38
41
41
38
39
44
47
46
46
46
45
45
43
42
42
43
41
40
40
42
45
46
46
44
41
39
39
40
38
38
38
38
36
34
32
31
31
32
33
33
29
23
20
21
26
29
30
32
34
32
34
34
31
26
23
24
25
24
22
21
19
18
19
18
15
12
8
3
3
5
5
6
8
8
7
4
6
7
8
7
8
8
9
13
12
12
15
17
15
22
25
115
115
115
115
114
113
112
113
112
112
111
111
112
111
113
112
109
108
109
108
107
107
106
105
102
101
100
99
98
97
96
96
93
92
89
88
87
85
86
85
85
85
83
81
79
82
79
77
75
72
69
68
67
64
62
60
58
58
58
56
56
52
51
47
44
44
41
44
45
45
50
53
58
51
49
48
47
49
51
50
47
48
49
50
48
48
49
49
46
48
46
49
49
45
50
48
48
48
56
53
48
50
58
53
47
49
57
48
48
48
46
59
43
50
52
53
50
48
44
45
45
46
48
52
52
49
46
46
45
45
60
47
46
45
49
51
48
47
46
49
44
46
48
47
47
51
48
48
47
46
48
51
50
49
51
48
47
47
47
48
47
48
47
45
41
41
43
42
40
39
38
38
40
39
40
44
43
42
44
46
43
41
43
45
44
37
36
41
43
43
42
44
45
44
45
44
42
42
41
40
43
42
42
44
42
39
40
39
38
41
41
41
43
44
44
45
45
45
44
44
44
44
43
42
39
39
42
46
47
46
41
39
39
40
41
41
38
37
35
34
33
35
34
33
33
32
32
30
27
27
31
31
31
30
30
31
33
33
34
33
28
28
27
26
27
25
23
23
22
19
19
19
16
13
13
10
11
11
13
15
14
17
14
12
13
16
21
27
23
24
25
31
33
36
37
37
38
41
42
116
116
115
114
114
114
113
112
113
112
112
112
112
112
113
112
111
110
110
108
108
107
106
104
102
103
100
97
97
96
96
94
94
90
89
88
87
85
86
86
85
84
82
81
79
80
81
79
76
71
70
68
67
66
64
63
61
60
58
56
55
54
51
47
46
44
41
39
46
53
53
55
51
47
52
51
50
50
50
49
47
48
52
51
47
48
50
48
47
45
45
47
48
48
52
49
49
47
58
48
46
46
62
48
47
50
52
47
46
47
52
63
43
49
50
53
48
53
48
46
45
47
50
51
55
46
45
44
46
49
57
44
45
45
49
52
48
49
49
45
46
48
47
47
49
50
49
49
47
46
46
50
51
49
48
48
47
47
48
49
47
48
46
44
42
40
40
42
42
42
39
37
42
41
39
40
38
45
50
45
43
45
46
43
40
39
42
41
41
44
41
43
46
45
44
44
43
43
43
45
43
41
42
43
40
42
40
38
37
38
39
41
41
40
43
44
45
46
44
44
44
42
39
39
40
42
46
46
45
41
38
39
39
40
41
40
39
39
39
38
37
36
33
32
33
35
35
34
34
33
32
31
29
29
31
32
33
33
32
30
30
31
32
31
27
26
25
24
21
18
18
19
19
19
16
14
19
23
22
32
30
21
29
29
35
41
38
38
34
34
37
38
39
39
37
36
35
38
35
118
117
117
116
115
115
114
113
114
112
113
115
114
114
115
113
111
110
110
109
108
106
105
104
103
102
99
97
97
96
95
96
94
90
90
88
87
87
87
86
85
84
84
82
82
81
81
78
75
70
70
69
67
65
64
63
61
60
58
56
55
54
52
49
47
43
40
39
51
62
53
53
49
49
49
48
50
48
48
49
47
52
52
49
50
48
49
51
48
45
46
47
50
51
51
49
48
48
59
48
49
50
68
49
48
51
49
48
48
53
52
52
47
47
61
47
50
53
48
48
46
46
59
47
51
44
46
44
45
56
54
44
46
45
50
51
48
48
48
45
47
48
45
48
51
49
50
50
48
46
49
52
50
48
48
47
47
48
47
49
47
46
44
43
41
41
43
44
43
41
37
38
41
37
36
47
50
46
44
42
48
47
46
43
43
41
40
41
41
39
42
44
45
46
46
45
45
41
42
44
44
44
42
40
40
42
43
40
39
39
40
41
40
39
42
43
43
44
43
44
44
44
43
45
45
44
46
45
44
42
43
41
41
41
40
41
42
41
39
37
36
34
33
33
33
34
34
34
33
33
33
32
31
30
31
33
33
33
32
30
30
32
32
31
29
28
27
24
20
17
16
17
17
17
16
18
24
25
34
36
34
37
45
48
43
40
41
37
39
40
38
39
41
39
36
35
36
38
34
119
118
118
116
114
113
114
115
115
114
114
114
116
115
114
114
112
112
109
109
107
105
105
104
104
103
98
98
98
97
97
96
93
90
89
89
88
88
86
88
86
88
86
84
84
83
81
77
72
68
71
70
68
65
64
63
63
61
61
58
57
54
53
49
45
43
43
52
55
57
53
47
47
51
49
50
49
46
48
48
49
53
49
51
50
47
49
49
45
45
49
51
55
51
48
48
48
51
58
47
49
56
65
47
48
51
49
49
53
55
55
46
52
54
55
47
56
46
49
46
46
46
58
44
52
44
49
47
46
60
45
48
46
48
51
51
50
47
50
46
47
45
46
50
49
49
51
50
48
48
51
52
49
46
46
47
48
48
48
48
45
44
42
44
44
41
43
41
41
38
38
39
41
44
53
59
39
40
43
49
50
49
49
42
41
41
42
41
41
40
41
44
45
46
44
43
42
42
44
45
42
41
42
42
39
39
41
40
38
40
40
39
39
40
41
43
45
45
46
47
48
49
47
47
46
46
45
44
45
45
43
43
42
43
42
39
37
37
38
38
36
36
38
37
36
34
33
30
30
29
28
29
31
32
32
31
31
32
31
32
35
36
34
32
29
29
28
25
22
19
18
17
17
20
21
24
21
29
33
44
46
44
44
42
45
42
38
37
38
37
38
39
39
38
39
38
36
34
35
121
120
118
118
117
115
115
114
116
114
113
113
112
112
113
112
113
111
109
108
106
105
104
104
104
102
101
99
98
97
97
93
93
92
91
90
89
90
90
87
86
86
86
84
81
81
78
74
73
72
71
70
69
67
64
62
63
61
60
56
54
53
53
46
45
49
58
56
55
50
52
49
50
49
49
51
48
50
49
46
50
49
50
51
51
49
47
46
44
47
47
49
50
49
49
49
49
51
53
50
48
51
61
46
48
49
47
48
49
47
66
45
52
56
54
50
53
45
50
43
50
50
53
43
49
45
48
47
47
62
44
47
44
48
46
52
50
49
50
50
49
46
47
50
49
48
50
51
50
47
52
55
49
44
46
50
49
49
52
45
42
42
43
44
42
42
45
42
41
41
42
43
46
52
43
34
43
48
48
51
48
44
41
42
43
43
41
41
40
40
40
41
42
41
44
44
45
45
44
43
41
42
41
38
37
39
42
40
39
40
41
39
40
43
44
44
47
47
47
48
48
47
45
42
43
46
45
47
46
43
42
43
42
41
39
40
39
39
40
40
37
36
36
33
35
36
36
35
32
31
29
28
29
27
24
27
30
33
35
35
35
35
34
34
31
28
25
23
20
19
17
16
18
22
25
24
28
27
46
47
49
38
36
37
40
41
41
42
40
38
37
38
39
38
36
35
36
37
36
122
121
120
120
118
117
116
116
118
117
114
114
114
114
114
112
112
112
109
108
107
106
104
105
104
103
103
101
100
98
96
96
95
93
92
92
89
89
89
88
86
86
87
86
83
82
80
75
74
73
71
70
69
67
64
65
65
62
59
59
57
55
54
51
50
58
58
55
54
49
50
52
52
50
51
52
49
48
51
63
49
52
48
48
49
48
46
43
45
50
47
48
51
51
48
49
50
51
52
48
51
55
62
50
50
53
50
50
54
49
55
47
47
58
49
53
55
47
48
47
47
58
49
55
53
46
48
45
51
57
40
46
48
47
53
48
48
51
52
48
49
48
49
49
48
47
49
49
51
49
52
51
47
45
48
46
49
53
45
40
44
45
46
45
45
47
46
43
43
43
43
47
48
38
38
45
49
47
48
49
46
44
45
46
44
42
41
41
41
39
40
42
44
44
45
45
44
43
44
45
43
39
37
40
42
42
42
42
41
42
42
40
42
44
46
43
44
46
48
47
44
41
40
43
44
44
49
48
45
45
42
43
42
39
39
37
36
35
37
34
33
33
32
34
36
35
33
32
31
28
25
23
27
29
31
34
36
37
36
35
34
34
34
34
32
30
25
21
20
20
19
19
21
26
27
34
31
37
39
41
33
43
46
41
43
42
42
41
41
38
36
39
37
35
37
37
37
36
36
123
123
122
120
119
118
117
118
118
118
115
114
115
114
113
113
113
112
110
109
108
106
105
105
105
104
103
102
100
99
98
97
97
95
94
93
90
90
90
90
89
87
87
87
83
82
80
76
76
74
71
70
70
67
66
66
65
64
61
58
57
55
56
53
67
61
55
52
50
53
50
47
49
48
50
51
47
46
59
50
51
49
48
49
48
48
45
42
47
52
49
51
56
52
48
48
50
52
50
47
49
57
60
48
47
56
49
51
59
47
50
49
48
59
45
61
55
47
47
49
46
61
49
53
47
48
48
46
54
49
42
44
45
49
52
47
49
55
48
46
47
47
48
47
46
49
50
50
49
50
50
46
47
47
48
51
52
43
41
47
47
48
46
45
48
47
45
44
44
45
44
43
38
40
44
47
50
47
48
49
48
47
46
46
42
40
41
41
42
42
42
43
44
45
45
44
43
43
45
45
38
38
43
43
41
41
41
39
38
40
42
42
42
43
44
43
43
43
44
41
41
41
42
43
43
46
45
45
46
44
43
39
41
42
40
38
36
36
37
33
29
27
24
24
25
24
26
26
27
28
29
28
30
31
33
34
34
33
34
34
34
35
36
37
34
33
29
26
23
22
21
23
23
25
27
34
42
48
51
39
40
50
45
43
42
47
46
41
37
37
39
39
40
39
39
38
38
42
41
125
124
123
121
120
118
118
118
119
118
116
116
116
113
113
113
112
111
111
110
109
108
107
105
105
104
102
102
101
99
99
98
98
96
95
94
93
91
92
89
90
88
87
86
83
81
80
77
77
75
72
71
71
69
68
67
65
65
63
58
56
56
58
60
66
57
53
53
51
56
52
53
51
48
49
49
48
58
51
48
49
47
49
49
50
45
41
47
49
51
49
50
51
51
49
48
49
51
48
48
49
60
62
48
45
54
46
49
53
46
48
48
52
55
44
59
50
45
48
48
47
69
49
51
48
48
50
48
60
47
44
44
45
53
53
50
49
48
47
44
44
47
50
45
47
47
50
49
47
50
48
44
46
48
50
48
44
42
45
46
46
47
45
46
47
48
46
46
44
43
40
35
40
47
47
50
49
47
48
47
44
43
41
40
41
41
44
45
45
45
44
43
43
45
44
43
43
43
45
45
45
45
43
43
41
38
37
36
37
39
42
42
40
41
42
42
42
44
44
42
42
44
46
45
46
46
47
45
44
43
42
42
41
44
42
42
43
40
34
32
32
32
31
32
29
27
29
29
30
29
30
31
30
31
32
33
34
35
35
34
34
35
35
35
32
31
28
28
27
26
25
25
24
28
33
37
44
50
44
42
44
53
41
44
45
46
40
37
40
39
39
40
40
39
38
40
40
41
39
126
126
124
123
122
120
121
120
121
119
117
117
116
114
114
113
112
111
112
111
110
108
107
107
105
103
104
103
103
101
101
100
101
98
97
97
97
96
94
91
91
90
90
88
83
81
80
79
78
76
75
75
72
69
69
67
68
65
64
61
57
59
68
60
52
55
53
52
54
52
51
52
52
50
51
50
52
53
48
48
47
49
49
48
49
46
46
48
52
50
49
53
52
56
50
49
48
57
50
48
56
67
55
49
48
54
47
47
49
49
46
50
56
55
45
56
46
46
46
46
51
61
45
46
49
46
49
48
54
42
44
44
45
51
53
49
45
46
48
47
45
48
49
48
45
49
49
48
48
50
48
46
47
49
47
40
43
47
49
46
47
45
46
48
47
48
46
43
40
40
37
40
46
49
48
47
47
42
42
41
39
42
44
45
44
44
44
44
43
43
43
43
43
44
45
44
42
43
46
47
47
46
44
42
38
36
37
40
39
40
41
40
40
42
43
43
45
45
45
43
43
45
44
46
46
46
46
43
43
43
46
44
44
44
48
46
37
34
34
38
38
35
36
34
32
32
32
30
29
28
28
28
29
30
31
32
33
33
34
33
34
33
33
34
32
31
28
26
25
23
24
22
25
32
35
35
35
44
43
46
47
46
45
46
45
41
37
40
43
40
38
38
41
40
40
39
40
40
38
128
127
128
125
123
121
122
121
121
119
118
118
115
115
117
114
111
111
112
110
110
108
108
106
105
104
104
103
103
102
103
103
103
100
98
97
98
98
97
94
92
90
90
89
83
82
81
81
78
77
76
74
73
70
73
66
68
67
66
65
64
71
56
52
54
49
54
52
52
52
53
51
51
50
48
50
50
48
48
49
49
50
47
46
48
48
48
49
54
51
50
52
52
56
49
51
48
50
49
47
53
65
53
50
52
55
49
48
49
49
49
46
52
52
52
57
43
46
45
49
56
55
46
45
47
50
45
49
58
44
47
45
44
54
51
45
43
45
45
47
48
49
48
48
51
51
49
50
49
49
50
49
47
46
42
42
49
50
50
48
46
45
47
49
47
45
41
39
37
36
39
46
47
48
46
43
42
40
41
43
44
43
42
43
43
44
44
44
44
44
44
43
43
44
43
42
43
46
47
46
45
45
43
42
42
41
40
40
38
39
40
41
42
43
42
42
43
43
42
43
46
47
47
47
47
48
46
45
46
45
46
47
48
49
43
36
37
41
38
41
40
36
38
41
39
36
35
34
32
31
29
30
28
28
31
32
33
31
33
34
34
33
35
35
32
31
31
32
33
31
31
29
29
32
33
36
47
42
39
48
45
46
45
44
41
40
43
41
39
40
40
42
41
40
40
39
37
37
38
130
129
128
125
124
122
122
121
120
120
118
119
118
118
118
116
113
113
113
112
111
108
108
109
106
105
105
105
105
104
104
103
103
101
100
100
99
98
97
96
95
91
90
88
85
84
83
83
81
78
78
77
75
72
75
66
69
72
67
69
80
53
43
51
52
53
52
51
52
52
50
50
51
47
48
51
50
49
50
48
45
46
45
46
45
43
47
50
53
50
51
54
55
52
49
49
48
62
49
48
52
68
55
50
56
53
46
46
52
52
49
50
55
47
52
50
43
44
49
47
52
53
47
51
45
46
43
52
52
45
44
46
47
53
48
45
42
43
44
48
53
51
47
50
52
47
48
49
47
49
49
46
46
46
45
49
49
46
47
47
45
46
48
48
44
42
37
33
35
38
44
45
46
48
43
40
44
42
43
44
42
43
46
47
47
47
44
43
41
39
40
42
44
44
43
44
46
48
48
48
46
45
44
42
39
39
39
37
36
38
40
43
44
44
44
44
46
47
48
49
50
49
47
45
47
46
46
46
47
48
47
49
49
39
38
43
45
42
42
41
41
39
40
39
36
36
37
35
34
32
30
28
29
30
31
32
32
31
33
33
32
31
34
36
34
33
31
29
27
24
24
26
29
28
37
42
53
52
47
51
53
53
44
40
40
42
42
40
39
41
41
41
39
38
37
37
35
35
35
130
128
128
126
125
123
121
121
122
121
120
120
120
119
117
117
114
114
114
114
112
110
110
109
108
108
107
107
107
106
104
104
104
104
104
101
100
99
98
97
95
91
89
87
85
84
83
83
82
79
78
77
77
73
76
66
70
78
70
75
60
49
54
53
52
53
51
52
51
49
51
51
48
48
49
50
51
51
50
48
44
46
48
43
38
42
47
53
50
49
49
54
51
59
55
48
50
60
50
52
52
70
53
49
65
48
46
47
54
49
48
48
50
46
54
47
45
45
48
43
59
48
49
50
46
44
42
51
47
45
44
45
48
57
45
45
43
41
46
54
52
49
48
51
47
48
52
48
48
50
46
45
47
48
48
46
45
47
47
47
47
49
47
46
43
37
33
35
39
42
44
47
49
45
45
44
46
45
46
48
46
47
48
46
43
42
42
42
40
40
43
45
46
45
46
46
48
49
47
47
44
43
41
39
36
38
40
40
40
41
42
44
45
46
46
46
46
45
44
44
45
45
44
45
46
46
47
48
47
48
49
47
39
43
46
42
43
45
40
38
36
37
38
36
37
37
37
36
33
30
28
28
29
29
30
31
32
33
32
33
33
32
33
30
27
27
26
27
26
28
30
32
30
31
46
45
47
46
44
50
50
46
43
41
43
42
41
41
41
41
40
39
37
38
37
35
34
35
35
132
130
128
126
127
126
125
124
123
123
122
123
121
120
119
119
117
117
116
116
113
112
112
111
110
109
109
109
108
108
106
106
106
105
104
103
100
99
99
98
96
92
88
87
87
86
84
85
84
82
80
78
77
74
74
68
78
82
82
67
46
52
50
54
53
50
50
52
50
50
51
48
48
49
48
49
51
48
48
46
46
47
43
39
41
48
47
59
49
50
49
53
52
52
55
51
49
53
49
48
49
63
52
45
65
46
49
51
55
48
48
53
52
46
55
47
48
42
45
46
65
45
49
46
47
45
45
48
43
44
44
46
53
52
46
44
44
44
56
48
48
48
50
52
47
54
49
49
51
48
47
45
43
45
44
45
48
49
49
49
50
49
46
42
38
36
35
38
41
42
49
50
45
46
47
45
43
46
47
47
45
44
45
44
42
41
42
43
43
42
44
45
45
45
45
45
46
47
46
46
44
42
41
40
37
38
39
39
39
39
42
44
45
45
43
43
42
43
45
46
47
46
44
44
46
49
49
49
49
48
44
42
47
47
44
45
44
37
37
39
39
41
41
37
37
37
40
38
36
32
32
30
29
30
31
30
30
31
31
31
29
26
27
30
31
31
30
31
29
27
26
27
30
46
46
44
44
55
47
47
46
45
46
43
44
43
42
41
39
37
39
39
39
37
36
35
35
35
36
133
132
129
128
128
128
129
128
126
125
124
124
121
121
123
122
120
120
118
116
114
113
114
113
112
111
111
111
108
108
108
107
107
106
103
102
100
100
99
97
96
94
90
88
88
88
85
84
85
83
80
79
78
73
73
72
82
89
74
46
52
53
52
50
50
50
51
51
51
51
48
48
49
48
48
50
50
46
46
47
44
42
39
39
45
48
49
58
48
51
52
52
52
56
60
52
48
47
49
47
48
61
53
46
66
44
47
51
55
47
48
54
52
48
60
44
44
41
47
46
66
42
49
47
46
45
47
47
43
46
45
48
54
47
44
44
46
45
46
47
47
49
50
50
48
44
48
51
48
47
47
42
42
43
45
50
53
50
46
48
49
47
44
40
38
36
40
43
43
46
51
46
45
48
48
44
47
47
46
46
45
45
45
44
43
42
45
45
44
44
45
43
44
45
45
46
47
47
46
45
42
40
42
41
38
38
40
40
41
41
43
44
44
44
42
43
43
43
44
46
47
45
44
47
49
49
48
50
49
49
47
48
45
45
44
39
40
43
42
41
41
36
37
37
37
39
41
39
37
33
33
33
33
32
27
27
29
30
30
31
30
30
34
33
29
27
25
22
23
25
29
26
40
52
51
54
56
47
43
43
45
47
46
46
46
44
43
42
39
39
39
38
39
38
37
36
35
37
39
135
135
134
134
131
131
130
129
129
127
127
126
125
124
125
125
122
120
118
116
114
114
113
114
113
113
114
113
110
109
108
109
107
107
105
103
102
101
100
97
99
97
92
89
88
88
84
81
81
79
77
77
78
76
78
80
89
86
49
54
54
54
53
51
50
50
50
49
52
49
48
49
48
48
48
49
49
49
49
45
39
36
36
38
44
47
52
57
52
52
52
52
53
51
61
48
47
55
49
50
54
64
55
54
67
44
47
52
51
46
49
58
52
47
60
44
44
44
48
48
50
44
47
50
45
45
47
45
46
45
46
49
49
45
47
47
47
44
45
46
48
48
51
49
46
47
51
50
48
46
44
46
46
50
51
52
48
41
43
49
49
47
44
43
42
43
44
44
48
50
47
43
46
47
48
48
48
46
44
44
45
44
42
40
41
40
43
43
43
40
43
44
45
46
46
46
46
46
45
44
43
43
42
43
41
42
43
43
43
41
39
42
46
45
45
43
44
43
43
43
45
48
48
47
47
46
48
49
48
49
47
45
47
46
43
44
45
45
42
41
39
36
36
37
36
36
37
38
37
37
35
33
31
31
33
33
30
30
29
30
32
33
34
35
32
31
32
31
32
32
31
36
52
49
48
49
46
47
45
45
47
47
44
43
43
43
42
40
40
40
39
38
37
38
35
33
34
37
34
136
135
136
137
134
132
131
129
130
129
127
127
127
127
127
127
126
122
121
119
117
117
116
116
115
116
115
114
113
112
110
110
110
108
108
106
103
102
101
98
98
97
92
90
90
89
86
83
82
81
79
78
78
75
78
85
86
52
49
51
51
54
53
53
50
49
50
50
51
50
51
50
49
50
48
48
50
49
44
40
37
35
37
42
47
47
49
47
51
51
52
52
53
49
59
47
49
54
46
48
52
53
48
54
61
47
47
57
49
48
47
62
49
49
56
43
48
49
43
57
48
47
47
54
43
45
50
39
44
53
46
51
47
47
48
44
47
47
46
46
50
53
53
46
48
50
51
51
45
46
49
45
48
49
50
45
41
43
48
47
45
47
45
44
44
44
46
47
45
44
45
46
46
46
46
47
46
46
46
45
46
44
41
39
39
41
41
42
43
44
46
44
43
44
43
45
47
46
47
46
45
44
42
41
41
43
43
44
44
43
43
44
45
45
44
44
43
42
42
41
44
48
47
46
47
46
49
48
46
48
47
47
45
45
45
46
45
43
40
41
40
37
37
37
36
36
36
37
38
37
37
38
37
33
29
28
27
30
28
28
30
30
32
34
34
33
31
30
26
26
34
50
56
55
49
41
46
41
45
49
47
47
43
42
42
41
41
40
41
40
40
39
37
36
35
33
32
33
33
139
138
137
137
137
134
131
129
131
129
128
128
127
127
128
129
128
125
122
120
119
120
120
117
117
117
116
116
114
113
112
112
110
110
107
106
105
104
102
98
97
98
94
92
92
90
87
85
83
83
82
80
81
73
87
80
61
45
52
49
50
52
52
51
50
50
50
50
50
52
50
49
50
49
49
50
50
45
41
42
41
41
41
45
49
48
48
46
51
51
48
55
58
49
59
48
49
51
49
53
54
63
52
55
64
48
48
59
46
47
49
59
48
53
51
50
46
48
47
54
48
51
49
55
42
44
49
45
48
50
49
48
47
47
42
47
45
47
48
49
51
54
47
47
49
49
51
45
46
50
46
48
50
47
46
44
46
50
47
44
44
46
46
45
45
47
45
45
45
45
47
48
48
47
48
46
46
47
48
48
46
41
36
38
41
43
46
45
41
43
42
43
44
43
44
48
49
49
45
43
43
42
43
44
44
43
42
42
43
44
45
45
44
45
44
41
39
39
40
42
46
47
47
47
48
47
46
46
48
48
48
45
45
47
45
44
43
43
40
39
38
37
37
37
37
39
39
39
38
39
38
37
35
34
34
33
28
29
28
28
30
30
32
32
33
33
30
28
25
27
41
63
54
54
44
46
41
44
51
54
50
45
43
42
42
43
41
40
40
40
40
39
37
37
34
32
32
35
37
141
139
139
139
139
138
134
132
134
132
130
130
130
129
128
129
127
127
124
122
121
121
121
120
118
119
118
118
115
114
114
113
112
110
109
106
106
104
102
99
98
99
95
93
92
90
87
87
86
86
84
81
83
79
92
57
46
49
49
52
50
50
51
50
49
49
49
50
52
52
50
48
48
48
50
50
46
42
44
46
44
42
39
45
48
48
52
49
52
52
49
54
60
49
60
52
50
55
49
50
53
62
54
65
61
45
47
56
44
47
49
62
46
53
44
41
52
45
45
48
46
48
48
57
43
42
43
50
52
45
53
48
48
52
45
46
44
46
47
54
53
53
48
46
45
51
47
48
48
48
48
47
44
42
43
48
53
51
47
46
47
45
45
46
47
48
46
45
45
46
47
48
47
47
46
47
47
46
46
45
43
42
40
40
40
43
44
39
41
41
42
43
42
43
43
44
45
46
45
45
44
44
45
45
41
40
42
41
42
46
46
46
44
40
38
36
33
37
42
44
47
47
47
48
46
43
48
50
49
46
43
43
45
44
44
42
41
39
38
38
36
37
36
37
37
37
37
37
37
38
38
39
37
35
34
29
26
28
26
27
27
29
30
31
32
31
29
29
30
34
50
45
50
42
47
51
43
55
58
48
44
42
41
42
43
44
42
39
39
39
40
38
38
34
36
38
39
36
35
142
140
139
141
140
139
137
136
137
136
133
132
133
132
130
130
128
126
125
123
123
123
123
123
122
121
120
118
117
117
116
115
114
111
110
108
107
106
103
100
98
98
96
94
92
90
86
87
87
85
83
82
81
90
80
45
49
50
52
51
51
51
50
50
49
47
50
53
51
51
50
45
46
48
47
47
47
46
45
43
41
38
36
43
44
47
50
47
49
52
48
53
57
48
55
48
47
62
49
47
53
68
52
62
55
51
51
61
45
48
49
59
44
50
42
45
59
47
45
54
47
46
48
56
46
46
45
45
60
47
47
47
47
46
47
43
44
51
49
49
64
46
47
44
48
52
49
49
47
46
43
42
47
47
46
50
53
50
47
46
46
46
46
46
46
45
44
45
46
46
46
46
47
47
47
47
45
45
45
42
40
40
41
41
40
41
38
39
41
43
44
43
41
42
44
45
46
45
45
46
45
44
45
42
41
42
44
44
42
42
43
42
40
37
31
32
37
42
47
48
48
49
49
46
44
47
51
48
45
42
44
42
44
43
41
43
42
38
35
38
40
41
39
37
35
34
36
35
36
36
36
35
36
37
33
30
28
28
25
26
25
27
29
30
30
29
30
29
34
42
47
44
45
48
51
46
51
58
50
44
42
40
39
44
44
42
40
39
40
38
37
36
39
43
43
39
35
35
37
143
142
141
142
141
140
140
140
140
137
136
135
135
135
136
134
132
130
126
125
125
125
124
123
124
122
122
120
118
119
118
117
116
113
111
110
108
108
105
102
101
100
98
96
93
90
88
87
87
88
87
88
90
85
61
51
49
50
51
52
53
50
49
50
47
48
51
52
50
49
46
46
48
47
46
47
48
46
43
39
39
37
40
43
47
54
52
48
58
50
49
52
58
47
52
49
46
63
46
45
50
64
55
54
49
57
52
58
46
48
50
54
44
46
43
55
49
47
44
45
46
47
51
50
45
45
45
49
52
54
44
46
54
48
45
45
52
53
44
62
49
45
49
44
50
48
47
48
45
41
44
48
49
48
51
51
48
46
47
49
47
44
45
46
44
46
45
46
46
46
47
48
48
49
47
45
46
46
44
42
40
39
38
40
41
43
43
43
43
44
42
41
42
45
47
44
44
45
45
46
45
45
47
46
44
45
44
42
40
42
42
39
37
32
34
39
44
46
47
47
46
45
43
47
50
49
47
45
43
44
42
41
41
42
42
40
39
39
40
40
38
35
35
35
36
35
36
36
34
34
37
37
36
36
34
31
30
27
25
26
23
26
29
30
32
33
35
35
37
43
48
44
48
49
53
50
51
49
46
45
44
42
45
46
41
40
41
39
39
41
43
42
41
38
39
39
39
38
35
145
144
143
143
142
141
141
141
142
139
139
138
137
137
137
137
134
132
128
126
125
126
126
125
125
124
124
121
120
119
118
117
117
114
113
111
109
109
107
103
102
102
100
97
95
92
89
89
89
88
86
94
102
62
53
48
47
49
51
53
54
51
50
48
48
49
49
50
48
47
48
48
49
47
46
47
47
44
40
41
38
36
41
41
47
49
50
50
57
54
48
53
57
48
54
51
45
66
47
45
56
65
55
55
50
59
50
58
47
50
50
53
44
47
44
53
49
47
45
48
46
47
53
48
43
43
48
54
55
44
46
49
49
45
48
50
49
44
50
59
41
49
49
49
48
43
42
41
39
44
51
49
47
47
51
48
45
46
48
49
46
44
43
45
44
46
45
46
47
48
49
48
48
48
47
45
44
42
39
37
37
39
42
43
45
47
43
44
42
41
40
43
46
44
44
45
46
45
44
45
44
44
46
45
43
43
41
40
42
40
39
37
33
36
44
48
50
47
43
42
41
44
48
47
44
45
47
45
44
42
42
41
40
40
40
41
41
40
34
35
37
38
36
35
34
34
35
36
34
35
36
36
37
38
38
36
33
29
27
25
23
26
27
33
37
36
36
38
40
44
43
48
53
48
48
49
48
44
46
46
46
46
46
41
41
41
40
40
40
43
42
40
38
39
41
40
36
33
32
147
146
144
144
142
142
143
143
143
142
142
140
140
139
138
138
136
132
130
129
129
129
128
127
126
124
125
123
122
122
120
117
115
114
113
113
113
113
110
105
104
103
101
99
96
94
93
91
92
92
92
105
74
54
53
48
52
50
52
53
53
52
48
47
51
50
48
49
46
47
48
47
48
48
46
45
46
42
43
42
38
36
41
42
48
54
55
54
49
56
49
56
57
48
50
52
45
64
50
46
52
80
49
52
48
52
49
58
47
50
49
46
45
45
46
51
47
47
48
48
45
49
58
49
42
41
50
51
61
46
48
51
50
48
47
44
49
50
69
41
46
50
54
54
52
46
47
48
48
49
49
46
46
45
45
45
46
48
48
48
45
42
43
44
44
44
46
48
48
49
48
49
49
47
43
39
39
40
42
42
44
46
46
46
45
46
45
44
41
41
45
44
43
44
44
45
44
44
45
45
44
45
46
45
43
42
41
41
40
37
33
31
35
46
50
47
45
43
40
43
45
46
46
46
46
46
46
43
42
41
41
40
39
40
40
39
37
36
36
38
40
38
35
35
35
35
35
35
37
38
39
40
38
39
39
36
33
27
26
24
23
27
28
32
36
33
33
41
43
51
46
57
49
50
52
48
44
44
47
47
48
45
42
40
42
41
42
42
40
39
39
38
37
39
40
41
41
41
41
148
147
146
145
145
145
145
145
144
144
143
142
142
141
141
139
137
136
134
133
134
133
132
129
128
128
126
124
124
124
122
118
116
115
114
114
113
114
112
107
105
104
103
101
98
97
98
91
94
93
94
90
54
52
49
50
50
51
51
52
53
48
46
48
48
51
51
47
48
49
47
46
49
47
46
47
42
44
43
42
37
35
42
46
51
56
45
50
50
47
47
56
56
47
48
51
45
67
53
49
47
67
45
55
52
54
48
50
50
48
52
44
50
45
45
52
46
47
46
46
44
46
61
44
41
47
44
61
47
48
49
54
45
51
51
46
47
62
54
43
53
50
52
54
49
45
44
45
48
48
47
46
45
46
45
45
46
48
48
45
44
43
42
44
44
47
46
47
49
49
49
47
44
42
43
42
44
45
44
44
44
44
43
44
45
45
46
43
46
45
42
44
45
44
42
42
42
44
44
42
44
44
43
43
42
43
42
42
40
34
35
43
50
49
42
41
42
43
44
45
46
48
48
45
45
44
46
43
42
41
42
42
42
42
40
39
38
39
39
40
41
39
37
34
34
35
34
34
36
38
39
40
38
37
36
33
31
29
26
23
22
26
29
32
33
32
34
40
47
47
55
47
48
54
54
45
45
47
47
49
46
43
42
40
41
41
43
42
39
39
38
38
39
41
41
41
40
41
41
148
148
147
147
148
147
146
146
146
146
144
143
142
142
140
139
138
137
137
137
137
134
132
130
129
131
130
127
126
124
123
120
118
116
115
115
112
114
113
109
108
107
106
103
101
101
100
91
94
97
110
72
51
51
49
52
51
51
51
52
48
47
51
50
47
49
50
49
50
48
46
45
46
47
47
42
44
44
40
38
39
40
44
47
48
56
47
48
60
47
50
54
61
47
49
49
48
68
49
51
45
56
47
51
54
53
49
49
48
48
51
42
44
46
45
48
43
47
44
45
46
45
65
40
39
51
41
67
43
46
56
48
43
47
49
50
49
56
43
47
48
53
54
46
44
45
43
43
48
47
45
46
46
46
45
46
47
46
45
45
44
42
42
43
46
47
47
46
46
46
45
44
42
43
43
43
41
42
42
41
40
39
39
41
43
42
44
46
46
46
47
45
43
42
42
42
39
38
37
38
40
41
41
43
44
43
42
38
35
39
46
47
46
44
41
40
38
42
45
46
46
47
46
44
45
44
44
43
43
42
43
41
41
41
39
39
38
38
36
39
38
38
36
34
33
34
32
33
33
36
37
37
39
39
37
33
29
28
25
24
23
25
28
28
27
31
37
42
42
49
48
49
47
50
48
44
49
46
47
45
39
44
45
42
41
42
42
41
40
41
40
39
39
40
41
41
41
41
40
149
150
149
149
149
148
148
147
148
147
147
146
144
143
142
141
138
138
138
138
138
135
134
133
132
133
132
129
127
126
126
125
122
120
116
115
114
115
113
111
110
110
106
103
104
103
99
100
104
109
72
52
48
51
51
55
53
51
53
51
44
49
51
50
50
50
51
50
47
48
50
48
47
47
44
45
44
43
41
39
39
40
40
43
46
56
46
50
57
50
49
53
67
46
48
49
48
70
50
50
50
62
53
48
54
48
49
49
48
46
51
44
41
49
43
48
43
44
48
47
49
45
61
37
46
41
54
54
45
55
57
46
47
50
50
43
55
57
43
48
49
52
49
46
45
46
48
48
48
46
46
47
45
44
43
45
45
46
45
42
41
44
43
45
48
48
46
45
44
45
46
46
45
44
44
44
44
43
42
40
41
41
43
43
42
43
44
43
45
46
45
44
44
43
40
40
40
40
40
40
41
42
42
44
43
43
41
44
47
49
46
44
43
42
42
42
47
47
48
46
45
44
43
43
45
46
43
43
44
45
45
41
38
39
39
37
37
36
37
36
36
36
36
37
36
36
34
33
32
34
36
38
38
36
35
34
31
29
26
26
25
25
28
32
31
34
41
39
44
46
51
53
48
47
49
47
47
48
45
43
43
44
42
41
41
44
42
40
40
42
42
40
40
39
39
39
39
40
40
149
150
151
151
151
150
150
149
149
149
149
148
147
145
143
143
140
141
141
139
139
138
137
136
135
134
134
131
129
127
128
127
126
122
118
116
115
115
114
114
113
111
107
106
107
106
103
100
108
95
43
48
48
52
52
53
53
52
52
48
49
51
51
52
51
52
51
50
48
50
51
48
47
43
47
47
43
42
41
40
35
36
38
41
47
57
48
50
49
52
50
51
69
46
47
49
48
72
51
47
57
52
51
47
63
46
48
48
47
48
52
46
43
47
45
51
45
45
47
47
47
47
60
41
43
43
60
46
48
64
53
45
49
53
47
54
70
44
48
48
50
49
47
43
42
48
48
48
48
47
48
47
44
42
41
42
45
44
42
41
44
46
46
45
46
48
44
43
45
46
46
45
44
42
41
41
42
43
41
39
42
42
42
42
42
44
45
46
46
46
45
45
44
41
39
41
41
39
41
41
39
41
41
43
42
44
45
48
47
45
42
42
42
42
48
47
49
46
44
42
40
41
43
44
45
45
45
46
46
45
43
41
39
39
40
40
41
41
43
42
41
40
41
39
37
35
33
34
33
32
34
36
38
37
38
35
31
31
27
26
24
23
25
29
31
33
38
47
53
49
49
50
49
48
46
46
46
47
46
46
45
45
44
43
41
41
41
41
41
41
41
40
40
39
41
42
42
41
41
150
150
151
151
151
151
152
151
150
150
150
149
148
147
144
144
142
142
141
141
141
142
140
139
137
136
134
132
130
129
128
127
128
124
121
118
117
116
116
116
115
113
111
110
109
108
106
104
102
54
48
48
48
51
52
53
54
52
51
52
50
51
50
52
52
51
51
51
50
50
49
45
46
50
46
43
43
43
39
34
34
36
39
39
46
59
49
46
50
62
49
48
74
47
49
49
55
68
51
50
50
48
48
46
67
44
49
47
48
52
51
45
48
45
44
49
43
45
47
46
48
51
60
39
39
52
49
52
49
68
44
47
45
46
51
68
41
50
51
51
50
43
39
41
47
48
48
49
48
48
45
43
41
41
41
47
48
44
43
45
47
46
46
46
48
46
43
45
47
48
48
46
45
44
42
42
41
42
40
40
44
42
43
42
43
45
45
45
45
47
47
45
43
40
41
41
41
41
41
41
41
42
42
44
44
46
46
46
46
44
45
44
45
46
48
47
45
43
40
41
43
45
46
46
46
47
46
46
45
44
42
41
39
38
42
42
41
41
42
41
41
40
40
40
39
38
37
36
34
35
37
36
38
37
35
33
30
30
28
28
26
24
24
23
31
33
42
56
52
51
49
52
47
46
46
44
45
46
46
46
45
46
43
40
39
43
44
42
42
41
41
40
39
39
41
41
41
40
41
153
153
154
153
152
152
152
153
152
151
150
151
151
149
146
145
146
144
144
143
143
143
140
137
136
136
136
134
131
130
129
129
128
127
123
120
120
120
119
117
116
115
113
111
110
110
110
120
73
45
50
50
49
51
52
53
54
52
51
53
49
50
50
51
51
52
52
49
51
49
46
45
49
48
41
44
46
41
36
32
32
38
40
40
48
55
54
47
47
54
51
46
74
47
48
49
61
71
54
50
51
53
51
42
63
42
50
48
47
55
45
45
48
46
44
52
43
45
46
49
48
58
57
38
39
60
50
50
69
55
46
48
44
47
53
47
44
47
53
51
47
40
40
46
46
46
48
47
49
47
42
41
40
40
45
50
45
42
40
45
47
48
48
49
48
45
45
48
48
47
48
46
44
43
42
41
40
42
42
42
44
43
42
42
43
42
44
44
44
44
42
43
43
42
43
43
42
43
43
42
42
41
42
44
46
47
47
46
45
44
45
45
45
45
48
46
41
41
45
45
44
43
42
43
44
45
45
46
45
43
40
38
38
37
40
41
40
40
40
40
40
40
39
38
38
37
37
34
31
32
35
36
36
36
35
33
30
29
27
26
22
21
23
19
26
38
48
49
56
49
49
48
44
44
48
47
45
45
45
46
46
44
41
41
41
43
43
42
42
41
40
39
39
40
41
41
41
40
40
155
155
155
154
153
153
154
154
152
152
151
152
152
150
146
146
149
147
146
144
143
143
140
138
138
139
138
136
133
131
130
130
129
129
125
123
121
121
120
117
116
116
116
111
108
110
118
98
47
47
48
51
49
51
52
51
51
52
53
51
52
49
50
50
50
53
53
50
50
47
44
47
48
45
45
42
39
36
33
32
36
41
41
41
47
51
58
48
47
52
52
49
74
47
50
48
53
67
56
47
47
58
53
45
63
43
48
47
47
54
42
45
46
46
42
55
43
44
46
46
45
64
47
46
43
55
47
47
66
45
48
46
47
52
47
44
49
51
52
45
42
43
45
47
45
50
47
48
48
45
41
42
39
37
39
37
36
42
45
47
48
47
48
48
45
46
47
46
47
47
46
45
44
42
42
42
41
40
41
40
41
41
42
44
43
44
44
44
44
41
41
42
41
43
45
44
45
44
42
40
41
40
42
43
45
45
44
44
44
47
48
47
47
46
46
45
44
45
44
42
40
40
42
43
45
45
43
44
45
44
41
40
40
40
40
41
41
39
39
38
38
36
36
35
36
36
35
34
33
34
36
37
35
35
35
33
31
28
27
26
23
20
18
18
30
47
48
43
53
48
47
46
45
45
46
48
45
45
46
44
44
45
43
40
40
43
43
41
42
41
40
40
39
38
39
41
40
38
39
156
156
158
157
157
156
157
156
154
153
153
153
153
152
149
149
151
150
148
147
146
146
143
141
140
140
139
136
134
133
133
133
130
128
127
126
125
123
120
119
119
118
115
113
112
114
112
49
45
43
47
51
50
52
52
49
50
52
51
53
53
51
51
51
53
51
50
49
49
45
47
46
48
49
42
38
34
36
36
32
39
43
38
43
48
47
53
48
49
48
53
53
76
54
47
49
52
61
60
58
53
45
48
47
59
44
46
48
52
56
45
44
47
46
45
49
45
41
43
50
47
67
40
47
48
43
49
51
49
47
48
45
46
50
46
48
48
51
51
45
42
45
47
49
56
52
48
51
45
44
44
44
41
40
40
42
43
46
47
48
47
48
48
45
45
46
48
47
48
46
45
45
45
43
41
41
41
40
41
42
46
46
45
44
43
46
46
45
42
41
42
41
42
44
44
45
44
43
42
40
40
40
42
43
43
45
46
49
50
48
48
45
45
45
45
44
42
41
42
43
42
41
41
42
43
43
43
44
46
45
43
42
41
41
41
40
41
40
39
38
38
36
35
36
37
37
35
33
33
35
37
37
37
36
35
33
33
31
28
25
24
21
21
25
36
46
44
52
48
46
48
48
45
44
46
48
47
46
45
43
44
45
42
40
40
41
43
42
41
42
42
40
40
39
39
40
40
39
39
157
158
159
159
159
158
159
158
157
155
156
155
154
155
154
154
154
152
152
151
150
147
144
143
143
141
140
136
135
135
133
134
131
127
128
130
127
124
121
121
122
121
117
114
113
123
83
45
53
48
47
50
51
51
50
49
50
50
50
53
51
52
52
51
49
48
49
49
46
50
49
48
47
44
39
39
37
31
31
33
42
41
37
44
50
48
50
47
55
52
49
55
69
59
47
51
49
56
62
51
55
43
49
51
59
43
47
49
46
49
46
47
47
42
50
44
47
41
41
53
45
65
41
48
46
46
51
53
47
48
47
43
45
49
48
48
47
51
52
44
44
44
47
49
47
46
51
47
45
51
42
41
39
40
44
46
46
47
46
43
46
48
47
45
46
46
47
47
46
45
45
44
44
40
39
41
39
39
40
43
46
45
44
45
43
45
46
41
43
43
43
44
43
42
42
43
42
42
41
40
38
39
42
43
42
43
43
45
46
42
41
45
46
46
45
42
39
43
45
43
41
40
41
42
43
45
46
46
47
44
41
39
37
38
39
41
41
39
40
40
39
39
38
38
37
37
36
35
34
35
38
39
40
38
37
34
32
30
27
23
22
21
20
29
38
49
49
47
47
48
46
47
45
43
44
46
46
46
44
45
44
42
42
44
43
41
40
43
43
42
43
44
45
45
45
43
42
40
39
159
160
160
161
160
159
159
158
158
156
157
157
155
155
155
155
154
153
153
151
151
148
145
146
145
141
140
137
136
136
134
134
132
128
129
129
127
124
121
121
122
119
117
117
119
114
54
48
51
49
50
48
50
51
50
49
50
51
50
50
53
53
48
50
44
47
50
46
49
50
48
44
43
42
43
39
36
37
39
39
44
43
47
45
50
50
55
48
59
52
53
54
67
69
48
49
44
50
69
50
49
49
47
57
49
44
49
49
50
48
48
49
50
41
53
44
42
41
44
50
45
63
44
48
47
50
49
50
47
48
43
42
48
47
49
49
48
50
47
45
44
44
46
53
46
52
45
44
44
52
37
35
36
42
45
45
46
45
42
40
41
44
43
43
44
45
45
44
46
46
44
42
42
39
39
41
42
43
45
46
45
47
45
41
44
46
44
44
44
43
44
45
45
43
40
41
41
39
38
39
41
43
43
44
42
45
47
48
48
47
48
47
44
43
39
43
45
43
42
40
40
40
43
45
44
43
40
40
42
42
41
39
41
41
38
39
41
40
39
40
39
38
38
37
37
36
36
35
32
33
35
37
39
36
34
32
29
28
27
22
16
16
21
28
37
46
48
46
45
47
44
46
43
42
44
43
43
43
41
41
39
38
40
41
41
40
40
41
40
41
41
41
39
41
40
39
38
38
39
162
162
161
161
160
160
161
160
160
159
159
157
156
156
156
156
154
153
154
153
151
151
148
148
146
141
141
139
138
137
137
134
132
130
128
127
127
125
122
123
124
122
116
118
129
80
42
48
47
49
52
48
51
52
50
49
49
49
50
51
52
51
48
50
45
51
49
48
49
48
44
46
46
41
42
40
38
35
36
34
40
42
48
48
55
53
55
49
49
55
65
64
63
74
48
50
44
47
74
52
55
52
47
61
54
45
46
49
52
48
48
45
46
44
52
43
45
37
56
45
55
65
41
45
47
49
49
50
48
47
42
44
50
50
50
48
49
47
43
45
45
44
47
50
55
48
43
42
41
36
36
39
42
43
46
45
46
42
39
39
41
43
43
44
46
45
46
47
47
43
42
41
41
39
40
42
43
41
43
45
44
41
44
44
47
48
46
45
42
41
42
45
42
38
40
41
39
38
39
39
41
43
44
45
42
45
47
47
47
46
47
42
40
41
45
43
41
39
40
41
44
42
43
43
43
42
39
39
40
40
41
39
39
38
37
38
38
39
39
40
40
39
36
34
35
33
34
33
32
33
35
37
38
36
33
29
25
23
21
17
14
17
22
26
36
43
46
45
42
42
41
42
40
41
42
42
42
42
41
39
38
38
38
38
39
40
39
38
40
40
40
41
41
42
41
39
39
39
40
162
163
163
163
161
162
163
161
160
160
159
159
158
157
157
157
155
155
155
156
155
154
153
152
149
145
142
141
139
138
138
137
135
132
128
127
127
125
124
124
125
123
115
120
121
55
52
53
49
50
53
49
51
53
51
49
51
50
53
52
51
49
49
47
48
51
46
48
50
47
46
43
42
45
45
39
34
34
35
37
40
48
49
60
66
54
52
46
44
48
47
62
55
70
46
50
45
43
78
60
61
50
48
62
51
49
46
47
58
49
48
42
44
44
51
41
43
41
49
40
67
48
47
43
50
50
51
49
48
45
44
47
50
51
49
47
51
43
41
43
44
46
47
54
51
44
45
44
41
40
41
40
42
44
46
44
41
40
38
39
41
42
44
46
47
48
49
45
42
41
39
39
38
37
38
41
42
44
44
44
46
48
49
47
45
45
45
44
42
41
44
41
40
44
44
40
40
41
42
42
42
41
42
44
43
44
44
44
45
45
46
43
43
44
45
42
39
42
45
45
42
43
44
45
44
42
43
44
44
44
43
39
40
41
41
40
40
40
38
38
38
37
37
37
38
35
34
33
32
34
35
37
34
33
30
29
28
27
23
19
16
17
20
27
41
41
39
39
40
36
37
39
41
39
40
39
38
38
37
35
36
37
38
39
40
41
43
43
41
41
42
41
40
39
40
39
39
39
39
164
164
164
164
163
162
162
163
162
160
159
159
159
158
158
158
156
156
157
157
156
153
153
154
153
149
146
144
141
139
139
139
136
132
129
128
127
126
125
125
125
122
118
132
81
48
47
51
48
48
52
51
51
53
52
51
51
50
51
50
50
44
50
47
50
48
46
49
46
44
46
47
47
43
39
35
33
35
33
38
41
51
52
64
73
57
48
54
47
52
46
68
60
58
45
49
47
42
74
78
71
53
49
61
49
51
48
45
53
48
43
43
43
41
54
42
44
47
46
47
56
45
47
52
51
50
47
47
47
44
49
48
49
51
47
50
47
41
42
44
45
47
52
46
45
45
47
41
40
42
41
39
42
45
45
41
40
38
37
40
43
46
47
48
48
45
42
40
40
39
39
41
41
39
41
43
42
43
43
46
50
49
48
46
45
45
46
45
45
42
40
43
45
43
42
40
39
38
39
40
40
43
44
44
41
41
43
44
42
42
46
45
42
45
42
38
40
46
46
43
43
43
43
43
42
43
44
44
44
43
43
43
44
45
44
42
42
41
38
38
38
37
38
38
39
36
35
32
30
32
34
34
31
32
31
31
29
24
20
15
14
17
21
24
36
36
38
38
35
36
37
39
39
38
38
37
35
35
34
35
37
39
40
41
42
43
44
44
42
41
42
40
40
40
40
39
39
39
40
168
166
165
166
164
164
163
164
164
161
160
161
162
161
159
159
158
158
159
158
156
155
155
153
153
151
149
146
142
140
139
140
135
131
132
130
128
126
127
126
127
123
129
132
60
53
52
49
49
50
53
53
51
53
50
50
52
50
51
50
46
46
49
49
49
46
48
46
43
46
47
46
42
38
36
34
31
34
31
61
61
50
60
63
71
77
51
57
44
53
65
110
119
72
44
55
46
43
66
95
94
51
51
51
49
50
46
50
51
46
40
40
43
40
51
43
47
43
47
44
45
42
43
53
51
49
46
45
44
43
51
48
51
48
47
50
40
42
44
42
45
48
49
46
45
47
46
40
40
44
42
41
47
46
42
41
39
39
40
41
42
47
48
45
41
39
40
41
43
44
44
45
46
49
49
50
49
49
48
48
47
46
46
44
43
42
44
44
41
41
44
43
44
42
38
38
39
40
40
41
42
42
40
41
42
43
43
45
47
46
47
47
43
40
40
44
46
44
43
43
43
42
42
42
43
44
45
45
45
46
47
46
44
44
43
43
41
40
37
35
38
36
37
36
33
32
30
28
31
34
36
34
33
32
31
31
28
25
21
17
14
16
20
25
29
33
35
37
34
39
40
39
38
38
36
34
35
36
38
39
40
42
41
40
42
44
44
43
42
41
40
39
40
40
39
38
37
37
36
169
168
167
167
166
165
164
164
165
162
162
163
163
161
159
159
158
159
160
159
157
155
155
153
153
151
150
148
143
139
138
140
136
134
134
132
130
131
129
127
127
126
130
93
51
53
51
49
49
51
52
53
52
51
49
53
53
50
51
49
49
48
48
51
47
48
48
46
46
47
46
42
38
38
38
30
30
39
38
109
106
64
66
48
92
100
55
57
47
56
75
117
187
130
45
54
46
47
69
107
92
48
52
47
47
46
47
55
45
47
40
35
42
42
52
41
42
45
52
42
45
43
48
53
48
46
44
41
41
44
46
43
50
47
56
46
38
41
41
41
44
48
48
46
45
46
41
39
38
40
41
46
50
42
40
40
39
39
40
44
45
47
46
43
39
39
41
42
41
42
42
45
46
45
45
47
44
44
44
44
46
45
46
45
44
44
45
42
43
42
44
45
39
36
40
40
40
39
38
40
40
41
42
40
41
44
44
43
43
44
45
42
42
45
47
47
47
44
40
40
44
42
41
42
42
43
44
45
44
45
45
45
46
46
45
44
40
38
37
37
36
35
33
32
33
34
32
29
32
34
37
36
34
33
31
30
28
21
18
15
16
18
21
24
31
34
38
34
39
39
37
38
38
36
34
37
38
38
40
40
42
44
41
42
42
43
43
42
41
41
40
39
42
41
40
38
36
36
37
171
169
168
169
168
167
165
165
166
165
165
164
163
163
162
162
162
161
163
162
159
156
154
152
151
151
151
148
144
140
140
139
137
136
135
134
132
132
126
125
128
138
135
59
50
53
53
51
50
51
53
53
52
49
51
53
52
51
49
49
49
46
49
48
49
48
44
45
48
48
41
36
39
39
36
34
43
39
52
164
160
101
61
54
83
127
71
51
53
52
79
119
166
177
79
62
46
55
86
121
75
51
52
46
49
43
45
57
43
47
39
36
41
44
55
40
44
49
43
43
46
43
59
50
47
44
41
35
36
45
46
41
47
47
45
39
37
40
39
45
45
45
47
48
47
42
38
37
39
41
42
45
43
38
39
39
41
42
43
45
47
47
44
39
37
38
38
40
42
42
42
46
48
48
46
43
42
42
44
44
45
44
44
44
43
43
42
46
43
42
43
38
38
41
42
37
37
40
40
41
40
41
41
44
44
43
44
43
43
43
43
44
43
43
45
43
43
43
41
42
42
38
37
40
40
42
42
42
44
44
44
42
39
39
38
38
38
39
38
40
40
39
36
33
32
32
32
30
33
35
36
36
34
33
32
30
29
27
21
18
18
18
22
22
35
36
37
39
35
34
34
35
37
42
40
40
40
41
41
42
43
44
43
43
43
44
43
42
41
42
42
40
41
40
39
37
34
34
35
171
170
169
169
168
168
167
166
167
167
166
166
166
166
164
164
164
163
163
161
158
158
156
154
152
152
150
147
145
144
144
140
138
137
138
135
133
132
130
128
128
136
87
46
51
50
52
51
52
51
53
54
50
50
51
51
52
51
49
48
46
48
48
48
50
47
45
46
44
43
39
38
42
37
37
37
44
43
67
162
178
157
54
75
76
155
124
46
67
46
65
103
123
179
103
74
53
53
79
116
74
55
49
48
54
45
46
57
46
41
41
36
39
52
52
43
48
53
46
53
49
45
54
49
44
41
39
33
41
52
45
43
45
43
39
39
43
40
40
45
44
45
47
48
43
38
39
40
42
44
42
41
39
37
38
39
40
44
47
50
48
43
39
35
34
38
40
41
44
45
41
41
42
42
43
44
42
40
41
41
43
44
45
45
44
44
45
43
42
39
39
39
38
39
40
40
39
41
41
43
42
45
45
43
46
45
44
43
43
44
45
44
44
46
46
47
46
44
43
40
36
34
37
41
42
43
42
42
42
42
42
41
39
39
40
40
37
38
38
40
40
36
33
31
33
33
31
31
33
34
34
35
35
34
32
30
28
28
25
20
16
18
21
27
38
38
37
37
32
30
34
37
38
40
39
40
41
41
42
40
41
43
43
44
42
43
43
42
43
42
42
40
38
37
36
34
34
34
33
172
170
170
170
169
168
167
167
167
168
167
166
167
167
166
165
165
164
164
161
158
159
156
154
153
151
149
146
146
145
145
140
139
139
139
137
134
132
130
129
136
124
58
50
52
51
51
51
52
52
54
51
49
51
48
52
50
50
50
48
48
50
47
48
48
48
48
45
42
42
42
37
35
36
36
49
45
61
78
97
150
194
98
105
127
147
183
66
70
48
73
79
101
126
122
62
68
63
75
113
76
55
47
59
97
65
56
61
50
44
36
37
33
57
48
52
55
52
43
53
44
47
54
48
44
41
36
32
35
45
45
43
41
38
39
41
46
37
41
46
46
46
49
47
39
37
41
49
52
45
39
40
38
36
37
39
45
49
48
43
39
37
36
36
37
38
39
41
40
40
40
41
42
44
43
45
44
42
41
41
43
44
46
44
44
43
44
43
40
40
40
39
39
40
39
40
40
41
41
42
42
44
45
46
48
48
47
45
44
43
43
43
44
44
47
47
44
41
37
36
39
38
40
40
42
44
42
43
43
43
43
42
41
41
40
39
39
40
39
42
42
39
38
36
34
33
32
33
33
32
32
34
34
33
31
28
27
26
22
22
21
21
20
33
38
36
38
35
30
34
39
38
38
40
41
41
42
41
42
42
41
42
42
44
44
43
41
41
42
41
40
40
37
33
31
32
32
33
32
173
171
170
171
170
168
167
168
167
168
168
168
167
167
165
164
165
164
165
162
159
158
155
154
153
153
151
147
147
147
144
141
140
139
138
138
134
132
131
130
142
74
56
54
51
53
51
51
51
51
53
52
51
49
51
52
48
49
49
44
51
53
44
43
46
50
46
44
40
39
39
39
34
40
52
66
58
87
92
93
84
149
192
159
184
194
182
128
67
80
96
77
70
65
118
66
84
89
106
150
86
63
49
82
147
119
99
79
44
46
35
37
30
71
51
56
55
45
52
51
43
49
53
45
43
40
30
30
46
48
42
41
38
37
36
44
45
39
45
47
46
55
49
41
39
41
47
50
43
40
39
40
39
39
40
43
48
47
43
40
39
40
40
40
39
40
39
40
39
41
40
41
42
45
45
45
46
45
43
43
45
46
48
47
46
45
45
45
44
42
40
41
41
41
41
42
42
42
45
45
45
48
49
49
49
47
44
43
42
42
42
43
45
45
45
42
39
40
42
43
42
39
36
38
39
38
41
44
44
42
42
43
42
43
42
41
40
38
38
39
42
43
38
33
32
34
35
34
32
33
33
33
32
33
33
30
28
23
20
16
14
14
20
35
39
37
32
36
40
37
40
40
39
39
41
41
46
40
41
43
42
41
41
41
41
40
39
40
40
40
41
41
39
36
35
33
32
33
32
174
172
171
171
171
169
167
169
168
169
169
169
167
167
166
165
165
165
165
163
159
156
157
155
155
153
151
147
146
146
144
143
141
140
139
138
134
132
133
137
120
49
51
51
51
51
51
51
51
50
52
53
49
49
51
50
49
48
48
48
46
45
44
47
49
46
43
44
46
39
37
44
44
53
72
136
60
94
107
108
58
91
188
202
218
195
131
121
103
143
141
122
65
46
85
110
121
145
146
173
85
62
55
86
119
124
124
87
43
47
36
43
55
88
50
49
45
45
54
45
42
65
47
47
43
41
33
31
48
52
43
43
38
37
37
42
38
43
49
50
49
51
42
42
43
42
46
42
42
40
39
40
40
41
45
48
43
41
41
41
41
39
39
38
38
42
43
42
41
42
41
41
42
44
44
47
47
46
44
42
44
45
46
46
45
44
46
45
43
42
42
40
40
41
42
42
42
42
43
43
44
46
47
46
45
46
47
46
46
47
46
42
45
47
46
44
46
46
41
39
41
39
37
39
40
39
38
41
42
43
43
43
42
41
40
39
39
40
42
41
42
39
39
39
36
36
36
36
33
31
31
31
31
32
31
29
30
28
25
19
17
19
24
29
31
35
39
39
38
34
41
38
39
39
40
40
41
40
42
43
43
42
42
42
43
43
42
43
42
41
40
40
38
35
35
34
31
32
32
174
173
171
172
171
171
170
169
170
169
169
170
169
168
166
166
166
165
166
164
160
158
159
158
155
152
151
149
147
146
144
144
141
140
140
138
136
130
130
141
83
51
49
50
51
50
53
51
50
51
52
51
50
52
49
50
49
48
50
47
40
41
45
47
45
44
44
44
46
43
45
44
54
70
97
159
74
109
120
166
68
59
136
203
229
207
91
52
126
208
186
158
75
53
47
136
192
187
194
187
93
54
47
95
102
120
133
84
48
51
35
56
74
87
53
44
45
57
47
41
62
114
49
45
41
38
36
36
71
54
42
41
40
36
38
43
39
45
49
50
46
40
40
41
42
40
40
38
39
39
42
42
46
48
49
42
41
42
39
39
40
39
40
40
42
43
41
41
43
43
40
38
39
41
43
47
47
47
47
45
43
43
45
46
47
46
47
46
44
44
44
43
43
42
40
40
41
42
42
42
44
45
45
44
45
45
44
41
43
45
44
41
42
43
45
44
43
42
40
40
41
38
37
39
41
39
38
38
38
41
41
43
43
42
43
43
42
42
40
41
41
40
40
40
39
35
33
33
32
31
29
30
29
28
28
27
25
20
19
15
13
14
21
30
39
43
44
43
42
38
40
42
39
39
39
40
41
38
40
42
43
43
42
42
42
42
42
42
41
40
39
38
38
35
33
33
31
32
33
175
173
172
173
172
171
172
170
171
170
169
169
169
168
167
167
166
166
167
166
164
160
158
157
155
154
153
149
147
147
146
144
140
139
140
138
136
132
134
133
56
52
50
52
52
50
52
50
51
52
50
49
51
53
51
50
49
45
46
44
41
46
46
47
43
45
60
57
46
48
45
56
53
52
96
180
113
108
122
165
119
60
74
173
236
208
93
53
63
202
228
216
89
59
43
108
210
217
220
215
108
63
49
55
90
120
165
88
54
56
50
119
94
47
46
38
54
68
39
52
78
83
46
39
47
39
29
59
100
61
41
39
37
34
53
46
41
43
48
47
43
40
39
36
38
38
39
40
41
40
42
44
43
41
40
40
42
42
40
39
38
40
41
42
41
41
40
38
38
41
41
41
41
38
40
45
46
47
46
45
46
46
47
48
46
46
47
46
45
44
44
43
44
42
41
42
41
42
42
43
43
43
42
42
43
46
44
42
43
41
42
43
44
43
45
44
43
43
39
34
36
35
37
40
42
40
41
43
42
41
41
42
41
41
42
42
39
41
41
42
42
39
38
41
41
37
37
37
35
32
27
26
27
27
27
27
26
23
23
23
22
20
29
42
43
43
41
38
38
37
37
38
38
39
38
40
40
39
40
42
43
42
43
43
42
42
42
42
40
39
39
38
37
35
34
31
29
32
35
175
173
172
173
172
172
174
172
172
171
171
170
169
167
166
167
166
167
166
165
165
164
160
157
155
155
152
149
148
149
148
144
140
139
139
138
136
136
148
98
46
51
51
53
52
50
51
51
54
54
51
49
51
51
52
50
47
43
47
47
48
50
49
47
46
46
50
48
48
50
53
52
52
82
154
187
144
108
179
216
156
56
83
117
200
222
145
53
49
160
233
233
134
45
45
95
228
231
214
216
127
68
54
42
90
163
192
114
55
56
100
170
102
43
45
34
74
50
54
88
63
44
44
44
47
36
54
136
127
61
39
43
37
30
63
56
42
45
46
46
39
38
37
36
39
40
40
41
41
38
39
41
41
40
39
43
41
40
40
40
40
41
42
41
41
40
37
36
39
40
42
41
41
43
43
38
42
46
45
46
47
46
47
47
47
48
48
46
46
45
43
43
42
40
39
41
40
42
42
43
43
42
41
41
41
43
46
47
46
44
44
46
44
42
43
42
36
31
33
36
42
41
39
39
41
40
42
44
45
45
45
44
44
44
41
40
38
38
40
40
40
41
40
40
40
37
35
34
31
31
30
26
27
27
27
25
23
19
15
15
16
20
32
43
43
42
41
42
40
39
39
35
35
38
41
41
41
40
40
42
42
42
42
41
41
41
42
41
41
41
40
38
36
34
32
30
29
32
35
176
174
172
174
173
173
173
173
173
172
172
170
169
169
167
167
167
168
166
166
165
165
161
157
155
155
151
150
148
148
148
145
142
139
139
138
137
137
143
68
51
52
51
51
52
52
51
53
53
52
51
49
50
50
51
49
45
46
48
50
50
48
48
48
47
49
49
48
56
50
52
47
61
116
189
189
109
113
179
211
153
61
79
156
215
218
219
100
58
88
208
232
172
55
56
61
212
238
212
184
173
88
72
49
69
168
198
137
81
75
138
191
104
46
48
47
67
62
108
162
53
48
36
51
34
49
165
186
110
41
37
56
31
45
57
61
52
50
46
43
36
34
37
39
38
40
40
40
39
36
39
40
39
40
42
41
39
39
37
38
40
42
41
44
41
40
40
41
40
41
42
41
39
39
41
41
43
48
55
57
57
47
47
47
48
49
46
44
44
43
43
42
42
41
41
41
40
39
41
42
45
44
44
44
46
45
43
42
43
43
43
43
43
40
40
39
39
42
44
44
44
42
39
38
39
39
36
40
44
44
43
39
37
37
34
36
36
39
41
41
40
40
39
39
40
41
39
37
34
33
32
28
28
29
27
27
26
23
17
11
17
29
39
44
46
44
40
43
39
38
41
38
34
34
37
39
37
38
39
41
41
42
41
39
40
40
41
41
43
41
39
38
35
32
30
29
29
33
37
176
175
174
174
174
172
171
172
172
173
172
170
170
171
169
168
168
168
167
166
165
164
162
158
157
156
152
152
148
148
148
144
143
141
140
136
140
149
100
49
51
51
51
51
52
51
52
52
52
50
50
50
50
51
49
45
46
48
50
49
46
45
44
49
51
52
47
49
48
46
43
64
107
181
220
182
110
144
207
219
152
70
80
165
222
223
210
154
64
95
211
220
203
99
46
43
167
240
228
178
210
174
128
54
37
115
191
178
155
130
135
178
62
52
36
65
104
133
187
138
47
47
40
53
67
149
221
225
107
35
53
40
57
165
108
50
47
44
45
40
36
39
38
36
40
41
48
44
36
35
38
38
38
40
40
41
41
39
39
39
41
42
41
42
40
40
40
40
39
41
42
41
41
40
41
44
45
47
52
53
53
47
47
47
47
46
44
44
43
43
41
41
41
42
43
42
40
41
41
42
45
45
46
45
46
44
43
42
43
41
41
41
42
41
41
43
45
44
42
43
42
41
39
37
39
41
42
42
40
36
34
38
39
40
42
44
43
44
43
42
41
39
40
41
42
42
40
35
35
33
28
24
25
24
25
26
26
25
24
21
23
29
43
42
41
37
41
40
39
41
35
36
33
30
34
35
36
37
38
39
40
41
40
39
40
40
40
41
42
40
37
34
32
31
29
30
32
36
38
176
174
172
173
172
171
171
172
173
173
172
170
171
171
171
170
168
168
168
167
167
166
163
159
158
156
155
153
149
148
148
146
143
142
141
137
139
143
66
60
50
52
51
51
51
51
52
51
50
50
48
45
49
48
45
46
47
46
49
49
47
45
45
46
48
48
46
45
46
47
57
135
196
202
215
166
116
206
221
207
134
61
67
176
224
212
185
117
61
106
188
230
193
157
54
44
136
233
238
213
212
203
166
66
43
86
218
220
177
180
162
148
45
64
33
92
126
143
191
88
46
41
49
111
149
197
223
162
56
51
57
35
147
201
125
37
46
44
39
35
34
34
34
45
47
42
39
37
35
35
39
41
41
40
39
39
40
40
40
40
40
42
40
38
39
42
40
40
40
39
37
36
36
36
39
44
46
42
41
46
47
46
47
48
46
45
45
44
42
42
41
42
43
42
43
41
42
43
43
45
46
47
46
46
47
46
44
45
43
41
42
43
44
43
42
43
44
41
40
40
40
39
38
38
39
40
41
41
42
39
40
44
44
43
44
42
42
41
40
41
41
41
41
41
41
40
39
36
32
32
25
22
20
19
18
16
16
16
18
21
24
34
39
32
33
45
46
44
35
38
42
38
35
33
35
35
34
36
37
39
40
41
40
39
40
40
40
39
39
36
35
34
32
30
29
30
35
34
35
175
174
173
174
173
172
173
172
172
174
174
172
171
171
170
170
168
169
169
168
167
166
163
159
158
158
155
153
149
148
150
146
142
142
142
141
149
103
54
56
50
53
52
52
52
52
52
52
51
50
46
47
48
46
46
48
46
47
51
52
48
46
46
46
45
48
48
48
53
64
129
193
205
203
202
133
110
187
224
218
168
74
49
122
215
203
173
82
52
102
176
230
222
174
60
44
85
208
242
237
190
199
191
61
44
66
208
215
182
159
157
140
42
65
44
103
141
210
167
41
56
31
96
167
219
231
211
86
52
65
44
137
207
168
65
54
43
41
35
32
30
39
54
55
42
37
39
38
40
42
43
43
42
41
38
38
40
42
42
41
41
41
40
39
42
43
41
39
39
39
38
39
41
41
42
44
46
46
46
45
45
45
46
46
45
45
45
44
43
42
39
40
43
42
43
44
43
45
44
46
48
47
45
46
46
46
46
47
46
44
43
42
42
44
44
44
44
40
41
41
41
41
39
38
39
38
37
40
40
40
42
43
42
41
41
40
42
43
44
44
45
43
41
40
40
37
35
34
31
32
28
24
20
22
23
24
23
21
21
24
29
34
35
29
38
47
41
29
32
37
36
34
34
35
39
38
36
37
39
40
40
41
41
40
41
40
40
40
39
36
35
33
32
31
31
34
36
35
34
177
176
175
176
175
175
175
174
173
173
173
171
171
170
169
169
168
169
171
169
167
166
165
160
159
159
155
153
151
150
150
147
143
140
141
142
152
82
58
53
53
54
53
53
53
53
54
54
53
49
49
49
46
48
47
44
47
48
51
51
47
46
46
48
48
49
48
45
41
104
210
237
193
213
208
81
90
164
213
217
215
147
45
48
160
227
160
94
56
64
172
225
239
181
78
48
46
173
235
240
217
201
166
60
53
44
114
213
173
136
150
145
57
57
95
117
166
234
114
47
60
51
143
156
209
235
178
51
54
45
109
221
186
113
60
60
39
42
35
31
33
36
35
37
37
37
38
38
39
39
39
38
38
36
36
39
42
42
39
39
40
39
41
44
45
44
41
39
39
39
40
39
39
40
41
38
39
39
41
43
43
44
45
46
46
44
44
44
43
42
41
42
42
44
44
44
46
48
48
48
48
47
45
45
44
44
44
44
42
41
40
38
39
42
45
45
43
42
42
43
39
39
37
35
37
38
38
41
43
46
45
45
45
44
43
42
44
43
43
42
42
41
40
39
39
38
37
34
34
33
32
26
20
18
19
20
20
21
22
27
29
34
31
40
45
37
33
37
36
36
32
36
37
37
37
36
37
38
39
39
40
42
41
39
41
41
41
40
39
37
35
32
30
31
33
34
37
36
36
177
177
178
176
176
176
176
174
173
173
173
170
169
170
170
170
169
170
171
170
169
168
165
162
160
160
158
155
154
153
148
146
145
143
141
147
131
53
53
56
54
53
54
52
53
54
54
54
50
49
50
48
49
46
44
48
49
47
48
51
52
49
49
46
47
48
49
48
106
197
219
243
227
240
229
106
57
130
192
220
200
187
69
45
80
183
189
99
52
45
124
222
223
198
132
55
44
118
221
226
235
219
170
71
58
41
57
193
176
127
155
170
94
59
126
197
215
202
67
76
44
103
184
185
205
216
116
55
50
71
162
208
152
99
60
45
37
42
35
29
23
28
31
37
37
39
40
38
38
40
39
36
35
37
37
38
38
38
36
37
39
41
43
46
45
44
40
38
40
41
40
39
39
41
41
39
44
46
45
45
44
45
48
47
44
43
42
42
42
43
41
42
44
45
43
45
47
47
45
45
44
43
44
44
44
43
44
44
45
44
44
44
44
43
43
42
41
41
42
41
38
36
37
39
38
39
39
40
40
43
45
45
45
45
43
44
44
44
45
44
43
42
42
40
41
39
38
36
33
31
29
29
28
23
21
20
20
20
20
28
32
33
38
43
44
37
34
39
33
34
41
40
35
31
33
35
36
38
38
40
42
42
40
38
40
41
41
41
41
38
35
34
34
32
34
36
34
35
35
178
178
178
177
176
177
176
174
174
174
173
171
170
171
171
171
170
169
170
169
169
168
165
162
161
161
158
157
156
153
149
147
144
148
146
162
94
48
55
63
55
54
53
53
53
54
54
52
51
49
48
48
46
44
50
51
47
46
47
48
47
45
40
50
55
46
62
137
196
200
228
238
239
239
223
137
75
121
199
205
214
180
131
64
51
68
151
161
70
58
58
195
213
202
198
114
55
67
206
223
229
238
199
88
76
46
39
152
212
184
201
167
114
47
141
237
223
171
77
92
58
153
217
219
167
145
71
66
73
184
227
196
174
107
38
43
39
34
27
28
37
57
50
37
34
54
53
38
35
38
36
36
34
35
38
40
39
38
40
42
43
47
47
45
44
43
40
38
39
39
38
38
38
41
43
43
45
45
44
44
45
47
47
45
43
43
41
41
42
41
40
43
45
45
44
44
45
45
46
45
42
41
40
40
42
45
45
45
46
46
44
43
45
44
43
43
43
44
44
43
45
45
46
47
45
42
41
40
41
43
44
44
45
44
44
45
43
43
42
40
41
40
40
39
39
36
37
36
33
34
33
32
30
24
19
18
21
21
24
31
35
37
38
43
39
46
41
35
41
45
39
36
34
34
37
39
38
37
39
43
44
44
40
39
40
41
43
43
40
37
34
36
35
36
38
35
36
38
36
179
178
178
177
177
177
177
175
174
174
173
172
171
170
171
171
171
169
169
168
168
168
166
162
161
160
157
158
155
152
150
149
145
145
150
151
64
51
55
55
52
52
50
51
52
54
53
52
53
50
47
47
47
50
51
50
50
48
46
47
46
48
48
54
41
66
156
192
194
226
245
238
243
228
210
120
91
77
135
181
201
185
148
100
59
46
66
146
126
52
41
125
230
193
195
178
72
49
159
235
216
240
227
134
110
56
37
133
220
231
171
133
70
33
139
237
210
173
144
100
166
213
239
178
78
127
118
96
185
233
237
204
149
53
38
44
38
30
31
51
70
66
111
125
69
78
81
55
37
33
30
32
34
36
37
40
40
39
40
43
47
48
49
48
46
44
40
38
37
37
38
40
41
44
45
45
44
43
43
45
48
47
44
42
42
41
42
42
41
42
43
45
45
45
46
47
46
47
48
47
45
44
45
44
46
46
46
44
44
41
41
41
42
42
42
42
43
43
44
44
42
41
43
45
43
41
41
42
44
45
44
44
45
44
44
45
42
40
40
40
41
40
39
39
38
39
38
35
33
35
34
33
32
26
18
16
17
18
25
32
39
43
45
41
49
44
38
44
44
43
37
37
39
40
40
38
40
43
43
39
41
42
40
39
41
41
40
40
41
42
41
42
41
40
37
38
38
39
41
178
178
179
177
176
177
176
175
174
174
173
172
170
170
171
170
171
169
169
168
168
168
166
163
162
160
158
159
155
151
150
149
149
144
153
124
59
53
55
52
52
50
50
51
52
53
53
53
50
47
48
50
52
51
49
50
48
46
49
50
50
46
42
48
80
121
180
190
204
237
239
237
220
201
212
183
87
56
109
176
190
148
186
150
84
53
40
96
156
80
47
83
216
196
167
206
114
45
81
184
215
235
229
149
138
70
40
117
231
238
150
110
52
34
114
195
216
187
190
205
241
229
230
117
86
166
132
174
237
243
234
156
87
46
42
41
38
59
80
83
129
103
87
160
158
132
119
164
135
94
31
32
33
36
37
38
39
38
40
45
50
51
51
51
47
46
42
39
40
41
41
42
41
43
44
46
46
46
45
42
43
42
41
42
42
42
40
40
40
40
42
44
45
45
46
47
47
47
45
44
44
46
46
46
46
47
47
45
45
43
42
42
40
39
37
38
41
43
44
43
41
39
41
43
43
42
43
43
44
44
44
45
45
45
46
46
45
43
44
42
41
39
39
38
38
36
35
34
32
33
31
29
26
22
15
11
14
20
26
32
37
42
44
47
42
40
48
44
44
39
42
44
40
38
38
40
43
40
34
39
38
36
40
41
41
41
41
40
39
38
37
38
37
38
42
44
43
40
34
179
179
179
177
176
177
176
175
175
174
173
172
170
169
171
170
170
169
168
167
168
168
166
163
162
160
158
158
155
151
150
151
150
151
153
90
53
57
57
53
52
50
51
52
53
54
53
52
49
49
51
52
51
49
48
47
44
49
49
46
45
46
48
67
106
168
211
216
229
238
244
224
180
183
225
233
199
68
106
189
197
85
148
166
103
85
48
53
134
134
51
66
183
229
155
194
149
48
46
102
199
229
230
206
180
82
45
89
183
230
170
99
37
38
78
124
213
212
217
225
238
204
165
70
100
215
192
208
232
243
233
112
53
43
32
43
62
69
119
141
131
152
129
152
209
167
154
210
139
91
41
35
32
30
36
38
39
43
44
45
45
43
44
44
45
44
42
39
40
41
39
39
39
41
43
43
42
42
41
39
41
40
42
41
42
42
41
41
42
42
42
42
44
46
45
46
46
47
46
46
46
46
44
43
43
45
47
47
48
47
46
44
43
40
39
40
41
40
40
39
41
41
42
43
44
46
46
45
44
42
42
43
43
44
46
45
45
45
44
40
40
39
38
38
38
37
35
34
32
33
31
28
24
23
17
13
15
20
27
36
40
45
42
40
45
46
47
44
42
43
43
42
40
37
41
40
34
38
41
37
37
38
36
37
36
35
33
34
34
35
37
38
41
42
45
45
39
31
33
179
180
181
178
177
177
177
177
176
175
173
172
171
170
170
169
168
168
168
167
167
167
167
166
164
161
157
156
156
154
151
150
147
155
149
61
52
56
54
50
52
53
54
52
51
54
53
50
50
51
50
52
49
47
45
46
51
49
43
43
47
44
47
80
143
204
225
218
233
240
238
217
197
219
231
238
246
147
58
150
167
90
86
166
128
105
47
39
100
153
69
46
123
240
204
165
191
74
46
60
154
196
212
232
178
72
53
114
177
215
205
82
36
46
68
71
186
199
205
223
217
194
77
47
105
228
218
237
232
234
219
129
47
32
40
63
92
79
101
152
178
183
155
142
209
217
171
165
140
87
50
53
65
47
33
38
41
46
48
45
43
41
41
42
41
40
38
37
37
37
37
39
40
42
44
44
42
41
42
42
41
42
42
44
44
45
43
43
43
45
45
45
46
47
46
47
48
47
47
47
46
45
44
45
45
44
45
46
45
42
40
40
43
44
43
46
48
47
47
47
47
45
44
45
47
45
44
44
42
41
42
43
44
44
41
41
44
42
42
40
41
40
38
39
39
36
33
31
30
29
32
31
31
28
23
19
17
21
24
33
41
40
46
47
45
46
45
43
42
41
39
41
41
42
40
35
39
41
39
40
38
35
38
40
38
37
38
39
38
39
40
40
42
42
40
37
34
38
41
179
180
180
180
178
177
177
176
176
176
174
172
171
171
171
170
167
168
167
167
167
166
166
166
164
161
158
156
157
156
152
148
147
159
114
55
51
55
50
52
53
54
54
50
52
54
50
49
52
51
49
48
47
46
49
50
46
46
49
43
42
51
60
138
222
238
222
224
227
238
216
206
210
217
228
245
244
183
95
70
164
168
70
99
157
120
43
45
85
172
114
51
67
201
230
143
163
134
45
39
101
151
198
240
161
113
101
139
175
204
179
55
44
72
62
66
204
213
211
219
213
150
66
61
183
233
215
232
248
238
207
117
42
39
39
52
144
156
85
130
176
213
215
161
134
159
185
150
118
117
74
71
96
112
44
34
42
43
44
44
43
43
42
41
40
38
38
36
36
38
38
40
43
45
45
45
45
42
41
40
39
40
41
40
42
43
43
43
42
42
43
45
45
46
47
49
50
49
48
47
47
47
45
44
43
44
45
45
44
42
42
41
39
37
35
37
41
41
44
47
45
44
44
44
45
43
43
44
44
43
43
41
40
41
39
40
42
42
42
41
41
40
40
40
39
36
35
35
36
35
34
33
34
29
24
22
19
20
25
31
34
43
40
45
41
40
46
41
42
40
41
42
43
43
39
38
39
41
39
37
39
38
38
38
38
38
36
36
38
38
40
41
43
40
37
39
42
42
36
180
180
180
180
178
177
177
175
174
175
174
172
170
171
170
169
167
167
167
166
166
165
166
166
163
160
159
157
158
156
153
150
149
158
80
58
52
56
51
54
53
55
53
49
54
52
48
51
49
48
47
49
47
48
48
48
50
45
45
41
42
87
179
218
250
227
226
203
213
238
226
228
232
229
237
243
227
224
143
135
122
200
123
57
139
198
73
37
93
227
152
55
43
144
227
215
172
170
60
39
57
132
191
238
192
156
147
116
97
172
128
50
47
108
60
70
222
240
227
215
171
104
40
73
216
237
218
230
248
214
132
79
57
44
32
81
180
220
111
105
172
211
226
227
183
136
146
141
169
107
112
99
72
103
83
32
32
36
39
42
40
40
39
39
36
36
34
35
37
38
37
40
42
43
45
44
43
41
40
41
41
42
45
44
44
44
42
43
44
45
44
47
47
46
46
47
48
47
47
47
46
45
45
44
43
44
44
44
44
42
41
39
38
37
39
38
39
41
42
42
42
40
42
44
45
45
44
44
43
41
38
36
37
40
38
40
41
42
42
42
41
40
39
38
37
38
38
33
34
33
31
29
27
24
21
21
19
20
23
28
30
37
38
42
46
44
40
41
43
43
42
45
45
42
40
38
37
35
37
40
38
37
34
33
33
32
33
34
37
38
39
41
40
41
42
43
41
39
38
180
181
181
179
178
178
177
174
173
174
173
172
170
170
169
168
167
168
168
167
166
165
166
165
162
160
159
158
158
157
153
154
157
155
62
60
56
50
50
54
55
55
52
53
52
48
51
51
49
47
48
49
46
46
49
51
50
44
43
54
102
175
179
211
239
225
231
210
223
232
235
230
234
240
232
215
217
238
201
148
73
86
147
72
138
223
173
34
71
210
171
60
53
124
223
238
237
176
98
43
38
82
183
239
221
141
160
88
46
152
130
102
88
126
66
93
239
245
218
158
127
69
34
77
217
240
226
233
235
227
109
71
54
36
40
80
178
229
153
99
152
201
221
237
240
186
112
112
189
155
100
146
96
90
103
77
53
45
34
33
33
35
35
35
36
34
35
36
37
39
40
39
40
43
43
43
44
42
41
40
43
44
44
44
43
44
42
41
41
44
44
42
43
45
46
47
47
46
47
47
46
45
43
42
43
45
45
46
46
45
41
39
40
43
43
43
43
44
44
45
43
43
44
45
45
45
44
42
41
39
36
37
39
42
41
40
42
44
46
46
41
36
37
41
42
42
39
35
33
31
31
29
25
21
18
18
18
21
21
22
30
37
45
41
45
43
37
41
44
46
44
47
46
40
40
38
37
38
38
38
37
35
34
33
34
34
35
35
37
42
43
39
39
40
41
40
40
40
39
180
180
180
180
178
178
177
174
173
174
173
172
170
169
168
168
168
168
168
167
166
165
165
164
162
160
159
158
158
157
153
154
161
134
75
55
53
47
48
54
57
54
53
53
50
50
51
49
49
48
48
46
48
48
48
49
44
44
59
85
122
135
156
230
240
241
219
195
223
236
232
231
230
236
232
208
223
238
224
195
151
57
68
128
162
222
190
91
34
162
163
49
46
122
229
237
247
183
107
48
37
59
136
230
218
146
152
62
55
164
197
165
150
118
78
144
243
243
201
137
117
53
33
131
216
243
237
237
214
224
114
71
43
32
59
108
180
232
151
141
132
189
218
238
238
171
90
93
158
199
157
137
125
111
158
131
86
79
48
38
29
30
31
33
34
34
35
37
39
39
40
38
39
42
42
42
43
43
41
40
45
44
44
45
45
44
42
41
41
44
45
45
46
47
48
48
47
46
46
46
45
46
46
45
44
45
44
44
46
48
46
43
41
41
40
42
42
42
44
44
42
42
44
45
44
44
45
43
44
43
41
41
40
40
39
38
36
40
43
41
36
37
40
39
38
39
38
34
32
30
30
27
21
18
17
16
14
16
20
25
33
38
39
41
40
40
43
44
42
43
42
47
46
42
40
38
41
41
40
38
36
36
35
33
34
33
35
36
38
44
42
40
41
42
42
40
41
42
41
180
180
182
181
178
178
177
175
175
173
171
170
169
168
168
168
168
168
168
166
165
166
165
164
162
161
159
159
159
157
154
151
158
96
67
49
51
50
52
56
52
52
54
52
53
53
49
51
50
49
47
47
50
50
46
44
48
55
60
75
109
152
221
235
234
242
190
185
212
203
207
210
217
233
238
227
229
235
224
208
206
164
49
76
166
186
129
59
30
68
184
90
36
105
223
236
238
202
113
54
36
37
99
150
205
175
132
36
69
106
178
171
157
148
145
219
247
236
186
147
70
38
51
186
216
238
241
235
184
182
90
41
39
32
100
125
164
230
144
167
184
153
203
231
227
130
155
140
108
154
208
174
102
160
187
156
87
89
87
67
57
32
30
33
32
33
38
39
40
41
41
40
39
41
42
44
44
44
42
43
46
45
44
45
45
46
45
47
47
48
49
48
46
44
45
45
47
48
47
46
46
47
46
45
46
46
44
44
45
43
43
45
43
41
42
42
41
41
41
41
44
44
45
44
44
46
46
45
45
43
41
40
37
39
40
40
36
38
40
41
39
38
40
42
41
37
35
34
31
30
29
28
19
12
9
12
16
18
23
27
31
36
37
41
35
38
43
46
46
43
44
44
44
42
43
43
41
41
40
39
38
36
35
34
34
33
35
35
39
40
42
42
42
42
40
37
40
43
40
180
180
181
180
179
179
177
175
175
171
170
170
168
168
169
168
168
168
167
166
166
166
165
163
162
161
160
160
160
157
155
161
150
76
63
52
52
52
53
55
52
53
53
53
52
50
51
51
49
51
48
50
48
50
48
47
47
45
39
70
146
177
226
231
240
235
188
200
207
199
214
205
183
190
215
228
236
236
236
205
208
227
154
30
94
153
117
39
30
32
122
140
54
36
148
200
213
213
106
56
34
39
104
148
201
187
128
46
56
77
121
151
147
165
204
241
240
236
191
126
43
48
134
214
213
226
237
223
147
87
41
48
39
64
177
130
137
217
138
175
225
182
165
209
204
102
148
193
160
125
185
223
121
102
143
140
141
101
170
108
80
70
31
32
31
33
36
41
42
42
40
39
40
40
40
43
45
45
44
43
44
44
43
44
45
46
48
47
45
45
47
47
46
44
43
44
46
47
48
47
47
47
45
45
45
46
46
45
45
42
43
43
41
39
40
43
43
41
43
42
44
45
46
45
45
44
45
44
45
43
42
41
39
38
35
34
34
37
40
41
39
40
40
41
38
39
42
37
29
28
29
28
20
16
16
15
18
22
25
25
34
37
35
40
41
40
46
44
42
43
42
45
44
44
43
42
41
40
40
39
37
36
35
33
33
33
35
35
39
41
43
42
42
46
42
36
40
41
40
180
180
180
178
178
178
176
175
175
171
170
170
168
168
169
169
168
166
165
167
167
166
165
163
163
162
162
161
160
157
155
171
131
75
56
50
50
52
54
53
54
55
53
54
50
49
52
49
50
50
50
51
48
50
46
45
47
44
53
137
188
214
222
237
240
222
183
195
217
219
211
226
211
210
196
199
224
238
242
220
201
216
225
108
32
138
146
66
30
35
75
90
112
25
51
185
168
218
134
63
33
47
130
189
215
195
106
59
68
58
100
194
172
193
211
237
239
228
177
90
57
129
196
219
233
228
241
206
108
64
72
62
56
105
187
199
143
184
128
165
214
225
183
180
167
133
119
166
196
180
164
206
193
126
150
112
148
165
200
208
154
111
65
30
32
36
35
38
40
41
37
37
39
41
39
41
43
45
45
46
44
44
44
42
44
45
47
45
45
45
46
45
44
40
38
41
43
44
46
47
45
45
46
46
45
44
44
43
42
41
41
41
41
40
41
43
42
42
45
44
45
45
45
44
45
45
44
44
44
40
39
39
39
38
36
36
36
39
41
42
40
38
38
39
41
40
35
36
33
31
30
28
25
23
20
21
23
25
26
29
33
36
39
41
38
39
42
47
41
42
41
45
45
43
42
42
40
40
40
38
37
35
33
30
30
32
36
39
41
43
43
41
41
41
40
39
38
40
40
179
179
177
178
178
178
176
173
174
171
170
171
168
168
168
168
168
166
165
165
165
164
163
163
163
163
164
162
160
157
154
165
111
84
57
52
51
51
53
53
54
53
54
52
49
51
50
48
50
49
51
48
48
49
47
46
45
51
115
209
218
225
223
241
215
224
194
213
215
215
211
234
218
215
221
215
192
209
239
237
197
198
229
223
75
85
141
109
33
38
83
39
91
45
26
132
147
176
186
94
33
55
164
220
212
188
126
89
104
40
84
212
199
196
198
223
243
210
144
122
135
163
168
222
239
230
225
158
69
71
72
47
98
187
164
205
210
197
130
154
213
236
224
169
133
194
158
129
174
174
174
176
192
166
144
101
118
171
206
223
208
99
50
37
29
38
38
37
38
37
35
35
34
37
40
42
43
45
44
44
44
44
43
41
43
44
43
43
45
46
46
45
44
40
40
43
42
41
43
45
46
44
43
44
44
43
42
40
40
41
41
41
41
42
42
44
42
42
42
41
40
41
44
44
44
45
43
40
38
36
39
42
43
42
40
39
38
38
40
40
40
38
39
39
37
38
40
37
34
33
30
28
25
22
18
19
21
25
29
29
33
35
38
38
35
39
37
41
43
42
41
44
44
44
43
41
40
39
37
38
35
29
28
33
33
35
39
43
43
43
41
42
40
40
40
40
39
38
38
180
179
177
177
178
177
174
173
174
173
172
171
169
169
168
168
168
168
167
165
163
162
162
163
164
164
165
164
161
158
156
162
103
78
55
49
52
51
53
53
55
52
52
51
50
50
49
52
48
52
50
48
51
52
47
39
42
108
204
232
235
226
222
217
220
219
203
212
224
228
226
231
234
226
220
221
223
195
202
235
222
203
213
231
176
47
79
125
47
29
88
44
48
75
37
88
114
93
171
111
34
51
176
220
232
189
146
145
113
47
118
219
223
202
212
233
229
187
140
136
114
58
168
224
237
223
176
129
73
61
47
40
140
212
178
159
208
230
138
118
202
233
227
157
142
203
171
139
133
143
172
188
193
152
106
103
136
164
159
168
192
156
76
44
26
32
37
39
40
40
35
37
38
37
38
40
43
45
44
43
42
42
42
41
43
44
45
46
46
46
45
45
45
43
43
43
41
41
41
40
45
45
45
45
44
43
42
42
43
44
45
44
44
44
43
42
40
42
42
41
45
43
42
41
38
37
35
39
43
46
45
45
45
44
43
41
41
41
42
42
40
40
40
41
43
37
34
34
35
32
25
25
23
18
16
19
21
24
26
27
32
37
41
42
35
39
39
39
41
41
39
40
42
44
44
42
41
38
36
31
30
34
35
36
37
39
42
43
40
40
42
41
38
38
42
39
38
35
34
179
179
177
177
177
176
174
174
174
172
171
171
169
169
169
168
168
168
168
166
163
162
163
164
164
165
165
162
162
160
162
152
93
77
59
51
53
53
54
53
54
51
51
50
51
51
53
48
52
51
49
50
50
43
41
39
57
182
229
241
246
205
191
229
230
201
213
214
226
237
229
220
220
208
208
208
217
221
205
200
231
231
227
209
228
120
39
83
65
38
79
63
27
74
67
125
122
48
98
107
47
49
148
209
239
211
168
151
94
55
129
215
230
227
229
233
220
158
139
93
42
65
216
231
236
235
188
102
55
36
36
47
161
212
173
177
182
242
157
139
185
224
222
128
143
176
182
196
196
190
182
170
190
140
142
180
198
205
211
208
172
112
123
103
76
43
32
36
38
43
41
40
39
41
40
40
40
40
40
42
41
42
43
42
44
46
46
46
48
46
45
44
44
45
44
41
41
42
40
38
43
44
46
47
45
44
42
43
41
41
42
43
42
42
41
40
41
43
44
43
42
40
38
38
39
43
47
50
49
46
46
44
42
42
43
44
45
44
39
39
38
39
42
41
37
38
39
35
28
26
26
26
24
20
16
18
18
21
25
29
35
39
40
37
37
41
41
39
40
40
40
41
43
43
42
41
41
36
35
35
36
37
36
40
41
41
42
42
39
40
44
39
38
40
41
39
36
35
35
178
179
177
177
177
176
174
173
173
171
171
171
170
169
168
168
168
167
167
165
164
164
164
164
164
164
164
161
163
160
166
138
88
70
57
49
53
53
53
54
54
51
49
51
51
52
55
52
52
51
51
52
43
42
42
38
111
209
242
243
237
196
213
236
216
217
218
232
215
203
197
188
192
198
205
199
195
205
208
212
205
235
238
214
220
202
91
43
67
41
111
104
31
62
100
135
148
49
58
96
72
66
138
213
230
170
157
122
86
64
127
205
230
220
232
234
224
144
86
45
37
138
227
236
232
237
185
72
34
34
49
134
203
191
152
205
207
233
165
220
218
207
177
107
131
162
188
180
198
227
215
171
134
111
149
184
197
205
216
167
189
121
68
92
116
113
47
29
32
36
37
38
38
38
39
39
39
38
39
41
38
39
41
41
43
43
42
45
47
47
47
45
44
43
42
41
40
40
38
37
42
42
43
45
44
43
44
43
42
42
42
43
42
42
41
40
42
42
42
42
43
44
43
42
43
45
45
44
42
41
41
41
43
43
43
43
42
39
36
38
41
39
36
38
37
32
28
27
27
26
25
25
23
20
19
20
25
27
30
32
35
35
35
36
38
40
41
40
40
41
41
41
41
43
40
37
38
38
38
37
37
36
38
40
39
39
39
40
40
42
37
35
39
39
39
39
36
35
35
178
178
177
178
178
177
175
171
170
171
172
172
170
170
169
168
168
168
167
165
164
164
164
164
164
165
165
163
162
159
166
117
81
61
53
53
54
52
53
54
51
51
52
52
51
53
54
51
51
52
54
44
44
43
39
74
125
230
241
225
236
203
221
226
225
215
185
132
89
78
83
80
80
85
106
138
179
184
181
195
206
224
239
235
206
219
186
54
68
29
95
150
56
48
64
63
166
49
50
115
111
120
171
222
128
112
159
116
127
129
176
221
180
182
232
240
198
96
43
59
133
198
235
244
239
191
103
51
44
51
168
179
203
160
158
222
224
174
187
213
233
191
158
163
171
197
192
193
203
209
233
194
141
185
189
189
188
181
155
146
167
170
74
83
86
93
51
32
23
28
33
35
35
37
36
37
36
38
38
40
38
38
39
39
40
42
42
43
45
46
47
46
45
44
44
43
43
43
42
40
40
39
40
41
42
42
42
42
40
41
41
40
41
41
42
43
42
42
43
44
44
44
43
43
42
43
45
44
43
44
43
43
42
41
39
41
39
39
39
41
41
40
37
32
26
24
24
26
26
24
23
22
16
12
15
17
21
26
29
31
33
39
41
39
39
40
41
41
40
39
41
41
39
38
38
39
39
39
37
35
36
36
35
33
36
38
40
41
38
33
33
39
37
36
37
38
38
34
33
178
178
177
177
177
176
174
171
170
171
172
171
170
169
168
168
167
167
166
165
164
164
164
163
163
163
163
163
161
158
164
94
61
66
54
55
53
53
53
53
50
51
54
52
51
53
52
51
51
53
47
48
46
43
41
72
178
247
230
216
228
202
227
233
204
128
69
84
105
132
149
150
143
134
101
77
81
146
192
181
176
210
226
242
211
210
234
151
79
42
72
141
71
72
68
42
157
54
43
130
150
184
194
153
57
104
168
122
130
158
196
179
73
135
228
205
145
76
79
125
134
173
222
243
224
120
67
59
54
57
219
218
213
188
163
232
187
123
198
188
211
181
155
143
172
184
148
199
233
219
232
219
187
177
162
155
131
130
197
187
134
192
96
85
64
33
53
47
24
26
32
34
35
34
35
37
34
36
37
38
38
40
40
40
41
44
45
44
44
45
46
45
44
43
44
42
41
41
44
43
42
42
41
41
40
42
43
43
40
41
42
42
42
41
40
42
43
43
44
44
44
45
44
44
42
42
44
45
46
44
41
40
40
39
41
43
43
42
41
41
40
36
27
24
25
30
33
32
29
25
22
22
23
20
20
24
29
32
30
31
35
41
42
40
38
40
41
41
42
41
40
39
39
39
40
41
38
38
37
37
37
37
38
37
38
38
38
38
36
36
37
36
36
36
37
36
35
34
34
177
177
177
175
173
172
171
171
172
172
170
169
168
168
167
167
167
167
165
164
165
164
163
162
162
162
163
162
162
161
153
66
56
62
54
54
54
53
51
51
53
53
53
52
50
51
53
51
52
47
48
43
45
40
46
135
237
250
230
235
230
217
233
230
121
76
122
160
171
179
177
172
170
166
157
151
122
79
129
191
170
177
210
234
220
203
222
220
110
52
48
128
95
113
94
31
110
50
60
152
161
149
136
87
49
140
161
125
141
154
171
75
50
139
168
132
107
105
122
68
65
201
239
232
218
107
75
45
27
119
231
219
232
218
169
222
152
147
165
153
139
135
153
191
203
181
217
209
172
146
158
163
142
142
135
137
164
193
197
138
71
141
97
57
64
86
101
93
71
42
22
29
31
34
36
36
34
34
36
36
36
40
42
44
44
44
45
47
46
48
48
46
44
43
43
42
40
41
42
43
42
40
38
38
40
40
40
41
41
41
41
41
41
41
40
39
43
44
44
44
44
43
41
41
40
42
44
42
41
40
41
39
40
42
43
43
44
44
40
34
27
24
22
24
29
34
35
37
37
35
33
27
21
17
20
24
27
30
33
35
36
38
38
38
37
38
40
42
40
37
37
39
41
41
40
39
41
42
40
39
39
40
39
39
39
39
37
37
38
37
37
38
38
34
36
37
33
31
32
177
176
176
175
172
172
172
171
172
172
170
169
169
169
169
168
167
166
164
164
164
164
164
163
162
162
162
162
162
166
131
55
54
59
56
53
53
53
51
52
53
53
53
49
50
53
51
51
49
49
47
45
48
43
108
227
248
240
236
230
235
229
243
204
73
111
192
198
174
174
172
173
169
175
168
162
147
127
90
123
187
189
185
205
233
218
208
232
142
32
36
66
116
133
116
30
87
36
86
151
151
121
101
63
52
186
179
147
142
149
80
39
92
150
146
144
126
103
62
39
103
240
245
225
218
103
39
29
60
193
235
218
219
186
172
204
154
131
99
104
123
154
180
199
202
210
230
229
162
132
117
109
96
90
113
184
228
175
153
139
73
70
62
55
61
70
85
99
106
98
59
26
27
31
33
34
35
34
36
38
38
40
43
43
44
43
45
45
47
47
46
46
44
43
43
41
40
42
41
41
39
39
40
40
41
40
40
42
41
41
43
41
42
41
41
41
43
44
44
44
45
44
43
44
43
44
44
42
43
44
45
41
40
41
43
43
41
36
34
34
31
30
30
31
34
37
38
37
36
35
34
27
25
22
22
24
28
30
34
36
41
38
39
37
36
39
41
39
36
35
36
37
39
39
40
40
41
41
41
41
41
41
41
41
39
38
36
37
36
36
36
35
36
35
35
31
30
30
30
177
176
177
176
173
172
172
170
170
170
170
168
168
167
168
168
166
166
164
164
164
165
164
164
162
161
161
162
160
170
102
53
53
55
54
54
54
53
52
53
52
52
51
50
53
52
50
53
48
50
47
50
46
49
176
243
248
237
238
232
228
241
242
155
69
114
167
214
187
171
171
182
180
185
183
168
156
144
127
91
172
193
163
175
227
230
209
233
184
36
50
42
96
132
94
34
96
41
72
165
161
120
77
53
89
211
208
188
149
95
50
60
130
201
188
122
98
54
38
56
201
243
235
173
126
44
30
85
188
225
224
204
212
210
225
190
122
103
119
161
203
214
218
218
218
215
237
192
97
88
91
93
115
134
201
245
218
127
133
149
145
124
113
105
101
96
100
84
73
75
84
54
27
26
29
30
34
34
34
39
38
36
41
43
43
42
43
44
46
46
45
45
43
42
43
42
41
42
41
40
39
42
42
41
40
39
39
41
41
44
44
42
43
43
42
41
43
44
44
44
45
43
43
42
42
42
41
41
42
42
42
40
41
43
43
42
39
40
38
34
34
38
36
35
37
37
36
34
34
31
28
26
25
25
27
30
33
34
35
38
45
38
39
37
35
35
37
37
36
36
36
36
39
40
41
41
41
43
43
42
41
40
41
40
37
35
34
35
34
35
35
36
35
32
29
28
30
29
28
178
176
177
175
173
171
170
169
168
168
168
169
167
166
166
166
167
167
165
165
164
165
164
164
162
161
161
161
157
156
77
59
56
53
54
54
54
53
53
51
52
51
50
52
53
52
53
52
48
49
49
47
43
80
226
245
243
241
237
233
218
246
237
108
84
106
133
164
165
168
182
175
179
181
178
183
176
162
138
110
106
185
165
152
192
242
224
231
205
76
68
24
82
117
105
58
69
35
55
143
134
103
89
75
172
235
223
160
119
62
50
134
183
212
174
97
44
46
58
178
234
243
238
157
65
60
119
214
226
213
199
214
166
215
218
144
132
198
224
225
217
215
221
219
218
215
218
121
86
99
133
149
185
219
226
228
151
84
98
121
125
118
113
105
111
109
112
114
118
109
94
81
55
30
27
30
30
33
33
36
42
38
40
42
42
41
42
42
43
43
44
43
42
42
43
42
41
42
41
40
41
41
40
41
41
41
40
41
40
43
44
45
45
44
44
42
44
45
44
44
42
41
41
41
40
41
43
43
44
43
43
42
41
42
42
41
41
39
37
37
35
33
34
33
35
35
33
33
30
31
32
33
23
21
23
29
31
32
36
39
40
40
38
34
34
35
38
36
36
37
39
40
41
43
43
42
42
42
42
41
40
38
37
36
35
36
36
35
35
36
36
33
31
28
30
29
26
26
26
178
175
175
174
172
171
171
170
169
169
169
169
167
166
166
166
167
167
165
165
164
164
164
162
162
161
162
159
162
131
57
58
57
54
53
54
54
53
50
51
50
51
50
53
53
53
51
49
48
51
49
47
40
116
235
246
239
243
239
225
223
248
225
105
92
100
116
147
173
174
162
171
186
182
186
185
191
173
149
114
87
145
191
150
175
242
222
233
205
94
81
29
83
100
109
81
84
34
53
148
150
136
125
114
200
233
202
114
106
59
39
156
208
203
108
53
49
62
157
230
227
242
238
119
85
143
219
239
224
180
213
163
161
184
133
136
167
184
194
197
176
178
200
209
199
192
151
105
124
164
183
181
192
212
201
154
94
83
74
86
112
118
114
115
113
112
121
120
113
110
105
93
80
75
58
34
34
34
33
34
39
41
40
40
40
41
41
41
41
41
41
41
41
40
41
41
40
41
40
41
42
39
39
39
40
40
40
41
41
43
43
43
43
42
44
43
43
45
45
42
42
40
41
41
40
41
42
42
42
43
44
43
43
42
43
43
42
40
36
33
32
35
37
36
35
35
34
34
32
31
29
30
27
26
28
31
32
37
37
38
38
39
38
37
38
38
39
39
38
38
40
41
43
42
43
43
43
42
41
40
40
39
39
39
37
38
36
35
35
34
32
30
29
27
25
25
26
26
26
177
175
175
174
172
171
171
170
169
169
169
169
166
167
166
165
166
166
164
164
164
163
163
162
162
160
161
162
168
115
49
55
55
55
53
53
53
52
50
51
49
50
50
53
52
52
51
46
51
53
48
39
49
161
245
244
234
246
235
226
232
249
214
96
138
141
118
130
136
137
87
75
116
173
177
193
191
184
159
125
99
95
178
157
150
238
229
225
223
102
86
33
85
99
111
84
58
32
64
165
206
166
131
156
213
210
193
98
46
33
113
209
232
166
75
58
58
166
210
233
241
228
170
95
110
176
214
190
174
196
187
153
114
111
127
151
163
168
172
172
170
152
169
207
139
95
115
149
183
213
233
243
237
202
167
126
105
84
89
109
114
118
113
103
100
101
100
95
97
99
93
90
90
86
76
55
35
33
34
34
37
43
43
40
40
41
40
40
40
39
41
40
39
40
40
40
40
39
40
40
41
42
41
41
42
41
40
40
41
42
42
43
44
44
45
43
42
45
46
44
43
41
41
40
41
40
40
41
41
42
43
41
42
42
41
42
41
38
34
32
32
33
34
35
32
31
31
31
34
34
35
35
32
32
32
32
35
37
38
40
43
41
39
38
40
40
37
34
37
38
39
41
42
44
44
44
44
43
42
40
40
39
40
40
38
38
36
35
36
33
30
30
27
26
27
28
28
27
28
178
175
174
173
172
171
170
169
168
167
168
168
167
166
166
166
167
167
164
164
164
163
163
161
161
160
161
163
174
102
51
55
53
55
54
52
53
52
51
51
52
51
50
51
52
52
50
49
52
51
44
42
52
182
247
240
237
247
230
227
237
248
198
79
163
192
145
134
92
20
5
5
12
54
153
186
192
192
177
134
106
84
162
166
152
235
233
225
223
112
88
44
103
128
103
58
23
31
67
147
215
200
143
161
196
176
158
59
32
60
184
228
221
147
64
45
59
206
239
238
248
217
128
81
87
105
92
101
182
196
169
171
167
173
195
191
200
216
216
206
186
165
181
210
148
74
113
130
166
208
231
240
223
150
132
125
108
96
113
139
150
153
147
139
135
130
126
121
114
106
93
87
78
62
49
43
29
30
31
35
38
40
42
41
41
41
41
40
41
40
40
39
40
40
40
38
39
38
40
40
40
41
40
38
40
40
39
40
39
41
43
43
44
45
45
44
42
43
42
43
41
40
40
41
42
40
39
38
38
39
41
41
42
42
42
43
41
37
32
29
34
38
41
37
34
33
33
33
33
31
32
31
29
30
32
32
34
35
37
44
43
42
40
39
37
37
40
40
38
36
38
40
42
44
44
44
45
43
42
42
41
39
41
40
38
38
35
34
33
31
31
30
29
28
29
30
26
26
28
179
178
175
173
171
171
170
168
169
169
168
167
166
166
166
166
167
166
165
164
163
163
162
162
161
160
160
161
167
70
50
55
53
54
53
51
53
50
50
53
50
50
52
52
54
49
50
50
48
43
41
44
69
198
251
234
243
247
229
232
225
243
175
71
140
154
121
118
24
7
2
2
5
6
64
190
203
201
186
147
107
77
133
175
162
235
235
238
207
107
75
59
126
177
91
42
28
55
105
174
214
224
136
107
153
146
64
29
44
146
223
236
197
94
36
24
66
202
235
231
238
226
124
73
55
51
53
167
155
169
144
140
183
191
199
207
222
216
193
202
170
150
182
205
174
162
187
209
217
216
209
221
188
113
104
101
98
102
111
126
125
118
116
104
84
69
50
35
29
24
19
14
11
5
3
4
6
26
29
34
35
39
40
39
39
39
40
39
39
41
40
39
40
40
41
39
39
40
39
38
41
41
40
39
39
39
39
39
40
41
43
43
45
47
46
44
44
46
48
45
41
39
39
40
40
39
39
39
37
38
39
41
42
41
41
39
33
31
35
40
42
40
37
32
31
31
31
31
33
33
33
32
29
30
32
35
36
37
42
48
42
40
40
40
41
42
40
36
35
40
45
44
42
41
44
44
44
43
42
41
40
39
40
40
37
37
34
33
34
32
30
30
32
31
29
25
24
28
30
179
179
176
173
172
170
170
168
169
167
167
166
166
166
166
166
167
166
165
163
162
162
161
160
160
160
160
165
124
53
54
55
53
54
52
51
50
47
52
48
49
52
52
53
51
49
52
50
43
42
44
51
81
212
250
230
246
243
227
232
225
242
184
69
137
124
108
83
44
4
4
0
1
4
15
161
199
198
194
151
103
73
134
177
162
231
240
242
185
79
43
58
133
151
78
27
35
90
144
208
228
213
113
109
153
65
31
59
125
186
230
224
191
51
29
45
156
228
230
232
238
187
65
49
55
40
116
187
128
133
143
187
219
227
219
203
189
177
164
140
135
188
216
218
212
200
201
205
202
203
201
164
113
101
100
105
115
114
103
79
58
33
9
10
9
5
7
6
2
0
2
3
3
3
3
5
5
7
24
34
35
37
36
35
35
36
38
39
38
39
39
39
41
41
41
40
41
41
39
38
40
39
38
39
38
38
39
41
43
42
43
43
46
48
46
45
43
43
41
41
40
39
37
37
36
33
34
34
33
36
37
40
43
42
38
35
35
40
43
41
37
36
35
34
33
34
32
29
30
30
31
33
33
33
33
36
38
43
51
42
40
42
43
42
43
42
41
43
46
46
43
42
42
42
45
45
44
43
42
40
39
38
40
40
37
37
36
34
34
32
31
33
33
27
27
29
30
30
30
180
178
178
175
173
170
170
169
167
167
167
166
166
167
166
165
164
163
163
163
162
160
159
160
160
159
160
167
66
54
55
54
54
54
52
52
51
50
47
49
50
52
51
53
48
51
51
43
38
46
49
49
78
210
246
231
249
242
228
230
212
240
206
81
102
125
112
90
101
14
4
1
1
4
9
155
192
193
190
148
99
71
141
175
177
237
245
232
151
65
21
69
128
120
62
24
48
101
156
200
191
160
112
145
91
32
39
131
179
209
220
224
129
30
47
160
205
245
240
231
175
60
54
54
72
151
217
162
130
133
180
202
213
196
127
133
149
160
151
130
175
229
202
180
158
163
187
186
183
180
134
103
105
99
90
78
52
29
17
9
4
3
2
2
2
1
1
2
1
1
0
0
0
2
1
1
2
3
8
26
30
35
34
33
35
34
36
37
38
36
38
39
41
41
41
42
42
40
40
41
40
39
39
40
40
41
40
41
43
43
44
47
47
46
46
46
44
42
41
43
43
39
36
37
39
38
37
37
36
38
43
44
36
34
34
40
43
43
39
37
37
40
40
38
37
36
33
31
33
34
37
35
33
33
34
36
40
41
40
41
46
46
43
44
43
44
46
47
46
44
44
44
42
42
45
46
46
44
44
42
40
40
41
41
40
38
36
35
35
33
32
32
31
32
34
31
29
29
29
182
180
178
174
172
170
170
169
169
169
167
166
167
166
164
164
162
162
162
162
162
159
159
159
159
158
162
145
46
54
53
54
53
52
50
51
50
47
46
51
52
51
52
46
52
54
48
41
44
49
50
46
79
209
245
230
248
240
225
226
209
236
229
118
94
138
115
110
65
24
5
0
1
5
40
169
195
201
187
132
100
74
150
173
201
238
238
225
134
72
25
105
159
110
29
22
62
135
163
148
124
125
119
122
45
35
59
154
189
217
225
137
39
55
162
225
216
246
222
148
81
82
69
124
197
212
188
138
129
134
167
180
181
156
174
186
199
186
132
115
183
228
163
172
117
114
148
166
137
105
106
98
89
68
43
16
2
3
5
5
3
2
1
1
1
0
0
2
1
1
1
1
1
2
2
1
0
3
3
14
32
30
33
32
32
32
36
36
37
35
35
36
39
39
39
41
40
39
38
38
39
40
40
41
40
39
39
43
43
46
46
47
46
46
47
46
44
42
39
39
39
38
37
34
35
36
36
36
35
37
36
30
31
36
41
42
38
39
43
45
46
48
44
38
36
38
36
35
33
32
31
31
31
32
32
37
45
54
51
47
47
46
46
46
46
45
45
46
46
46
45
43
40
40
43
45
46
45
44
44
43
41
41
41
40
38
37
34
33
33
32
34
35
34
32
30
30
30
31
182
180
178
174
172
171
170
168
169
168
167
167
167
165
165
164
161
160
160
160
160
160
160
159
158
157
168
97
47
53
55
54
54
53
50
51
50
48
53
51
50
53
53
46
54
51
42
46
48
48
48
43
95
224
247
234
250
244
224
222
222
224
238
162
78
112
111
110
80
23
5
3
3
35
128
180
204
197
173
121
94
81
158
175
213
239
240
218
111
68
58
146
193
76
20
37
73
160
173
107
129
117
52
47
33
41
98
157
227
214
152
81
38
91
227
226
218
238
174
108
90
101
117
171
205
201
194
134
119
152
178
150
170
217
236
218
205
152
104
147
197
211
202
206
109
135
174
156
96
75
47
15
14
10
4
0
0
0
1
0
0
0
0
0
0
0
0
0
1
1
1
0
0
0
0
2
1
1
1
5
24
31
31
31
33
32
35
35
35
35
34
34
37
38
38
39
39
38
38
37
39
40
40
39
38
38
39
47
46
46
45
47
47
47
46
44
44
42
42
40
38
37
37
35
36
36
36
37
37
39
34
28
41
43
40
41
45
46
45
43
42
41
38
36
34
34
28
26
23
24
24
28
30
31
33
43
50
47
43
44
48
47
46
47
47
46
45
46
46
46
45
42
43
44
47
47
47
44
44
43
42
41
41
40
39
37
36
35
34
33
33
33
31
31
30
29
29
31
33
185
184
180
177
176
173
170
169
169
167
166
166
164
165
164
164
160
161
160
159
158
159
159
158
155
157
172
61
52
54
53
53
54
54
51
52
53
56
59
55
50
56
50
50
52
40
44
49
46
43
52
34
117
236
247
244
248
244
223
225
233
205
233
216
114
90
93
96
115
113
95
90
114
160
186
186
200
186
150
108
77
85
167
172
233
242
222
169
82
66
110
186
172
42
17
53
99
157
169
94
126
83
33
53
48
127
144
192
238
130
85
51
28
122
217
206
209
227
151
86
70
58
130
210
184
204
208
116
146
177
173
192
222
231
231
192
124
107
143
170
181
217
221
156
122
142
141
82
40
18
5
5
5
8
5
0
0
0
0
0
0
0
0
0
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
10
24
29
33
33
32
32
33
33
34
35
35
36
37
37
37
37
38
40
39
39
39
39
38
38
40
41
44
46
48
45
47
47
47
44
42
42
42
41
42
41
38
38
38
37
38
38
39
39
39
40
42
43
43
47
46
43
41
39
41
44
43
39
36
37
36
35
33
32
32
33
32
29
32
38
46
45
44
45
48
50
49
47
47
46
46
45
45
45
42
41
44
48
45
45
44
43
45
45
43
41
37
37
37
36
35
33
34
34
33
31
32
32
32
31
30
33
34
34
187
186
182
178
177
173
169
169
169
166
165
166
164
164
163
162
160
161
159
159
158
158
159
157
157
161
158
56
57
56
54
53
53
53
52
51
53
55
56
49
53
58
50
53
44
39
51
48
43
49
46
30
121
238
244
247
245
244
221
222
234
213
221
236
179
85
90
98
109
126
149
156
168
184
186
189
187
164
119
99
81
133
155
198
236
240
174
115
66
61
148
176
117
20
20
72
112
150
133
95
97
49
41
75
112
163
175
210
232
97
49
29
54
198
211
202
203
214
122
48
52
55
169
198
193
219
193
127
180
203
207
215
211
211
182
116
128
170
168
178
222
222
160
123
114
90
45
18
7
6
5
6
2
3
2
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
2
13
25
31
31
32
30
30
32
35
34
34
36
36
36
35
36
37
38
37
35
35
37
38
38
40
41
43
46
46
46
48
48
46
44
41
40
40
38
37
37
37
37
38
38
39
38
37
38
38
38
37
38
39
42
42
41
40
39
40
41
39
39
37
37
38
36
34
32
32
31
29
30
34
41
44
44
45
46
52
52
48
47
47
46
45
44
44
44
46
44
44
42
41
41
42
45
44
44
42
42
41
41
39
38
36
34
34
35
34
31
32
33
34
34
36
36
32
30
189
186
182
179
176
172
170
170
169
165
164
166
164
163
161
161
160
159
158
157
158
158
158
158
161
165
130
64
58
56
54
54
53
52
53
50
51
54
49
43
57
55
52
51
38
50
48
44
49
46
36
33
79
236
237
249
248
246
227
224
228
224
205
224
217
148
84
90
102
122
141
151
173
178
178
181
167
128
104
80
121
165
158
221
239
230
147
92
48
73
174
152
77
20
27
85
87
104
92
102
63
45
61
82
125
166
189
225
212
71
31
47
166
233
185
183
157
91
63
44
60
133
163
165
220
218
157
193
176
186
172
160
163
127
114
171
200
186
209
222
223
156
97
72
32
13
3
3
4
3
1
2
2
3
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
2
14
26
29
32
30
30
32
35
35
35
36
36
35
33
35
36
37
36
34
32
34
35
38
40
40
42
45
47
47
48
48
47
45
43
44
42
42
42
41
39
37
36
36
36
37
37
38
38
41
40
39
40
42
41
41
40
38
40
43
40
39
37
36
35
34
32
30
28
24
26
32
34
36
45
48
47
46
48
49
47
46
47
45
45
44
45
45
44
42
42
40
40
40
44
44
42
42
43
41
41
41
41
38
37
36
35
34
34
34
34
35
36
35
33
31
30
32
190
188
185
182
179
175
171
170
169
166
166
167
165
163
160
158
157
158
158
158
158
155
156
153
158
165
106
62
53
56
55
55
54
53
52
51
53
53
48
47
63
51
55
45
48
51
48
50
53
38
37
48
64
223
238
246
250
244
235
219
226
225
228
197
226
211
143
79
101
128
133
144
149
157
161
154
133
106
84
121
162
163
182
234
241
210
124
92
62
132
199
198
67
21
37
108
94
91
106
97
64
47
92
88
132
192
218
218
168
42
43
160
236
222
131
108
90
83
72
118
188
165
142
194
235
181
118
168
159
172
158
162
113
122
203
206
195
218
215
203
171
60
23
8
12
3
3
1
2
1
1
0
1
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
1
1
6
19
28
30
31
32
32
33
34
33
35
35
34
33
34
33
35
36
34
34
36
35
38
39
40
43
44
45
43
43
42
40
41
41
40
38
36
36
34
35
36
36
36
36
37
38
38
40
45
44
41
43
42
42
41
40
38
39
41
39
39
38
36
36
35
31
26
25
27
29
31
35
41
46
47
48
46
48
48
44
45
46
46
46
44
44
44
42
40
41
42
41
40
38
40
44
43
42
43
44
40
39
36
36
36
34
32
33
33
32
31
30
31
33
36
38
35
193
192
188
186
182
179
174
169
169
168
168
167
165
163
159
158
156
157
158
158
159
156
158
155
161
162
83
60
56
55
54
56
53
53
52
51
55
54
48
51
55
52
50
47
50
50
51
52
45
33
38
44
50
193
241
243
249
245
242
215
215
221
227
220
201
213
202
142
94
95
116
134
139
139
135
119
114
132
151
167
147
167
213
236
212
152
108
94
128
185
207
171
33
29
56
130
142
81
112
91
70
100
105
127
194
213
210
205
93
25
68
222
244
197
123
95
90
125
208
237
205
156
194
229
226
115
110
164
209
193
144
125
170
223
212
197
201
190
165
127
47
3
9
11
7
1
1
1
1
0
1
0
0
0
1
0
0
2
1
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
0
0
0
0
1
2
2
4
17
21
28
34
32
30
32
32
33
34
33
33
32
32
34
36
33
31
33
35
37
39
40
42
43
44
45
47
47
45
43
43
41
41
40
39
36
34
33
34
35
35
38
39
38
39
45
47
44
45
45
46
44
42
40
41
42
40
40
39
38
36
33
31
29
30
30
29
32
36
42
44
47
48
48
49
48
46
46
47
45
43
44
43
44
43
42
42
40
40
41
39
39
43
43
45
43
40
38
40
36
35
35
31
31
31
32
33
35
37
39
39
39
36
33
196
192
189
188
183
181
177
171
169
168
168
167
164
162
160
160
159
158
158
158
159
156
158
157
162
153
70
58
57
54
53
53
53
53
52
52
53
52
48
53
53
51
45
47
49
48
51
43
35
35
42
39
50
188
246
241
247
247
242
233
222
212
218
227
217
193
201
204
181
152
113
107
94
106
128
156
193
184
163
163
156
185
232
223
167
135
104
113
182
145
198
138
19
52
105
148
153
65
49
100
107
152
151
164
172
223
224
115
30
35
111
221
243
172
135
103
173
214
211
225
150
194
220
168
138
131
151
201
213
144
120
194
236
230
194
139
121
100
41
9
2
1
4
4
2
0
0
0
0
1
1
1
1
1
0
0
0
2
2
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
2
2
0
4
11
20
27
31
32
31
33
33
33
32
32
32
33
32
33
36
36
36
35
35
36
38
41
42
41
42
42
43
43
40
41
43
41
40
41
46
41
37
35
34
33
35
38
38
39
44
46
45
44
46
45
43
42
41
42
41
39
38
35
35
33
31
33
33
30
29
29
31
37
42
45
46
49
48
48
47
47
47
46
45
43
43
42
41
39
39
42
43
42
40
42
44
44
41
40
37
35
38
38
33
32
33
30
29
33
36
36
37
38
37
38
37
36
32
197
195
192
190
185
184
180
176
174
170
169
167
165
163
160
160
159
158
159
159
158
158
157
159
169
122
78
61
55
54
52
52
53
53
52
53
52
51
52
53
53
52
44
50
48
49
49
37
31
42
40
38
56
208
247
240
241
248
242
235
230
229
205
211
220
215
214
200
190
182
174
186
178
189
202
199
188
162
166
159
164
217
222
190
169
145
76
141
177
118
184
77
24
95
143
117
118
49
39
95
148
202
186
150
182
204
168
34
33
110
205
221
234
159
100
96
86
72
178
188
142
187
140
128
166
184
196
199
156
116
162
219
227
199
184
102
42
14
7
1
1
5
8
1
1
0
0
0
0
1
0
1
1
1
0
2
2
3
2
2
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
1
3
2
1
5
15
18
25
30
30
32
32
32
33
34
32
32
34
36
35
35
36
36
35
36
38
40
40
41
41
39
39
40
39
39
39
38
38
37
38
37
36
38
39
40
38
38
38
39
42
45
46
44
46
44
42
43
42
42
41
41
39
36
35
35
33
32
33
28
29
30
30
43
45
44
44
47
46
46
47
48
47
45
45
44
42
41
42
40
39
39
39
42
43
44
43
40
39
38
36
37
38
39
36
33
34
31
31
35
36
37
38
38
38
38
37
37
35
198
198
194
191
188
185
181
180
177
171
169
168
165
162
161
159
158
158
158
159
159
157
156
157
169
96
77
57
53
53
53
51
52
52
51
52
50
50
54
52
57
48
44
51
49
51
44
36
41
42
37
34
63
205
245
248
234
244
244
237
225
231
234
207
194
204
212
216
214
209
207
215
213
206
199
189
183
179
186
194
189
228
186
145
128
118
83
184
116
112
131
34
48
114
121
71
74
29
45
104
135
201
148
155
171
119
62
32
112
222
223
211
211
143
58
56
47
85
178
132
155
143
144
161
161
182
168
160
149
162
222
234
180
137
85
15
4
9
6
7
4
8
7
2
1
0
0
0
0
1
0
0
0
1
1
2
3
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
3
2
1
6
15
18
27
29
29
31
31
32
32
32
31
31
32
35
36
36
36
36
36
38
37
38
40
39
39
39
40
41
40
40
39
40
41
38
38
34
34
35
36
38
39
40
40
44
46
46
45
43
41
41
40
40
39
39
38
37
33
32
33
29
27
30
30
31
31
30
31
40
40
41
44
46
47
44
46
46
44
43
43
43
41
41
42
43
43
42
42
42
41
40
39
38
38
41
38
40
38
32
30
30
29
28
30
33
36
37
38
37
36
36
36
31
198
197
195
191
190
188
184
181
179
173
169
168
165
163
162
160
159
159
159
159
160
162
161
159
154
79
74
55
53
53
53
52
54
51
52
53
48
52
49
51
59
45
49
50
49
47
43
43
43
37
35
31
52
200
243
244
241
233
240
242
231
215
228
235
216
198
198
201
205
215
213
218
215
213
213
207
199
193
192
181
190
225
153
138
141
132
173
168
55
101
101
74
147
150
138
66
45
24
86
127
123
140
167
143
110
64
32
136
224
223
195
149
103
66
56
44
79
167
207
124
134
86
94
132
153
151
156
163
178
222
226
201
108
56
14
4
5
11
4
2
1
2
2
1
0
0
0
0
0
0
0
0
0
3
3
8
5
2
1
1
1
0
0
1
0
0
0
0
0
0
0
0
1
1
1
0
0
0
0
0
1
1
0
0
0
1
2
6
15
19
25
28
28
30
32
32
33
33
32
28
32
33
36
37
36
38
38
37
39
40
39
39
39
39
40
39
38
39
38
37
38
37
35
35
35
34
37
37
37
38
40
42
48
44
47
44
44
43
42
43
40
39
38
33
31
27
27
30
33
44
31
32
34
40
44
42
38
34
37
40
38
41
44
43
43
42
41
42
44
43
42
41
42
43
43
41
41
39
39
41
40
40
39
34
33
32
30
28
28
30
30
32
33
35
34
35
34
29
28
197
197
196
192
191
191
188
183
180
177
173
169
166
163
162
161
159
160
158
158
159
159
160
171
139
87
63
52
53
53
54
52
52
51
52
52
49
53
48
53
51
45
51
51
46
42
43
45
40
33
28
24
52
205
240
240
243
239
230
240
243
234
210
211
229
223
214
208
198
212
220
221
224
229
217
197
182
183
182
193
197
204
128
152
159
176
206
84
35
101
131
125
204
180
126
42
31
29
148
162
85
125
194
99
43
29
79
229
237
180
108
65
80
79
105
166
199
210
203
112
103
90
130
133
122
173
191
183
223
212
185
110
24
12
13
10
2
1
2
0
1
0
1
1
0
0
0
0
0
1
1
2
1
2
3
5
2
2
1
2
2
1
1
1
1
1
1
0
0
0
0
0
2
1
1
0
0
0
0
0
0
0
2
2
1
1
2
1
10
21
24
27
28
30
37
35
40
40
40
36
28
28
32
34
37
38
38
38
39
40
40
40
38
37
38
39
40
38
37
36
35
32
34
35
36
37
37
41
42
42
45
49
53
51
44
44
49
43
47
45
39
37
35
30
25
25
28
29
31
33
33
32
29
30
32
39
36
38
39
39
38
42
43
42
41
41
42
41
42
43
44
44
45
45
44
41
40
40
40
40
42
39
35
37
35
31
30
32
32
32
33
36
37
37
36
35
36
35
33
199
196
195
194
194
191
188
185
183
180
177
173
168
164
162
161
160
159
159
159
160
161
160
173
111
88
58
53
52
51
53
53
52
52
54
50
50
52
47
52
49
50
53
48
43
41
43
43
37
34
26
21
73
219
236
240
241
245
234
230
239
244
240
222
218
197
208
222
228
227
226
225
234
230
210
207
203
185
187
201
179
197
124
146
190
223
158
53
41
112
141
170
203
113
58
26
34
56
153
185
96
149
135
46
30
61
166
242
223
156
85
61
53
140
225
210
217
227
190
109
91
128
123
114
171
201
195
226
216
179
115
28
11
12
13
5
2
1
0
0
0
0
0
1
0
0
0
0
0
1
4
4
1
1
3
2
0
1
2
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
2
8
21
30
41
40
29
35
48
46
54
46
41
36
29
30
31
36
37
38
38
39
41
41
40
40
39
41
42
39
38
38
38
38
35
34
35
37
38
39
41
41
40
42
45
48
50
49
43
51
47
53
49
43
37
33
29
23
20
37
32
33
38
37
36
37
43
46
44
44
45
43
43
45
45
46
43
44
43
42
42
42
44
45
44
44
42
42
42
41
40
40
39
37
38
38
37
32
30
33
32
32
34
35
36
37
39
38
38
36
35
34
203
199
197
198
196
192
191
188
186
183
180
176
171
167
164
162
160
161
162
161
161
164
161
167
91
84
56
54
52
54
52
51
51
51
54
48
51
51
51
53
48
51
48
44
42
40
42
38
33
33
26
22
97
215
240
245
235
244
244
221
229
246
237
230
228
227
223
226
227
236
225
217
218
225
205
193
177
190
186
174
187
201
147
134
186
209
141
72
103
186
155
184
144
65
27
26
61
101
175
177
124
141
49
34
34
157
236
235
199
115
67
44
70
170
223
209
211
219
170
85
101
133
112
155
211
200
222
203
159
95
29
19
16
10
3
1
2
1
0
0
0
0
1
1
0
0
1
1
3
5
6
4
2
1
2
2
1
1
3
1
0
0
0
1
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
3
2
8
24
34
47
51
42
35
47
66
54
79
60
43
31
27
30
32
34
35
37
38
39
40
41
40
40
44
47
44
39
37
37
40
40
35
37
40
39
40
36
37
40
49
46
49
54
47
43
43
39
38
36
33
29
28
26
27
27
34
33
36
41
40
40
47
46
42
50
45
44
43
46
47
48
46
45
44
44
43
42
43
45
45
43
43
42
41
42
42
41
42
40
39
40
35
31
33
34
33
36
35
34
34
33
33
35
35
37
37
35
34
205
204
201
201
198
195
193
190
188
185
182
179
174
170
167
164
161
161
162
162
162
164
163
156
80
81
56
54
53
54
53
51
52
51
53
51
50
52
54
50
45
50
46
43
43
43
40
35
40
33
31
27
129
204
237
239
232
245
250
243
221
203
211
223
235
231
231
235
232
233
214
204
208
209
181
193
197
170
146
181
196
221
143
100
149
197
129
116
181
226
187
143
74
49
18
55
158
169
205
127
147
91
51
50
92
183
230
234
155
55
55
42
120
200
234
212
215
213
122
77
111
140
121
210
200
222
209
151
86
23
24
22
20
24
6
2
2
1
1
2
2
0
1
1
0
0
1
1
2
4
2
2
1
1
1
1
1
3
1
1
0
0
0
0
1
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
3
3
5
12
30
45
58
62
64
59
37
65
71
82
101
88
53
29
27
30
32
33
36
36
38
39
40
40
49
49
41
40
39
38
39
39
39
36
36
37
38
39
38
39
44
50
45
45
44
42
40
44
39
36
35
31
28
29
29
28
30
34
37
39
43
44
44
42
45
43
44
49
46
45
45
46
45
44
45
44
44
43
42
43
44
44
42
43
42
42
42
41
42
42
39
37
36
32
33
35
35
38
37
33
34
35
36
36
37
38
36
35
32
31
206
205
203
203
201
197
195
192
189
187
183
181
178
173
169
166
162
162
163
162
163
164
169
141
75
64
57
55
54
53
52
52
52
52
51
49
50
53
51
50
48
47
45
41
45
43
37
37
39
33
35
53
157
214
238
237
242
238
229
228
216
124
71
74
124
181
229
238
215
210
195
135
95
95
181
216
183
168
190
196
217
179
117
63
114
168
175
199
213
218
144
47
35
43
16
116
182
189
203
150
169
65
32
60
182
221
208
155
72
54
37
78
207
235
237
205
214
196
87
92
136
132
196
207
198
219
165
89
16
17
27
31
29
7
2
1
1
1
3
3
1
0
0
0
0
0
0
2
6
5
4
3
1
1
3
7
6
3
1
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
4
8
5
12
31
46
71
83
76
74
66
57
72
81
104
113
79
32
27
33
35
36
37
37
38
39
39
39
48
51
42
38
38
38
37
37
35
35
36
36
38
39
40
45
55
50
48
47
48
48
45
43
37
31
28
29
30
32
31
31
32
33
38
41
46
46
49
40
45
51
45
46
46
47
47
47
48
49
48
46
43
41
41
42
42
44
43
42
42
41
40
40
43
41
37
34
34
35
38
38
36
34
30
33
34
33
32
35
36
37
36
35
34
33
206
205
203
203
201
198
195
192
189
189
185
182
180
175
171
168
166
166
166
164
163
166
174
121
72
61
58
53
53
53
52
53
53
51
51
47
52
49
52
52
49
43
41
50
43
39
39
41
39
32
33
50
91
132
189
209
176
131
111
134
175
227
202
167
140
176
230
231
206
210
175
139
107
107
112
132
163
195
202
213
206
151
120
34
100
172
203
226
176
178
98
31
38
45
52
151
202
174
202
208
181
50
29
156
212
150
96
74
56
76
131
169
238
241
236
200
207
149
76
121
123
165
215
179
211
175
81
13
10
10
24
31
15
2
2
2
1
4
6
1
0
0
0
0
0
1
2
4
4
5
4
3
1
1
4
4
4
4
3
2
1
0
1
2
1
0
0
0
0
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
5
6
4
8
30
45
70
96
100
89
89
83
66
84
89
118
99
47
26
33
39
39
36
37
37
38
41
42
39
40
39
40
39
40
37
34
33
34
35
36
37
39
34
38
39
36
45
40
40
39
37
35
36
36
35
34
35
34
33
39
46
40
44
46
45
42
40
38
42
50
46
45
51
49
51
48
48
48
47
47
44
43
43
43
42
43
43
44
42
41
42
41
41
41
38
37
38
39
41
36
34
33
35
34
33
32
35
35
34
32
33
33
33
31
207
206
205
205
201
197
197
195
194
191
189
186
181
180
176
171
170
169
167
164
163
164
171
104
68
57
53
52
53
52
52
52
51
51
51
49
52
49
54
50
49
43
40
47
37
38
42
41
40
33
34
65
97
51
52
94
162
173
122
80
83
148
218
207
193
198
205
203
198
174
155
172
164
101
62
91
190
219
202
203
189
155
87
32
118
163
216
226
127
129
84
33
47
66
97
190
192
144
188
215
135
24
94
206
215
132
76
60
66
148
169
223
242
240
210
184
168
88
99
128
144
223
180
173
160
67
14
11
4
15
41
19
2
1
1
1
1
2
3
1
0
1
1
0
1
1
6
6
5
7
4
1
2
3
2
2
2
3
2
0
1
2
2
1
1
1
1
1
5
3
0
1
1
1
1
0
0
0
0
0
1
0
0
0
1
4
5
4
6
31
46
60
78
96
92
91
90
78
74
109
137
132
85
52
25
24
33
34
32
32
32
36
38
36
35
35
36
36
35
34
34
32
32
32
33
37
35
42
52
46
41
42
40
40
41
40
37
36
38
40
42
41
44
44
44
42
42
40
40
39
36
44
47
47
57
47
47
55
51
48
45
45
46
47
48
48
46
45
44
44
44
45
43
41
40
41
40
40
40
39
39
39
40
38
36
35
35
35
33
35
35
33
32
34
34
37
36
34
34
207
205
205
206
201
200
198
196
195
194
191
189
184
182
179
176
171
170
169
165
164
167
163
77
68
59
53
55
56
51
54
53
52
52
49
51
49
48
52
48
50
43
45
40
30
40
42
40
39
32
32
70
145
166
96
68
98
185
188
159
146
187
228
181
116
84
76
103
74
46
53
129
205
204
183
223
227
189
171
217
187
117
110
99
166
198
218
172
130
147
65
38
85
100
132
183
161
148
196
155
49
102
177
210
180
141
64
50
82
179
161
203
233
228
166
151
96
93
124
122
207
185
145
126
54
7
4
4
17
37
21
1
1
1
1
0
1
0
1
2
2
4
1
1
1
7
7
6
4
7
5
1
1
4
4
3
1
3
6
3
3
2
1
0
0
1
2
6
4
1
0
0
0
0
0
0
0
0
0
1
1
0
0
0
2
8
6
7
11
38
51
65
83
96
92
91
92
87
96
95
125
137
113
68
40
21
24
33
35
33
33
29
33
32
31
29
27
28
28
30
30
31
30
31
32
35
33
40
44
38
45
47
46
51
47
49
48
46
47
47
51
49
44
42
41
42
44
42
42
41
53
51
48
48
47
46
44
45
44
49
50
49
46
46
47
48
46
45
44
43
44
43
41
42
41
39
39
39
39
39
40
40
38
37
35
34
34
35
37
33
31
33
32
34
36
38
37
36
36
207
206
207
206
203
202
201
196
195
196
194
191
187
185
183
180
176
172
170
167
163
168
147
64
58
55
54
58
57
52
52
51
52
53
52
51
48
50
50
51
47
44
41
33
33
41
38
44
36
31
33
64
128
199
178
188
197
210
193
96
45
76
145
195
218
217
211
215
199
184
201
204
204
202
204
195
169
183
207
219
146
112
135
168
215
202
164
109
169
129
62
67
118
118
165
193
177
199
184
74
82
209
179
170
97
68
51
65
127
202
169
164
224
217
137
89
89
128
126
178
216
139
111
32
8
4
4
13
47
33
8
0
1
1
1
1
0
1
0
1
1
1
1
1
2
7
6
4
3
3
2
1
1
1
2
1
2
2
3
1
1
0
0
0
0
3
9
5
1
1
0
0
0
0
0
0
0
0
0
1
0
0
1
0
2
7
5
8
14
40
55
67
79
86
90
92
92
94
98
118
134
145
128
71
27
37
23
23
34
39
40
33
33
33
32
31
31
31
30
32
29
27
27
32
32
39
40
38
41
44
46
48
45
41
40
38
40
42
44
44
43
45
43
41
46
41
36
37
41
40
39
38
41
43
41
44
40
42
47
46
47
48
46
45
46
45
42
43
43
41
42
42
40
40
41
40
37
37
38
39
39
38
38
37
37
35
35
34
32
33
34
33
33
34
35
35
35
34
33
207
206
206
205
203
203
201
197
196
196
196
193
190
189
186
183
181
178
173
170
167
177
134
67
57
56
54
55
51
51
52
50
51
50
52
51
48
51
49
50
45
45
39
32
41
42
42
41
36
33
29
36
89
185
213
208
232
236
226
212
164
98
90
146
203
219
218
203
191
200
200
204
193
153
93
77
144
196
199
205
136
104
180
223
199
129
115
104
187
137
99
165
163
131
173
220
217
209
131
65
179
161
89
69
63
49
63
132
173
226
183
171
210
215
116
72
131
131
149
216
168
79
26
3
6
9
10
17
14
2
1
0
1
0
0
0
1
1
1
1
3
3
1
1
4
5
6
5
4
1
0
1
2
2
1
5
6
2
3
1
1
1
1
0
5
10
3
1
1
0
1
0
0
0
0
1
1
0
0
1
0
0
1
0
1
2
5
9
19
42
54
66
77
86
91
91
92
102
107
110
138
159
148
96
30
33
37
22
25
27
38
42
40
40
36
38
41
40
36
37
38
45
41
34
37
39
41
43
37
47
50
46
41
40
38
38
39
39
40
40
39
39
38
33
35
38
37
38
39
41
46
46
41
45
42
44
40
42
47
44
44
43
45
44
43
42
42
41
41
40
43
42
41
41
42
40
39
39
40
38
38
37
36
38
38
36
34
34
34
34
32
29
33
36
38
38
37
35
32
208
207
206
206
204
202
200
198
197
196
197
196
192
191
188
184
183
181
176
173
171
181
115
67
57
55
52
53
51
51
52
52
47
48
50
51
50
51
50
50
45
43
35
36
46
44
41
38
36
35
29
28
32
97
158
180
184
203
205
220
231
238
229
232
235
238
221
207
211
200
187
168
179
193
185
93
62
122
204
220
116
73
192
218
160
135
107
67
180
165
153
213
201
120
163
228
233
212
99
86
102
40
39
40
58
129
203
197
224
237
175
146
186
186
90
106
141
115
195
194
82
14
3
4
6
11
16
12
2
0
0
1
0
1
0
0
1
1
1
0
1
2
1
2
3
7
8
3
3
2
0
1
1
2
4
3
4
3
2
1
0
1
0
3
9
6
1
1
0
1
0
0
0
0
0
1
1
0
0
2
0
0
1
0
1
1
4
6
18
39
49
65
78
88
91
93
95
107
108
105
118
141
149
78
35
23
35
25
21
22
23
34
41
41
44
48
53
53
48
54
51
51
56
45
40
38
42
46
39
49
50
48
46
38
35
34
38
35
34
31
29
33
30
32
38
41
39
43
42
42
44
48
46
49
46
44
42
40
41
40
40
40
39
39
39
42
42
44
46
45
45
42
41
43
44
42
40
41
40
39
39
40
39
38
39
37
36
35
32
29
31
36
35
35
34
34
34
34
34
208
208
207
205
204
204
202
198
197
197
197
197
195
194
190
188
187
184
180
178
177
173
95
74
55
54
53
53
52
53
54
52
45
50
50
51
50
50
51
52
45
39
37
42
46
42
43
38
34
35
42
63
55
30
33
43
59
102
148
216
231
217
206
196
130
90
69
72
72
60
50
57
103
179
214
204
190
185
223
197
100
35
151
205
188
196
73
49
178
205
192
224
215
125
170
225
235
188
54
40
36
108
75
59
105
142
209
199
231
234
160
116
153
117
90
128
122
180
195
99
13
6
7
8
14
11
3
3
2
2
2
1
0
0
1
1
3
4
3
2
1
0
1
2
4
12
8
2
4
1
0
1
1
2
3
4
4
3
4
3
3
1
2
10
3
2
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
3
1
3
7
14
30
46
68
85
93
89
95
97
108
107
106
94
99
104
93
39
25
23
36
28
17
18
18
27
33
35
38
45
44
46
45
46
58
61
55
57
62
65
58
48
48
46
44
42
37
34
34
28
25
29
27
37
40
45
51
53
49
56
47
42
41
45
53
46
44
45
45
41
42
43
42
44
46
45
43
43
43
41
38
38
38
39
41
41
41
43
43
42
41
40
41
41
40
37
37
37
37
32
30
32
34
35
35
35
34
35
33
31
31
31
206
207
207
206
205
204
202
199
198
198
198
198
197
196
193
191
189
185
183
181
185
156
84
76
54
54
53
53
52
53
55
48
46
50
50
49
52
50
53
46
48
43
41
43
43
45
39
37
33
37
43
101
127
111
97
74
76
75
100
191
225
224
210
190
156
131
130
155
180
155
96
103
131
210
215
202
232
223
187
188
134
48
139
214
228
182
60
53
175
228
211
232
201
125
192
228
214
94
20
36
103
182
105
47
37
90
201
190
220
237
145
102
111
85
124
120
134
191
124
17
3
7
12
7
4
1
2
7
9
8
2
3
1
1
0
2
7
9
2
2
1
0
3
2
8
8
3
2
1
0
1
1
3
5
3
1
2
4
4
14
11
1
10
6
2
0
0
1
0
0
0
0
0
1
0
0
1
0
0
0
0
1
0
0
4
4
2
5
10
24
45
68
83
90
87
94
95
100
103
96
83
63
48
38
32
20
22
24
41
31
18
12
17
20
28
43
43
52
52
60
51
53
57
65
75
82
90
86
77
63
59
48
35
20
13
13
17
24
26
33
45
48
54
57
56
56
54
51
46
46
50
46
50
43
44
46
43
42
41
40
40
41
42
40
39
40
39
38
40
41
42
42
43
41
41
41
41
40
41
42
40
37
36
36
34
32
34
37
36
35
33
34
33
33
33
34
32
31
30
205
206
207
206
205
204
202
201
200
201
201
201
200
198
196
195
192
189
186
186
190
124
68
67
52
54
53
54
53
53
54
48
47
49
50
48
53
47
48
41
52
42
43
42
46
42
38
36
32
31
46
76
145
168
169
195
216
214
206
210
201
189
169
178
204
219
220
212
205
210
212
210
216
217
208
228
223
192
195
208
164
140
190
242
202
127
66
71
181
236
226
240
203
125
149
221
139
42
63
141
177
153
55
39
43
170
227
190
236
221
113
89
83
102
124
111
161
135
31
3
8
12
7
2
5
5
5
13
7
2
3
3
1
1
1
5
6
4
3
3
1
2
3
4
6
2
4
2
1
0
3
7
6
5
2
4
5
4
4
9
17
10
11
2
1
0
0
2
1
1
0
0
0
1
0
1
1
0
0
0
0
0
0
0
3
5
4
5
6
20
42
61
71
78
84
86
90
92
89
80
81
59
28
13
31
19
23
23
30
38
24
10
10
11
7
20
34
42
55
59
63
66
63
68
78
87
96
101
99
85
77
82
63
55
45
50
51
50
42
36
34
38
44
49
53
47
48
41
43
44
45
48
48
45
44
47
43
43
42
43
40
39
39
38
38
39
40
38
42
43
44
45
43
43
40
39
40
41
41
40
40
40
37
35
36
39
38
38
39
35
33
32
33
32
31
32
30
27
28
206
206
206
206
204
203
203
202
201
201
202
203
200
198
197
196
195
192
190
190
194
106
65
62
51
51
54
53
52
53
52
50
49
50
50
50
54
51
43
47
45
43
45
44
41
39
36
33
31
30
27
53
131
175
196
197
209
212
188
94
45
30
26
61
166
218
220
217
221
217
208
214
202
217
226
207
189
209
184
182
183
217
237
229
127
115
123
128
187
231
237
244
193
107
126
172
103
41
136
185
114
50
38
47
164
242
213
201
239
175
90
76
101
118
94
119
122
34
7
11
8
4
6
7
10
8
10
6
4
4
5
3
2
3
4
5
3
6
4
1
1
2
1
3
4
3
6
2
1
2
7
10
3
1
2
3
6
7
8
5
11
22
9
2
0
0
1
2
1
1
0
1
0
1
1
0
1
0
0
0
0
0
1
1
3
1
1
3
2
11
31
51
56
62
68
71
76
78
72
61
67
65
27
15
24
28
22
27
26
33
35
16
11
10
7
8
16
32
52
63
75
94
103
92
91
90
106
114
114
96
86
93
90
96
65
56
53
54
60
63
61
49
37
33
38
38
43
49
52
48
45
46
43
45
43
46
46
45
44
43
41
39
40
40
40
42
41
40
42
40
38
39
41
42
40
39
42
43
42
41
40
40
39
38
39
39
39
37
36
35
33
32
30
29
28
29
31
31
30
206
206
206
205
203
204
204
203
202
202
202
201
198
198
198
197
197
196
193
193
187
91
67
59
55
54
54
52
54
52
52
52
51
50
50
51
50
52
45
52
43
46
43
45
40
40
38
31
31
30
25
19
29
72
128
154
167
189
201
161
130
114
143
177
197
178
135
101
81
130
194
211
177
194
190
216
190
102
139
196
229
231
227
183
118
155
168
174
197
233
241
239
170
87
103
114
56
42
171
145
43
35
65
162
237
243
191
207
222
115
59
84
125
100
80
104
40
14
17
16
14
18
10
12
14
10
7
4
5
4
4
2
3
3
2
5
4
5
4
1
1
0
1
3
1
2
5
10
6
3
4
4
2
1
3
4
6
6
9
4
6
7
3
2
1
1
0
1
1
1
1
2
0
0
0
0
0
0
1
0
1
0
1
1
4
1
0
2
1
2
19
44
45
49
54
57
63
65
60
48
52
50
22
15
18
34
23
27
29
26
37
26
13
11
13
10
8
17
42
52
66
81
104
122
116
100
111
133
125
106
102
96
104
102
96
78
75
71
64
69
65
62
55
44
44
33
32
35
39
44
44
49
49
47
45
47
44
41
40
38
40
39
38
39
40
40
38
38
39
38
36
37
39
37
37
36
38
41
40
41
41
41
41
39
40
39
38
37
35
34
32
30
30
31
32
30
29
30
31
206
206
206
205
204
204
205
205
204
204
204
204
201
199
197
199
198
197
196
196
175
80
64
59
53
54
54
54
54
52
54
52
51
51
53
52
51
47
49
47
45
44
46
42
40
51
30
30
29
33
43
44
44
34
31
35
46
61
81
141
218
228
216
180
94
52
35
50
105
125
98
55
44
58
116
221
196
44
75
180
204
217
223
154
154
201
203
176
174
219
238
222
143
86
70
47
25
97
209
110
39
39
158
209
240
243
170
198
164
56
62
107
107
76
81
34
14
28
25
20
19
16
12
14
16
13
7
5
5
5
6
6
5
5
3
3
4
4
2
0
0
0
1
2
4
7
13
12
3
2
2
3
3
2
2
4
4
5
6
5
5
5
2
2
1
1
1
0
1
1
2
1
0
0
0
0
1
1
1
0
0
1
0
2
2
1
1
3
3
1
6
25
26
26
36
39
54
60
53
42
42
47
24
15
14
31
25
27
29
25
29
34
23
13
12
13
12
9
25
38
56
64
101
123
135
110
106
143
148
122
105
97
103
99
97
83
78
78
67
68
63
59
54
50
49
48
42
38
36
37
37
39
44
41
41
44
46
44
41
39
42
41
38
38
38
38
37
36
37
38
37
37
37
38
36
37
40
44
42
41
41
41
40
38
38
38
37
35
33
32
34
33
32
33
30
30
30
32
33
206
205
205
205
205
203
203
203
204
204
204
206
203
201
199
201
200
198
197
197
154
66
60
54
53
52
54
53
51
51
55
53
51
53
52
52
46
47
49
47
46
45
46
37
34
34
25
32
31
32
88
120
119
139
105
66
44
46
54
100
185
209
209
203
193
196
185
201
222
211
168
102
87
125
182
231
215
77
24
153
216
217
212
163
171
230
187
118
95
213
235
211
151
87
32
33
79
164
216
112
52
49
77
180
244
243
145
156
81
46
86
101
70
72
53
18
18
19
20
14
14
15
17
14
13
10
8
5
6
12
8
7
6
4
6
4
4
7
4
1
2
1
2
3
8
16
8
7
3
4
5
4
3
3
4
5
4
4
7
4
4
2
2
2
2
2
2
1
2
1
8
2
0
0
0
0
1
1
0
0
0
1
1
3
1
1
1
2
3
1
2
19
46
32
31
36
44
48
38
35
41
34
22
16
14
24
30
29
28
25
25
33
28
17
11
13
11
7
13
19
37
65
111
111
137
125
112
132
154
152
122
103
92
97
94
87
75
76
73
62
61
59
54
50
49
50
42
46
41
41
41
42
50
44
47
42
47
44
41
41
41
39
38
39
38
38
37
38
39
39
36
37
37
36
31
34
36
36
37
38
38
39
37
36
37
37
35
36
36
35
35
34
33
32
31
32
31
33
34
206
205
205
206
206
204
203
204
204
204
204
206
205
203
203
204
202
201
198
201
136
59
61
53
54
53
53
53
51
52
54
53
51
52
52
50
48
50
49
48
45
47
40
37
37
31
31
28
24
54
135
160
170
196
220
189
178
184
143
90
146
129
76
130
164
207
225
219
220
222
226
197
189
230
241
225
199
108
28
137
214
210
178
126
204
232
179
48
104
213
227
233
168
69
56
135
185
183
186
66
42
30
59
207
241
236
150
103
48
61
90
77
56
52
36
31
17
13
14
12
10
14
23
21
14
12
5
7
10
14
8
5
5
5
5
4
7
5
1
1
1
2
4
4
11
8
8
8
7
9
7
5
4
3
5
7
9
8
9
8
3
4
3
2
3
3
5
1
2
1
8
1
1
0
0
0
0
0
0
0
0
0
1
1
0
0
1
1
2
0
1
11
37
41
28
29
35
35
31
35
40
32
19
18
16
19
31
32
30
28
28
30
33
26
16
15
12
9
11
13
21
60
117
113
139
139
122
130
147
161
154
115
88
95
92
90
79
74
69
64
58
62
55
49
48
51
46
45
41
43
43
39
41
41
39
46
45
43
41
41
39
38
38
38
39
39
38
37
37
37
34
34
27
29
28
28
29
31
35
37
37
37
36
35
36
35
36
36
35
35
36
35
34
33
33
32
33
34
34
206
205
206
206
206
206
206
206
205
205
205
206
206
205
204
204
201
201
200
208
114
59
67
56
52
53
52
53
51
52
54
53
51
50
51
49
49
50
49
46
50
45
40
41
36
37
26
23
25
66
134
141
183
217
227
217
214
194
167
132
47
64
54
41
59
147
222
235
237
229
207
210
226
234
238
215
155
129
120
159
228
216
86
112
225
203
101
41
162
217
236
232
137
69
115
206
206
174
107
31
33
49
128
175
230
233
187
73
41
71
89
57
49
41
42
23
15
10
8
13
11
18
30
28
18
14
9
17
13
10
4
4
4
6
8
6
7
4
2
1
1
3
4
8
7
8
10
10
10
8
5
4
4
6
6
10
11
12
11
10
4
3
5
5
4
8
4
2
2
1
3
1
1
0
0
0
0
0
0
0
0
0
1
1
2
1
1
0
1
2
2
3
17
26
18
24
25
28
33
37
38
32
19
18
18
16
26
31
31
30
29
31
32
29
22
15
15
13
14
13
15
65
121
108
133
149
131
142
147
160
169
139
99
90
94
85
81
75
69
64
61
60
59
53
53
51
42
46
42
47
45
45
46
41
35
41
41
42
42
41
41
41
38
37
36
34
34
36
35
33
32
33
28
28
27
27
31
35
38
39
38
37
35
34
34
35
35
35
34
34
34
33
34
33
33
32
33
35
34
206
205
206
206
207
206
205
206
205
205
205
206
206
205
204
204
201
203
200
211
90
70
65
64
49
55
52
51
50
50
55
52
53
54
50
48
49
49
47
51
49
41
45
40
39
31
19
23
23
39
80
115
156
195
208
186
177
198
204
180
133
80
56
67
136
205
233
216
170
168
167
203
229
239
234
180
131
170
196
228
208
148
49
99
198
181
68
107
208
231
235
192
110
78
130
224
206
111
27
31
62
185
195
170
222
228
214
77
40
74
66
41
42
42
49
25
20
8
7
12
10
27
21
13
17
13
16
16
10
6
3
4
5
6
8
12
6
2
1
1
2
4
6
8
6
8
9
10
7
5
3
3
5
10
11
23
29
17
11
9
11
7
6
5
10
6
1
1
0
1
3
1
0
0
0
0
0
0
0
0
0
0
1
3
1
1
1
1
1
3
2
1
7
21
16
17
22
27
37
40
39
26
18
18
18
16
24
28
33
32
31
31
31
34
28
19
15
13
9
5
11
61
126
113
126
141
133
149
139
162
164
158
134
108
88
88
81
80
75
67
61
57
58
51
50
52
44
47
43
46
46
42
44
40
40
48
39
43
43
40
37
38
37
36
36
36
35
35
35
37
36
33
34
31
30
31
35
36
38
39
38
37
35
34
36
36
36
35
34
34
35
34
35
35
36
34
34
35
35
206
206
205
206
206
206
205
205
205
205
206
206
205
205
203
204
204
205
202
206
82
84
65
63
49
55
53
50
50
51
55
52
52
51
50
51
50
49
49
46
46
46
45
45
35
21
21
20
21
23
31
21
29
54
106
172
200
219
226
219
216
200
197
221
222
178
113
67
32
28
58
167
240
240
219
147
158
217
225
222
147
107
33
111
224
156
97
143
193
229
208
130
61
52
135
232
144
45
34
68
185
232
186
172
223
223
219
107
39
52
39
43
50
37
25
43
18
7
6
10
9
18
6
8
9
10
19
12
3
4
4
5
6
9
6
9
5
1
0
2
5
6
7
4
5
10
10
7
5
4
4
3
4
9
20
40
17
13
8
8
7
7
8
14
9
2
0
0
0
1
2
1
0
0
1
1
0
1
0
0
1
1
4
7
3
1
1
2
0
2
3
2
2
19
29
19
11
14
24
33
37
21
17
17
18
17
23
26
34
37
35
31
32
33
28
24
17
14
12
11
18
67
126
122
120
147
129
145
126
146
162
168
149
126
108
95
82
80
76
69
62
59
55
55
51
46
46
53
44
50
46
40
42
40
41
43
41
43
40
39
39
37
37
33
31
29
31
33
35
38
35
34
35
33
33
34
35
37
38
40
40
40
37
35
36
35
36
33
34
36
37
36
36
38
38
36
37
37
36
206
206
206
206
206
206
205
205
205
206
206
206
205
205
204
204
205
207
203
196
84
81
67
62
50
54
53
51
50
52
54
53
50
49
52
52
51
47
47
44
48
48
45
38
29
23
19
21
51
63
99
89
63
47
62
125
135
109
112
160
229
240
232
233
211
161
106
72
69
105
160
226
245
225
207
159
189
232
222
166
115
144
73
158
221
143
109
136
211
218
160
66
40
43
152
209
103
48
73
122
227
234
186
176
222
202
180
97
51
33
32
43
42
17
41
59
17
10
7
7
6
5
4
9
8
10
14
10
7
5
4
6
8
9
8
5
4
1
1
3
10
10
5
5
9
11
7
6
4
5
7
5
7
19
42
16
13
10
9
8
6
3
4
5
9
5
1
0
0
1
0
0
0
0
0
1
1
1
1
1
2
3
3
5
2
1
1
1
0
2
2
1
2
5
26
37
12
7
14
28
28
17
16
15
19
16
18
22
31
37
35
32
31
29
30
27
24
16
17
19
25
79
128
128
114
155
145
135
140
126
159
150
165
133
101
108
99
86
77
70
65
59
54
52
53
46
45
51
49
52
49
40
42
42
43
53
46
42
39
41
35
33
37
32
29
27
32
35
38
41
35
31
33
33
33
34
36
37
38
39
38
38
38
36
36
34
33
34
34
35
37
37
37
36
36
37
36
35
35
206
207
205
205
206
206
205
205
205
205
205
206
205
205
205
205
205
206
204
186
79
67
70
60
52
54
53
52
51
52
52
54
50
49
51
48
47
49
46
50
50
47
39
33
29
21
18
30
73
109
124
141
167
119
56
37
36
38
67
142
220
204
173
162
200
221
218
214
221
237
229
230
232
227
206
155
215
224
196
118
126
171
166
222
224
150
111
191
209
154
70
44
58
153
197
187
124
60
46
94
228
226
214
189
175
144
125
73
68
40
16
39
49
16
71
56
19
10
8
6
6
6
5
7
9
8
13
9
8
5
7
7
13
14
11
9
2
1
2
6
10
9
6
8
15
8
5
9
11
13
19
11
21
37
14
11
14
10
8
7
5
5
5
6
2
1
1
0
0
1
1
1
0
0
1
2
1
11
10
2
1
2
3
3
2
1
5
8
2
1
1
1
2
3
8
26
29
8
11
21
17
12
13
14
17
16
18
21
27
33
32
31
30
29
33
31
28
29
28
25
40
94
136
128
109
145
166
132
157
127
144
154
135
164
124
101
89
90
91
76
68
61
55
51
51
47
42
45
51
53
50
49
47
38
37
51
51
46
46
41
40
39
36
34
35
35
32
29
30
32
38
39
37
34
35
35
36
38
38
37
38
37
37
37
35
36
35
36
35
37
39
37
37
37
35
34
35
35
34
206
206
206
205
205
206
205
205
205
205
206
206
206
206
205
206
205
206
207
181
76
64
68
55
50
54
53
54
51
53
53
52
53
51
49
47
46
45
47
52
51
43
35
30
27
22
27
38
79
80
136
189
194
182
151
160
143
154
164
108
94
54
46
105
169
162
145
174
225
229
222
232
230
202
161
178
234
196
168
114
118
190
214
225
229
159
103
191
181
108
87
111
181
192
159
159
89
40
22
94
204
205
216
209
197
219
179
66
63
78
26
36
55
24
64
54
30
14
8
7
6
4
6
8
6
11
18
9
8
7
11
11
20
25
17
10
1
2
2
6
6
8
8
11
12
5
7
10
10
14
16
18
25
13
10
12
12
10
10
8
8
7
5
4
3
0
0
0
1
1
1
0
0
0
1
3
7
24
14
7
10
3
3
4
2
1
10
14
5
1
0
0
2
3
3
11
29
11
8
11
10
10
13
14
18
17
19
22
24
29
29
29
30
31
31
32
33
35
45
45
60
113
139
128
117
126
157
154
156
150
132
149
144
151
164
120
104
82
72
66
68
61
55
54
51
51
50
38
49
51
52
51
45
44
44
47
50
49
50
47
43
40
42
40
39
39
39
35
33
33
32
32
36
36
35
36
37
38
38
38
39
37
37
38
36
37
36
37
35
36
38
38
40
40
38
35
36
37
35
206
206
206
206
206
205
205
205
206
206
207
207
206
206
206
207
207
207
209
178
76
64
58
57
47
54
52
52
51
52
54
51
52
51
49
44
43
46
50
50
46
38
33
31
34
31
25
31
29
48
137
160
170
209
211
219
220
219
191
158
150
111
64
59
54
37
46
130
231
242
221
222
185
140
146
217
230
109
98
107
130
218
232
216
193
113
82
200
148
118
160
202
223
176
92
50
39
29
71
118
164
205
227
221
227
224
142
88
57
85
75
30
36
15
48
57
24
25
16
10
9
6
10
9
10
19
13
7
8
9
12
13
16
19
13
4
2
4
6
7
7
9
8
12
9
6
8
13
15
13
13
13
9
10
9
10
9
8
10
10
11
7
7
4
2
0
0
0
0
0
0
0
0
0
1
4
22
38
24
21
16
6
12
3
1
2
13
15
9
4
2
1
1
2
3
4
17
24
9
8
10
9
12
14
18
18
19
19
20
24
26
27
28
29
29
32
34
28
48
65
85
125
141
134
128
121
137
153
155
163
140
135
154
150
168
166
131
94
68
62
61
58
54
57
55
55
54
48
47
55
53
49
49
46
46
43
44
47
41
42
44
44
41
41
40
44
40
34
36
39
40
41
38
38
36
39
38
38
38
39
38
38
38
36
37
36
36
38
36
37
38
38
36
34
35
35
35
37
36
206
206
206
206
206
206
205
205
206
206
207
207
206
206
207
207
206
207
211
176
74
62
58
54
50
53
53
52
50
52
52
52
52
50
48
43
43
47
49
49
42
34
33
38
39
31
30
27
28
26
62
130
207
220
225
215
194
139
124
162
225
223
197
167
100
102
148
199
237
203
122
75
57
66
126
186
223
76
44
113
162
223
222
197
157
58
95
201
161
147
181
223
198
90
39
31
22
86
139
123
172
215
236
241
241
186
139
137
73
68
92
60
18
30
34
80
28
36
43
25
10
11
16
17
10
14
9
10
10
13
13
14
18
15
7
4
0
3
7
9
9
7
8
9
5
11
14
13
12
12
7
9
9
8
7
7
8
8
10
8
6
4
6
6
2
0
0
0
0
1
3
1
0
0
5
22
29
28
41
42
15
9
13
1
1
3
16
16
16
9
3
0
0
3
5
6
7
16
14
12
11
10
12
13
17
17
18
18
20
22
25
25
25
27
28
31
29
33
47
78
95
127
142
144
131
130
114
150
152
170
156
132
143
160
152
178
181
140
73
53
57
58
53
53
53
54
53
50
50
50
51
49
49
44
46
55
53
45
39
39
39
41
44
47
45
39
39
40
34
35
34
38
39
46
38
37
38
39
39
39
39
40
39
36
36
35
35
34
34
35
38
40
38
39
39
38
39
37
36
205
205
206
207
206
206
206
206
207
206
206
206
206
206
207
208
207
208
213
169
88
74
60
51
55
54
56
55
55
52
53
52
50
50
45
45
44
46
49
46
38
33
40
41
36
31
29
34
52
33
30
75
126
138
170
121
64
36
42
121
219
239
225
219
206
230
234
232
226
159
71
42
32
43
70
167
238
111
19
93
190
209
197
197
136
35
131
196
170
181
235
228
135
58
66
92
146
200
217
206
214
228
239
236
193
136
151
165
164
63
59
73
38
54
44
79
75
28
37
35
11
12
13
15
26
31
13
14
15
17
14
13
10
5
2
3
10
18
10
7
7
7
7
6
4
10
7
12
14
8
8
10
9
9
8
8
9
9
5
7
7
11
7
5
1
0
1
2
2
6
3
3
4
12
40
33
19
21
45
37
7
10
5
2
5
7
20
18
19
18
12
7
4
4
7
10
10
12
17
16
13
11
11
11
14
17
17
18
20
22
24
23
23
27
26
27
30
39
58
86
105
135
143
158
150
129
120
124
155
151
179
153
139
159
163
167
173
180
149
98
58
52
55
53
50
47
47
49
44
50
54
51
47
49
47
41
51
46
40
43
41
34
39
40
38
37
42
39
37
37
43
47
43
36
38
37
38
38
39
38
40
39
37
39
38
37
36
35
36
35
36
35
34
34
33
35
35
36
35
206
206
207
206
206
207
208
207
206
207
207
207
207
206
207
208
208
209
212
167
85
65
56
52
55
53
54
55
53
52
52
51
48
47
47
45
45
48
45
40
34
42
44
39
35
31
25
34
80
74
33
22
23
24
57
100
133
141
171
198
230
235
218
221
232
232
226
212
171
139
173
180
182
176
175
225
240
130
12
92
182
162
185
223
96
47
114
196
212
224
220
187
128
60
103
142
169
194
199
204
220
221
213
174
148
153
163
178
201
160
48
39
47
33
41
58
78
80
31
31
12
16
17
22
32
22
16
16
19
19
19
14
8
4
5
7
9
9
4
6
6
6
8
9
8
7
9
9
9
10
11
9
8
10
11
9
10
8
8
16
15
10
5
2
1
0
1
2
3
8
1
1
7
36
34
14
21
28
32
31
12
14
2
7
9
11
27
24
19
20
15
10
6
5
9
10
11
14
19
20
17
12
11
9
12
18
18
18
20
22
24
24
24
23
25
28
30
41
77
100
107
140
150
159
172
132
116
120
146
142
160
186
149
157
175
168
166
171
167
127
83
49
53
52
52
49
46
49
49
47
53
49
47
49
48
52
51
51
37
39
36
38
43
37
37
38
35
40
41
41
39
38
35
42
41
39
40
39
38
38
39
38
37
38
39
41
39
40
37
37
37
37
39
39
37
40
36
34
36
207
207
207
206
206
207
208
207
207
207
207
207
207
207
206
207
207
209
215
169
82
63
53
50
53
53
52
52
51
51
53
50
49
47
49
43
47
46
41
35
40
47
42
37
34
31
23
23
75
128
124
125
132
129
162
199
227
227
211
222
224
206
204
220
230
220
187
143
93
102
151
209
229
217
208
236
228
127
37
82
131
163
225
195
79
87
184
230
233
226
205
128
91
75
155
191
206
211
212
207
182
164
189
209
217
207
190
186
177
150
100
55
53
43
18
41
71
83
61
27
20
19
22
23
21
15
16
20
25
17
16
13
14
35
21
5
2
5
6
7
8
8
12
9
6
8
13
13
10
9
13
12
17
18
10
9
11
10
13
12
8
8
5
1
2
0
0
4
3
7
1
8
10
35
32
20
23
34
42
31
24
14
4
8
4
13
27
25
21
20
17
13
11
8
9
9
9
13
20
23
21
13
10
9
11
17
18
18
20
23
24
24
26
24
24
26
29
39
81
120
122
150
158
151
164
150
119
118
125
151
137
177
176
155
171
185
170
156
172
131
103
63
47
46
48
47
45
44
49
51
50
50
51
52
41
47
50
49
43
38
39
42
48
36
38
35
36
35
34
31
33
40
44
46
38
38
41
41
40
41
38
39
38
37
36
36
37
38
38
38
37
38
37
36
34
37
36
33
35
207
207
208
207
207
206
207
208
208
208
208
208
208
209
208
207
207
209
212
150
69
61
54
50
52
51
51
52
51
52
54
49
51
54
43
43
48
45
35
41
46
46
39
36
33
25
22
22
66
146
194
207
215
230
228
220
235
201
155
151
118
85
117
198
230
166
58
36
27
32
93
208
237
221
214
236
205
104
94
124
160
192
224
173
111
149
205
224
230
227
159
50
49
126
201
226
219
205
197
200
208
223
225
212
188
146
109
89
106
140
132
70
66
70
61
31
54
97
89
64
31
22
22
32
26
16
15
20
21
15
10
13
35
29
7
4
2
7
6
5
9
12
9
5
5
9
7
8
7
9
12
12
23
16
10
10
11
13
8
8
7
8
5
6
4
3
2
2
3
8
8
7
7
38
22
19
19
24
27
18
13
9
14
11
3
19
28
28
29
23
19
17
17
13
10
9
11
15
20
23
23
19
14
10
12
15
19
21
21
22
23
25
25
27
26
26
29
39
86
131
139
156
162
163
158
165
128
126
122
135
149
143
173
166
139
164
178
164
143
140
113
80
68
43
43
47
46
45
51
49
45
40
48
48
45
47
44
42
42
42
39
36
34
31
36
38
37
40
40
39
36
34
32
33
35
36
41
42
41
41
41
39
41
39
37
41
37
36
36
35
35
39
42
40
37
34
33
32
33
207
208
208
206
206
207
208
207
207
208
208
208
207
208
209
208
208
208
209
123
61
62
56
50
50
50
50
50
52
52
52
50
53
51
40
44
45
40
41
47
45
43
34
34
26
23
18
20
32
78
131
186
214
225
235
229
203
134
104
76
66
78
146
220
233
181
87
87
110
139
196
230
225
203
218
230
155
96
134
171
169
131
139
166
127
147
192
233
215
147
72
43
47
125
208
204
182
178
204
210
199
173
143
143
126
109
92
65
47
96
148
92
56
49
55
48
18
46
89
98
34
40
26
31
23
18
15
14
15
12
14
15
12
9
5
2
3
5
5
8
12
9
6
6
6
10
6
9
9
13
10
17
14
12
11
11
9
8
8
8
8
8
7
3
2
2
3
2
3
12
9
2
28
44
11
24
28
23
23
16
11
12
12
4
7
28
30
28
31
27
24
22
21
18
14
12
13
18
21
23
25
25
21
14
11
13
19
21
21
21
22
24
25
26
27
26
31
47
86
115
142
162
168
170
160
159
138
133
127
123
131
154
155
177
136
122
147
159
138
124
102
86
76
63
56
42
36
44
50
45
45
48
49
43
46
42
43
41
36
34
36
43
36
32
32
34
40
38
36
38
39
40
37
31
32
35
38
40
41
40
42
41
44
42
40
37
37
37
38
37
36
37
37
36
34
34
33
33
36
208
208
207
207
207
207
208
208
208
208
208
208
208
209
208
208
210
207
209
108
58
64
55
52
55
49
51
51
50
51
51
52
54
45
38
44
42
41
49
47
45
38
34
27
29
27
19
22
40
52
38
110
211
234
213
171
135
137
192
218
221
216
216
203
192
148
154
219
234
224
235
216
185
195
211
173
149
129
180
176
125
55
101
168
148
173
155
193
114
72
73
59
70
132
159
160
176
205
208
186
162
171
188
182
144
110
74
35
23
18
50
71
55
47
44
43
41
18
29
76
58
43
41
28
19
18
17
13
14
15
13
9
3
3
3
3
6
7
9
11
11
10
8
7
6
9
12
12
11
15
13
11
8
9
11
7
8
8
7
8
8
9
7
2
3
2
3
2
4
11
7
27
38
13
19
30
29
22
19
18
13
14
9
10
15
46
33
30
30
29
29
25
22
22
20
18
17
19
20
22
26
27
26
22
15
12
18
21
21
22
23
25
26
26
27
28
28
45
81
117
141
175
173
170
167
154
144
143
137
121
111
137
142
164
148
128
121
161
151
103
98
80
72
67
53
60
53
42
43
40
41
42
47
42
47
47
49
44
41
33
34
41
44
42
43
41
29
33
35
35
32
34
39
31
32
32
34
35
38
37
39
42
42
43
42
42
40
37
37
39
37
38
38
38
36
34
32
31
33
208
208
208
207
208
207
207
207
207
209
209
208
208
209
208
208
210
208
210
104
57
63
55
48
54
51
49
50
53
49
52
53
53
39
38
44
42
45
49
47
41
35
30
30
30
26
20
24
78
152
76
75
152
148
79
50
39
54
113
220
222
180
137
92
52
31
111
224
236
203
172
119
131
117
138
203
175
134
169
183
87
49
156
165
190
121
129
178
102
82
74
90
122
159
184
211
217
207
169
162
200
208
194
150
102
82
77
58
43
31
19
14
24
31
26
22
29
34
16
14
67
33
31
29
21
21
19
16
15
16
14
9
4
3
3
3
11
12
14
12
13
9
9
8
8
6
12
8
9
12
12
12
12
13
11
8
10
7
5
8
8
6
2
2
2
3
3
5
4
6
19
30
12
20
28
32
26
17
16
16
14
19
10
8
24
56
38
33
30
31
30
27
25
23
22
21
21
21
22
22
25
28
29
27
23
16
19
21
21
21
22
23
24
25
26
27
29
39
70
118
135
168
175
174
176
161
147
146
146
111
104
125
141
155
143
120
113
135
140
112
71
91
72
61
62
42
46
55
45
38
41
43
42
43
46
42
46
43
43
34
39
37
34
38
43
46
41
36
33
33
31
31
34
32
31
30
31
32
33
34
37
38
41
40
38
41
38
35
36
37
38
44
39
36
34
33
30
33
35
208
208
208
208
208
208
208
207
207
208
208
208
208
209
208
208
208
208
205
90
59
67
49
49
50
50
52
47
50
54
55
53
45
34
40
43
43
48
48
43
37
31
29
29
27
24
24
43
108
197
122
42
40
34
41
88
131
147
174
231
191
141
80
30
50
102
179
231
173
94
39
29
35
35
47
153
134
121
202
179
85
130
208
174
119
70
161
173
116
115
151
185
198
218
223
197
194
203
199
212
196
171
126
75
48
71
92
126
121
89
62
30
16
24
20
5
1
9
17
4
30
59
37
28
23
20
19
18
18
21
17
10
3
3
4
9
14
14
15
16
14
10
11
11
8
8
11
8
10
11
10
13
13
13
11
12
12
8
7
5
5
5
3
4
1
4
3
5
4
18
23
17
15
33
31
26
27
25
25
19
20
24
9
11
70
70
48
36
33
33
32
30
27
24
23
23
22
22
23
23
24
29
30
29
27
25
20
21
21
22
22
24
24
26
26
27
28
42
61
92
134
142
153
168
176
166
149
150
151
120
98
117
140
153
150
110
107
109
120
117
95
68
84
70
68
58
45
44
44
42
41
43
44
36
42
41
38
37
37
39
37
45
40
41
32
27
37
41
34
34
32
32
31
31
32
31
32
30
29
31
33
36
38
35
36
37
37
33
34
36
36
35
35
33
31
30
29
27
30
210
210
209
208
208
208
208
207
207
208
208
208
208
209
208
209
208
207
200
82
62
88
67
57
52
65
87
72
47
49
56
55
44
40
42
40
45
48
46
40
36
28
30
30
27
23
19
29
110
203
208
157
124
97
110
194
233
217
226
228
163
186
173
145
193
222
212
192
136
142
128
125
149
97
36
39
105
168
225
184
155
213
192
127
85
81
167
185
159
182
206
210
209
197
180
202
218
211
212
186
141
86
55
23
47
93
126
156
153
124
135
112
60
31
24
16
2
6
6
3
7
64
52
29
25
18
22
20
22
19
14
6
4
7
7
12
14
13
12
13
14
8
6
10
6
7
10
9
12
14
14
14
14
13
12
11
8
7
8
7
6
4
2
3
2
1
3
3
6
16
14
15
30
33
30
23
25
23
26
23
24
26
6
14
114
110
73
47
34
35
33
32
30
26
23
23
22
23
23
23
23
27
31
32
28
27
23
23
23
23
23
24
23
25
27
28
28
38
66
78
107
142
121
152
173
177
155
147
154
138
111
110
130
137
149
112
114
105
102
102
104
87
71
85
85
73
63
49
49
48
45
47
45
44
41
40
38
45
40
38
47
41
42
40
42
37
21
24
30
32
30
29
32
32
32
31
31
31
31
32
30
29
30
32
33
36
37
38
37
36
38
37
37
35
32
32
29
29
32
210
210
210
208
207
207
207
207
208
209
208
208
208
209
208
209
209
208
200
78
57
64
60
55
55
52
49
89
78
45
51
58
51
45
44
39
47
46
42
36
30
29
32
30
24
22
20
19
51
185
220
196
217
222
209
228
230
226
220
174
169
203
217
214
203
175
153
133
179
200
210
194
192
199
135
90
149
186
228
200
201
241
189
92
116
132
111
135
102
130
159
182
194
207
229
223
202
201
159
100
40
35
40
61
74
129
126
117
119
118
122
147
133
97
61
26
5
8
6
2
8
35
86
42
36
21
24
22
22
17
11
5
4
6
10
14
13
10
15
16
8
6
11
12
9
11
12
15
17
14
14
14
11
14
11
10
9
8
8
8
12
5
1
2
2
3
3
2
4
4
11
28
35
25
31
27
25
17
18
22
23
18
5
42
128
126
115
93
60
34
33
36
31
30
26
22
22
23
23
23
25
26
29
31
31
28
28
25
24
23
24
24
23
23
26
29
28
28
60
75
93
132
117
135
160
168
157
147
155
143
126
113
130
132
140
122
109
123
107
98
89
90
85
79
83
75
60
67
50
54
62
62
55
58
47
46
44
49
46
47
40
43
38
33
36
39
38
30
29
31
30
33
32
33
33
33
33
30
30
30
29
29
27
26
27
29
32
40
35
35
36
36
39
36
35
36
35
47
37
210
210
210
208
208
208
207
207
208
208
208
208
208
209
209
209
209
209
197
70
57
61
53
51
52
53
48
46
72
84
47
54
48
43
38
39
47
45
42
35
29
29
28
31
26
21
18
25
28
104
221
225
227
227
222
229
192
169
118
77
69
110
177
210
174
108
63
52
66
170
230
202
176
214
206
148
169
194
235
210
216
201
146
77
149
102
66
56
62
152
206
220
233
238
223
188
158
100
39
10
10
6
29
22
30
46
36
55
80
106
106
116
126
135
137
109
36
6
4
0
11
3
32
77
80
52
26
25
25
15
11
8
7
9
8
10
11
15
23
7
4
8
12
9
10
14
15
15
14
15
14
13
13
12
11
10
10
10
9
10
9
5
2
1
2
3
2
1
7
8
13
34
27
17
27
36
32
17
13
15
15
8
12
77
129
122
117
115
109
69
31
34
35
33
29
29
26
26
25
27
27
26
27
29
31
30
30
29
29
27
25
24
24
22
24
28
29
26
52
62
89
85
97
126
141
142
142
139
156
149
127
123
126
130
125
121
105
110
111
105
96
86
91
84
81
84
58
63
77
68
69
78
69
67
72
62
54
50
50
49
55
43
38
38
41
41
41
33
33
34
32
32
31
31
32
31
30
30
31
31
30
26
25
25
25
27
27
27
29
33
36
40
43
39
42
38
38
40
37
210
210
210
208
208
208
207
207
208
209
209
208
208
209
209
208
209
207
196
69
57
60
54
53
52
53
48
45
47
68
85
53
47
44
38
38
43
46
42
35
30
25
29
29
28
22
24
25
32
50
128
174
183
200
213
170
115
66
36
30
32
68
187
234
178
100
39
49
83
90
111
117
186
232
194
156
193
207
239
233
174
83
69
81
105
65
55
96
177
230
228
232
231
198
154
89
34
22
24
17
10
4
6
7
11
18
19
22
25
52
81
108
115
123
127
133
123
24
5
2
8
3
6
25
87
115
67
27
23
19
13
9
10
8
9
10
14
14
10
8
5
9
10
8
9
15
12
12
14
18
15
16
14
12
9
9
11
10
11
8
7
4
3
3
2
3
2
1
10
14
13
17
9
11
20
29
27
19
11
10
8
14
41
117
122
118
120
116
115
108
74
38
34
37
33
32
32
30
28
29
27
26
27
28
31
31
31
31
32
30
28
24
24
24
25
27
28
29
40
64
67
69
41
103
132
131
136
134
154
157
145
131
117
128
110
117
97
92
110
105
97
94
91
73
75
78
68
43
62
72
71
84
90
84
81
78
77
75
83
79
66
50
59
48
41
37
34
34
35
30
35
32
31
33
32
33
31
30
31
29
28
26
29
28
30
28
21
17
25
30
36
41
42
40
42
41
41
40
37
210
210
210
208
208
208
208
207
207
209
209
208
208
209
209
208
209
208
198
73
60
58
53
55
51
50
48
48
53
47
69
81
42
43
35
42
43
41
41
39
29
25
32
33
30
23
26
28
31
35
29
37
69
159
174
168
141
93
85
95
104
159
190
146
138
179
185
180
174
84
32
39
131
222
206
195
202
221
238
202
70
36
59
111
117
99
156
216
230
223
221
199
165
124
52
19
21
42
23
17
5
7
8
4
6
13
12
15
14
14
53
118
114
122
116
123
113
76
22
4
12
2
17
3
18
94
121
58
36
19
11
23
18
14
11
15
15
10
8
5
7
8
8
7
8
8
12
13
13
18
15
15
13
12
12
11
13
10
10
8
5
5
3
3
2
3
2
3
12
13
16
6
6
15
25
29
22
11
11
15
10
24
78
128
123
120
119
117
118
118
113
93
54
30
33
34
26
27
30
30
29
28
29
28
29
31
32
32
31
31
31
27
25
24
27
28
28
28
31
58
45
55
36
60
116
121
131
141
148
148
160
156
130
118
112
103
108
88
90
117
112
89
83
89
82
73
63
49
40
42
56
62
77
86
101
96
92
88
98
101
88
76
61
58
44
39
41
37
36
33
32
35
33
35
35
33
34
33
33
31
32
32
31
29
29
26
26
22
25
26
33
40
42
45
43
43
42
39
39
210
210
210
208
208
207
208
207
207
209
209
208
208
209
209
208
209
209
202
79
60
57
53
68
58
49
48
49
52
53
46
68
54
41
36
41
39
41
39
38
32
29
36
33
29
24
26
23
29
31
48
41
40
83
127
108
117
161
192
208
148
77
49
34
48
149
231
187
195
192
156
150
191
210
220
214
184
208
211
144
56
72
143
167
172
178
214
219
199
196
187
171
135
57
8
11
24
22
29
9
6
7
6
9
15
14
8
12
8
22
27
32
61
98
107
99
97
82
39
17
8
3
13
3
3
19
74
114
51
22
36
55
44
26
39
28
16
9
6
5
6
6
8
6
6
8
10
12
11
14
14
14
11
10
14
14
15
12
9
6
5
3
5
4
3
2
2
11
13
10
13
7
14
15
22
20
15
9
9
6
20
42
119
127
126
120
118
117
115
113
111
115
104
65
31
32
30
28
29
31
31
31
29
30
31
31
31
32
32
31
32
30
25
23
25
29
31
32
32
50
61
36
33
43
106
109
123
138
135
137
155
166
144
120
117
104
112
93
71
89
112
110
94
75
83
88
78
52
50
47
41
42
49
56
86
101
99
81
96
111
108
95
76
70
54
43
42
40
37
36
36
37
37
33
36
35
34
34
34
32
31
30
28
25
25
24
22
22
21
22
25
32
37
40
41
42
41
40
41
210
210
210
208
208
207
208
207
207
209
208
208
207
209
209
208
210
209
201
82
64
57
52
69
58
50
50
50
50
47
51
64
91
34
40
42
38
41
40
36
35
38
37
32
29
24
25
24
29
34
38
39
37
33
31
37
47
104
190
198
92
45
56
75
113
149
144
110
177
220
183
221
198
196
197
151
98
120
169
155
150
184
183
192
212
206
183
161
189
206
191
115
36
9
9
16
17
23
19
13
12
13
18
20
21
42
38
54
26
24
21
14
16
22
45
61
75
55
34
17
10
3
10
1
2
3
9
57
89
71
43
44
77
62
65
55
33
11
10
8
7
7
10
12
9
12
12
11
13
16
16
14
11
9
10
12
13
11
9
7
5
6
7
8
3
4
5
16
7
9
9
7
16
27
22
33
17
14
4
9
26
84
139
123
123
120
120
119
117
115
115
113
115
109
89
44
25
35
31
29
33
33
31
33
32
32
31
31
31
30
31
32
29
25
24
26
29
33
34
34
62
43
33
37
93
110
122
123
107
132
143
151
172
132
105
111
103
103
80
58
85
91
101
100
68
65
67
66
54
48
56
43
37
39
40
58
96
99
69
71
79
87
82
63
54
53
50
42
36
35
37
37
36
37
37
35
34
34
34
35
33
32
31
29
22
15
17
18
19
25
22
26
31
35
37
39
41
40
40
210
210
210
208
207
207
208
208
207
208
208
209
208
208
208
208
210
212
182
74
60
58
56
54
51
50
52
49
54
54
52
48
76
36
39
42
38
43
42
35
35
43
36
32
31
28
24
25
26
31
35
35
32
34
38
55
37
101
139
126
108
161
195
168
152
70
32
66
173
207
103
169
184
105
131
138
62
35
60
149
143
138
137
190
167
145
177
212
220
197
117
21
5
13
17
19
31
39
19
21
20
23
23
23
22
26
43
34
20
11
16
11
22
28
41
37
31
51
50
55
36
7
4
2
0
1
1
5
28
75
84
46
37
28
61
68
56
17
19
12
10
5
6
7
7
7
8
9
14
13
11
12
9
9
9
11
12
11
8
6
6
7
7
6
3
4
11
6
6
3
4
13
30
23
35
16
12
14
4
16
37
120
130
123
124
123
121
119
118
116
116
114
113
113
116
100
53
27
35
36
33
33
34
33
31
31
31
31
31
31
31
31
31
26
24
27
29
29
32
35
39
51
32
34
79
100
109
121
98
120
134
131
160
155
102
106
113
99
96
61
42
93
89
85
73
54
48
47
49
48
51
48
39
39
38
37
42
71
86
83
69
62
57
57
51
50
51
50
46
41
40
38
37
37
37
35
34
35
35
34
33
31
31
31
27
28
31
28
26
25
25
27
28
31
33
37
37
37
40
210
210
209
207
207
208
207
208
207
207
208
209
208
208
209
207
210
206
145
76
63
56
53
51
51
53
54
51
51
53
52
43
64
64
31
36
37
41
40
35
34
36
37
32
30
28
22
26
27
30
34
32
31
32
39
65
34
35
31
31
33
60
68
65
96
111
117
159
212
119
81
177
112
89
134
127
57
37
30
48
34
46
74
121
155
210
229
221
185
101
21
6
7
14
17
17
22
30
33
26
36
28
23
25
17
30
36
20
16
26
25
22
34
49
30
22
17
16
56
89
60
27
13
2
1
0
0
0
2
11
70
130
74
24
47
122
47
28
31
31
8
6
6
5
5
7
25
33
21
13
10
9
4
4
9
10
6
8
4
7
6
7
6
2
3
10
22
6
5
2
7
30
36
35
20
2
13
12
8
16
81
134
128
124
124
124
122
121
120
117
116
114
113
114
115
112
107
70
33
34
35
34
33
34
36
34
31
30
30
30
30
30
32
29
27
28
29
29
32
35
36
46
38
30
53
91
69
101
91
112
122
119
137
155
117
86
117
108
100
64
32
50
95
76
64
60
48
43
38
38
40
45
37
40
40
35
29
22
26
41
61
62
52
53
50
50
46
45
43
40
41
43
43
40
38
38
36
36
35
34
34
33
32
33
34
33
32
31
31
30
28
24
20
22
28
31
34
37
39
209
209
209
209
208
208
208
210
208
207
208
208
208
208
208
208
207
198
99
76
57
53
51
52
51
60
60
52
51
50
52
51
49
89
37
32
35
41
40
35
35
43
42
33
31
28
24
27
29
31
33
33
31
41
89
49
33
38
60
60
36
32
44
70
139
208
225
218
212
177
178
198
149
120
83
42
51
86
57
29
30
59
97
164
214
220
219
183
101
15
9
13
15
14
16
19
27
30
32
35
37
33
36
51
31
30
23
20
16
19
26
35
57
21
29
20
29
53
73
70
34
38
21
4
0
1
0
0
1
3
5
49
117
87
37
96
104
29
45
44
9
9
10
17
28
23
27
64
47
12
16
20
23
15
15
18
14
7
4
7
13
17
7
5
6
10
4
5
3
5
28
32
37
16
8
6
16
13
14
32
121
131
129
125
124
124
121
121
120
119
117
117
114
115
114
113
110
109
87
49
36
33
33
30
30
34
34
32
32
31
30
29
29
29
29
30
31
31
32
34
35
35
53
38
37
74
81
74
80
109
116
108
105
142
141
96
85
125
94
97
46
21
52
78
60
58
65
59
49
44
43
41
37
41
41
40
35
37
33
31
26
30
34
38
42
44
48
45
48
46
42
42
40
42
41
38
37
37
37
36
35
33
34
34
33
31
30
30
28
24
22
19
23
26
27
26
31
33
39
209
209
209
209
209
210
210
210
209
207
208
208
208
208
208
209
205
204
85
62
53
51
49
51
51
48
51
53
51
51
52
52
45
71
47
33
35
43
39
35
36
43
41
35
32
32
27
28
29
31
34
33
32
31
110
97
54
48
73
68
77
109
121
116
162
177
139
161
210
205
201
215
177
87
40
35
40
72
42
32
59
89
130
190
202
207
177
102
23
7
9
10
16
25
32
21
31
34
32
31
35
36
43
34
29
36
31
30
24
17
14
65
36
15
15
23
81
83
66
54
50
46
13
2
1
0
1
0
0
1
1
3
22
58
78
81
109
102
83
90
32
23
30
29
48
35
27
63
82
53
52
58
71
62
54
39
65
15
9
15
23
29
21
13
8
3
0
6
5
23
44
24
19
5
8
14
13
14
12
67
136
129
129
128
125
125
122
122
121
119
117
116
114
113
114
114
112
114
118
98
54
31
34
35
31
35
36
35
34
32
31
30
29
30
29
30
31
30
33
34
35
35
42
48
37
44
71
63
78
94
123
109
109
129
137
106
77
91
109
86
78
35
26
49
51
46
53
52
49
43
43
40
37
39
36
35
33
34
36
38
41
31
29
30
28
40
47
49
51
42
39
44
47
41
43
41
39
38
38
37
35
33
34
35
33
32
30
28
27
25
25
24
23
20
23
25
26
29
27
209
209
209
209
209
210
210
210
209
207
208
208
208
208
208
211
210
213
92
67
57
53
49
51
51
47
51
54
53
53
52
51
47
45
43
41
37
40
37
36
39
43
40
34
32
33
30
27
27
30
34
33
33
28
62
52
45
59
33
29
53
100
117
142
125
52
85
160
170
111
183
179
133
52
35
31
25
28
24
32
49
86
162
202
181
164
92
39
12
11
6
10
16
37
43
33
31
33
30
35
38
35
38
36
27
40
28
28
30
18
12
46
27
9
20
57
65
60
65
28
59
86
36
7
3
1
2
1
1
2
2
6
5
8
22
50
62
96
87
97
95
81
73
44
39
31
39
67
77
59
45
38
52
46
42
22
49
59
18
38
47
35
53
37
3
4
2
3
10
38
28
13
7
3
6
16
14
13
22
116
137
130
129
127
126
126
123
122
121
120
119
116
116
114
114
114
115
112
111
115
111
84
42
23
34
36
37
39
37
34
34
33
31
32
31
31
31
30
32
34
34
35
36
36
38
35
38
45
58
64
117
115
108
114
126
74
38
55
94
103
69
34
30
30
41
42
39
47
50
43
42
43
40
42
43
38
43
45
41
35
34
30
29
30
23
24
35
36
38
40
38
39
41
40
43
42
42
41
40
38
36
35
35
37
34
32
32
32
29
29
25
24
23
21
23
41
51
44
29
210
210
210
209
210
210
210
210
210
210
210
211
210
210
210
211
210
216
110
67
54
53
49
51
49
44
52
56
55
54
52
51
49
47
46
44
40
42
38
35
43
44
40
35
31
30
30
29
29
32
33
35
34
33
39
34
34
59
37
26
27
71
116
120
86
126
186
170
116
52
125
114
64
43
28
30
31
26
25
37
53
120
194
191
145
93
33
12
9
5
7
9
16
22
35
42
35
32
34
35
30
33
60
44
28
24
24
36
34
16
20
46
34
17
26
52
47
53
36
15
42
79
22
7
11
34
27
17
7
3
3
6
12
8
18
36
27
40
60
73
76
83
107
76
28
37
46
43
32
35
20
15
28
35
27
18
29
37
18
41
35
19
31
12
2
1
2
4
17
40
14
8
5
4
8
22
14
14
62
137
131
132
132
129
128
129
126
124
123
121
120
118
116
116
115
113
114
114
113
114
116
115
96
52
33
39
38
39
37
36
39
35
33
32
32
31
31
32
32
33
32
36
37
37
37
38
35
40
58
56
89
108
111
111
122
108
52
33
53
109
93
49
23
24
25
33
30
38
47
39
40
38
36
39
41
39
35
37
38
37
37
36
29
29
26
22
22
31
37
42
43
42
48
45
42
41
41
40
40
39
37
36
36
38
35
34
32
32
30
28
24
21
23
25
79
95
72
89
96
210
210
210
209
210
210
210
210
210
210
210
211
211
210
210
209
210
219
128
59
53
52
47
50
50
45
52
56
54
52
51
50
49
49
46
45
43
41
38
36
45
43
39
35
30
29
29
28
29
31
33
36
31
32
34
31
35
55
38
36
44
67
58
56
107
100
117
121
59
83
65
33
54
33
27
26
22
27
48
76
113
162
179
134
84
53
11
15
7
10
15
20
21
21
43
45
38
46
53
55
39
35
39
46
33
24
30
26
32
27
29
39
43
33
58
56
50
53
31
32
43
72
22
11
34
54
36
51
29
6
1
1
7
6
4
9
13
14
22
21
29
62
109
99
71
49
30
22
17
17
14
10
14
17
13
15
15
12
13
30
22
14
22
5
3
4
3
2
26
21
2
4
1
4
8
15
13
23
117
142
132
133
132
129
129
130
128
126
125
121
120
118
118
116
116
115
114
114
114
115
114
113
116
113
68
38
39
42
40
42
40
39
35
32
33
32
30
30
30
35
36
36
36
38
37
36
35
34
49
46
75
91
96
61
92
119
70
49
43
56
70
66
34
24
27
23
31
31
73
47
40
42
42
38
41
40
37
36
42
40
38
37
36
32
30
30
25
25
33
38
42
42
43
43
39
38
41
41
40
38
38
37
38
39
35
35
34
32
32
30
27
26
22
85
77
144
169
151
78
210
210
210
209
210
210
210
210
210
210
210
211
211
210
210
210
209
221
136
56
56
53
47
51
51
47
52
55
54
53
49
49
47
47
46
46
45
42
40
40
43
44
37
35
30
29
29
29
30
31
32
33
31
33
35
40
41
45
37
38
39
55
37
33
81
103
63
47
77
51
40
44
30
27
24
21
23
24
62
103
133
165
135
95
71
29
17
16
18
24
20
25
26
29
39
53
49
48
62
56
48
45
50
40
31
38
45
28
37
38
35
30
57
54
55
64
48
57
49
41
48
64
70
67
72
73
70
77
70
28
4
1
4
5
5
9
24
43
42
38
30
25
54
107
96
51
55
40
40
40
28
8
6
8
8
10
9
14
21
30
19
14
21
4
3
2
4
5
22
5
2
3
2
2
12
12
11
52
142
140
133
135
133
130
131
131
128
127
126
123
123
119
118
119
117
117
116
116
116
116
114
114
113
114
112
76
38
39
42
42
43
43
40
36
34
32
31
31
30
32
36
37
38
37
38
37
38
33
43
57
47
60
26
7
46
97
80
39
48
54
55
42
22
21
28
27
26
28
30
38
41
40
38
40
41
39
33
33
35
37
33
34
37
37
34
33
31
27
25
32
36
37
38
41
38
40
41
42
41
41
40
39
39
39
37
35
33
31
30
29
25
24
41
90
106
147
120
144
113
210
210
210
209
210
210
210
210
210
210
210
211
210
210
210
210
211
220
149
53
56
52
48
52
51
50
53
55
52
50
47
49
46
46
45
45
44
43
39
40
41
40
38
34
32
29
28
28
29
31
32
31
35
36
35
40
38
38
36
30
30
34
32
45
76
98
57
32
33
34
29
27
26
21
19
22
19
36
80
114
136
130
114
79
52
28
37
20
24
24
24
26
32
33
38
43
59
50
64
44
46
50
40
24
26
53
54
42
30
46
45
25
56
49
51
60
61
48
44
39
52
60
74
77
76
62
43
73
69
40
30
13
3
1
5
10
13
25
27
44
43
33
29
45
84
90
91
66
53
50
66
52
18
11
10
5
11
22
35
28
18
17
15
6
2
3
2
16
21
4
3
3
4
4
13
13
11
103
142
138
135
137
135
133
134
133
129
127
127
125
123
121
120
121
118
118
118
118
117
117
115
116
113
111
114
112
92
63
52
43
49
50
48
42
40
38
35
38
34
31
31
37
39
38
38
38
37
34
38
62
33
12
4
5
35
73
58
49
42
39
48
47
36
19
15
18
24
27
35
30
37
38
36
36
39
41
35
37
34
35
37
39
38
38
38
35
35
33
29
27
31
39
38
43
42
40
43
42
42
39
40
40
40
41
39
36
36
33
33
30
27
27
52
83
74
24
18
20
75
210
210
210
209
210
210
210
210
210
210
210
211
210
210
210
212
213
217
170
55
57
52
47
51
51
53
53
55
53
51
47
47
47
44
43
43
39
39
38
39
38
38
38
35
34
31
32
30
31
32
33
31
34
37
35
35
36
33
29
31
32
30
29
30
29
47
51
35
29
27
23
24
21
15
15
20
26
64
97
109
130
127
89
53
32
47
40
24
29
27
26
22
30
33
36
48
41
51
64
61
46
44
35
29
38
54
57
61
58
74
52
33
42
31
53
71
54
49
33
24
35
36
36
33
36
36
42
47
52
45
30
30
23
9
1
7
19
35
59
51
50
45
40
12
9
30
42
71
76
83
84
96
53
16
13
9
14
27
35
30
18
21
5
5
2
4
4
16
8
4
2
0
3
16
19
18
31
140
138
138
138
138
137
135
137
135
129
128
128
126
125
123
123
122
120
118
119
118
117
117
117
117
116
114
113
112
111
105
80
51
57
52
58
45
39
44
37
40
38
32
27
33
37
38
40
38
36
36
37
27
7
3
4
3
38
84
56
48
34
41
32
45
32
36
28
23
18
16
26
32
34
36
35
36
37
40
37
36
34
37
36
42
45
38
35
32
31
28
28
29
28
28
30
41
45
38
43
46
43
41
42
40
40
40
38
36
36
32
34
31
32
31
42
91
69
35
17
25
68
210
209
210
209
210
210
210
210
210
210
210
211
211
210
210
211
212
211
191
63
58
53
48
50
50
54
53
53
52
52
48
47
48
44
40
42
35
34
36
36
39
39
37
37
34
32
31
32
31
32
34
33
33
35
34
34
34
30
30
32
32
33
26
26
27
25
34
29
28
24
23
18
16
15
18
13
39
82
86
117
136
112
68
46
34
45
41
38
41
38
32
27
38
35
28
40
41
33
64
59
58
37
31
52
97
64
67
56
34
48
66
59
42
34
49
61
21
18
16
19
17
14
24
13
9
10
12
14
18
30
46
45
39
20
11
5
8
25
34
37
42
63
48
12
14
18
7
7
15
41
90
108
94
70
23
13
20
27
33
36
33
36
6
2
1
3
4
10
4
8
4
2
10
26
23
17
86
149
141
139
139
138
138
137
137
136
133
129
128
128
127
124
122
122
120
120
120
120
117
117
117
115
116
114
113
110
108
109
112
97
68
63
81
66
43
52
47
43
37
34
32
31
31
37
41
38
37
39
13
5
3
2
4
12
44
49
51
47
43
37
35
39
40
37
39
24
31
28
15
22
33
36
38
37
37
36
36
37
34
35
34
37
37
35
34
40
40
37
30
28
28
27
22
26
33
38
39
43
41
40
38
38
39
39
36
35
35
33
34
34
33
29
26
89
103
53
17
26
59
209
209
210
209
210
210
210
210
210
210
210
211
211
210
210
211
211
209
214
76
55
53
49
48
51
51
52
52
51
50
48
46
45
38
36
38
38
34
34
36
40
38
36
34
34
32
32
31
30
31
32
35
37
38
37
34
31
30
33
32
31
29
27
22
24
26
23
22
27
23
20
22
19
13
16
31
64
76
104
132
126
98
68
47
46
52
34
36
39
38
38
35
46
48
32
40
39
46
70
61
37
46
42
35
34
36
69
53
34
51
40
45
38
42
56
32
25
23
23
32
22
17
14
12
14
11
9
4
4
7
12
16
27
36
41
33
11
28
43
41
47
51
42
22
22
18
17
1
3
3
6
40
112
115
74
12
7
17
40
37
42
70
15
1
1
1
6
10
9
8
5
11
27
19
18
55
143
141
143
142
141
140
139
138
138
136
134
131
128
128
127
124
124
124
120
120
120
120
118
117
116
116
115
115
115
111
109
109
110
115
114
100
108
105
71
55
53
49
39
37
33
32
33
37
38
34
36
30
8
2
1
3
6
30
50
43
51
44
45
42
42
36
31
35
36
36
32
24
31
28
22
30
34
34
38
39
33
35
39
40
43
37
34
34
34
35
38
34
29
29
28
23
17
18
23
30
33
37
37
39
39
38
38
39
36
33
32
33
31
32
31
27
24
31
89
91
61
84
98
209
209
210
209
210
210
210
210
210
210
209
209
211
210
211
212
208
210
198
103
55
52
52
49
53
53
53
52
51
50
47
46
44
38
43
33
41
41
35
34
38
37
36
33
32
31
32
32
30
30
30
33
35
36
36
32
31
28
28
30
29
25
28
21
24
26
19
18
25
21
21
20
19
14
19
30
51
82
122
127
108
90
77
73
66
52
30
39
42
34
39
38
50
37
29
38
31
57
54
100
61
35
47
53
33
54
63
41
35
32
36
49
35
41
59
38
54
35
37
30
27
21
20
16
18
15
12
5
5
4
6
6
8
15
13
22
24
15
20
46
42
31
22
20
20
5
5
3
1
1
2
3
38
119
155
36
5
9
23
34
39
46
14
4
2
1
11
8
3
6
6
15
19
9
25
131
147
140
143
142
141
141
140
138
138
136
134
131
129
129
128
125
123
124
122
119
119
119
120
119
117
116
116
116
116
112
111
110
112
111
112
115
119
111
93
69
58
55
46
37
37
34
34
25
45
32
17
13
6
1
2
2
11
37
48
48
50
45
43
39
33
40
40
39
35
36
38
31
31
27
31
27
31
32
34
37
33
34
35
36
47
44
42
39
35
35
38
36
33
34
32
24
25
23
20
26
33
35
32
35
38
37
36
36
35
33
32
33
33
32
32
33
32
30
28
51
61
55
37
208
208
210
209
210
210
210
210
210
210
210
210
211
210
211
211
211
205
139
140
61
59
56
51
55
55
51
52
51
50
47
46
43
37
51
33
35
40
37
35
36
36
34
32
27
28
30
33
32
30
29
31
32
33
35
32
33
28
28
30
24
24
25
20
24
22
16
17
21
21
20
13
15
13
21
30
40
105
128
119
85
113
92
95
83
82
59
41
55
40
40
44
59
43
41
39
35
46
54
47
68
39
27
25
34
33
40
29
34
37
45
42
43
34
43
43
50
50
40
38
35
23
25
23
22
21
19
12
10
6
7
10
10
12
12
13
18
23
27
36
42
37
39
26
15
18
24
16
5
3
1
1
5
58
178
46
10
21
37
33
26
31
9
2
3
5
18
11
4
9
8
16
10
11
93
155
145
144
143
140
141
139
138
138
138
137
135
132
131
129
129
127
125
125
122
121
121
121
122
121
119
118
118
119
117
115
112
113
112
113
112
112
113
114
115
99
75
60
55
42
38
37
41
43
48
29
17
9
2
0
4
9
31
36
42
45
48
53
43
46
47
36
44
42
38
35
35
31
27
23
27
24
27
31
34
34
32
35
33
36
37
42
47
41
41
41
38
37
36
36
32
29
27
27
28
28
36
37
32
37
39
34
33
33
31
32
33
33
34
33
32
32
32
30
30
25
17
21
126
207
208
209
209
210
210
210
210
210
210
210
211
211
210
211
208
214
216
120
146
83
59
54
52
54
55
52
53
51
49
49
45
46
41
37
35
35
37
35
33
34
33
33
31
28
29
31
31
31
30
27
29
28
31
33
33
32
26
26
24
26
24
17
16
22
19
15
15
19
16
12
11
13
14
24
50
79
119
123
106
100
144
115
117
117
108
82
84
71
47
47
52
42
49
59
47
50
51
45
28
44
42
54
30
33
44
38
30
36
53
52
41
72
47
37
36
34
31
33
34
33
34
29
21
21
22
26
28
46
18
11
13
14
14
18
25
25
26
36
55
61
58
40
31
30
28
19
7
2
2
1
1
1
15
133
64
16
34
44
30
17
9
6
3
3
12
17
5
3
2
14
9
4
32
143
148
146
144
144
142
141
140
138
138
139
138
137
135
133
132
131
129
127
126
124
122
123
123
124
123
122
121
119
120
118
118
116
117
116
115
115
114
114
116
119
118
101
77
54
56
45
45
75
53
33
22
10
5
4
2
2
23
40
42
42
46
50
53
50
41
47
42
48
35
39
42
30
32
28
24
24
21
26
29
33
34
34
36
31
31
33
34
37
33
35
38
34
32
33
30
30
32
32
35
32
33
37
40
40
40
37
35
32
33
32
33
34
34
35
32
31
29
28
27
26
25
26
23
123
208
209
209
209
209
210
210
210
210
210
211
211
211
211
211
210
209
225
145
123
107
52
56
52
54
53
53
52
51
48
47
47
46
43
39
34
36
34
32
33
32
31
32
30
32
31
32
31
32
30
26
48
45
27
29
30
26
27
24
22
27
18
12
15
15
16
13
11
12
11
11
13
14
17
31
63
108
124
112
103
140
148
145
156
169
157
134
118
97
79
63
60
44
38
57
58
60
51
37
52
58
71
76
44
24
33
49
50
52
69
73
59
84
86
70
56
46
41
38
42
35
39
33
31
28
30
29
36
51
34
24
18
24
23
27
29
32
29
29
44
68
68
67
42
25
15
8
4
1
1
1
1
1
4
82
99
25
41
43
23
10
9
8
5
9
18
15
5
3
7
10
5
5
93
156
147
146
144
145
144
141
141
140
139
139
139
136
135
134
134
133
130
128
126
124
124
124
124
125
125
124
123
121
120
119
118
117
119
120
120
119
117
116
117
116
122
122
105
85
70
77
99
76
52
35
17
8
3
4
4
13
37
37
36
45
41
43
48
43
46
54
46
43
46
42
33
33
34
30
22
26
28
22
26
29
36
32
36
37
34
36
40
41
40
35
34
35
35
35
36
36
36
34
36
38
42
44
51
51
44
41
38
32
33
34
33
33
32
33
32
33
32
32
33
31
30
28
25
131
208
209
209
209
209
210
210
210
210
210
208
209
212
208
209
214
215
218
180
104
120
52
58
51
53
52
54
52
50
47
46
46
45
44
41
34
34
35
32
34
31
31
29
44
33
31
31
31
33
32
31
32
33
28
27
27
21
22
18
21
20
14
14
16
13
15
14
11
10
13
15
17
18
16
38
90
122
121
104
114
141
147
157
175
175
182
173
178
145
111
97
113
84
55
68
51
67
73
52
56
83
75
82
46
44
45
56
55
70
99
105
96
106
119
115
111
106
87
81
80
72
65
57
54
47
45
44
48
44
45
35
40
43
45
35
32
54
42
26
26
40
50
62
83
63
12
7
4
2
1
1
1
1
2
47
116
53
52
36
16
4
7
9
7
12
21
11
6
8
16
12
9
27
146
151
149
147
145
145
144
142
142
141
140
139
140
137
136
134
133
133
131
130
129
125
124
124
124
125
125
124
123
122
121
120
120
120
119
120
121
120
120
118
124
124
122
124
135
127
99
86
77
78
49
24
12
5
2
3
6
31
37
39
37
39
41
39
45
49
40
45
49
45
40
47
44
34
31
33
30
25
25
21
23
30
36
32
36
36
35
33
34
36
35
36
37
38
34
35
32
32
32
35
36
34
36
43
50
52
53
53
38
36
34
34
33
33
32
32
32
32
32
32
32
31
30
27
25
133
208
209
208
209
209
210
210
210
210
210
210
215
214
210
209
213
213
214
210
97
115
61
62
58
55
56
54
51
49
46
45
47
43
41
40
37
35
32
33
33
31
29
27
34
28
29
31
33
33
33
32
33
31
26
23
24
20
18
18
21
17
15
15
14
14
15
16
12
12
16
16
21
24
37
82
118
125
102
115
118
167
158
166
183
182
190
188
196
187
172
168
177
165
140
131
116
93
106
95
74
80
114
115
86
106
116
101
87
108
131
134
133
137
140
144
146
144
146
134
116
110
102
97
94
84
79
73
70
68
66
66
75
80
77
72
75
71
59
81
40
40
48
56
58
72
64
17
4
2
2
2
2
3
1
27
128
80
57
31
9
2
3
3
4
13
22
12
3
14
20
11
7
89
159
149
148
146
146
145
145
144
142
142
141
141
140
138
137
134
135
135
132
130
130
126
126
125
126
125
125
126
125
124
123
123
123
122
120
123
123
124
125
121
121
125
126
139
130
146
141
92
61
49
43
21
11
4
1
3
27
35
37
39
40
42
38
44
42
34
44
41
48
46
43
38
45
42
42
46
40
31
27
25
25
26
27
34
39
39
39
38
38
37
37
35
34
38
33
33
34
33
35
29
32
36
42
38
48
54
52
51
40
36
33
34
33
32
33
33
32
32
32
32
33
30
30
30
24
34
208
209
208
209
209
210
210
210
210
209
208
206
204
209
212
211
211
212
205
105
78
74
70
57
54
54
53
51
48
46
46
47
43
41
41
37
34
32
33
31
30
27
24
25
26
28
31
30
29
30
30
31
29
24
19
17
16
17
17
18
15
15
12
12
16
17
15
13
15
16
27
42
33
84
117
126
119
112
126
150
182
166
177
187
195
194
195
201
192
192
195
194
187
189
187
181
164
161
156
139
153
166
171
171
160
167
164
141
142
148
147
145
141
146
149
148
149
149
144
135
132
128
125
121
122
118
106
99
93
91
82
86
79
78
86
84
87
58
57
75
78
62
58
68
56
62
71
65
21
4
3
3
3
2
19
124
96
57
22
4
0
1
4
6
15
16
6
4
15
12
5
32
147
156
150
148
148
146
146
145
144
142
142
141
142
141
140
139
136
136
136
133
131
130
130
128
127
125
125
125
126
126
126
126
125
125
125
125
126
126
126
125
129
142
132
134
154
165
163
134
86
50
28
27
18
6
1
3
18
41
39
41
39
36
37
42
37
42
44
40
45
48
46
44
44
43
40
39
39
48
40
35
35
32
27
30
31
30
42
42
45
42
38
40
35
33
32
35
33
36
38
43
34
42
36
38
42
51
49
44
52
43
40
33
31
33
32
32
32
33
33
33
33
32
29
31
31
26
57
208
209
207
208
209
210
210
210
210
210
210
209
203
202
210
212
216
213
207
124
72
78
68
55
53
53
52
51
49
47
46
48
45
42
40
37
34
33
33
32
31
28
23
20
23
26
27
26
26
28
29
28
26
19
17
18
16
14
13
14
14
16
10
10
12
14
14
12
29
36
42
35
75
117
130
121
113
123
127
176
171
177
179
189
197
193
205
201
193
196
203
207
193
197
192
186
186
183
178
175
169
172
198
195
173
174
169
161
156
157
155
157
155
155
154
151
147
146
143
142
139
134
136
142
142
146
140
135
128
121
116
116
115
113
97
105
88
87
89
89
80
49
38
47
51
43
60
90
105
67
21
5
3
1
10
111
100
51
17
1
1
2
3
7
16
14
8
5
18
12
10
90
162
150
150
149
148
146
146
145
143
142
143
143
143
142
140
139
137
136
137
134
132
134
132
131
129
127
126
126
127
128
129
128
126
128
128
130
132
136
134
132
128
124
140
163
193
181
144
103
59
36
23
15
12
2
1
9
34
37
40
42
40
38
38
41
37
32
40
42
40
43
44
50
49
48
49
47
48
42
44
40
44
39
35
36
31
30
29
37
51
48
45
38
38
40
37
37
34
36
39
41
38
41
48
40
42
39
47
47
44
38
40
34
31
34
33
32
32
33
34
34
34
32
32
33
31
30
128
209
208
208
208
209
209
209
210
209
210
212
214
212
210
202
207
213
194
186
158
71
64
63
59
53
51
49
48
47
45
47
46
45
42
41
38
34
34
33
32
32
27
23
22
20
22
22
22
25
26
22
17
14
14
17
19
15
12
11
13
12
14
11
11
14
15
17
22
61
49
51
59
106
135
129
116
133
121
152
177
168
171
180
192
197
202
210
206
200
201
207
208
204
208
198
195
197
194
187
177
194
211
172
172
186
180
167
179
172
169
163
167
162
163
164
157
154
155
153
148
149
135
143
146
146
147
152
151
148
142
138
134
134
149
138
121
100
108
116
106
92
74
74
79
78
70
64
61
69
99
116
85
33
10
6
98
93
42
10
1
1
0
2
8
9
5
5
6
13
13
32
147
156
152
150
149
149
147
146
146
145
144
144
144
144
143
140
139
138
136
137
135
135
133
133
131
131
129
128
131
132
129
132
137
132
133
142
140
139
147
146
149
174
195
199
187
188
161
109
67
41
26
20
10
3
2
8
31
34
32
36
35
38
40
40
36
39
33
30
43
44
40
47
49
55
55
42
46
57
59
49
43
43
44
43
43
35
33
30
31
35
41
54
56
46
40
40
41
43
42
45
46
45
49
53
48
40
39
36
32
32
38
36
35
31
29
30
31
33
34
34
34
35
37
33
32
31
32
129
209
208
209
209
210
209
210
210
208
210
212
210
211
213
209
200
210
193
157
161
74
75
60
53
52
46
44
45
44
42
43
45
44
41
40
38
36
34
34
31
32
30
24
21
21
21
22
21
23
24
19
13
14
14
18
19
16
10
9
11
14
13
10
12
17
24
48
69
83
73
91
108
138
139
126
122
139
131
178
169
197
176
186
198
201
203
205
206
205
209
212
201
201
201
202
200
203
198
191
191
210
211
163
184
198
188
186
181
176
168
170
172
167
163
164
161
161
160
159
157
148
143
149
152
155
155
157
155
153
148
144
143
137
135
148
143
125
108
113
107
99
93
103
108
102
99
93
86
77
77
102
121
110
96
57
88
85
31
6
1
1
1
2
9
7
2
3
8
10
7
81
162
153
155
151
150
150
147
146
146
145
144
144
144
144
142
140
140
138
136
139
137
134
131
135
133
132
134
136
136
136
132
135
143
141
139
149
168
187
201
210
214
199
192
188
185
168
133
83
54
25
15
13
4
2
4
32
41
46
36
36
36
36
37
37
34
37
40
32
31
42
40
40
53
48
49
47
43
49
58
51
46
47
47
41
44
37
37
33
30
28
28
35
50
59
60
61
55
48
49
50
51
53
55
53
53
44
47
43
42
37
33
35
34
38
31
29
30
31
32
32
32
33
34
28
25
23
20
68
209
208
208
209
210
209
210
210
208
210
212
212
210
213
213
211
205
171
135
139
100
53
56
50
50
48
43
43
42
39
39
43
44
43
41
40
37
32
32
31
31
29
26
23
21
19
20
23
23
22
23
19
17
16
15
18
17
15
10
13
12
11
12
13
35
84
105
61
89
102
120
149
159
141
118
135
130
180
185
194
199
179
199
200
203
208
204
204
210
208
207
202
201
201
194
200
208
204
203
208
206
205
173
199
205
198
197
192
183
172
167
167
166
165
168
171
171
167
164
162
154
150
154
157
163
159
158
158
155
154
149
145
143
143
143
148
157
135
112
110
107
104
101
108
123
119
114
115
108
100
103
109
113
116
127
112
101
53
14
3
4
2
3
7
5
3
3
9
12
28
142
155
156
153
152
150
150
147
145
144
144
144
144
145
145
144
142
141
140
139
138
137
137
135
140
141
134
136
138
141
144
146
144
143
155
179
204
215
217
214
212
203
187
182
185
174
147
102
55
38
20
13
8
5
11
72
68
27
42
39
36
37
36
37
43
36
34
36
34
30
28
31
31
36
50
50
54
56
51
50
54
55
54
52
48
46
44
39
42
46
42
30
29
29
39
54
73
87
85
66
56
62
61
67
63
58
58
63
59
48
52
52
44
38
32
29
30
35
35
32
33
36
33
31
31
32
31
32
90
209
208
208
209
209
209
210
210
208
210
212
211
211
212
213
214
209
132
125
104
107
52
55
50
48
49
45
42
40
38
40
42
43
43
40
39
37
33
30
30
30
30
31
26
21
19
19
23
22
22
23
15
12
16
15
16
26
22
12
14
11
12
20
42
91
113
115
122
112
119
138
167
159
156
145
145
151
190
181
204
179
189
201
206
204
208
205
211
208
205
207
203
201
203
202
200
202
212
202
212
203
201
208
220
192
198
191
186
176
166
163
164
165
170
175
174
174
178
177
161
152
154
157
161
160
163
163
164
163
163
151
150
149
150
144
139
136
147
150
128
107
109
108
113
121
121
121
122
126
116
107
109
114
117
114
114
118
112
86
31
5
2
4
6
5
5
6
9
12
72
163
156
156
154
152
151
151
148
146
146
145
144
145
146
146
144
143
141
141
143
141
141
142
146
153
154
155
148
143
141
145
154
167
194
208
211
214
217
216
212
205
193
183
176
174
160
124
69
41
27
19
10
7
8
52
144
128
68
28
38
39
36
38
38
36
35
38
34
35
37
33
34
27
30
38
40
45
56
63
55
52
57
58
49
50
51
38
48
43
38
45
43
39
31
30
37
37
49
81
84
73
70
68
71
71
69
61
59
64
64
58
53
47
50
46
38
31
28
27
29
32
33
32
32
32
32
30
36
143
210
209
208
209
208
208
209
210
207
209
211
212
212
213
213
214
211
147
87
82
68
66
52
49
53
48
47
42
39
37
38
40
41
41
37
37
36
35
30
29
30
32
31
30
23
18
16
21
20
23
19
10
13
16
12
16
36
19
11
13
11
20
65
86
126
122
129
145
147
157
160
169
142
122
150
154
185
188
204
194
176
201
208
204
214
212
208
209
208
208
206
206
203
203
205
206
207
208
197
201
191
189
195
194
188
193
187
177
170
163
163
167
167
171
171
168
174
180
175
167
159
155
159
160
161
166
167
167
168
169
167
168
172
170
148
139
133
130
136
147
145
114
104
107
109
112
102
110
121
121
109
101
102
106
110
114
118
122
124
115
21
5
5
3
4
9
10
7
28
142
166
160
157
156
152
150
151
149
148
147
145
144
143
143
143
142
146
145
143
146
147
154
155
156
174
177
167
164
172
181
189
197
207
210
210
212
215
214
214
200
188
179
171
170
164
140
82
52
43
23
14
7
3
39
128
138
142
134
82
30
50
54
41
44
37
32
34
38
38
40
34
29
32
26
29
37
34
35
51
74
65
54
62
60
53
51
49
44
46
35
26
37
37
34
37
58
61
39
34
35
60
77
80
90
90
88
81
76
72
70
67
66
57
52
49
45
42
35
28
29
32
31
31
31
32
32
28
28
52
210
210
209
209
208
208
209
210
209
210
211
212
212
212
212
214
218
185
89
75
67
53
60
48
52
47
45
43
41
39
36
38
39
38
36
36
36
35
32
32
34
34
31
27
21
19
24
19
11
18
15
10
14
15
18
25
30
13
11
15
8
33
97
107
114
134
132
138
162
157
181
153
121
138
147
178
182
204
219
174
195
209
210
208
214
210
209
210
218
210
207
209
200
207
211
215
216
205
189
190
201
199
191
193
186
196
188
173
168
165
166
173
172
168
167
168
169
168
169
170
164
158
163
162
163
166
166
163
163
165
170
177
182
186
161
144
141
132
135
135
141
135
98
104
104
99
102
95
88
89
84
81
80
83
88
95
107
120
130
138
79
8
5
2
3
11
6
5
85
169
165
160
157
159
155
153
152
151
150
148
144
143
144
143
142
143
144
145
147
155
153
157
169
179
179
170
170
172
176
185
193
202
208
208
214
218
216
212
198
172
170
169
162
154
141
105
61
48
34
14
5
4
22
126
136
131
133
136
136
96
41
63
68
46
46
39
36
43
34
36
37
36
28
29
25
25
34
41
35
34
59
61
58
62
65
61
49
47
38
35
36
29
24
23
28
35
47
53
45
31
30
32
46
60
81
107
110
90
83
79
76
74
75
68
61
56
52
49
40
34
33
32
31
29
33
29
28
33
143
211
211
211
209
208
209
210
212
211
211
211
211
211
212
213
214
212
214
143
70
85
59
53
64
51
51
46
43
42
41
37
38
37
35
33
34
34
35
36
35
34
33
30
25
20
22
23
15
9
15
12
9
14
21
34
24
16
12
14
11
8
67
97
136
140
134
139
138
155
170
174
139
121
137
171
187
215
213
201
186
207
207
207
210
208
209
212
215
216
213
211
207
200
205
211
216
209
197
185
188
200
200
191
192
191
189
187
179
173
169
173
180
182
174
171
166
170
168
168
164
163
158
159
167
170
167
166
163
164
166
171
175
178
190
177
155
143
138
138
142
142
153
103
101
105
102
103
97
89
89
83
78
77
77
74
83
91
100
111
128
137
43
5
4
6
13
8
24
145
166
162
161
157
156
155
155
154
151
151
150
148
148
149
149
149
144
149
158
147
144
157
174
174
175
174
172
173
175
181
189
198
203
207
207
209
210
210
193
171
164
164
152
146
128
104
77
61
41
21
4
6
23
112
143
134
139
138
135
134
137
123
82
93
88
47
36
36
42
40
37
38
40
38
35
35
30
25
38
48
45
31
25
42
59
67
69
52
44
42
41
40
37
35
24
20
21
28
26
39
46
34
24
25
31
32
45
62
86
97
89
83
84
87
83
79
70
70
71
61
53
45
35
32
34
36
34
32
35
117
211
211
211
209
208
208
209
211
212
211
211
211
211
211
212
213
214
213
217
125
73
82
59
49
56
52
46
46
43
40
38
37
34
36
32
31
34
35
38
37
33
31
28
25
24
23
18
14
14
16
11
10
12
16
25
18
12
12
12
14
42
125
148
145
165
164
141
150
156
177
144
129
129
152
180
204
214
205
197
207
208
206
209
211
208
209
212
218
210
209
206
202
206
206
207
206
198
188
182
195
204
200
189
191
189
196
188
180
179
176
176
180
179
178
174
174
173
168
162
159
155
160
162
167
171
167
169
167
168
167
168
173
177
185
172
157
143
134
141
151
156
171
110
100
100
106
109
96
92
86
83
81
74
72
71
72
90
87
96
109
124
127
44
10
11
9
13
81
177
165
163
160
160
157
157
152
152
152
152
149
149
150
147
155
163
152
145
143
141
166
170
171
171
174
174
175
176
178
185
192
197
201
198
194
197
197
187
157
151
152
136
124
113
90
70
64
49
31
8
6
21
105
148
139
139
133
134
138
136
134
144
140
131
132
112
69
35
39
44
41
41
43
44
41
32
41
40
26
33
39
35
22
24
26
43
71
66
59
56
50
38
31
34
38
26
18
18
20
23
29
39
36
37
20
5
8
13
20
38
62
76
78
77
69
79
78
83
81
74
65
65
55
46
44
38
49
55
30
21
211
211
211
209
208
207
209
211
211
210
210
210
211
211
212
213
214
214
217
202
88
58
63
53
50
46
45
45
43
40
39
38
34
36
34
33
35
38
37
33
29
28
24
22
22
23
18
14
15
13
8
12
12
13
24
17
10
10
7
24
84
136
146
180
191
148
147
153
164
160
128
133
134
176
191
189
198
200
204
210
206
210
211
209
209
210
214
220
208
209
205
205
209
212
208
206
197
186
180
202
203
194
191
192
199
195
190
183
182
184
186
187
179
176
176
179
171
162
161
160
161
166
169
172
173
168
170
168
169
169
167
171
179
183
180
163
154
145
153
161
177
149
100
110
104
103
104
98
93
86
86
91
77
77
78
89
80
81
85
101
121
153
145
67
17
6
30
136
175
167
167
168
166
166
164
164
163
160
157
158
154
155
147
138
141
133
141
157
161
164
166
167
169
174
177
179
183
186
190
195
199
198
189
173
182
173
149
128
125
106
96
93
62
53
39
50
37
18
6
10
87
148
137
138
138
135
137
135
134
136
135
138
141
140
141
126
80
41
39
36
35
47
47
50
50
40
46
34
22
21
22
23
26
27
29
52
57
41
54
53
48
42
36
34
32
30
20
13
11
17
20
35
37
31
18
13
6
3
5
15
31
42
51
50
54
53
67
75
71
65
59
56
61
61
54
128
196
173
175
211
211
211
210
209
208
209
210
211
210
209
210
210
212
212
213
213
212
212
215
168
61
70
52
48
47
44
42
40
39
41
39
34
34
33
33
35
37
33
28
25
22
20
20
21
21
19
16
15
11
10
15
13
19
26
24
24
22
33
100
152
172
167
198
188
174
164
153
161
133
123
121
174
188
192
193
204
203
207
206
213
214
206
207
212
211
215
212
213
210
204
202
200
206
207
206
197
194
189
204
203
190
190
191
197
202
190
183
184
190
187
183
178
178
178
177
168
162
164
161
157
157
167
173
172
168
170
172
174
176
171
170
180
183
189
180
179
160
160
176
193
137
113
102
103
106
99
99
96
94
91
83
79
83
79
98
84
80
82
97
122
154
159
155
121
80
83
154
162
161
159
154
159
150
152
147
144
140
141
143
122
131
144
144
154
158
158
152
164
166
167
166
168
174
180
189
193
194
192
195
197
192
151
150
142
125
123
116
95
90
81
59
39
31
37
39
15
8
9
64
149
137
137
138
138
136
134
135
135
134
136
133
135
134
142
146
134
104
56
35
27
41
51
58
61
55
44
41
37
27
21
19
21
26
32
41
50
22
20
22
26
39
44
43
34
28
32
31
19
15
12
4
9
14
28
36
28
21
17
10
3
9
23
31
36
33
42
45
48
48
41
49
47
42
43
91
103
105
105
210
211
211
210
209
209
210
210
210
209
209
210
210
211
211
211
211
214
212
212
217
143
69
58
47
45
44
42
40
39
38
40
36
33
32
33
35
33
33
27
24
19
18
20
27
22
19
16
13
12
12
12
12
21
28
45
60
71
73
105
164
183
193
185
166
176
166
157
146
130
119
120
184
185
185
201
208
209
209
207
212
206
207
210
214
212
219
208
216
213
214
205
204
212
207
200
198
203
203
203
197
192
188
187
192
198
191
182
186
186
185
184
186
182
180
179
170
168
160
153
154
151
157
164
168
168
168
169
171
176
170
169
176
177
184
173
174
159
154
154
173
129
119
110
108
109
108
104
97
95
99
87
82
92
100
87
78
82
98
129
152
168
163
160
162
166
131
109
120
122
124
122
117
119
127
122
126
131
139
149
160
161
167
167
161
164
161
162
168
172
171
171
171
174
180
193
195
195
196
194
179
151
131
131
113
132
133
114
110
73
52
32
29
44
46
22
7
9
56
139
138
138
138
138
138
137
136
137
135
133
134
136
133
134
136
141
150
140
112
76
41
27
28
36
55
49
47
46
45
37
30
26
25
35
28
27
34
20
11
12
12
10
17
28
35
27
19
23
24
19
7
2
4
3
13
31
40
43
38
27
15
5
4
5
9
15
25
31
36
31
28
30
30
32
81
33
22
23
22
211
211
211
211
211
210
210
208
208
209
209
210
210
210
210
212
213
212
213
213
214
210
115
64
52
43
38
41
42
38
38
37
35
33
31
29
29
34
32
25
21
18
20
26
26
23
19
13
11
12
10
9
17
29
52
63
75
73
126
177
182
173
185
201
183
176
158
153
134
129
120
175
208
200
197
203
210
214
211
213
211
207
215
214
211
214
212
209
214
215
211
214
209
213
207
195
197
192
196
205
204
198
191
188
191
188
187
186
190
188
184
184
183
182
183
182
180
182
168
164
170
170
167
156
167
169
167
166
163
158
157
161
173
173
185
178
165
166
164
155
176
113
114
111
113
111
109
106
105
106
98
95
93
96
94
104
114
133
124
148
168
165
156
155
160
165
168
157
162
166
168
165
162
169
176
172
166
161
163
168
170
171
173
172
171
174
176
177
176
176
176
176
176
178
183
195
193
186
172
158
140
135
130
119
159
135
117
121
91
52
37
35
54
60
33
19
13
51
145
140
142
141
139
138
138
137
137
136
135
135
135
135
133
134
135
136
138
140
142
132
97
51
32
29
31
45
47
51
50
46
40
32
30
36
25
18
24
27
19
12
15
18
12
10
9
11
10
4
6
5
3
1
1
3
5
16
28
44
47
45
41
28
19
13
6
4
5
7
12
12
15
17
22
31
154
181
170
172
173
211
211
211
211
211
210
210
208
208
209
209
210
210
210
210
211
214
215
213
215
216
202
144
108
57
52
41
36
40
35
38
36
33
32
30
31
31
33
30
24
21
21
25
27
25
22
18
14
12
12
10
11
14
28
79
95
122
130
145
219
226
211
221
190
188
177
158
153
127
134
142
216
194
193
195
208
214
214
213
216
207
208
211
219
211
219
210
209
211
211
216
218
219
211
202
195
196
194
201
210
204
199
197
192
189
188
189
188
191
188
184
184
185
185
181
176
177
174
173
182
187
182
174
174
176
167
166
165
161
159
158
162
165
172
176
172
159
167
161
159
174
115
106
114
118
115
115
117
117
118
103
107
110
112
97
164
167
146
159
168
163
156
148
145
155
160
166
165
166
164
159
162
165
168
171
171
166
165
169
174
177
178
179
179
180
181
181
180
179
179
181
180
177
182
185
190
186
134
142
145
142
122
98
144
148
130
134
90
61
46
61
59
67
38
22
15
43
136
143
137
144
143
141
139
138
137
138
136
136
134
136
136
134
135
136
137
137
140
145
146
135
104
68
38
33
38
46
51
51
49
45
40
34
31
21
13
18
23
26
24
15
15
16
19
18
16
13
4
3
6
5
3
2
1
1
6
14
31
45
54
50
46
42
34
24
19
11
4
2
2
3
5
15
30
132
110
111
110
106
211
211
210
210
210
211
210
209
209
209
209
210
210
210
210
210
211
209
212
214
207
204
134
137
108
58
54
40
36
36
39
38
34
34
28
28
33
31
27
26
24
21
26
28
25
21
17
15
14
12
12
15
17
28
38
64
159
206
218
227
223
187
152
181
184
173
163
143
125
119
183
201
197
191
202
215
213
218
221
215
206
211
222
220
214
217
207
210
217
219
225
215
214
210
212
201
191
195
205
208
211
208
202
192
188
186
188
189
190
186
182
187
188
183
180
182
179
176
178
185
187
186
185
178
173
174
169
161
164
161
163
159
160
168
163
162
156
163
167
176
152
86
91
115
117
121
128
121
112
111
113
115
112
119
130
166
133
159
175
170
167
154
145
148
157
158
163
166
167
165
163
165
170
172
174
173
172
170
176
180
186
187
190
186
186
186
185
185
184
184
186
185
185
185
187
184
132
114
145
151
134
109
116
112
137
129
101
60
61
110
111
75
42
16
18
38
132
149
143
139
143
143
140
139
138
138
138
137
135
137
136
135
135
135
137
139
140
143
140
141
144
139
124
91
59
38
38
43
51
51
48
46
43
39
30
24
18
18
21
27
29
18
17
24
22
23
21
17
11
7
3
5
6
3
1
0
4
15
25
41
49
49
48
45
41
37
29
21
15
13
6
2
8
29
105
20
50
93
16
211
211
211
211
211
210
208
208
208
208
209
209
210
210
210
211
213
213
216
207
149
170
133
105
134
102
61
62
42
36
42
39
33
31
31
28
29
30
26
25
23
25
29
28
26
22
15
12
14
13
11
14
18
38
70
106
189
199
176
200
228
203
188
183
177
163
166
132
124
161
212
181
202
198
208
214
217
220
216
211
208
213
216
214
210
211
210
210
221
222
226
222
209
218
218
208
207
211
215
209
203
202
193
189
192
188
195
187
187
184
185
185
185
183
183
192
184
181
181
183
176
181
190
180
172
174
170
161
177
168
167
161
164
169
169
167
167
169
171
183
142
101
109
120
122
121
122
117
119
130
115
130
167
165
161
152
151
180
181
179
173
152
150
158
166
166
167
170
170
170
171
171
173
175
174
175
175
176
177
182
190
191
191
189
191
190
188
187
187
186
184
189
189
178
156
116
107
135
138
142
131
124
130
121
135
95
63
68
114
96
52
32
25
19
36
129
150
148
148
140
142
141
139
139
138
138
138
137
136
137
137
137
137
137
138
137
139
139
144
143
143
146
150
140
107
69
45
36
47
51
51
52
48
41
38
30
24
15
13
16
31
35
25
28
28
25
23
24
22
18
11
7
6
2
2
0
1
3
12
31
39
48
52
49
45
44
39
33
30
24
21
11
5
13
124
157
170
78
22
211
211
210
210
210
209
208
207
208
208
208
209
209
210
210
210
213
209
208
213
171
102
148
128
91
111
78
73
61
44
44
44
36
30
28
29
28
29
29
32
29
26
28
27
25
19
12
13
13
12
11
12
13
53
141
172
180
142
205
221
217
206
195
179
173
170
163
124
147
214
199
186
194
204
214
217
218
218
215
207
208
215
217
216
209
212
212
207
222
223
224
221
219
217
211
213
214
208
204
198
195
195
193
196
194
199
191
187
190
194
187
183
183
186
185
187
183
182
178
183
177
177
193
187
179
171
171
161
169
172
173
170
176
179
170
158
160
157
168
187
180
171
163
156
154
131
120
123
134
134
148
170
177
167
162
170
184
186
183
182
176
156
157
167
169
170
168
167
174
176
176
179
177
177
177
176
176
173
177
183
190
194
194
193
194
192
191
190
189
187
190
175
147
125
116
111
135
117
126
155
132
135
134
123
87
53
62
116
84
45
31
25
24
32
127
154
151
149
147
144
140
141
139
139
138
137
138
136
137
137
139
138
138
138
138
137
138
140
140
142
144
144
143
148
140
120
96
58
32
34
50
55
54
50
43
36
30
25
19
11
17
31
30
27
28
27
26
23
21
19
18
15
11
5
3
2
2
2
8
21
31
35
45
50
46
44
40
39
37
33
29
22
17
12
35
124
96
25
27
211
211
211
211
210
210
210
209
209
208
208
209
208
209
209
209
210
208
212
215
204
154
97
134
107
65
66
84
56
58
45
46
42
33
27
28
32
32
31
31
29
27
29
28
24
17
16
16
10
12
13
15
22
71
130
162
147
236
225
225
219
210
195
193
171
176
146
125
189
213
199
211
209
212
218
225
219
217
211
210
211
210
214
212
209
212
210
212
215
223
222
202
204
198
196
201
194
195
196
199
195
194
195
202
201
199
201
198
196
193
186
183
184
186
185
182
182
180
176
175
176
181
194
196
185
172
167
165
161
164
168
170
187
194
176
150
140
158
169
180
178
172
168
160
170
167
145
144
158
138
163
184
186
178
178
185
190
188
189
187
183
180
174
174
173
168
171
180
180
184
185
186
183
183
183
178
177
174
176
185
194
196
198
197
198
196
191
189
184
172
163
138
116
123
114
131
105
96
138
137
148
140
129
90
75
104
121
74
43
32
27
27
33
127
161
151
151
150
148
146
142
143
142
140
139
137
138
136
136
138
138
137
138
138
138
139
143
144
143
143
145
145
144
144
147
149
140
118
80
45
39
49
52
58
54
49
41
34
22
18
16
15
26
30
30
28
25
21
18
14
12
12
18
18
11
4
1
2
5
16
24
26
34
44
46
46
46
43
38
36
34
31
32
29
21
24
80
82
108
210
210
211
211
211
211
211
210
210
209
208
209
208
209
209
208
209
211
211
212
190
186
131
82
80
79
51
88
84
54
58
54
51
45
34
28
32
34
33
31
29
30
29
28
23
18
18
14
11
11
12
15
22
23
59
194
221
226
204
218
222
213
198
195
175
168
132
159
205
199
216
211
212
216
224
225
222
216
210
212
211
210
210
207
209
220
208
208
212
225
216
202
203
195
194
190
180
196
197
196
196
197
197
203
204
203
202
197
193
187
185
185
185
187
183
187
183
182
175
175
182
191
186
184
181
170
168
162
162
158
167
175
190
194
177
132
93
133
166
172
173
172
169
158
159
158
158
148
146
149
175
188
191
189
188
190
191
193
194
193
189
187
183
181
177
178
183
188
187
191
190
188
188
188
186
183
180
176
181
190
197
199
199
196
191
187
180
172
162
156
161
160
151
125
110
100
84
136
146
147
136
137
118
104
129
125
76
47
35
31
27
35
120
163
158
153
149
149
147
145
142
143
143
140
139
138
138
137
137
138
139
137
138
138
138
139
143
144
143
143
144
146
144
144
145
146
147
147
127
104
72
48
34
47
51
59
58
50
35
24
19
16
25
31
37
34
28
25
21
16
14
11
10
12
10
9
5
3
3
12
21
28
33
36
41
48
46
45
42
38
36
32
30
29
26
30
129
102
105
210
210
210
211
211
210
210
210
210
209
208
209
208
209
209
210
212
209
208
212
208
187
152
151
88
73
72
50
52
50
53
54
58
55
46
37
36
36
35
32
31
32
30
25
22
21
20
16
12
10
13
16
22
48
120
178
169
183
221
222
216
194
194
179
179
146
146
181
209
216
216
213
217
222
228
228
222
215
216
214
211
212
205
209
222
221
202
203
210
212
203
206
200
199
199
196
195
201
196
196
198
197
195
202
208
207
195
192
193
187
183
186
186
186
184
188
190
186
174
177
190
196
182
183
185
180
175
167
177
174
180
182
183
180
176
140
73
120
163
166
170
168
170
172
157
153
149
152
166
168
180
188
192
190
190
191
193
197
197
194
193
189
187
187
190
186
190
192
193
194
192
191
192
191
191
191
191
187
189
193
198
196
195
190
179
170
154
149
144
152
131
128
104
93
90
108
151
165
155
121
106
105
132
155
124
80
54
36
33
31
35
128
163
157
156
152
149
148
146
143
143
143
143
142
141
141
138
140
139
139
140
137
138
138
140
142
144
143
145
144
144
145
143
143
144
145
146
150
158
148
127
101
64
44
39
46
51
54
56
45
34
25
24
27
40
43
38
31
28
22
17
15
8
6
5
8
10
8
8
7
14
23
31
36
32
31
39
44
43
41
37
35
33
33
34
33
98
184
183
210
210
210
210
210
211
211
210
211
209
208
209
208
209
209
208
211
210
209
213
211
211
170
122
142
101
58
51
59
59
64
53
56
58
55
49
43
41
37
34
34
32
29
23
20
23
22
18
14
13
14
17
25
57
77
129
153
196
223
220
215
200
190
182
177
141
165
203
221
216
217
220
226
227
228
229
222
218
219
212
210
210
205
211
219
212
199
205
205
204
205
206
200
202
200
203
208
205
196
196
199
198
197
198
205
208
194
191
191
190
187
186
191
185
179
184
182
181
174
177
188
188
178
180
182
185
170
174
183
180
183
179
181
184
192
168
125
146
162
156
168
168
157
157
160
153
156
174
180
177
182
182
185
190
191
191
195
195
195
194
194
193
193
194
196
193
192
193
190
192
189
183
183
189
190
192
191
187
186
186
185
189
180
185
188
166
145
130
118
126
115
110
99
113
136
165
172
145
115
107
79
110
165
131
96
61
41
35
36
40
119
166
161
156
156
154
149
148
146
144
143
142
142
142
142
142
139
140
140
140
140
138
138
139
141
143
144
143
144
144
144
144
145
145
142
145
147
149
153
152
153
146
124
91
50
39
36
42
49
51
49
36
28
28
36
43
43
37
31
23
16
12
9
6
4
4
5
5
9
10
13
15
23
30
27
24
32
37
35
35
35
34
32
33
34
31
38
84
48
210
209
209
209
209
210
209
210
210
209
208
209
208
209
209
208
210
210
208
210
209
212
195
132
93
108
93
57
58
57
54
52
58
56
50
50
47
43
38
36
33
30
28
25
26
25
24
22
19
19
16
19
24
25
40
104
118
218
223
222
208
201
183
178
152
157
199
217
219
221
227
231
228
228
230
226
221
220
217
212
213
207
206
213
210
204
199
200
201
207
207
201
196
197
194
197
195
196
196
199
201
200
197
200
200
207
201
198
191
190
191
189
190
183
180
180
176
177
176
181
182
179
172
173
180
182
179
177
178
178
181
183
186
191
193
190
188
185
164
145
158
164
162
150
149
158
170
178
181
185
181
178
182
186
191
195
199
201
198
197
195
194
196
200
199
192
193
191
184
177
178
168
169
173
178
178
180
177
175
174
173
167
135
133
132
120
118
107
109
138
129
116
141
143
163
151
120
107
74
66
74
164
131
96
67
35
34
40
50
133
165
158
161
160
158
154
151
148
146
146
142
142
142
142
142
142
140
140
140
140
141
140
140
142
144
145
145
145
144
144
145
144
145
146
143
146
148
148
148
152
152
155
154
142
110
72
39
34
34
32
35
29
26
26
25
27
28
30
28
25
21
19
12
9
7
4
2
2
3
2
2
3
6
11
19
25
21
16
15
16
17
16
15
15
18
22
102
164
123
210
209
209
209
209
209
210
209
209
209
209
209
208
208
209
209
210
210
209
210
210
212
214
172
92
96
86
67
60
59
58
54
53
56
62
52
44
41
39
37
40
30
29
28
28
25
21
20
20
19
21
20
24
40
96
81
155
211
214
185
203
194
177
167
146
187
221
221
224
230
234
232
228
230
228
224
223
220
217
215
214
208
207
209
206
202
199
202
204
203
201
201
199
194
189
197
192
194
196
200
200
198
198
196
202
203
199
195
191
186
191
194
196
191
188
179
177
180
177
179
179
180
174
170
179
173
172
171
173
174
178
181
188
193
195
194
193
189
180
168
156
151
156
160
156
163
173
180
184
183
181
183
188
192
198
199
203
201
197
195
199
199
197
202
190
182
169
150
159
147
164
161
151
153
170
171
172
175
170
175
162
120
111
102
114
122
110
113
117
112
130
171
171
156
137
106
104
82
61
56
102
148
95
77
44
32
40
51
130
166
163
160
158
163
159
154
149
148
147
146
142
142
142
143
143
143
140
140
141
142
142
145
145
145
146
145
145
146
145
145
145
147
147
145
144
147
147
149
149
150
152
154
154
156
156
133
85
43
36
41
34
31
27
24
20
18
17
16
18
18
18
16
12
11
7
3
2
2
3
1
1
2
3
2
9
16
12
4
3
4
5
6
5
5
8
21
116
79
93
209
209
210
210
209
209
209
209
209
208
208
209
208
208
209
209
209
209
209
210
210
211
208
211
168
115
106
94
71
68
56
57
59
55
65
66
47
43
42
39
36
30
29
32
29
22
22
23
20
18
17
21
24
39
68
163
194
197
203
203
203
189
180
166
184
206
222
225
232
233
232
230
231
230
225
225
223
220
219
218
210
205
209
209
204
202
203
202
206
202
197
199
202
196
191
195
189
192
194
197
203
201
198
200
205
204
198
195
191
187
189
190
192
193
185
184
179
174
174
171
172
171
170
181
177
174
177
173
172
173
180
184
186
182
181
186
187
185
183
184
173
167
170
179
174
173
174
176
180
182
181
187
192
193
200
198
200
203
213
205
188
172
158
174
179
180
166
168
162
112
142
158
152
144
117
118
130
153
157
132
118
118
110
113
121
121
120
122
132
163
177
185
145
113
87
83
71
59
57
57
108
117
74
45
35
45
60
142
164
162
164
160
158
161
159
155
150
147
146
146
145
143
144
143
143
143
144
144
145
146
146
146
146
147
149
148
148
148
148
147
147
148
148
147
146
148
148
148
147
148
151
153
156
156
159
163
144
102
65
40
42
40
31
21
17
13
11
9
11
11
10
10
11
11
8
8
4
3
2
4
4
2
3
5
3
4
4
4
2
3
3
1
2
3
3
10
115
165
65
210
210
211
210
209
210
210
210
209
207
207
207
207
207
208
209
210
210
209
210
210
209
210
213
220
187
116
79
65
74
65
58
53
52
53
56
51
46
46
40
36
31
32
33
29
24
23
23
19
16
14
16
22
25
27
140
95
164
201
203
202
193
185
171
195
214
226
234
235
236
234
233
231
227
225
224
223
220
222
216
210
209
212
210
205
204
204
205
206
202
195
196
200
189
187
185
186
191
197
206
202
199
198
205
205
202
196
191
190
193
190
183
184
184
187
183
179
172
172
174
173
176
182
189
184
182
180
177
179
181
187
188
189
184
179
183
185
188
186
188
189
192
187
183
183
182
180
171
165
178
180
184
186
189
193
191
191
199
212
167
153
175
164
182
178
180
192
183
167
168
151
126
126
117
107
114
113
111
128
113
116
122
119
124
126
131
143
158
174
179
174
150
99
87
86
75
69
66
60
60
96
87
45
38
47
72
151
166
160
160
162
161
160
160
158
155
151
147
146
146
146
146
145
144
143
144
146
146
146
146
146
148
150
150
152
152
149
149
148
148
147
146
146
147
146
147
147
147
147
148
150
155
158
156
159
160
162
154
131
89
56
48
31
17
11
8
7
8
6
4
3
4
8
7
7
3
1
2
5
7
4
1
2
7
3
4
1
2
5
3
2
2
2
3
4
13
59
35
23
210
210
210
210
209
210
209
210
209
207
207
207
207
207
208
208
209
209
209
210
210
211
208
208
208
213
205
182
97
61
65
73
67
59
57
55
57
51
45
40
35
35
34
30
27
27
24
20
17
14
15
16
21
25
28
86
148
187
164
185
197
195
192
188
197
218
228
233
235
234
231
229
230
229
227
223
222
223
222
216
214
213
213
208
206
207
207
205
204
201
194
198
199
184
185
180
186
188
191
200
201
199
202
202
199
203
193
189
190
194
190
185
181
183
186
183
176
172
174
174
176
179
192
194
194
191
187
187
185
185
189
188
188
192
191
190
190
190
191
194
191
192
193
193
191
191
186
172
168
182
177
161
164
169
178
183
188
199
197
127
165
194
187
178
180
182
195
202
195
171
149
117
116
118
115
117
127
125
122
119
121
122
122
129
141
160
160
152
159
150
125
102
89
81
75
70
69
65
62
79
90
54
45
47
81
156
166
162
165
161
161
160
159
158
157
156
151
148
148
149
149
148
146
146
147
146
149
148
147
147
147
151
152
152
152
152
150
150
148
148
147
147
147
148
147
148
148
148
150
150
150
154
157
159
158
156
158
162
164
146
110
84
63
31
22
17
8
5
3
2
1
1
2
2
1
0
1
3
3
2
1
1
0
1
2
3
3
4
10
6
1
1
3
4
2
6
97
85
112
209
209
209
209
210
210
209
210
209
207
207
207
208
208
209
209
209
209
209
209
209
209
210
209
210
209
208
212
194
147
110
72
74
61
59
53
53
47
43
40
38
36
31
30
28
28
22
20
17
18
23
25
27
27
35
92
162
156
163
195
195
212
185
194
207
219
228
229
230
232
231
231
230
230
229
225
225
223
220
218
218
218
213
207
206
206
206
205
202
202
198
199
198
186
182
183
190
192
190
197
201
194
208
210
208
208
195
189
189
191
195
189
182
178
180
181
179
176
175
174
173
174
189
193
191
193
189
185
185
184
186
187
189
192
193
195
189
187
194
196
194
194
194
194
196
194
189
187
185
186
174
160
168
202
202
200
202
197
166
159
186
169
165
158
161
184
199
190
153
142
148
126
128
133
127
132
132
130
129
128
126
126
142
154
180
165
146
140
124
112
118
120
91
77
74
69
65
62
66
92
63
49
57
92
162
166
163
162
167
165
159
160
160
159
157
155
152
151
152
152
149
150
149
148
148
149
153
152
150
150
149
152
154
155
154
154
153
153
150
149
149
148
147
148
148
149
148
149
153
154
154
153
154
156
159
161
162
162
160
167
157
143
122
113
102
87
72
62
55
47
38
36
29
20
12
5
2
2
2
3
2
1
1
1
2
3
2
3
3
3
3
3
3
3
7
17
126
116
123
210
210
210
210
210
210
210
210
208
208
208
207
208
207
208
209
208
208
208
209
209
209
210
209
210
210
208
209
207
197
164
103
67
71
56
49
51
48
43
40
37
33
31
31
30
28
23
22
20
21
23
23
24
26
23
42
99
161
200
197
182
196
155
186
211
221
230
231
230
229
231
232
231
229
228
227
226
221
222
221
220
216
209
207
211
213
208
203
205
209
203
189
196
194
190
188
191
193
197
197
193
201
216
214
210
205
191
186
187
194
202
194
180
182
180
181
177
179
179
179
178
182
179
189
186
187
179
176
181
181
184
185
186
185
189
186
184
184
191
193
191
192
193
193
192
190
190
191
190
191
182
176
199
222
198
185
196
177
122
150
177
180
177
167
171
205
192
142
128
126
129
130
128
132
134
140
136
136
133
133
137
140
147
157
173
152
141
138
117
114
129
103
80
75
70
65
59
62
75
70
59
61
103
165
165
163
163
163
164
162
161
161
161
159
158
155
151
152
153
154
154
154
153
151
151
153
153
154
154
155
155
154
154
154
154
154
153
152
152
150
149
147
148
149
149
149
149
148
150
154
155
156
158
158
160
162
162
162
161
163
164
164
153
140
141
145
137
126
116
112
104
100
89
80
70
50
27
12
6
2
2
1
1
1
1
1
1
2
2
2
1
2
5
2
5
6
72
156
157
209
209
209
210
210
210
210
210
208
208
208
207
208
207
208
209
208
208
207
207
207
207
208
207
207
208
207
209
209
208
203
163
83
56
60
59
49
46
42
37
35
36
35
32
32
29
24
22
19
18
21
21
20
22
22
28
64
123
182
196
182
203
191
195
213
221
230
232
232
230
231
229
229
229
229
229
227
225
224
220
221
218
215
213
211
210
204
204
209
209
200
191
191
191
192
193
194
201
212
199
192
200
205
207
202
190
187
188
189
185
189
182
180
183
180
179
178
178
184
182
182
174
173
175
179
175
175
172
174
174
175
178
177
175
175
168
175
180
184
185
183
190
191
190
189
191
195
195
195
191
195
213
217
201
211
186
196
169
118
156
184
183
182
189
187
184
160
155
153
145
133
133
135
136
137
142
144
140
149
146
143
140
151
141
151
133
130
130
109
96
87
79
75
71
70
60
64
69
67
63
68
117
171
166
166
164
164
165
163
162
161
161
161
160
158
156
154
154
153
155
156
157
156
155
155
156
153
153
154
156
157
156
155
155
155
154
154
154
153
151
149
148
148
148
148
150
151
153
155
157
157
159
159
159
160
163
163
162
163
164
164
167
170
165
148
138
151
155
148
136
128
126
118
112
105
94
80
63
57
41
17
6
3
2
2
1
2
2
2
2
3
1
3
3
4
5
41
48
40
209
209
209
210
210
210
210
210
210
209
209
207
208
207
209
209
208
207
206
205
205
206
206
206
206
207
206
206
206
208
210
176
126
101
71
57
58
53
48
42
43
42
40
35
34
31
26
26
22
19
20
21
23
25
27
28
26
114
180
195
201
191
173
197
209
220
226
229
233
232
231
226
227
230
229
226
227
226
222
222
223
225
223
218
210
207
206
205
203
203
195
194
194
194
194
195
200
205
210
200
202
203
200
202
194
191
189
186
186
182
179
180
183
183
185
182
176
178
180
182
174
166
169
172
170
165
168
168
168
169
168
171
177
178
171
165
171
178
183
182
180
183
182
183
183
186
193
192
190
190
212
223
200
182
217
175
178
168
156
167
179
178
166
184
174
166
169
159
163
158
136
137
137
135
138
142
150
147
148
139
139
141
142
123
130
122
115
101
94
86
87
85
78
74
70
70
70
66
58
66
133
170
164
162
163
164
166
165
163
163
162
162
162
161
158
157
157
156
156
156
156
156
156
156
156
157
155
155
156
157
157
157
157
156
157
157
156
156
154
153
153
153
153
152
154
156
156
158
160
161
160
162
163
163
163
164
163
164
165
165
166
166
168
169
165
152
124
150
175
167
152
136
132
124
115
110
103
94
93
85
64
45
27
15
6
1
2
5
4
1
0
1
3
2
2
15
137
200
185
209
210
210
210
210
210
210
210
210
210
210
209
208
207
208
208
208
208
206
205
205
206
206
206
206
207
205
204
205
207
209
205
187
122
86
57
51
50
52
47
47
45
41
37
35
32
31
30
26
23
21
24
29
29
32
31
33
111
173
179
188
163
171
192
207
218
228
230
231
231
232
228
227
228
228
225
226
226
223
222
222
223
221
217
211
212
211
203
197
190
193
198
201
200
200
202
199
197
197
200
198
200
203
206
199
192
187
189
190
182
179
178
182
186
188
188
179
174
172
174
168
172
188
187
182
181
180
175
175
173
176
186
189
194
191
183
185
187
188
184
181
178
179
176
177
184
192
192
189
207
210
205
193
190
174
169
157
143
137
168
196
181
179
189
176
185
171
153
149
156
148
138
137
139
139
140
138
135
141
140
155
147
126
116
111
112
111
97
88
85
84
80
78
74
72
70
67
63
84
145
163
160
160
164
164
165
166
165
165
162
161
160
161
160
157
156
158
157
157
157
158
156
156
157
157
157
157
156
157
157
157
157
158
157
157
157
157
157
155
154
155
157
158
158
158
160
160
160
161
163
163
165
166
167
167
168
167
166
166
166
166
167
167
170
171
170
158
134
137
160
175
162
151
141
132
125
120
115
111
106
95
81
72
65
52
40
32
20
9
5
3
2
2
1
3
13
93
68
46
209
210
209
209
210
210
210
210
210
210
210
210
209
207
208
208
208
207
206
205
205
205
206
206
206
206
206
207
207
207
207
207
212
212
173
93
63
60
57
49
49
44
40
36
36
33
33
32
29
25
22
22
29
31
29
26
19
94
143
152
191
172
148
185
202
217
230
230
231
231
233
230
232
233
232
228
228
226
223
223
220
218
221
217
214
214
211
207
202
192
202
204
202
204
202
201
202
201
200
201
201
201
205
202
205
189
187
186
188
186
184
182
183
190
188
174
176
170
169
171
171
176
187
184
182
188
188
189
187
187
193
197
204
205
198
190
184
182
182
178
178
177
179
184
188
187
192
187
197
209
214
207
211
193
150
169
159
129
123
139
172
188
181
185
176
177
181
178
161
146
147
145
143
137
136
135
133
136
134
146
153
129
116
113
110
103
97
93
87
85
81
79
80
78
69
71
71
108
164
167
161
158
161
163
163
164
165
163
163
162
161
161
162
161
158
156
156
156
155
158
159
159
159
158
158
158
159
159
159
158
160
157
157
158
158
159
158
158
155
156
157
159
159
159
159
162
162
162
164
165
164
166
169
168
168
168
168
168
169
169
166
167
169
166
170
168
174
168
147
141
149
170
175
173
162
147
141
137
129
123
118
107
100
96
89
86
86
74
61
53
43
33
25
19
17
18
136
148
118
209
210
209
209
210
210
210
210
209
208
208
208
208
208
207
207
207
208
206
206
206
206
206
206
206
206
206
206
206
206
206
207
206
204
204
118
58
67
61
52
51
44
43
35
38
35
31
30
25
23
22
25
27
23
19
19
21
98
136
158
200
159
149
186
198
213
229
231
232
234
232
229
232
234
235
231
231
229
224
223
221
220
219
217
217
213
212
208
205
206
205
204
201
202
202
202
203
202
201
201
204
206
204
204
195
189
190
198
205
200
188
183
186
197
185
173
173
175
171
173
170
173
178
186
178
175
175
179
181
188
195
201
204
203
199
185
173
170
166
166
166
168
173
177
188
185
185
181
204
209
207
207
216
160
136
139
143
141
141
154
173
179
192
190
187
188
178
167
159
151
147
151
148
140
145
156
163
155
142
126
126
132
124
115
110
103
97
93
92
88
81
82
88
84
72
83
134
168
161
158
161
161
160
162
163
164
165
163
164
163
163
162
162
162
159
157
157
158
158
159
159
159
159
159
159
159
159
159
159
160
161
161
161
161
163
163
162
160
159
159
160
160
162
163
161
164
166
164
165
165
166
168
169
168
169
168
168
168
169
169
168
168
168
168
169
168
169
167
166
150
142
137
146
164
178
177
173
159
144
138
136
127
121
115
105
105
102
103
107
108
100
89
82
81
84
64
72
122
134
209
209
209
209
209
210
210
210
209
208
208
208
208
208
208
207
207
208
205
206
206
206
206
206
206
206
205
205
205
204
204
205
205
205
206
170
118
89
54
58
50
44
44
37
40
35
32
30
27
22
21
24
21
15
20
23
25
78
138
163
174
178
145
184
198
208
228
233
232
235
235
232
232
234
229
228
228
227
225
222
221
220
219
218
216
212
212
211
209
209
208
208
205
205
203
203
205
203
201
201
203
205
207
204
198
194
198
211
218
211
194
187
186
185
182
174
181
176
175
177
173
173
184
202
197
174
165
170
170
166
169
182
189
193
189
177
171
174
169
159
161
170
172
173
176
182
198
198
205
214
209
213
187
135
154
145
144
157
170
181
175
182
187
185
195
176
166
144
139
145
152
167
151
139
139
135
135
134
128
115
123
116
112
104
117
107
95
91
90
86
79
88
93
85
103
158
173
163
160
159
160
160
161
163
165
165
165
164
165
164
164
161
161
162
159
158
159
159
160
160
159
160
161
159
159
160
161
161
162
163
162
166
165
163
163
162
163
164
163
163
163
163
165
166
165
168
170
170
167
165
165
166
168
168
169
168
168
168
168
168
169
169
168
168
169
169
169
169
171
169
151
140
132
119
121
133
163
179
183
174
165
153
145
137
135
132
124
121
124
124
122
114
109
111
118
114
114
117
130
209
209
209
209
209
210
210
210
209
208
208
207
208
208
208
207
207
208
206
206
206
205
205
206
206
205
204
205
205
205
205
205
204
207
205
195
117
110
123
110
61
45
41
40
42
36
33
33
28
23
21
20
17
20
25
28
29
42
115
172
173
178
163
164
208
213
230
235
235
233
234
235
233
233
229
226
226
225
222
222
224
221
219
219
216
216
216
213
213
212
211
212
207
205
205
204
205
204
201
201
201
204
205
203
201
198
202
214
224
217
204
194
187
187
180
180
182
177
185
184
183
180
191
204
199
176
167
166
163
161
166
172
180
180
174
174
174
169
158
165
164
170
175
176
178
186
209
195
196
202
198
194
180
163
179
148
172
179
179
169
173
171
194
201
191
168
150
141
136
130
137
167
142
138
136
125
119
122
124
109
111
114
111
110
107
101
100
90
87
84
85
85
93
127
166
169
165
162
161
162
161
160
162
166
166
165
165
165
165
164
164
162
162
163
162
160
161
162
162
161
162
161
160
160
161
162
164
163
163
165
165
166
165
164
166
165
165
166
167
166
166
166
167
168
168
169
171
172
169
166
166
167
168
168
169
168
168
168
167
169
169
168
168
169
169
170
170
168
170
171
169
159
146
146
139
110
84
101
133
170
188
187
178
172
164
155
150
147
148
148
147
145
144
139
140
138
147
180
186
209
210
209
210
210
210
210
210
209
208
207
206
207
208
208
207
206
207
205
206
206
204
204
205
205
204
204
204
204
204
204
207
205
208
205
214
197
204
174
97
73
57
47
47
48
38
38
35
32
29
22
19
19
22
29
32
25
20
82
131
164
170
183
176
196
217
228
233
236
236
234
234
232
232
231
229
227
223
224
223
220
221
217
218
220
219
220
223
223
218
214
212
209
208
206
207
204
203
203
202
201
204
205
202
199
201
200
205
213
209
207
200
191
185
185
175
177
189
193
185
186
186
188
196
189
176
176
180
180
182
182
182
183
182
184
178
172
167
163
163
165
174
181
182
184
206
205
178
205
206
205
180
180
183
182
176
187
191
186
195
186
190
208
203
179
164
164
152
129
141
162
149
135
126
131
126
119
113
111
112
115
116
113
102
95
93
91
87
85
86
88
109
154
175
167
166
165
164
164
164
161
160
163
165
166
165
165
166
166
165
165
163
164
164
164
163
162
162
162
162
163
161
160
162
164
163
164
164
164
165
167
164
165
166
169
170
170
171
172
171
171
171
169
169
169
170
170
170
168
168
169
168
167
167
169
169
169
168
168
169
169
168
168
170
169
169
169
170
169
167
170
169
167
146
148
156
140
100
59
44
65
116
156
183
192
193
186
179
174
172
168
162
158
153
149
146
172
143
146
210
210
209
210
210
210
210
210
209
208
207
206
206
208
208
207
206
207
205
206
206
204
204
205
205
204
204
204
204
204
205
204
205
206
204
205
209
209
196
186
174
136
82
47
43
39
38
41
35
33
27
22
19
20
26
30
18
20
50
78
142
180
179
174
181
207
226
235
237
239
237
234
233
233
230
228
227
224
224
224
221
219
217
219
220
224
221
225
222
221
221
216
215
211
205
206
202
201
202
201
200
202
202
201
201
201
197
199
203
202
202
202
198
195
189
181
185
190
190
181
180
184
183
179
174
175
185
192
191
187
187
187
188
190
187
182
177
176
176
174
174
176
180
182
201
217
186
174
202
205
199
177
188
208
201
193
180
191
194
189
195
199
185
169
177
158
150
143
134
141
160
144
135
136
137
127
127
116
116
114
114
112
105
98
80
81
77
88
82
87
124
169
176
170
166
165
165
164
164
163
160
160
163
165
166
166
166
166
167
166
166
164
165
164
165
164
163
162
161
161
162
162
162
163
164
163
162
163
164
165
168
168
168
168
169
170
170
172
173
173
172
174
172
171
172
172
170
170
169
167
167
167
167
167
169
169
170
168
169
169
169
169
169
169
169
169
169
169
168
169
166
164
171
171
154
150
153
147
131
92
47
24
25
55
86
115
154
182
194
191
187
179
174
169
167
166
186
191
175
209
209
210
209
209
210
210
210
210
208
208
209
207
208
207
206
205
207
205
204
204
203
203
203
203
203
203
204
204
205
204
204
205
205
204
206
206
205
208
209
210
194
100
53
47
42
33
58
41
36
32
25
25
26
23
21
16
21
15
15
80
120
143
160
159
177
193
217
234
237
244
239
236
232
233
231
228
227
226
225
223
218
222
222
219
220
220
219
219
220
220
217
217
216
215
213
206
205
201
202
202
199
198
199
198
196
200
204
206
208
210
211
207
204
199
195
193
189
187
185
187
185
183
180
183
182
185
183
179
178
173
180
179
179
183
184
182
184
187
187
187
189
187
195
207
210
174
162
200
194
209
181
177
190
189
194
190
191
190
162
155
138
139
150
135
131
130
151
171
174
158
155
142
142
128
118
116
113
114
110
109
107
104
97
88
91
93
100
114
156
172
168
168
169
166
165
165
165
164
164
162
162
164
166
166
167
168
167
168
169
168
166
165
164
165
163
162
162
163
163
162
163
164
164
164
165
164
164
166
167
168
169
169
169
171
171
173
172
173
173
173
174
173
173
173
171
171
171
169
170
169
168
169
168
169
169
169
169
168
169
169
170
169
169
169
168
167
166
166
168
168
166
165
168
167
158
157
157
152
142
123
90
48
20
4
8
26
45
78
111
139
160
173
183
185
184
173
195
204
210
209
210
209
209
210
210
210
210
210
210
210
208
208
207
206
206
207
205
205
204
203
203
203
203
203
203
203
203
203
205
204
206
205
205
205
205
205
206
207
207
202
173
82
39
44
43
48
34
39
39
32
30
25
23
21
23
22
23
23
30
25
39
108
60
139
200
208
225
235
243
239
236
234
234
232
232
227
225
223
220
221
223
223
219
218
216
216
216
215
214
215
216
217
215
214
209
206
200
200
203
199
200
201
197
195
195
197
207
215
212
211
211
206
201
194
190
189
188
188
191
190
189
186
187
188
185
184
184
184
185
189
189
187
189
193
193
189
188
190
188
187
189
201
199
170
180
165
192
186
153
138
170
191
195
204
202
192
169
146
135
129
129
121
120
130
127
137
147
146
135
134
137
132
118
118
118
117
113
103
105
106
108
107
105
109
104
131
174
176
169
166
166
168
167
165
165
165
165
165
164
164
164
167
167
168
169
168
168
169
169
166
165
165
166
163
163
164
165
165
163
164
165
165
165
166
165
165
167
169
169
169
169
170
172
172
174
173
173
173
174
174
173
173
173
172
172
171
169
171
171
169
170
169
169
169
169
169
168
168
169
169
169
170
169
167
167
167
166
166
167
167
167
167
165
167
166
155
163
164
142
131
124
90
42
15
6
3
6
9
23
46
70
103
125
147
156
172
173
211
212
212
211
210
210
209
209
209
209
209
210
208
208
207
206
206
208
205
205
204
204
204
204
203
204
204
204
204
203
204
205
205
206
205
206
205
205
205
206
207
206
174
109
121
93
54
39
34
38
37
36
32
30
27
25
25
26
26
30
54
40
29
124
108
192
214
209
212
216
230
239
241
242
237
234
232
226
224
223
221
220
219
220
218
218
217
218
215
213
212
212
212
212
210
210
210
207
202
202
204
201
202
200
197
197
196
197
199
202
203
203
204
201
198
195
192
192
187
190
195
195
193
190
191
193
193
193
194
195
194
194
196
194
192
194
193
188
186
188
184
185
192
208
210
207
210
176
172
163
166
191
209
206
189
196
168
143
139
140
141
140
141
140
156
161
150
150
152
146
145
143
142
132
123
121
123
121
117
113
112
113
113
110
106
119
162
177
174
170
170
168
167
170
168
166
165
165
165
165
165
164
165
168
168
168
168
168
168
168
168
166
165
166
165
164
165
165
164
164
165
165
165
166
166
165
167
168
168
169
171
170
170
172
173
173
174
174
174
174
174
173
173
174
174
173
173
171
169
171
171
169
169
169
169
169
168
168
167
169
168
169
169
170
169
168
167
167
166
166
166
165
165
165
163
165
166
162
163
169
178
162
143
135
115
79
51
20
6
1
6
4
5
15
39
33
54
80
105
212
212
213
211
210
210
210
210
210
209
209
210
208
208
207
206
206
208
205
205
205
204
204
203
203
204
204
203
203
203
203
204
204
204
204
205
206
206
206
206
205
206
200
198
166
100
101
66
80
37
39
34
33
31
31
30
28
27
25
98
129
113
52
176
204
209
214
212
211
208
216
219
234
245
240
233
229
227
225
230
229
224
218
217
216
218
216
217
216
212
211
210
208
208
208
206
206
206
209
207
204
202
201
199
199
198
200
198
197
194
194
195
194
194
193
193
193
192
185
188
191
191
191
194
195
193
194
192
191
190
189
189
190
192
189
190
188
184
182
179
172
182
197
217
235
190
184
166
176
184
171
169
165
165
145
178
146
155
161
155
151
147
148
152
153
151
153
153
156
154
152
146
141
133
127
125
126
123
121
122
122
119
114
121
155
179
181
170
172
169
171
167
168
170
168
166
165
165
164
164
166
166
166
168
168
168
169
168
168
169
168
168
167
167
166
164
165
165
165
165
166
166
165
166
167
168
168
168
169
171
172
173
172
172
173
173
174
174
175
175
175
175
175
176
175
174
173
169
169
171
171
170
169
168
169
168
168
169
168
168
168
170
169
169
169
167
166
166
166
167
167
165
165
163
163
163
164
165
164
172
173
183
176
155
143
132
120
90
57
25
9
5
3
23
112
45
35
32
38
213
213
214
213
211
209
210
211
210
209
209
210
208
208
207
206
206
208
205
205
206
204
204
202
202
204
204
201
202
202
203
204
203
203
203
205
205
205
206
206
205
206
209
205
149
144
86
130
109
90
45
32
32
32
34
28
33
60
89
160
185
121
144
219
215
214
209
211
213
209
211
208
215
226
240
239
231
226
227
230
231
227
223
222
220
217
214
214
214
214
213
211
208
206
206
205
205
205
207
205
202
202
200
198
198
198
200
197
196
190
187
187
185
186
185
184
185
183
179
180
182
183
180
183
187
186
183
182
181
180
180
182
185
185
184
181
180
179
179
182
169
189
210
218
225
167
174
196
171
183
176
181
163
191
183
175
161
160
165
164
157
154
152
151
151
151
151
150
150
147
143
138
137
133
130
129
127
126
127
125
120
124
152
180
184
178
175
170
169
169
171
167
168
169
168
166
165
166
165
165
167
167
167
169
169
168
169
168
168
169
169
168
167
166
166
164
165
165
165
166
166
166
166
167
167
168
168
168
170
172
172
173
173
173
173
173
173
175
176
176
176
176
176
177
176
175
173
169
169
171
171
170
170
169
169
169
168
168
169
168
168
168
169
169
170
167
166
166
167
168
166
165
164
164
163
164
163
164
163
166
165
167
175
178
167
151
144
136
121
92
57
27
13
23
154
176
172
171
172
212
212
213
212
211
212
211
211
210
210
210
209
209
207
207
206
206
207
206
206
206
205
205
203
202
204
203
203
203
202
203
203
204
204
203
203
205
205
205
205
205
202
206
207
197
156
201
199
206
140
78
72
114
91
60
70
82
135
200
211
209
188
212
213
211
213
212
211
211
210
211
212
212
212
219
230
238
237
232
230
236
233
224
224
223
221
217
213
215
213
213
213
210
207
205
203
203
204
201
199
197
198
197
196
195
195
195
194
194
189
185
183
181
181
177
177
176
175
175
173
172
172
172
173
176
176
173
172
171
171
173
175
179
178
179
176
176
180
182
185
173
182
199
207
220
193
192
204
188
188
197
198
200
188
166
160
166
170
166
161
156
154
149
149
150
147
144
145
143
141
141
142
139
134
134
132
131
132
129
128
149
176
187
180
174
173
174
169
168
168
170
169
168
168
168
167
166
167
167
167
168
167
167
169
169
168
168
169
169
170
170
169
168
165
164
165
165
164
165
166
165
165
166
169
168
169
170
170
173
174
174
174
174
174
174
174
175
174
174
175
176
177
176
174
174
174
173
171
170
170
170
169
168
168
169
169
169
169
168
169
169
168
167
167
167
166
166
166
166
167
166
165
163
162
163
162
162
161
161
160
160
161
166
163
178
186
164
154
147
138
118
103
76
48
107
37
53
70
36
212
212
213
212
212
213
212
211
209
211
210
209
209
208
207
207
206
207
206
207
206
205
205
204
203
204
203
203
203
202
202
203
204
204
203
203
204
205
206
205
205
207
205
205
208
211
213
215
208
180
148
162
207
197
134
157
168
200
217
220
212
215
214
211
213
213
212
211
211
210
211
213
210
210
209
214
225
235
234
235
239
231
224
223
224
223
221
218
217
216
213
214
212
210
209
206
205
203
199
196
197
197
195
194
193
192
190
189
192
188
187
185
185
181
176
176
174
172
171
168
170
168
168
172
171
170
170
168
167
169
173
175
177
176
178
179
179
180
181
180
177
175
173
178
189
198
193
200
183
194
186
183
177
178
170
170
167
165
161
154
150
144
142
140
139
136
139
139
140
139
142
140
138
136
136
136
133
134
145
173
189
184
181
178
175
173
171
169
168
168
168
169
168
167
167
167
167
167
167
167
168
167
168
169
169
169
168
169
169
171
170
169
168
165
164
165
163
164
165
166
166
166
168
168
168
169
172
172
173
175
175
175
175
175
175
175
174
174
173
174
176
176
175
174
174
173
173
173
171
171
170
169
169
169
169
169
168
168
168
169
169
168
166
166
166
166
166
166
166
167
166
165
164
162
162
162
161
159
161
161
159
159
160
157
164
175
187
181
162
158
144
136
124
102
142
51
78
95
5
213
213
213
213
212
213
211
210
209
211
210
209
210
209
208
207
206
206
206
207
207
205
205
205
204
204
204
203
203
202
202
203
204
204
204
204
204
205
205
205
206
207
208
207
210
213
213
213
216
213
213
215
211
211
211
215
212
214
214
213
213
216
215
212
214
214
213
211
211
211
211
213
211
212
210
210
213
215
223
234
239
236
231
229
229
227
226
222
221
220
217
215
211
211
213
209
209
207
204
203
198
197
195
194
192
189
189
189
189
188
186
185
187
183
178
177
176
174
172
171
171
169
168
171
173
173
172
174
176
177
176
177
176
176
178
180
177
172
172
174
175
177
180
173
172
169
169
166
171
176
167
169
167
166
161
160
155
153
147
140
134
128
130
130
133
138
141
143
142
141
140
141
141
139
138
143
156
179
187
183
182
180
179
178
176
173
171
171
168
169
167
167
167
166
166
168
168
168
168
168
167
167
169
170
170
169
169
170
170
172
171
170
169
165
164
164
163
163
164
164
166
167
167
168
169
169
171
172
173
175
175
176
176
176
176
177
175
174
173
174
176
176
175
173
173
174
174
174
173
172
171
169
168
168
169
169
169
168
168
169
169
169
167
166
166
166
166
166
166
166
165
164
163
162
161
162
161
160
159
159
157
157
157
151
157
164
163
171
182
174
162
151
145
134
164
196
186
90
36
213
213
213
213
212
213
211
210
209
211
210
209
210
209
210
209
207
207
206
207
207
205
205
205
204
204
205
204
203
203
202
203
204
204
204
204
204
204
205
206
206
207
206
206
209
209
210
211
212
212
213
214
216
213
211
209
213
213
215
215
213
214
214
214
214
215
212
212
211
211
212
212
210
211
212
211
211
211
213
214
222
234
240
239
236
230
228
224
223
221
219
219
214
213
214
210
208
207
207
207
203
199
200
195
195
193
192
192
194
191
188
189
188
186
185
185
186
186
182
181
180
180
180
180
181
183
184
184
181
183
182
180
181
183
183
183
182
178
176
177
177
179
181
177
174
173
171
168
163
159
154
165
157
157
151
151
150
143
136
134
135
131
135
138
141
143
144
144
144
144
143
147
145
147
160
184
190
187
186
184
183
180
177
175
173
173
171
171
169
169
168
167
167
166
166
169
169
169
168
167
168
168
169
170
171
170
170
171
172
172
171
170
169
167
165
164
163
164
165
165
166
168
168
170
170
170
171
172
173
175
176
176
176
176
176
177
175
174
175
174
175
174
174
174
173
174
174
174
173
172
171
170
168
168
169
169
168
168
168
169
169
169
167
166
166
166
166
166
166
166
165
164
162
161
161
162
161
161
158
156
156
155
155
153
153
154
154
156
164
183
187
177
165
153
146
144
136
123
102
213
213
213
213
213
213
211
210
209
210
210
209
210
209
210
210
209
209
207
207
207
207
207
206
205
205
205
204
204
204
203
204
204
204
204
204
204
205
205
205
205
207
208
208
207
208
210
211
212
211
210
209
210
212
213
212
213
213
213
213
214
212
212
214
213
214
210
211
211
211
212
212
209
209
211
211
210
212
213
212
212
217
226
232
238
239
235
230
226
224
222
222
218
216
215
213
212
212
208
205
203
206
208
208
208
210
208
206
205
202
198
195
199
197
198
198
199
198
195
193
193
193
194
194
194
193
194
192
189
188
188
186
186
185
186
185
185
184
184
181
181
181
178
172
170
169
168
160
148
148
151
157
155
153
148
145
143
137
136
137
139
143
146
148
150
147
148
143
145
147
145
153
175
189
190
188
184
185
185
183
182
180
178
178
174
173
172
171
170
169
170
169
169
168
168
167
167
168
167
168
169
169
170
171
173
172
172
171
172
172
172
169
169
168
166
166
165
165
167
168
167
167
168
170
171
172
171
171
173
176
175
176
176
176
177
177
177
177
176
175
174
173
173
175
174
173
173
173
173
171
171
171
171
169
169
167
167
169
168
169
169
169
167
167
167
167
167
167
166
166
165
165
163
162
162
162
161
161
156
155
155
153
151
150
151
150
150
150
152
153
166
180
189
187
219
212
210
209
204
212
212
212
213
213
213
212
211
210
210
210
209
210
209
210
210
210
210
209
207
207
207
207
207
205
204
205
204
204
204
204
204
204
204
204
204
204
205
204
205
205
208
208
207
207
207
209
211
213
212
212
213
212
213
214
213
211
211
213
212
214
214
213
214
212
212
211
211
211
211
212
212
211
210
211
212
211
209
211
213
212
211
210
214
223
231
238
237
233
229
225
223
224
222
221
220
216
216
213
210
209
207
209
207
206
209
210
212
210
208
207
202
203
202
202
203
204
202
201
200
199
200
197
197
197
197
196
195
194
193
192
191
192
189
190
190
187
186
186
185
181
176
172
168
167
167
165
164
161
154
155
152
152
149
148
145
146
150
151
155
157
157
158
156
155
155
151
146
159
174
185
191
191
187
184
183
184
185
182
180
181
181
179
177
175
174
172
171
170
170
170
170
170
169
169
167
167
168
168
170
171
171
171
172
172
172
172
172
173
173
172
170
169
168
167
165
166
166
166
167
167
168
169
169
170
172
171
171
173
176
176
176
177
177
178
178
177
177
178
176
174
173
173
173
173
173
173
173
172
171
171
171
171
169
168
168
168
168
169
169
168
167
167
167
166
166
167
167
166
166
165
165
165
163
162
162
162
160
156
154
153
152
150
151
151
148
148
149
151
148
154
153
162
177
184
192
197
170
171
211
211
211
212
212
213
212
211
211
210
209
209
209
209
209
209
209
209
209
208
207
209
209
208
206
205
206
205
204
204
204
204
204
204
204
204
204
204
204
206
206
207
207
208
208
207
209
210
211
211
212
212
212
213
213
212
212
212
213
214
214
214
214
213
211
211
211
211
212
212
212
212
210
210
211
211
211
211
212
212
213
211
211
211
211
213
216
223
234
239
236
235
230
226
227
224
220
220
221
220
219
217
217
216
214
211
212
210
212
213
209
206
205
204
201
202
203
203
200
202
202
202
201
199
198
198
199
195
194
194
192
193
193
192
190
188
187
187
184
182
178
173
170
169
168
168
168
167
163
160
161
159
157
157
160
162
164
168
167
167
166
164
160
153
152
159
172
185
193
193
189
184
184
185
185
183
183
182
182
182
182
181
179
176
174
174
172
171
170
171
170
171
170
171
168
168
168
169
169
170
171
171
171
172
172
172
172
172
172
172
172
170
169
168
167
165
166
166
165
166
168
168
169
169
170
172
171
171
172
174
175
176
176
176
178
178
177
177
178
176
174
174
174
173
173
173
173
173
171
171
171
171
170
169
168
169
169
168
169
168
167
167
167
167
166
166
166
167
166
166
165
163
164
162
161
159
159
157
154
153
151
151
151
150
149
149
150
150
146
145
150
149
148
153
152
156
199
220
212
212
212
212
212
212
212
211
210
210
210
210
210
210
210
210
210
210
210
210
209
209
209
209
209
208
207
209
210
207
205
204
204
205
205
205
205
204
204
205
207
207
207
208
208
207
207
209
210
211
211
212
212
212
212
212
212
212
212
213
213
213
213
213
212
211
211
211
211
212
213
213
212
211
212
214
213
214
212
213
213
213
211
211
212
211
211
212
211
213
218
223
230
237
239
239
231
225
224
225
226
229
227
225
225
223
226
222
221
218
217
215
214
212
211
209
211
206
203
201
200
202
204
202
201
199
201
201
200
196
196
194
193
193
194
193
191
188
186
183
184
181
177
174
173
170
169
169
169
169
169
168
170
169
168
169
166
168
168
168
163
163
166
169
174
183
193
195
190
187
186
185
185
186
185
185
183
182
182
182
181
182
180
178
176
174
176
173
172
171
173
172
172
171
171
170
169
170
171
171
171
172
173
173
172
173
173
172
171
171
170
169
168
167
169
167
165
165
166
165
166
169
169
170
170
170
171
171
171
171
173
173
175
175
175
177
177
177
177
177
176
174
175
175
174
173
174
173
171
171
171
171
170
169
168
169
169
169
168
168
167
166
165
166
165
166
166
167
167
166
166
165
164
163
161
159
156
156
156
154
153
152
151
149
149
148
148
150
151
147
142
144
143
142
144
140
138
147
175
174
211
212
212
211
211
210
210
209
209
210
209
209
209
209
209
209
210
210
210
210
210
209
209
209
208
207
207
208
207
205
204
204
204
204
204
204
204
205
207
207
207
207
208
208
207
207
208
210
210
210
211
212
212
212
211
211
211
211
212
213
212
212
212
212
211
211
211
212
211
212
212
212
213
213
214
214
215
213
213
213
212
211
211
212
213
213
215
213
210
211
211
213
219
224
227
228
233
236
234
231
232
233
234
233
231
231
231
231
224
220
221
219
217
216
212
215
213
210
209
210
207
205
203
202
202
201
201
199
198
198
196
192
192
191
190
190
188
186
184
183
181
177
174
172
169
169
171
171
172
174
174
173
170
169
169
168
170
169
173
174
180
190
196
196
192
188
188
187
189
187
186
186
186
186
185
183
182
182
182
181
182
181
178
176
175
176
173
173
172
173
172
172
172
172
171
167
168
170
171
171
172
174
173
172
173
173
172
171
171
169
169
169
168
169
168
166
166
167
165
167
170
170
170
170
170
170
171
171
170
172
173
175
176
176
177
177
178
177
177
176
174
175
174
174
174
173
172
171
171
171
171
170
168
168
169
169
169
168
167
167
166
166
165
165
166
166
167
166
165
165
164
162
162
160
159
158
156
155
154
152
152
151
149
148
149
148
148
148
145
143
145
145
145
141
139
134
132
147
154
210
210
210
209
208
208
208
209
208
208
208
209
208
209
209
210
209
209
210
210
210
210
210
209
209
208
207
208
207
207
206
206
205
205
205
205
205
206
207
207
207
206
207
207
208
209
209
210
210
210
210
211
211
211
211
210
211
210
211
211
211
211
212
212
211
211
212
211
211
211
211
210
211
213
214
213
213
213
213
213
214
213
213
214
212
212
211
211
212
211
211
213
210
210
211
212
215
220
225
229
234
238
238
236
235
234
234
235
234
230
230
225
220
217
214
217
216
217
217
215
213
208
209
209
206
204
203
204
201
198
198
194
193
190
188
187
185
184
183
183
180
179
177
177
177
180
182
179
178
176
176
176
179
182
182
184
188
194
194
195
193
188
188
188
188
188
188
187
188
186
186
187
185
183
183
182
182
182
182
181
180
181
180
177
176
175
173
173
173
172
171
172
172
172
172
168
169
171
173
173
173
174
173
172
173
173
173
172
171
171
171
170
169
169
168
168
168
169
166
167
170
170
169
170
170
170
171
171
171
172
173
176
176
176
177
177
177
177
177
176
174
175
174
174
175
175
174
173
172
171
171
170
169
168
168
169
169
169
167
166
166
166
166
165
165
165
165
164
164
163
161
160
160
158
157
156
155
154
152
151
150
150
150
148
148
147
146
146
146
145
145
145
146
144
142
130
160
194
191
211
211
209
208
207
208
208
209
208
208
208
208
208
208
209
209
210
210
210
210
209
210
210
210
210
209
209
210
209
208
207
207
207
207
207
207
207
207
208
208
208
207
206
207
208
210
210
210
210
210
210
211
211
211
210
209
209
209
210
210
211
211
212
211
211
211
212
212
211
210
210
210
211
213
213
213
213
212
213
213
215
215
213
214
215
214
214
213
211
212
212
210
211
212
211
212
213
214
210
208
211
216
222
226
228
230
236
238
236
235
236
235
232
228
224
223
219
216
215
212
208
208
209
210
208
203
203
204
203
198
197
196
193
190
187
187
187
187
188
188
186
186
183
181
184
184
184
185
191
188
188
190
194
198
199
194
190
190
192
191
188
188
187
187
188
188
189
187
186
184
185
186
184
182
183
182
182
182
182
181
180
181
180
177
177
175
173
173
173
172
171
172
172
171
170
170
171
172
174
175
175
174
173
173
174
174
174
172
172
173
173
170
169
169
169
169
168
169
167
167
170
170
169
171
171
170
171
171
171
172
174
176
176
176
177
176
177
177
177
175
174
175
175
174
174
175
175
173
172
171
170
169
168
167
168
168
168
169
168
166
165
164
165
164
165
165
164
162
162
163
161
161
160
158
155
153
152
152
152
150
150
150
149
148
148
146
145
145
146
146
143
142
141
139
143
140
172
124
123
210
209
208
208
208
209
208
208
208
208
209
209
209
209
209
208
209
209
209
209
209
210
210
210
210
209
209
210
209
208
208
207
206
207
207
207
206
207
206
207
207
208
207
207
208
210
209
210
209
209
210
210
210
211
211
209
208
209
210
210
210
211
211
211
210
210
211
211
211
210
211
211
212
214
214
213
213
212
213
213
214
214
213
214
215
213
212
212
212
212
212
212
212
212
211
211
211
212
211
210
209
210
210
210
212
213
216
220
222
224
228
231
233
233
232
232
231
229
228
228
224
221
217
215
214
211
210
210
208
204
203
202
199
197
195
194
195
197
195
196
194
195
194
192
192
196
198
198
200
200
193
190
191
191
190
189
189
189
188
188
187
188
188
188
189
188
188
188
186
185
186
184
183
183
183
183
182
182
180
180
180
180
180
178
178
175
173
174
172
172
172
172
172
171
169
170
171
172
174
175
175
174
173
172
172
173
173
172
172
172
172
170
168
169
169
169
168
168
168
168
169
169
170
170
170
170
170
171
171
172
173
175
176
177
177
177
177
177
177
175
174
175
174
175
175
174
174
172
173
172
170
169
168
169
168
168
168
169
169
168
166
165
166
165
165
165
165
163
162
162
161
161
160
159
154
152
152
153
152
150
149
148
148
148
148
146
145
145
144
144
143
144
145
139
139
131
173
194
162
210
209
208
209
209
208
208
208
208
208
208
209
209
209
209
208
209
210
209
209
209
209
210
210
210
210
209
209
209
209
209
208
207
208
209
209
208
208
208
208
208
209
209
209
209
210
209
210
209
209
210
209
210
210
210
209
209
209
209
210
210
211
210
209
209
209
209
209
210
211
211
211
212
214
214
213
213
212
213
214
213
214
214
215
215
214
213
212
212
212
212
212
212
211
211
211
211
210
209
210
211
210
209
208
209
209
209
210
212
210
208
209
212
215
215
217
221
222
223
224
223
223
224
222
223
222
220
220
220
219
218
214
212
211
211
209
204
206
208
210
209
207
202
198
195
197
199
196
192
191
188
187
189
189
189
188
188
188
187
188
188
188
188
188
188
188
188
186
185
185
185
183
183
184
184
184
182
181
179
178
179
178
179
178
178
175
174
174
173
172
172
172
171
169
169
170
171
172
174
175
174
173
172
170
169
171
173
172
172
172
172
170
168
169
169
168
169
169
168
169
169
169
170
169
169
171
171
172
172
172
173
175
176
177
177
177
178
178
177
175
174
175
174
175
175
173
173
173
174
174
173
171
171
170
169
169
169
169
169
167
166
166
167
167
167
167
167
165
163
163
162
161
159
157
153
152
152
152
151
151
150
148
148
147
146
146
145
143
143
142
141
142
141
139
138
134
138
166
176
209
208
208
209
208
208
208
209
209
208
208
208
209
209
209
208
209
210
209
209
209
208
208
208
208
208
209
208
208
208
209
209
209
209
210
209
209
210
210
210
210
210
210
209
209
210
210
210
210
210
209
209
209
209
209
209
209
209
209
210
208
209
209
208
208
209
208
209
210
211
211
210
211
213
214
213
213
212
213
214
213
214
215
215
215
214
213
213
213
213
213
213
213
212
211
212
212
212
211
212
211
208
206
209
209
207
207
208
206
206
205
206
207
203
202
202
202
203
204
201
203
204
205
207
209
208
209
210
208
207
209
208
206
203
200
200
200
201
200
196
195
192
191
194
196
194
192
191
190
189
189
190
189
189
189
189
189
189
188
188
188
188
188
188
187
186
187
186
185
185
186
185
185
185
185
185
183
182
180
179
180
180
179
178
178
175
174
174
173
172
172
171
170
169
169
170
171
173
174
175
174
173
172
171
169
171
172
172
173
173
172
170
168
169
169
169
169
169
169
169
169
169
169
169
170
171
172
172
172
172
173
175
176
177
178
177
177
177
177
176
174
173
173
174
174
172
172
173
173
173
172
171
169
169
169
167
168
169
169
169
168
166
167
167
168
168
167
165
164
163
163
160
158
157
155
154
153
152
151
152
151
150
148
146
144
144
144
143
142
141
141
139
139
139
132
146
207
190
189
210
209
208
208
207
208
207
208
208
207
208
208
208
208
208
208
209
209
209
209
209
209
209
209
209
209
212
212
211
210
211
212
211
209
210
210
209
210
209
210
209
209
209
209
209
209
209
210
210
210
209
209
208
209
209
208
209
209
209
209
208
208
209
208
209
210
209
210
209
209
209
210
211
212
213
213
213
212
213
214
213
213
214
214
214
214
211
211
211
211
211
212
212
213
212
212
211
211
210
210
209
209
209
209
210
210
209
209
206
208
207
206
205
201
198
197
195
194
195
194
194
193
193
191
193
195
196
197
196
195
194
195
193
192
192
193
193
192
191
191
190
192
192
189
189
188
189
190
189
187
191
189
187
188
188
187
188
188
187
186
186
187
187
187
186
186
187
187
184
184
184
183
183
183
182
181
181
181
180
180
179
179
179
177
175
174
173
173
172
173
171
171
169
169
169
170
171
173
173
174
173
172
171
170
170
169
169
170
172
173
172
170
169
169
169
169
169
170
169
169
169
169
170
170
171
172
171
172
173
173
175
176
177
177
177
177
177
177
177
176
175
176
175
174
174
174
174
174
174
174
174
173
171
170
170
168
168
169
168
168
168
167
167
167
167
167
167
167
165
164
163
160
159
157
157
156
155
152
151
150
150
150
147
146
145
144
143
141
140
139
139
138
139
134
130
152
193
176
165
209
209
207
207
206
207
207
207
207
207
208
208
208
208
208
208
209
209
210
209
209
210
211
212
211
211
213
213
213
212
213
212
211
210
209
209
209
209
209
209
209
208
209
210
209
208
209
209
210
210
209
209
208
208
207
208
209
209
209
209
209
208
208
207
209
210
210
209
209
209
208
210
211
212
213
214
213
212
213
214
213
213
213
213
213
213
211
211
211
211
212
213
213
212
212
211
211
212
210
209
209
211
211
209
209
208
208
209
210
211
210
208
206
202
199
197
195
194
196
195
194
194
194
194
193
194
193
194
194
194
194
194
194
195
194
193
194
192
190
190
189
187
188
191
192
189
187
186
187
186
187
186
186
188
187
186
186
185
185
185
185
186
186
186
186
186
186
187
183
182
181
181
181
180
179
178
178
179
179
179
179
178
177
175
174
174
174
174
172
173
172
171
169
168
169
170
171
172
173
173
172
170
171
170
171
169
169
170
171
173
173
170
169
170
170
170
169
170
170
169
169
170
171
170
170
172
171
172
173
175
177
177
178
178
176
177
177
177
177
177
177
178
178
177
177
177
177
177
176
177
175
175
174
173
172
171
170
171
170
169
169
169
168
168
168
168
167
167
164
163
163
161
159
158
156
156
155
154
152
150
150
149
146
145
143
141
141
140
140
138
138
136
136
137
135
134
141
130
127
208
208
207
207
207
207
208
207
207
207
208
208
207
208
208
208
210
210
210
210
210
210
211
212
211
211
212
213
212
212
212
213
212
210
209
209
209
209
209
209
208
209
210
210
210
210
210
209
209
209
210
209
208
207
207
209
208
208
210
211
210
208
208
208
208
209
209
209
209
209
210
211
210
211
211
213
212
210
212
214
213
213
213
214
214
213
212
211
211
211
211
212
212
211
211
211
212
212
211
211
210
210
210
210
210
208
210
211
210
209
208
208
208
205
203
200
197
195
196
194
193
194
194
193
194
193
193
193
193
194
194
194
193
192
193
192
193
192
191
191
190
188
188
189
191
189
189
188
187
186
186
186
186
186
187
186
186
185
185
185
184
184
184
184
184
184
184
185
181
180
178
180
181
179
178
177
177
178
179
179
179
179
176
175
174
173
173
173
172
170
170
169
168
167
169
170
170
170
172
172
170
170
170
170
170
170
170
171
171
172
173
170
170
170
170
169
169
170
169
169
170
170
171
171
171
173
172
173
175
177
177
177
178
178
177
178
177
177
176
177
177
178
177
177
176
177
177
177
177
177
175
174
174
173
171
171
170
171
171
171
171
169
167
168
168
168
166
165
162
162
163
161
159
159
157
156
155
154
151
150
150
145
143
142
142
141
140
139
138
138
137
134
135
134
130
126
141
199
213
208
208
207
207
207
208
208
207
207
207
208
208
207
208
208
208
209
209
210
211
211
210
211
212
211
211
212
213
213
212
212
213
212
211
211
210
211
210
210
210
210
211
212
211
210
210
209
209
209
210
210
209
208
208
208
209
208
208
209
210
209
207
208
207
208
209
209
208
209
209
211
211
211
210
210
212
212
211
213
213
213
213
212
213
213
212
211
211
211
211
211
212
212
211
211
211
211
212
211
210
210
210
210
211
211
210
211
211
210
210
209
210
210
207
205
202
199
196
196
194
193
194
193
192
192
193
193
193
193
193
193
193
193
193
192
192
192
191
190
189
188
186
186
187
189
188
188
188
187
186
186
186
186
187
186
186
185
184
185
185
184
183
184
184
184
183
183
184
181
179
178
179
179
178
178
178
178
178
179
179
178
178
176
176
174
174
174
173
171
168
168
167
166
166
167
167
168
169
170
170
169
170
170
171
171
171
172
172
172
172
173
170
169
169
168
167
168
170
169
169
171
170
171
172
173
174
173
175
176
178
177
178
179
179
178
179
178
178
178
178
177
178
178
178
179
178
178
177
176
175
174
174
174
173
173
172
171
171
171
171
171
170
168
168
168
168
166
164
162
163
163
161
159
159
158
156
156
154
151
150
149
146
144
141
141
139
138
137
138
137
134
132
132
129
127
131
161
126
116
208
207
207
208
208
207
208
206
207
207
208
208
207
208
209
208
208
209
212
211
211
212
212
213
212
213
212
213
213
213
213
213
212
212
211
211
212
211
211
211
211
212
212
212
211
211
211
210
210
211
209
208
208
208
208
208
208
208
208
209
207
206
207
207
208
208
208
209
209
210
210
210
210
210
210
211
211
210
212
212
212
212
212
213
214
213
212
211
211
212
212
212
212
212
212
212
212
212
211
211
211
211
211
209
210
210
210
210
210
210
210
210
210
209
207
205
201
199
198
195
193
193
191
191
192
192
192
192
191
191
191
191
191
191
191
191
190
189
188
188
187
185
184
185
187
186
187
188
187
188
187
187
187
186
186
185
184
183
184
183
182
182
182
183
183
183
182
183
180
180
179
179
179
178
178
178
177
177
177
176
175
176
175
173
172
172
171
171
170
166
166
165
164
164
165
166
167
168
169
169
168
169
170
171
171
172
173
173
173
173
173
171
169
169
168
167
168
169
170
170
170
171
172
172
175
175
175
177
178
180
179
181
181
181
181
181
181
181
181
180
179
179
179
179
179
179
178
177
174
174
173
173
174
174
173
172
172
171
171
171
170
169
169
169
168
167
166
166
163
162
163
161
160
159
158
156
156
153
151
148
148
146
145
141
141
138
136
135
136
133
132
132
129
131
126
125
174
166
133
208
208
208
208
208
208
208
206
206
208
208
208
207
208
208
208
209
211
212
211
211
211
212
212
211
212
212
213
213
213
213
212
213
212
211
212
212
211
211
212
212
212
212
211
211
210
211
211
211
211
209
209
208
208
208
208
208
208
208
209
208
207
208
208
208
209
208
209
209
210
210
209
210
210
211
210
210
211
212
212
213
212
212
213
213
213
212
211
211
212
212
212
212
211
211
211
211
211
211
211
211
211
211
210
211
211
211
211
211
211
211
210
210
209
209
207
204
201
200
197
194
193
191
191
192
192
192
191
190
189
191
191
190
191
190
189
189
188
187
187
185
184
184
184
186
186
186
187
186
188
187
187
186
186
185
184
183
183
183
184
183
182
180
180
181
180
180
182
180
179
179
178
178
177
176
174
174
173
173
172
172
172
171
169
169
168
167
167
166
163
162
162
162
164
164
167
167
168
168
168
167
167
169
170
171
172
173
173
173
173
173
172
170
169
169
167
168
169
171
171
170
171
173
175
177
176
177
179
180
181
180
180
180
180
181
180
181
181
181
180
179
180
179
179
179
178
177
176
173
173
173
173
174
173
173
172
172
171
171
170
169
169
170
170
169
167
166
167
163
162
162
160
160
159
158
156
155
152
150
148
148
145
143
141
141
139
136
135
134
132
132
131
130
128
126
124
124
186
193
206
206
206
206
207
207
208
207
208
207
206
207
207
208
207
208
210
210
211
212
212
211
212
211
210
211
211
212
212
213
212
213
212
211
212
211
211
211
212
212
212
211
211
210
210
210
210
211
211
211
210
210
209
209
209
209
209
208
208
209
208
206
207
207
207
207
207
208
209
209
209
210
211
211
211
211
210
210
211
211
212
211
212
213
213
212
211
211
211
211
211
212
212
212
212
212
211
211
212
212
212
212
211
210
210
211
211
211
212
211
211
211
211
209
209
208
206
203
202
200
196
194
191
190
191
190
188
189
188
187
188
189
188
188
187
188
188
186
186
186
185
184
184
185
187
186
185
185
185
187
186
186
186
186
184
182
182
182
182
182
182
180
180
180
179
179
180
181
179
178
177
177
176
176
174
170
170
169
168
168
169
169
168
168
166
165
164
164
162
162
161
160
162
163
165
165
166
167
166
166
167
168
169
170
170
171
171
172
173
173
174
173
170
169
169
168
169
171
173
173
172
173
176
176
178
178
179
180
180
181
180
180
181
181
181
181
181
181
181
180
178
179
179
180
179
177
177
177
175
175
174
174
174
173
173
172
172
171
171
170
169
170
171
170
168
166
166
166
164
163
162
160
161
160
158
156
154
153
150
148
147
145
143
142
140
139
137
134
133
131
130
128
128
128
125
121
151
197
155
206
206
206
206
206
207
207
206
206
206
206
207
207
207
208
208
210
210
210
211
211
211
212
212
212
212
212
213
213
214
213
212
211
212
212
211
212
210
211
212
212
211
211
211
212
212
212
212
213
211
211
210
211
210
211
210
209
209
209
209
209
208
208
207
208
208
208
210
211
210
210
209
210
213
213
211
210
211
211
210
211
211
211
211
211
211
210
211
211
211
212
211
211
211
211
211
211
211
211
211
212
212
211
211
211
212
211
211
212
210
210
211
212
211
210
209
206
203
202
201
198
195
192
193
190
185
185
187
185
184
186
186
184
185
184
186
186
184
183
184
183
183
184
185
187
185
183
183
182
183
184
184
184
183
182
181
181
181
180
181
181
180
180
180
179
179
179
179
177
176
174
173
171
171
170
169
169
167
165
165
166
168
167
166
165
166
162
162
162
160
159
159
159
162
165
165
165
166
165
165
165
167
169
170
170
170
170
171
171
173
175
172
171
169
170
170
171
173
175
175
176
176
178
178
180
181
183
182
182
183
182
182
183
182
180
180
180
180
181
180
179
179
179
179
179
180
178
177
176
177
176
174
173
173
172
172
172
171
171
169
169
170
170
169
168
166
165
164
163
164
162
160
160
159
157
155
153
152
153
151
147
145
143
141
141
141
137
136
133
128
127
127
126
127
120
125
160
144
157
205
205
207
207
207
206
206
206
206
206
206
207
207
207
207
208
211
211
210
211
211
211
212
212
211
212
211
212
213
213
213
212
211
212
212
211
211
210
211
212
212
211
211
211
212
213
212
212
213
212
211
210
211
210
211
210
209
209
209
209
209
210
208
208
208
208
209
211
211
211
209
209
210
213
213
211
211
211
211
211
211
211
211
211
211
210
210
210
210
211
211
211
211
210
210
210
210
210
211
211
211
211
211
211
211
212
211
211
212
211
210
211
212
210
210
210
208
205
204
203
200
196
192
191
188
183
185
187
185
183
184
184
185
187
186
186
186
184
184
183
184
184
184
184
186
185
183
182
182
184
185
184
183
183
182
181
181
181
180
181
180
180
179
177
177
177
176
176
174
172
172
171
169
168
168
168
167
166
165
165
167
167
165
164
163
163
162
162
161
157
156
154
156
159
162
164
164
165
165
166
167
169
170
170
170
170
170
172
172
174
173
171
171
170
171
171
171
173
175
174
176
177
179
180
181
182
183
182
183
183
183
183
184
182
180
180
181
181
181
180
180
179
179
180
179
180
179
177
175
176
175
174
172
172
173
172
172
171
171
169
169
170
170
169
169
167
165
164
164
164
161
160
160
159
157
154
152
152
153
151
146
145
143
143
143
140
136
134
133
129
127
126
127
127
118
118
174
188
146
204
205
206
206
208
207
206
206
206
206
206
207
207
207
207
208
211
211
211
211
211
210
210
211
211
210
211
210
211
211
212
212
212
213
211
211
210
210
210
210
210
212
212
211
212
212
213
212
212
212
212
211
211
211
211
211
211
209
209
209
210
211
209
208
208
208
210
211
212
211
210
210
210
212
212
211
211
211
211
211
210
210
211
211
212
212
211
210
210
211
212
212
212
212
212
212
212
211
211
211
211
211
210
211
211
211
211
211
212
212
211
211
211
210
210
210
210
207
207
204
200
198
194
192
189
184
184
185
184
183
181
182
184
185
185
184
184
183
183
182
183
184
184
183
184
184
182
182
182
183
182
181
181
181
181
181
181
181
179
180
179
179
177
175
176
176
174
172
171
169
169
169
169
168
166
167
166
165
166
167
165
165
163
163
162
163
163
161
158
156
155
155
156
160
163
164
163
164
165
166
168
171
170
171
172
171
171
173
173
175
175
174
173
173
174
174
174
176
177
177
178
179
180
183
182
183
184
183
183
183
183
182
184
183
179
180
181
180
180
179
179
179
179
179
179
179
179
178
176
177
175
174
172
172
173
172
173
172
171
169
169
170
169
168
168
166
164
165
163
164
162
160
159
156
155
154
153
152
150
147
147
146
144
142
141
139
136
135
133
128
126
125
124
120
118
116
150
154
105
206
205
205
205
206
206
205
206
207
206
206
207
207
206
207
208
210
210
210
211
211
210
210
211
211
210
211
211
211
211
212
212
212
213
211
211
211
211
210
210
210
211
211
212
212
212
213
212
212
212
213
212
211
211
211
212
212
211
209
208
209
210
210
209
209
209
211
211
212
211
211
211
210
212
212
211
212
211
211
211
210
210
210
211
213
213
213
212
212
213
213
213
213
214
214
214
214
213
210
211
211
211
210
211
211
211
211
211
211
211
211
211
211
211
210
210
211
210
207
203
199
198
196
193
191
186
186
184
183
182
182
182
182
182
181
182
182
181
181
181
181
181
182
182
183
182
182
183
183
183
181
181
182
180
181
182
181
180
178
179
178
178
177
175
176
175
173
171
169
169
168
168
168
167
165
164
164
164
165
165
164
163
162
163
164
163
163
160
157
157
156
157
159
162
165
165
164
164
165
165
168
171
170
171
172
172
172
174
174
175
175
176
175
174
176
176
177
178
179
179
180
180
182
183
183
184
184
183
183
183
183
182
184
183
179
180
181
180
179
179
180
179
179
179
180
180
180
179
176
176
174
174
173
172
173
172
172
172
171
170
169
169
168
168
167
165
164
164
162
163
162
159
159
157
154
154
154
152
149
147
148
147
145
143
142
139
137
135
132
127
125
124
123
122
120
114
148
155
132
206
205
205
205
206
205
205
206
207
206
206
206
205
205
206
208
210
210
211
211
211
211
211
211
210
211
210
210
211
211
211
212
212
212
210
211
210
211
211
210
210
211
211
212
211
211
213
213
212
211
213
213
211
211
210
211
212
212
210
208
208
208
210
209
209
209
211
211
211
211
211
211
210
212
211
211
213
211
211
211
211
211
210
212
213
214
213
213
213
213
214
213
213
213
213
214
213
212
210
211
211
211
210
211
211
211
211
211
211
211
211
211
211
211
211
210
211
210
206
202
199
199
197
195
192
189
188
184
182
183
182
182
180
178
178
178
180
179
180
180
178
177
180
184
183
182
182
183
182
182
181
181
181
181
182
182
182
180
179
179
177
178
177
175
174
174
173
171
168
168
169
168
167
166
164
159
159
160
162
162
161
161
161
162
163
163
163
159
156
158
157
158
160
162
163
164
164
164
166
166
169
172
171
171
172
173
174
176
175
175
175
174
175
176
175
176
177
178
180
179
180
181
183
183
184
183
184
184
183
183
182
182
183
182
180
180
181
180
179
181
181
179
179
179
179
179
179
180
176
175
174
174
173
173
172
172
172
172
172
170
168
168
168
168
167
165
165
164
163
162
162
160
158
156
154
154
153
153
148
146
147
147
146
143
142
139
137
135
133
128
126
124
124
121
117
114
168
200
183
204
205
206
204
205
206
206
205
205
205
206
206
206
206
207
208
207
208
210
210
211
210
210
210
211
211
210
210
210
211
210
210
211
211
210
211
211
211
210
211
211
210
210
211
211
212
212
212
212
212
213
212
213
213
213
214
214
214
213
211
210
210
211
211
212
212
213
211
212
212
212
212
211
211
211
211
211
211
211
211
211
212
211
212
213
213
213
214
214
214
214
214
214
214
214
214
214
213
213
213
213
213
213
213
213
213
213
213
213
213
213
211
211
211
211
210
210
211
209
205
201
199
197
196
194
191
191
187
184
181
181
182
181
177
176
176
176
176
177
178
179
181
180
182
181
182
182
181
180
178
179
180
181
181
181
181
181
180
179
178
178
178
176
173
172
170
170
169
169
169
168
166
164
164
163
159
160
159
160
160
160
160
160
159
159
159
159
159
157
157
156
159
162
163
164
165
166
167
168
167
169
171
172
173
175
175
174
175
175
175
175
175
176
176
175
178
180
181
183
182
183
183
184
184
185
185
185
185
184
184
183
183
183
183
182
182
182
178
179
183
181
179
181
180
179
179
179
179
177
177
175
175
176
176
175
175
174
172
172
169
168
168
168
167
167
166
166
164
163
163
162
160
158
154
155
154
152
152
149
147
148
145
144
143
142
140
137
136
134
131
128
125
124
118
118
113
171
160
97
203
206
206
205
206
206
206
205
206
205
205
206
206
206
206
207
206
206
209
210
209
211
211
210
210
211
211
211
212
212
211
211
211
211
210
211
211
210
210
210
210
210
210
211
211
211
212
212
213
212
213
213
213
213
213
213
214
214
213
212
211
211
211
212
213
213
213
211
212
212
212
212
211
211
211
211
211
211
212
213
212
213
212
212
213
213
214
214
214
214
214
214
213
212
212
213
214
214
214
214
214
214
214
214
214
214
214
214
214
213
213
211
211
211
210
210
210
211
210
206
203
201
199
196
194
190
190
187
183
181
181
181
180
177
175
175
175
175
175
175
176
178
177
177
177
176
176
176
177
177
177
177
177
177
178
177
179
178
177
175
173
171
170
170
170
169
168
167
167
166
165
163
162
162
162
161
161
160
160
160
161
161
161
159
160
160
158
158
159
159
157
160
163
165
166
167
167
167
168
170
172
172
172
173
175
175
175
176
176
176
176
175
175
175
178
180
182
182
183
183
183
184
186
186
186
185
185
184
184
184
183
183
183
183
182
182
182
180
179
182
181
180
181
180
179
180
180
179
178
177
176
177
176
176
176
174
173
172
172
169
168
167
167
167
167
166
166
166
165
162
160
160
159
155
155
154
153
152
149
148
147
144
143
142
141
140
137
136
135
131
128
124
122
117
121
105
163
155
155
203
205
206
205
206
206
206
206
206
205
205
206
206
206
206
206
206
206
208
209
209
210
210
210
210
211
210
211
211
211
211
211
211
211
210
211
211
211
210
210
210
211
211
211
211
211
212
211
213
213
212
213
213
213
213
213
213
214
214
213
212
212
212
212
213
213
213
213
213
212
212
212
211
211
211
211
212
212
213
213
212
213
214
215
215
215
215
214
214
213
213
213
213
213
213
213
214
214
214
214
214
214
214
214
214
214
214
214
214
214
213
213
211
212
211
210
210
211
210
206
206
204
202
198
194
191
190
187
184
180
179
180
180
177
175
175
173
172
172
173
173
175
174
175
174
174
174
174
175
176
176
175
175
175
174
173
174
175
174
173
171
169
169
169
169
166
164
162
161
162
162
160
160
160
161
162
161
160
159
159
161
161
161
160
160
160
159
159
159
159
158
160
162
165
165
165
166
167
169
170
171
171
172
173
176
176
176
177
178
177
177
176
176
177
180
181
182
182
183
183
183
184
186
185
185
185
186
184
184
184
184
183
183
183
182
182
183
181
180
181
180
181
181
180
179
179
179
179
179
178
176
176
176
175
174
173
172
171
172
169
168
167
168
168
167
166
165
165
165
162
160
160
159
156
154
153
153
152
148
148
148
143
141
141
140
139
137
136
135
130
127
124
122
118
117
120
165
137
149
200
202
203
202
204
205
205
205
205
205
205
205
206
206
206
206
206
207
206
207
207
209
209
210
210
210
209
210
211
211
211
211
211
211
210
210
210
210
210
209
210
210
211
211
211
211
211
212
212
213
212
213
214
213
213
213
213
214
214
214
214
212
212
212
214
213
213
214
214
213
212
212
212
212
211
212
212
213
212
212
213
215
215
215
215
215
216
215
215
215
215
215
215
216
215
213
213
213
213
214
214
214
213
214
214
214
214
214
214
214
213
213
212
213
212
210
210
210
210
208
208
207
204
199
197
193
192
190
186
182
179
179
179
176
174
173
172
171
170
170
171
172
172
172
174
175
175
175
175
175
175
175
174
174
173
172
172
172
171
171
171
170
168
168
169
168
167
164
164
164
163
160
160
159
159
161
159
159
159
159
160
160
160
160
160
159
159
159
160
161
160
162
163
165
165
166
166
168
168
169
171
170
172
173
176
178
178
179
179
178
178
177
178
179
181
183
183
182
184
184
185
186
186
186
186
186
185
184
184
184
184
184
184
184
183
183
182
182
181
181
182
182
182
181
179
180
180
179
180
179
178
177
176
175
173
172
172
172
172
169
168
167
167
167
167
167
166
165
165
162
160
159
159
157
155
153
153
150
148
148
145
141
141
140
139
136
135
135
133
129
125
123
122
117
115
114
158
201
199
200
201
202
201
201
202
203
201
202
203
204
205
205
205
205
205
206
206
206
206
207
209
210
209
209
210
209
210
211
211
211
211
211
211
210
210
210
210
210
209
209
211
210
210
210
211
211
213
212
212
212
212
214
213
213
214
213
214
215
214
215
213
213
212
214
213
213
214
213
212
211
212
212
212
211
211
212
212
213
213
214
215
216
216
215
215
216
216
216
216
216
216
216
216
216
213
213
213
213
213
213
213
213
214
214
214
214
214
213
214
214
214
213
213
212
210
210
210
209
210
208
208
204
200
198
196
193
191
189
184
180
179
178
174
172
171
171
171
170
171
171
171
172
173
174
176
176
175
176
175
176
175
175
174
173
172
171
169
169
167
168
169
168
166
165
164
163
163
162
163
164
161
160
159
158
158
157
157
157
158
161
160
160
160
161
161
159
159
159
163
162
163
165
166
167
167
167
167
168
167
170
171
171
173
176
178
179
179
179
178
179
180
179
179
182
183
183
183
185
185
186
186
185
187
187
185
185
185
185
185
185
184
184
184
183
183
184
183
182
183
184
184
181
180
179
180
180
179
180
179
179
178
176
174
173
173
172
172
172
169
167
168
167
167
166
166
166
165
163
162
160
160
160
158
156
154
153
150
148
148
145
140
139
138
137
135
133
133
130
126
124
123
122
116
115
105
121
114
101
201
200
201
202
202
202
202
202
202
202
203
205
204
205
205
205
206
206
206
206
206
208
209
210
209
210
209
211
211
211
211
211
211
211
211
210
209
210
209
209
209
211
211
211
211
211
212
212
213
212
212
213
213
214
213
215
215
214
214
214
215
215
216
215
215
214
212
211
212
212
211
212
213
212
211
212
212
212
212
212
214
214
216
216
216
215
217
217
216
216
216
216
217
217
216
214
213
212
213
212
214
214
213
214
214
214
214
214
214
215
216
215
214
213
213
211
211
211
210
211
209
207
205
203
199
197
198
194
190
188
184
182
179
175
172
172
171
170
170
170
170
170
171
172
173
174
175
175
175
175
175
176
174
173
171
171
170
168
166
165
166
165
165
163
162
161
160
161
161
161
161
160
160
159
157
155
154
156
157
158
161
160
160
160
161
161
158
158
158
161
163
163
164
166
168
167
168
169
169
168
170
171
171
173
176
178
179
179
179
179
180
179
179
181
182
182
184
184
184
184
185
185
185
186
187
186
185
185
186
185
185
185
185
185
183
183
183
183
182
182
183
183
182
181
181
180
180
179
179
180
179
178
177
176
175
173
173
172
171
169
168
169
168
167
166
167
167
165
163
161
161
161
161
159
156
155
154
151
147
146
144
140
138
137
136
135
133
132
129
126
125
123
122
118
115
111
164
206
197
199
199
200
200
200
200
200
201
203
202
202
203
203
203
203
204
206
206
206
206
206
207
208
208
210
209
208
210
211
211
211
210
210
210
210
210
209
209
209
209
209
210
210
211
211
211
212
212
212
213
212
212
213
214
213
215
215
215
216
215
215
216
216
216
215
215
214
213
214
214
214
214
213
213
212
212
213
214
213
214
215
215
216
216
215
216
217
217
217
217
217
217
218
219
218
217
216
214
213
213
214
214
214
215
215
215
215
215
215
216
216
215
214
214
213
212
211
211
210
211
209
209
208
207
202
199
199
195
191
190
187
182
179
176
173
171
170
171
171
170
170
170
171
171
171
171
172
173
173
173
173
174
173
172
171
172
171
169
167
166
166
164
163
161
161
160
160
160
161
161
160
160
158
158
157
157
156
155
157
159
160
160
160
160
160
161
158
158
158
159
163
164
164
166
167
167
167
168
169
169
170
171
172
174
176
178
179
179
180
179
180
181
181
182
183
183
184
185
185
186
187
186
186
186
186
187
187
186
186
186
186
186
185
185
184
184
183
184
184
183
183
183
182
181
181
180
181
180
179
179
179
179
178
176
176
175
174
173
172
172
171
170
168
168
167
167
167
165
163
162
161
161
161
159
156
155
154
151
146
144
145
141
138
137
137
135
131
128
125
124
123
122
119
117
113
110
154
122
113
199
198
200
199
199
200
200
201
202
202
202
202
203
203
203
204
206
205
206
206
206
207
207
208
210
209
209
211
211
211
210
211
209
209
210
210
209
210
209
209
209
209
209
211
211
211
212
212
212
213
212
212
213
214
214
215
215
216
217
216
215
216
216
216
215
215
216
213
214
214
214
214
213
213
213
214
214
214
215
215
215
216
216
216
217
217
217
218
218
218
218
218
218
219
219
217
217
216
216
217
215
215
216
215
215
215
215
216
215
216
216
214
214
214
213
213
212
211
211
211
210
209
209
209
205
203
201
196
194
192
187
184
181
178
174
172
170
170
170
168
168
168
170
170
170
171
171
172
172
173
173
173
173
172
171
171
171
169
167
166
166
164
163
162
161
160
161
161
161
161
160
158
157
158
157
157
157
157
158
159
162
162
162
160
160
160
157
157
157
158
163
164
165
166
167
168
167
167
170
171
171
172
173
174
176
177
178
177
180
180
180
181
181
181
184
184
184
184
185
186
186
186
187
186
186
187
187
186
185
186
187
187
185
185
186
186
184
184
183
183
183
183
182
182
181
182
182
180
179
179
179
180
179
178
176
176
175
172
171
172
172
170
168
168
167
167
166
165
163
162
160
160
160
159
157
156
153
152
147
145
146
142
138
137
138
136
131
126
125
125
124
122
119
115
111
114
177
134
97
198
198
199
198
198
198
199
201
202
201
202
203
203
203
205
204
204
204
206
207
206
208
208
209
209
210
210
211
211
211
211
211
209
208
210
211
211
211
210
210
209
209
209
210
210
211
212
211
212
212
213
213
214
215
215
215
215
216
216
217
216
215
215
215
216
216
216
212
213
213
213
213
213
214
215
214
214
214
214
215
215
216
216
216
217
218
218
218
218
218
218
218
218
218
218
216
217
216
218
218
217
217
217
215
215
215
215
215
216
215
215
215
214
215
214
213
213
212
211
210
209
208
208
209
208
207
203
198
196
193
190
187
183
181
177
172
169
170
170
167
167
168
169
170
171
173
172
172
173
171
172
171
171
171
170
168
169
167
166
165
163
162
161
161
160
159
160
160
160
160
160
158
158
158
157
156
155
157
159
158
161
161
161
159
159
158
157
157
156
158
163
164
166
166
166
168
168
170
172
172
171
172
173
176
176
177
177
177
179
180
180
181
180
181
183
184
184
185
186
186
186
187
187
187
186
187
187
187
187
188
187
187
185
185
186
186
184
185
185
184
184
184
184
182
182
182
182
181
180
180
181
180
180
180
178
177
175
172
172
172
171
171
170
169
168
167
166
165
163
161
159
159
159
157
154
153
153
151
146
144
145
142
139
137
137
133
130
127
126
125
123
121
119
117
113
104
124
188
171
196
195
197
198
198
198
198
199
200
199
200
201
201
202
203
203
203
203
206
207
207
210
210
210
210
209
210
211
211
211
210
211
211
210
210
210
210
211
211
210
210
209
210
211
211
211
211
211
212
212
213
213
214
215
215
214
215
216
216
217
216
216
216
216
216
217
217
216
216
216
216
216
214
214
215
214
214
215
214
214
216
216
216
216
218
218
218
219
218
218
218
218
218
219
219
218
218
218
218
218
218
218
218
216
216
216
216
215
215
215
215
216
216
216
215
213
213
212
212
212
210
209
208
208
208
207
204
200
197
194
192
189
186
183
178
172
169
170
169
166
166
167
169
170
170
172
172
172
173
171
171
171
171
172
169
166
165
164
164
163
162
160
160
160
160
159
160
159
158
158
159
157
156
155
154
155
153
156
158
159
158
158
158
157
157
158
157
155
157
159
163
164
166
166
166
166
170
173
174
172
171
171
173
175
176
177
178
177
179
178
178
179
179
179
182
182
182
185
186
186
186
187
188
187
187
187
188
188
188
189
188
188
189
188
186
186
185
185
185
185
185
185
184
184
184
183
182
182
183
182
182
180
179
180
179
178
177
175
175
174
171
171
169
169
169
168
166
165
163
160
159
159
157
156
153
152
151
150
146
145
143
140
139
137
133
131
129
129
125
122
121
119
117
134
184
168
163
158
156
196
196
197
198
199
198
197
199
199
199
200
201
201
200
200
201
203
203
205
207
206
208
210
210
210
208
210
210
211
210
210
210
211
211
210
210
209
211
211
210
210
210
211
210
210
210
211
212
212
212
213
213
213
215
215
216
217
216
216
216
215
216
217
216
215
216
217
217
217
217
217
217
214
215
215
215
215
215
215
215
215
215
215
216
218
219
219
218
217
218
218
218
219
219
219
219
219
218
218
218
218
219
219
217
217
216
214
215
216
215
215
215
215
217
215
214
214
213
213
212
210
210
210
208
208
208
207
203
199
196
193
191
188
185
180
177
174
170
168
165
164
167
169
170
170
171
168
167
169
172
171
169
167
167
166
166
164
164
165
163
161
159
159
158
156
157
159
159
158
158
157
156
156
154
154
154
153
154
158
159
158
158
157
156
157
157
158
159
159
158
164
165
165
165
165
167
171
173
174
173
171
172
174
175
175
176
177
179
179
178
179
179
179
180
182
182
182
184
186
186
187
186
187
188
187
187
190
189
189
190
190
190
189
187
187
186
186
186
185
185
185
184
184
184
184
184
184
182
182
182
182
182
181
180
179
180
179
176
175
173
171
170
170
169
169
167
165
165
163
162
159
158
156
155
153
153
151
150
148
144
143
140
139
137
132
129
130
127
123
119
117
117
118
131
164
158
184
162
150
194
194
195
195
197
198
198
198
198
198
199
199
199
200
200
201
203
203
205
205
205
207
209
209
210
210
211
211
211
210
210
210
211
211
210
210
209
210
211
211
211
210
210
210
210
211
212
213
213
213
214
214
214
216
216
216
216
216
216
216
216
217
217
216
215
216
217
217
217
217
217
217
215
216
216
216
216
216
216
216
216
216
215
216
218
218
218
218
218
219
219
219
219
218
219
219
220
220
219
219
218
218
218
219
219
219
217
218
217
217
216
215
215
216
215
214
213
212
213
212
210
210
209
209
209
208
208
205
202
200
196
192
189
187
183
179
175
170
169
166
167
167
168
169
169
170
168
166
168
168
168
167
164
164
163
163
162
162
162
163
161
160
161
159
156
156
157
157
157
157
157
155
155
153
153
154
156
158
161
161
158
158
157
157
158
157
158
160
160
159
165
166
166
166
166
166
169
171
172
173
172
173
174
175
175
176
177
179
179
179
179
178
178
179
181
182
184
184
186
186
186
186
187
187
187
187
190
189
189
190
190
190
189
188
187
187
187
187
186
185
185
186
185
185
185
184
184
183
183
183
182
182
181
180
179
179
179
176
175
174
174
173
172
170
169
167
165
165
163
162
159
157
156
155
154
153
152
151
147
144
143
141
138
136
133
131
129
126
123
120
118
115
115
110
102
102
162
112
86
