308
307
307
306
305
303
303
303
303
302
300
299
298
296
294
294
294
295
295
295
296
296
296
297
297
298
298
298
299
300
300
300
301
301
301
301
300
300
300
299
299
299
299
298
297
297
296
297
298
299
300
301
301
301
301
299
299
298
297
296
296
295
294
294
293
293
293
293
292
292
292
293
294
295
295
297
297
297
297
297
297
296
296
295
295
293
293
293
293
292
290
290
290
289
289
289
292
294
297
297
297
297
298
298
299
300
300
301
301
301
301
300
299
299
299
298
298
298
298
298
298
298
298
298
298
298
298
298
298
297
297
297
297
297
296
296
295
295
295
295
295
296
297
297
297
298
298
298
298
298
298
299
299
299
299
300
306
308
309
310
310
310
310
312
312
311
311
310
309
309
309
310
311
314
314
311
308
304
292
294
296
301
302
304
304
305
306
306
307
308
309
309
309
306
302
297
294
290
290
290
290
290
291
291
291
291
291
291
289
289
289
289
290
290
292
292
292
292
292
291
289
289
289
289
289
289
293
294
299
299
298
296
288
288
288
288
288
288
292
297
299
301
301
301
302
303
304
288
286
287
289
290
291
292
293
295
295
296
296
294
294
293
291
290
290
291
291
291
291
291
291
291
291
291
291
291
291
291
291
291
291
291
291
291
290
288
286
285
285
285
285
285
294
298
297
285
285
285
285
285
285
285
294
299
296
289
285
285
285
300
312
321
324
321
311
304
301
300
295
294
293
287
287
287
287
287
287
287
287
287
287
286
286
286
286
286
286
286
285
285
285
285
285
285
285
285
285
285
286
288
289
291
291
291
292
293
294
308
312
312
312
295
290
304
280
269
273
276
279
279
281
282
281
280
278
278
277
276
276
278
279
283
283
284
285
285
286
286
286
286
286
286
286
286
286
286
286
286
286
286
286
286
286
286
286
286
286
284
283
283
282
281
276
276
277
278
282
284
284
284
284
284
284
285
286
288
287
285
282
287
286
279
279
279
279
279
281
282
282
281
280
279
278
278
278
278
278
278
278
278
276
277
279
282
283
278
277
286
297
299
297
309
307
297
285
278
279
281
286
308
306
305
303
302
298
296
293
292
292
292
289
276
277
279
280
281
282
284
292
293
294
295
296
297
296
295
294
293
293
294
295
296
299
301
302
304
301
300
299
297
295
294
294
296
297
296
287
285
282
282
283
283
284
285
285
285
285
285
284
283
283
282
282
282
281
281
281
280
280
281
290
294
310
307
310
323
309
289
290
302
308
313
314
310
308
309
311
312
307
300
296
293
294
295
296
298
300
303
306
321
319
306
302
301
301
302
302
306
310
313
310
309
307
306
302
298
297
299
303
305
304
303
303
303
288
297
302
303
304
304
304
305
306
306
306
305
304
304
303
303
303
303
303
303
303
304
304
305
306
309
310
309
308
308
308
306
304
300
300
301
302
302
295
291
286
285
284
279
279
282
283
283
283
284
285
287
288
289
292
307
306
305
304
297
293
291
289
286
293
305
304
301
298
295
292
290
288
283
279
276
278
282
296
299
321
320
319
318
317
312
307
303
284
283
292
298
298
298
298
298
298
298
297
297
292
288
288
289
293
295
287
283
282
286
289
290
285
279
274
271
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
268
268
267
267
267
266
266
268
269
271
271
269
266
266
265
264
262
262
262
263
265
266
266
266
266
266
266
266
266
266
266
266
266
266
265
265
264
264
263
263
263
263
263
263
262
262
262
262
262
262
262
262
262
262
262
262
262
263
263
263
263
263
263
263
263
263
263
263
263
263
263
263
263
263
263
263
263
264
264
265
265
265
265
266
267
268
268
269
269
269
269
269
269
269
269
269
269
269
269
269
269
268
268
268
268
268
268
268
268
268
268
268
268
268
268
267
267
267
267
267
267
267
267
267
266
266
266
266
266
266
266
266
266
266
267
267
267
267
267
267
267
267
268
268
268
268
267
267
267
267
267
267
267
267
267
267
267
267
267
267
267
267
266
266
265
265
265
265
264
264
264
264
264
265
266
266
267
268
268
268
268
267
266
266
266
266
266
266
266
266
266
265
265
265
265
265
265
265
265
265
265
265
264
264
264
264
264
264
264
264
264
264
264
264
264
265
265
265
265
265
265
265
264
264
264
264
264
264
264
263
263
261
261
261
261
261
261
261
262
262
263
264
264
264
264
264
264
265
265
265
265
265
265
265
266
266
266
266
266
266
266
266
266
266
266
266
266
266
266
266
265
265
265
265
265
265
265
265
265
266
266
266
266
266
266
266
266
266
266
266
266
266
267
267
267
267
267
267
267
267
267
267
267
267
266
266
266
265
264
263
263
263
263
264
264
268
268
268
268
268
268
268
268
269
269
269
270
270
270
270
270
270
270
270
269
269
268
266
266
265
265
265
265
265
265
265
265
265
262
260
260
260
260
260
260
260
260
260
260
261
262
262
263
263
264
265
265
266
266
266
266
267
267
267
267
267
268
268
268
269
269
269
270
270
271
271
276
276
277
277
278
279
279
279
279
279
280
281
283
283
283
283
284
285
286
288
291
291
292
292
293
294
295
293
291
289
285
283
282
279
277
277
277
276
276
276
275
275
275
275
275
275
276
276
277
278
281
283
285
286
286
286
286
286
286
287
290
290
292
293
295
298
298
300
302
301
298
297
297
295
294
290
274
276
280
286
291
293
294
301
303
306
309
304
281
267
268
279
300
305
303
301
298
292
288
286
287
290
294
295
300
300
300
300
300
300
300
300
299
298
297
296
296
295
295
288
288
285
285
282
267
264
263
265
265
265
267
270
273
285
290
294
304
304
302
299
295
295
302
304
307
317
317
325
324
318
312
310
306
295
292
284
277
279
281
282
291
291
288
285
282
272
271
269
268
266
266
265
264
263
262
262
261
260
260
260
260
259
259
256
261
261
263
263
265
265
265
265
264
262
262
261
261
261
261
260
259
261
261
261
262
262
260
260
259
259
258
258
257
257
256
255
254
254
254
254
254
254
254
254
254
255
255
255
255
255
255
255
254
253
252
252
252
252
252
252
252
252
252
252
252
253
253
253
253
253
254
254
254
254
255
255
255
255
255
255
256
256
257
255
253
255
256
253
253
252
252
251
251
251
251
251
251
251
251
251
251
251
251
251
251
251
251
251
251
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
250
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
249
248
248
248
248
247
246
246
246
247
247
247
248
248
248
248
248
248
247
247
247
247
247
246
246
246
246
247
248
248
248
249
249
250
250
250
249
249
249
249
249
248
248
248
248
248
248
248
248
247
247
247
247
246
246
245
245
244
243
243
242
242
242
242
242
242
243
243
243
243
243
243
243
243
243
243
243
243
243
244
244
244
245
245
245
245
245
245
245
245
245
245
245
245
245
245
245
245
245
245
245
246
246
246
246
246
247
247
247
247
247
247
246
246
246
246
246
245
245
245
245
245
245
244
244
244
243
242
242
242
242
243
243
243
243
243
244
244
245
245
245
245
245
245
245
245
245
245
246
246
246
246
246
246
246
246
246
246
246
246
246
245
244
244
244
244
244
244
244
245
245
245
245
245
245
245
245
245
245
245
245
245
244
244
244
244
244
244
245
246
248
250
251
252
252
256
257
256
255
254
252
251
249
248
247
247
246
246
246
245
245
244
244
244
244
244
242
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
240
239
239
239
239
239
239
241
241
241
241
240
240
240
240
240
240
240
240
240
240
240
240
239
239
238
238
238
238
238
238
238
239
239
240
240
240
240
240
240
240
240
239
239
239
238
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
236
236
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
237
236
236
236
236
236
236
236
236
236
236
236
236
236
236
236
236
236
235
235
235
235
235
235
235
236
236
236
236
239
243
243
243
243
243
243
243
243
243
244
245
247
248
248
246
243
240
239
237
237
237
237
236
236
236
236
236
236
236
237
237
238
238
238
238
238
237
237
235
235
235
234
234
234
234
234
234
234
234
234
234
234
234
233
233
233
234
234
236
237
237
238
238
238
239
240
240
240
241
241
246
247
252
254
257
259
260
269
270
271
271
272
273
273
274
275
278
283
284
286
288
290
301
301
300
300
300
301
301
321
321
322
326
328
327
327
317
316
311
309
309
308
308
308
307
307
306
306
307
307
309
312
313
317
318
318
320
323
333
333
332
332
332
332
331
331
331
330
330
329
329
329
329
329
328
328
329
329
330
331
334
334
334
336
337
345
347
345
345
344
344
344
347
348
350
350
352
353
341
340
338
337
335
334
333
332
326
323
323
323
323
323
323
323
323
323
323
323
323
323
323
323
322
322
321
321
320
320
319
319
318
318
318
317
317
314
311
310
305
301
300
297
296
294
291
289
288
287
286
283
282
282
279
278
276
276
274
270
263
260
257
250
249
247
245
246
248
252
255
258
267
276
277
277
279
280
281
281
282
283
287
288
288
289
290
292
295
296
299
300
305
310
310
310
310
310
311
311
311
312
312
313
313
314
314
314
314
314
313
312
312
311
311
311
311
310
310
310
309
309
308
308
307
307
305
305
304
303
302
302
301
300
300
299
299
299
296
295
295
294
294
292
291
291
290
288
287
285
281
280
277
276
276
276
277
277
278
278
278
276
275
275
273
266
266
267
263
257
250
247
242
240
234
234
232
230
228
228
228
228
228
228
228
228
228
228
228
230
230
230
230
230
230
230
231
232
233
236
234
232
232
231
231
228
228
228
228
228
228
228
228
228
228
228
228
228
228
228
228
228
229
229
229
229
230
230
230
230
230
230
230
230
230
229
229
229
229
229
229
229
229
228
228
227
227
227
227
227
228
228
228
228
227
227
227
227
227
227
228
228
228
228
226
226
226
226
226
226
226
227
227
227
227
227
226
226
226
226
226
227
228
228
229
230
230
231
232
233
233
233
233
233
232
232
231
231
230
229
229
229
229
230
231
231
232
232
233
234
235
235
235
234
233
233
232
232
231
230
230
230
230
230
230
230
231
231
231
231
231
231
231
231
231
231
231
230
230
230
230
230
230
230
230
231
233
234
235
235
234
231
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
227
230
231
233
233
230
228
229
229
230
231
231
232
232
232
233
233
233
233
233
232
232
234
240
251
242
239
228
232
240
247
254
256
253
250
247
245
243
240
240
240
239
239
238
237
235
229
228
227
227
227
227
227
227
227
227
227
227
227
227
233
251
259
264
263
257
256
254
249
247
245
242
240
244
246
246
246
243
242
241
253
258
252
244
236
228
230
231
233
238
236
232
229
235
246
248
251
252
255
257
255
255
256
263
265
269
259
242
233
229
229
229
229
232
233
233
233
232
231
230
229
229
228
229
230
232
234
235
238
241
241
240
240
239
236
235
231
230
229
229
227
227
229
232
235
239
238
238
237
236
234
229
229
230
230
227
226
226
228
234
234
230
228
231
237
237
237
237
238
239
239
239
233
232
231
230
229
228
229
233
237
238
240
241
241
241
241
241
240
240
240
240
242
244
248
249
250
252
254
256
257
259
255
242
239
237
232
231
230
230
229
229
228
228
228
228
228
228
229
230
231
232
232
233
232
228
228
226
225
224
223
223
223
222
221
221
220
220
220
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
219
221
221
221
221
222
222
222
222
221
221
221
220
220
220
220
220
220
220
220
220
220
220
221
222
223
224
228
228
228
228
228
228
227
227
227
227
227
227
226
226
226
226
225
224
224
224
224
223
223
223
220
220
221
223
225
231
234
234
236
238
243
243
244
248
248
252
253
254
255
257
266
266
273
278
278
278
278
278
278
276
276
262
249
247
245
243
224
224
223
223
223
223
222
222
222
222
222
222
222
222
222
222
222
222
222
222
222
222
223
224
226
227
230
231
231
232
234
234
235
238
237
236
236
235
234
234
235
235
234
234
234
234
232
229
227
226
225
223
222
219
218
217
217
216
215
215
215
215
215
216
216
216
216
216
216
216
217
217
218
219
219
220
220
220
219
218
217
216
214
214
214
214
215
216
216
217
217
216
216
216
213
213
213
213
214
214
214
217
219
220
221
222
225
227
231
234
237
239
243
245
251
250
249
247
247
247
246
246
246
246
246
246
246
246
246
246
246
246
246
246
246
245
242
241
240
238
237
236
235
234
233
233
231
230
229
227
226
225
225
223
217
216
215
213
213
213
211
210
209
209
209
209
209
210
210
210
209
208
208
207
207
207
207
208
209
212
212
213
213
214
215
217
222
222
222
222
222
222
222
218
217
212
211
211
212
212
212
212
212
212
211
210
209
208
208
208
208
208
208
209
209
210
210
211
212
214
214
216
217
217
219
219
221
221
222
223
223
223
223
224
226
228
227
227
225
225
223
221
220
219
218
216
215
214
214
214
215
215
216
216
216
217
217
218
218
218
218
215
214
212
211
207
207
207
207
207
207
207
207
207
207
207
207
207
207
207
207
207
208
208
208
208
208
208
208
209
209
209
209
209
209
209
209
209
210
210
212
214
216
220
226
228
228
228
228
228
229
229
229
229
230
231
232
233
233
234
235
235
236
236
236
236
236
236
235
235
235
235
235
235
236
237
237
238
238
239
239
247
248
249
250
252
253
247
232
231
231
231
231
231
231
231
230
227
226
225
224
224
224
225
226
227
229
229
223
214
210
210
210
210
208
208
208
208
208
208
208
208
209
209
209
208
207
207
207
206
206
206
205
204
204
204
203
203
203
203
202
202
202
202
202
202
203
203
203
204
204
204
204
206
206
206
206
206
206
206
206
206
206
205
205
204
204
204
203
203
202
202
202
202
202
202
202
202
202
202
202
202
202
202
202
202
202
203
203
203
203
203
202
203
204
205
209
211
212
215
214
213
213
210
210
209
209
208
208
208
209
209
209
210
211
212
213
215
217
218
219
219
219
220
221
217
217
215
216
216
217
217
217
217
216
213
213
213
213
213
212
212
212
212
211
211
210
210
210
209
209
209
209
208
208
207
207
207
207
207
207
207
207
207
206
206
206
206
205
205
205
205
205
205
205
205
205
205
205
205
204
204
203
202
202
198
198
198
198
198
198
198
198
198
199
205
207
208
210
210
209
207
207
206
206
205
203
200
200
199
200
201
201
202
203
203
203
203
203
203
204
205
205
205
205
205
205
204
204
203
203
203
203
208
208
208
209
209
210
210
211
211
216
218
220
222
225
226
226
226
226
226
226
226
225
225
224
224
224
224
224
223
223
222
222
217
215
214
214
213
212
211
209
209
207
206
205
204
203
203
202
202
203
204
205
207
207
208
209
210
213
216
219
223
223
217
211
209
207
205
203
204
204
204
204
203
203
203
202
202
201
207
209
210
206
206
203
200
196
194
192
192
192
192
197
197
198
198
197
195
194
193
195
195
197
196
196
195
196
196
197
199
198
198
197
197
196
196
196
196
196
196
196
196
196
196
196
196
196
197
197
197
198
198
198
198
198
199
199
199
200
200
200
201
201
202
202
203
203
203
203
203
203
203
203
203
203
203
203
203
203
203
202
201
201
201
201
201
201
201
200
200
200
200
200
200
200
199
199
199
199
199
199
199
200
200
200
200
200
200
200
198
197
197
197
198
198
198
200
200
200
201
201
201
202
202
203
203
203
204
203
202
198
197
197
197
197
197
197
197
197
197
197
198
198
198
201
215
219
224
226
226
226
226
226
225
222
221
220
219
218
217
216
206
204
202
200
200
199
198
197
196
196
196
196
197
198
199
199
199
199
197
196
195
193
193
193
193
194
194
195
195
195
196
196
196
196
196
196
196
197
197
197
199
200
201
202
204
205
205
204
204
204
203
202
202
201
201
201
200
200
199
199
198
198
198
197
197
197
195
195
194
193
193
193
193
193
194
194
194
194
194
194
194
196
198
200
203
205
209
211
214
214
213
211
210
208
208
204
192
192
190
190
190
189
189
188
188
188
188
188
187
187
187
187
187
187
187
186
186
186
186
186
186
186
186
186
186
187
187
187
187
187
187
188
188
189
189
189
190
190
191
191
192
192
192
192
192
192
192
192
193
193
193
193
193
193
194
194
194
194
194
194
194
194
194
194
194
194
194
194
194
194
194
194
194
194
193
193
192
192
191
190
188
188
187
187
187
187
186
186
186
185
185
185
185
185
185
185
185
185
185
185
185
184
184
184
184
184
184
184
184
185
186
187
187
187
187
187
187
187
187
187
187
187
187
185
185
185
186
186
186
186
186
186
186
186
186
186
186
185
186
185
183
183
183
183
183
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
181
181
181
180
180
180
180
181
181
181
181
181
181
181
182
182
182
183
183
184
184
184
185
185
187
187
187
187
187
187
187
187
187
187
187
191
191
191
193
193
196
196
196
195
191
191
190
188
187
187
187
187
187
188
188
188
188
189
189
189
189
190
191
192
192
192
192
192
192
192
192
192
192
192
193
194
194
194
193
193
193
194
196
196
198
198
198
198
198
198
198
198
197
197
197
197
196
195
195
194
193
193
191
191
190
189
189
189
190
190
191
192
192
191
191
190
189
189
189
189
188
187
187
187
186
185
185
185
184
184
184
184
184
184
184
184
184
184
184
190
190
191
191
191
192
192
192
192
192
192
192
192
192
192
192
191
191
191
190
190
189
189
189
189
190
191
191
191
191
191
192
192
192
192
192
192
192
192
192
192
191
191
191
191
191
189
188
187
186
185
185
184
182
182
181
182
182
182
182
184
185
185
185
186
186
187
188
188
189
190
190
191
191
193
193
195
195
195
195
195
194
192
191
189
190
190
190
190
188
188
188
188
188
189
189
190
191
191
191
191
191
192
192
191
190
188
187
187
188
189
188
187
186
185
185
185
185
184
184
183
183
183
182
182
182
182
182
182
182
182
182
182
182
182
182
181
181
181
181
181
181
181
181
181
182
182
183
183
184
184
185
185
185
185
186
186
186
186
187
187
187
187
187
187
188
188
188
188
188
188
188
188
188
188
188
188
187
187
187
187
186
186
186
186
185
185
184
183
183
183
183
183
183
183
183
183
184
185
185
186
186
186
186
186
186
186
184
184
182
182
182
184
184
183
183
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
183
183
183
183
183
183
183
183
183
183
183
183
181
179
179
180
181
182
182
181
180
179
178
178
178
178
178
179
179
179
180
180
180
180
180
180
180
180
181
182
182
182
183
184
184
184
183
182
181
181
181
183
178
178
178
179
180
181
181
181
180
180
179
179
178
178
177
177
177
177
177
177
178
178
178
179
181
181
181
181
180
180
179
178
178
177
174
174
174
174
174
174
174
173
173
172
172
175
176
178
178
180
180
180
180
180
181
181
181
181
181
181
181
181
182
182
182
182
180
180
179
180
181
185
186
186
188
192
192
193
193
193
194
194
194
194
194
194
194
194
194
194
194
194
194
194
194
194
194
194
193
192
190
190
186
184
180
179
179
180
180
181
182
182
182
182
182
181
181
181
181
181
181
181
181
181
180
180
178
177
175
174
172
172
173
174
174
174
174
174
174
175
175
177
177
178
179
180
181
181
181
181
181
178
177
177
177
177
177
177
177
177
177
178
178
179
179
180
181
181
180
180
179
178
178
178
180
183
181
181
181
183
184
184
184
183
183
182
182
182
181
180
180
180
180
180
180
179
179
179
178
178
178
178
178
178
178
179
181
182
182
182
180
179
179
180
181
183
183
183
183
183
183
183
183
183
183
182
182
182
182
181
181
181
181
181
181
181
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
182
183
183
183
183
183
184
184
184
182
182
183
185
185
186
186
186
186
186
186
186
185
184
184
184
185
185
186
187
187
187
186
186
185
185
184
184
183
183
183
182
181
181
182
184
184
183
183
183
183
183
183
183
183
183
183
183
184
184
184
184
183
182
182
181
181
181
181
181
181
181
181
181
181
181
181
181
182
183
183
183
184
184
184
185
185
185
185
185
185
186
187
185
184
183
182
180
179
178
178
178
178
178
178
179
179
179
179
180
180
181
181
181
182
182
185
185
185
184
184
184
183
183
183
183
183
183
183
183
183
179
176
177
178
178
179
179
179
180
180
180
179
179
178
178
177
177
176
176
176
176
177
177
177
178
182
182
182
181
180
178
178
177
177
177
174
174
173
172
171
171
171
171
170
170
170
172
174
177
179
177
177
176
176
176
176
176
177
177
177
178
178
179
179
179
179
179
181
182
184
186
187
188
188
188
188
188
187
187
186
186
186
186
186
186
186
186
186
186
185
185
185
185
184
183
182
182
181
181
181
181
181
179
178
177
175
175
175
175
175
175
177
178
183
184
186
187
190
190
191
193
195
196
195
193
189
187
186
183
181
182
183
183
184
184
184
184
184
185
185
185
186
187
203
205
209
210
211
210
209
208
207
207
206
205
204
201
200
199
198
195
194
193
189
186
184
184
184
184
184
184
184
183
183
183
182
182
182
181
181
181
179
178
177
177
177
176
176
175
174
174
174
174
174
174
174
174
174
174
174
173
173
173
173
173
173
173
173
173
173
173
173
173
173
173
172
172
171
170
169
169
169
168
169
169
169
169
169
169
168
168
168
167
167
167
166
166
166
166
166
166
166
166
166
166
166
166
166
166
166
167
168
168
169
169
171
172
171
166
170
176
180
182
181
177
175
171
168
168
168
167
167
168
168
169
169
169
169
169
170
171
171
171
171
171
171
171
171
169
168
167
165
165
165
165
165
165
165
165
165
165
165
165
166
166
166
166
166
167
167
167
168
168
170
173
175
176
176
173
170
169
169
167
167
167
167
167
167
167
167
167
167
167
166
166
165
165
164
164
164
163
163
164
164
165
165
165
165
165
164
164
164
164
164
164
164
164
164
164
164
164
164
164
164
164
164
164
164
165
167
167
167
168
168
168
168
170
170
172
175
176
181
177
169
163
163
163
163
163
163
163
164
164
165
168
173
175
174
172
169
167
166
165
165
164