Skip to content

Instantly share code, notes, and snippets.

@lieuzhenghong
Created August 24, 2020 15:39
Show Gist options
  • Save lieuzhenghong/53095c3e0c13b8bdc6d3596c8c0ebf8d to your computer and use it in GitHub Desktop.
Save lieuzhenghong/53095c3e0c13b8bdc6d3596c8c0ebf8d to your computer and use it in GitHub Desktop.
We can make this file beautiful and searchable if this error is corrected: No commas found in this CSV file in line 0.
cut_edges
213
204
219
220
289
294
253
236
274
247
241
242
273
302
273
262
318
320
332
309
328
333
333
332
278
296
283
288
287
280
273
254
263
269
263
259
183
182
194
193
202
213
210
231
245
243
247
235
231
246
234
247
269
260
265
282
267
269
370
280
244
258
271
295
243
256
222
230
309
321
232
238
307
236
231
223
216
204
228
276
316
312
340
309
315
264
233
212
222
288
275
276
293
221
300
236
261
231
243
237
257
261
258
263
271
246
252
218
233
286
274
271
337
342
397
348
300
316
285
303
316
340
336
269
258
244
261
277
279
265
264
224
220
298
306
320
318
310
259
334
291
286
241
239
240
216
213
256
248
229
212
244
215
209
252
199
197
270
233
215
216
192
194
208
198
207
225
256
249
278
307
280
223
258
265
328
318
284
280
274
237
280
258
245
256
226
235
244
272
287
296
240
297
300
290
211
224
230
278
271
225
232
266
254
259
272
278
281
285
302
270
284
297
286
285
281
266
219
207
207
190
211
197
243
252
311
308
307
309
322
253
257
227
274
281
284
327
303
281
257
266
308
354
353
318
255
260
281
289
304
318
290
282
316
251
252
255
221
227
218
315
328
367
273
279
237
222
221
217
221
250
273
283
290
260
275
262
276
376
355
365
326
351
348
343
312
287
277
293
274
259
242
265
260
250
240
250
221
230
187
218
256
219
282
281
287
281
238
352
349
360
327
206
216
276
297
294
288
318
276
271
258
312
306
230
223
220
236
246
220
217
224
224
230
267
329
302
291
295
277
288
289
305
262
259
219
202
348
205
200
190
238
249
252
232
188
229
209
208
204
223
222
222
214
243
250
222
237
222
225
208
250
282
256
242
213
229
229
220
206
215
212
217
212
237
225
222
242
230
261
253
252
250
277
261
234
225
231
195
233
214
201
200
209
295
324
339
306
307
294
250
291
265
277
280
290
274
275
278
273
321
310
284
283
275
268
282
288
289
299
299
267
291
292
328
294
251
290
282
271
270
247
259
254
240
236
260
253
236
260
264
315
337
307
308
292
274
303
331
281
281
320
306
249
249
215
226
226
234
263
281
242
251
237
312
235
260
271
258
267
341
280
269
219
205
247
173
212
312
306
296
294
324
322
311
288
228
240
258
245
283
265
229
224
196
177
198
202
195
173
198
223
223
243
236
246
271
269
245
239
276
247
258
251
250
233
210
215
237
222
237
217
208
190
238
193
210
191
205
210
192
196
192
203
197
254
219
227
261
325
255
280
285
295
247
243
257
246
241
227
231
248
263
291
321
334
357
335
334
327
270
318
331
347
263
268
261
274
262
256
268
241
337
351
244
335
336
331
379
329
265
334
319
257
275
255
284
242
239
238
291
254
321
313
235
258
207
205
243
243
218
248
285
287
291
288
210
221
214
216
214
232
243
282
262
237
221
241
252
225
215
184
206
228
233
223
238
268
272
281
287
233
236
247
221
229
192
185
257
221
196
200
175
199
215
245
249
274
220
221
241
218
248
223
201
205
199
218
241
214
212
203
234
240
250
230
252
243
317
280
272
262
256
277
281
287
278
265
245
253
252
299
301
326
323
318
298
295
290
307
271
226
216
217
226
251
223
272
272
303
331
321
267
230
231
246
228
227
251
319
276
257
345
270
285
340
275
219
229
218
200
205
200
206
205
206
211
207
227
235
243
261
291
278
321
249
250
243
220
189
204
212
248
269
287
265
253
284
248
237
230
229
238
233
227
225
228
224
233
233
245
231
237
250
240
226
273
267
292
275
266
279
303
273
231
207
192
178
186
194
195
193
188
186
234
250
199
214
212
209
211
191
201
314
359
245
235
300
319
249
234
283
259
280
268
287
258
302
294
281
241
257
230
275
256
222
238
231
268
239
293
284
257
202
249
223
244
272
237
212
211
231
242
283
241
244
255
260
248
322
311
310
226
226
213
227
228
210
190
229
242
223
214
212
199
190
218
264
202
189
189
219
273
171
184
253
187
208
208
226
240
217
225
188
256
219
178
219
189
200
239
196
254
200
207
201
212
229
222
257
249
244
266
275
270
258
264
297
227
199
234
203
229
242
237
229
221
235
270
257
260
224
257
309
322
311
313
272
270
283
279
279
274
268
280
278
268
244
249
245
263
251
292
298
291
306
269
252
222
232
237
251
242
237
250
279
289
258
255
273
264
261
273
261
256
303
283
300
298
305
276
216
195
228
235
229
245
264
245
248
298
262
229
225
232
245
281
274
296
300
253
232
244
216
232
250
261
234
229
205
200
314
307
336
302
304
326
335
263
290
315
302
274
237
216
240
276
263
233
218
231
224
236
291
298
285
295
245
248
245
289
254
222
211
222
210
211
237
212
257
253
212
212
243
243
294
287
247
212
214
226
240
256
250
207
229
257
266
268
279
289
260
230
236
234
248
240
225
258
232
210
271
287
279
234
248
291
276
230
195
206
235
215
204
202
220
224
232
253
268
342
348
330
358
333
326
343
265
244
243
228
217
245
256
260
267
239
222
251
225
214
209
225
237
231
238
226
235
226
284
272
258
226
212
202
216
199
217
216
228
289
279
262
159
162
224
200
196
199
198
205
175
155
168
182
200
238
237
242
207
199
256
205
228
234
198
173
222
262
251
222
216
302
216
213
236
265
284
248
286
250
270
275
340
368
400
386
386
339
281
272
311
316
363
383
381
303
317
268
264
277
246
248
250
250
228
237
218
229
245
281
256
273
309
276
277
271
250
215
212
232
216
215
241
248
274
269
300
269
251
227
339
313
302
299
323
312
224
229
246
246
245
254
279
249
284
235
227
244
273
268
280
275
275
273
275
274
310
282
285
332
357
319
352
345
327
235
225
250
242
228
229
254
245
243
250
236
265
273
274
237
271
320
284
276
247
209
210
210
215
202
204
215
209
210
185
190
262
205
205
234
234
230
214
241
253
247
242
255
256
255
266
261
255
243
217
191
221
235
239
222
234
257
319
217
226
237
243
238
277
268
262
265
260
258
292
289
236
245
241
276
233
296
224
213
221
250
210
248
212
222
289
244
240
241
250
243
277
271
236
266
268
242
246
252
265
257
254
266
271
304
278
232
229
234
250
239
223
239
285
268
290
285
233
244
226
225
262
241
184
193
211
223
223
205
277
231
214
220
217
219
220
223
208
266
298
256
198
272
283
271
301
293
327
326
279
258
251
235
246
292
301
234
285
276
240
266
329
315
259
267
202
206
211
213
212
246
236
234
286
357
385
372
321
299
236
234
259
283
231
264
241
280
256
252
277
268
246
248
247
227
218
238
205
248
256
249
264
280
272
265
234
316
327
326
319
320
282
258
290
315
338
273
328
231
224
226
240
249
265
233
212
202
278
182
179
215
176
179
224
252
228
269
295
233
223
219
239
250
209
203
212
189
195
271
321
298
218
199
231
183
186
187
267
261
279
212
195
234
219
225
247
240
232
211
246
273
251
268
251
267
262
266
287
315
363
374
351
328
356
358
334
299
248
241
242
284
267
273
255
258
251
281
288
233
227
195
213
212
221
216
220
214
239
256
261
272
287
290
272
235
226
229
231
192
178
192
194
212
263
279
292
261
288
275
272
293
263
250
243
191
232
214
174
196
236
308
258
261
234
245
254
265
290
251
290
295
256
262
305
305
290
291
287
271
284
281
277
266
261
257
269
285
296
286
279
340
338
269
288
265
258
288
271
246
263
239
242
230
212
217
199
193
287
286
186
185
182
202
206
182
197
197
198
187
192
215
258
247
222
185
218
222
219
294
380
338
340
350
330
228
260
241
270
199
242
214
246
271
248
283
316
265
305
264
222
226
227
228
279
240
240
247
263
253
326
343
305
314
303
339
352
345
344
299
238
203
184
179
159
170
232
207
173
193
189
234
201
180
174
209
190
177
241
235
259
258
244
243
248
246
238
194
202
175
185
175
206
211
199
195
201
198
217
217
225
236
217
196
235
261
279
287
223
249
226
254
223
222
238
232
262
260
219
216
215
211
211
208
211
231
235
240
235
237
205
192
193
200
238
237
249
236
228
260
262
266
242
236
227
187
186
181
189
177
200
257
240
236
256
268
245
256
196
195
218
211
252
209
210
242
196
226
251
284
214
216
191
211
234
268
270
285
273
279
274
313
290
227
223
214
196
187
179
201
202
182
282
290
242
237
248
341
250
244
234
237
197
243
314
338
279
276
248
275
295
305
326
391
388
314
254
204
238
229
202
206
196
227
206
239
237
212
263
251
298
346
323
292
295
299
319
322
306
276
289
310
312
364
374
356
345
315
362
335
296
345
397
375
345
263
273
269
265
302
254
257
247
259
249
247
213
213
210
210
203
183
250
277
268
230
214
233
230
229
282
255
277
285
240
166
188
164
173
189
196
189
176
179
189
189
198
200
211
211
205
194
192
194
194
182
167
184
194
264
265
260
268
269
222
195
226
202
212
212
298
268
279
237
215
249
214
227
237
219
231
232
230
249
248
262
229
236
253
255
232
229
208
208
218
221
223
263
295
328
383
326
304
290
275
253
263
265
263
285
288
315
308
261
255
285
248
233
202
219
222
215
208
210
218
212
219
256
332
392
347
339
261
232
227
237
306
322
326
330
269
251
236
335
345
334
293
301
290
286
280
294
296
294
277
274
287
283
317
332
349
287
286
260
277
286
262
251
253
258
259
258
247
239
300
333
274
289
300
258
313
304
300
249
208
239
209
200
216
192
196
262
280
291
309
233
220
221
298
232
206
290
221
235
239
245
283
281
278
255
230
207
172
179
191
221
197
268
281
275
262
276
282
277
277
282
286
274
281
204
212
195
220
222
258
269
278
247
237
220
216
309
229
259
283
297
319
316
316
284
363
383
399
411
405
413
325
287
311
328
317
293
301
297
240
259
253
244
238
227
235
226
228
216
242
269
303
276
300
277
290
281
213
190
256
258
274
232
318
358
373
387
304
312
328
322
275
311
280
256
237
234
241
278
286
363
363
259
260
229
226
277
252
262
249
245
259
280
279
266
276
263
251
270
249
223
238
242
245
248
248
245
235
276
279
271
275
306
252
243
258
289
266
226
246
247
229
239
228
204
247
258
213
197
197
213
206
214
207
205
222
235
238
244
268
283
268
293
319
327
247
257
235
258
257
228
307
290
292
228
260
263
264
263
268
279
268
247
260
251
270
250
257
259
254
234
271
230
237
198
198
216
251
320
246
235
231
247
262
283
311
277
256
287
301
308
299
314
270
278
238
230
231
218
235
239
271
253
224
228
248
270
290
298
258
287
241
214
210
238
251
219
205
252
255
251
220
234
246
323
245
238
232
237
227
252
210
204
207
253
209
244
282
251
263
249
236
235
229
205
221
217
243
216
228
287
309
281
264
264
262
323
310
302
305
305
261
220
195
209
194
201
231
191
205
201
240
207
234
248
230
238
233
241
232
223
225
219
232
255
242
243
249
231
220
238
230
221
289
289
292
199
208
202
214
219
211
209
206
187
179
186
174
176
191
207
241
239
252
201
195
183
300
177
174
167
211
181
190
216
222
236
267
260
305
274
267
275
264
236
219
229
275
292
276
236
266
278
261
249
274
245
250
308
296
277
287
260
266
254
233
250
261
319
345
296
243
227
216
228
236
256
285
249
239
247
206
224
217
284
284
252
216
234
225
203
207
233
248
242
218
192
208
197
255
240
292
275
313
276
329
280
250
229
245
238
242
238
248
315
343
363
276
302
251
233
231
237
230
262
290
287
301
291
271
305
242
245
248
272
270
265
255
236
233
254
253
244
241
234
326
403
311
303
241
221
248
238
237
233
304
300
286
296
291
275
265
252
261
254
287
261
281
258
250
251
244
232
229
252
216
252
219
221
247
257
227
212
211
218
200
218
214
222
227
226
268
276
261
264
250
256
248
225
261
247
198
186
179
210
219
280
261
194
258
267
261
255
261
264
349
368
363
330
256
232
242
280
275
278
292
291
273
323
325
285
287
271
286
263
266
288
271
325
310
288
244
188
246
257
212
235
190
208
200
194
193
200
204
239
245
222
266
274
267
269
227
217
233
245
230
219
227
211
206
193
207
220
194
255
223
246
206
230
202
200
237
210
261
265
282
276
291
298
277
274
275
260
247
294
274
210
210
250
256
239
229
250
302
304
343
304
283
275
274
310
275
225
268
276
278
219
225
222
222
227
274
311
326
359
368
291
230
308
276
279
280
286
275
300
285
283
231
258
233
226
216
220
195
196
201
195
189
204
272
300
306
261
263
217
215
231
217
267
212
206
242
256
269
255
273
260
255
273
301
301
297
289
280
281
335
300
288
256
279
350
277
281
360
269
204
212
203
213
227
204
218
249
267
264
251
291
314
316
281
293
279
260
261
234
268
261
269
258
274
299
304
307
307
228
275
248
238
312
283
370
309
337
298
237
225
250
288
251
300
239
302
289
257
279
270
286
264
261
213
227
231
220
236
232
214
229
215
250
240
224
202
240
227
223
227
262
280
301
226
227
227
213
258
282
247
238
267
257
268
222
222
251
302
306
307
297
359
395
358
299
261
249
248
248
277
268
292
336
345
368
398
359
358
313
313
319
293
313
297
240
262
331
286
315
316
385
431
426
377
345
359
367
324
288
302
309
312
314
311
312
305
321
282
280
292
302
303
277
304
306
315
282
316
231
237
226
231
195
214
191
199
213
205
221
248
241
234
318
281
294
288
339
307
295
200
240
224
218
193
203
202
215
229
214
214
224
227
208
258
272
278
240
272
294
283
217
291
223
223
221
240
263
268
290
298
255
282
263
262
276
242
334
274
312
263
253
219
288
284
279
264
206
248
300
274
247
235
275
221
257
305
338
314
345
311
266
271
246
212
232
209
243
231
198
217
205
215
216
209
215
253
269
276
238
225
242
248
257
257
263
261
270
372
293
288
250
231
275
291
316
256
214
238
218
282
214
210
214
218
206
226
212
227
234
253
263
257
283
261
284
286
273
280
267
259
261
282
306
263
290
242
261
265
271
241
207
249
281
261
274
283
289
289
279
312
283
278
246
295
284
264
253
311
272
208
213
240
264
272
242
252
264
252
247
238
258
245
252
232
258
240
252
271
248
246
225
230
233
250
262
320
313
290
255
269
246
216
203
237
244
259
315
280
287
313
289
291
301
227
218
266
230
232
245
295
248
274
247
244
238
244
248
248
237
267
260
249
242
264
291
295
260
284
259
258
261
259
296
302
334
335
288
296
323
327
328
314
268
266
255
247
249
269
279
253
264
237
228
219
218
213
256
252
257
254
271
274
225
241
208
244
231
286
308
269
273
280
255
262
254
250
237
230
259
260
251
280
217
201
213
208
209
229
243
267
212
253
226
237
235
249
283
282
273
272
273
256
234
293
316
335
260
233
235
230
247
311
312
311
359
310
295
315
352
390
345
325
253
248
285
273
319
305
342
318
297
295
294
266
260
245
284
301
332
332
308
300
286
322
261
248
243
228
212
202
205
256
274
235
281
236
240
219
220
208
226
226
263
272
264
326
339
396
390
348
331
312
323
315
362
347
327
313
263
276
311
331
272
255
286
288
269
282
296
339
327
335
313
318
319
319
270
258
226
246
256
214
173
232
270
243
200
283
222
234
239
243
253
272
260
286
300
300
332
298
223
215
222
215
227
229
199
215
221
227
248
257
243
235
257
263
275
284
279
333
342
244
261
216
254
281
274
276
297
322
307
359
342
284
286
248
254
250
249
252
288
283
272
258
217
365
218
214
201
189
185
202
205
204
228
233
238
264
359
272
302
279
246
260
271
273
223
253
254
227
252
254
241
248
261
236
240
258
233
232
210
239
218
266
249
238
287
275
283
234
227
235
261
269
258
235
268
325
353
281
266
276
330
284
300
306
304
312
251
265
246
315
315
289
296
268
274
257
289
305
260
300
333
310
291
312
254
287
274
296
249
247
276
257
376
380
319
283
208
265
304
278
290
281
207
190
245
337
234
266
238
273
243
266
237
203
208
213
245
238
242
277
277
270
279
263
240
212
221
259
278
261
249
223
223
266
216
219
225
224
257
266
280
283
294
297
289
308
295
248
228
330
329
221
189
241
232
239
253
257
231
226
319
275
273
253
259
263
228
236
288
306
279
285
262
265
243
183
222
248
278
260
258
320
252
215
230
230
207
235
239
234
254
253
244
243
242
242
248
207
219
226
222
205
238
259
265
232
205
217
257
242
212
201
218
228
245
258
245
259
225
236
228
290
302
234
240
292
279
244
237
274
283
275
293
272
306
256
343
334
327
354
350
278
281
272
328
269
270
258
258
255
254
268
268
235
269
275
270
255
250
247
260
258
236
210
251
290
257
268
272
209
228
226
201
256
224
238
274
235
272
238
233
252
280
370
340
343
337
285
274
295
307
294
322
354
388
313
264
240
247
253
279
291
249
251
284
282
251
258
259
359
335
297
290
296
247
241
248
255
267
258
256
273
316
326
316
297
311
344
312
374
326
370
311
289
247
248
237
216
198
251
246
207
200
208
237
301
300
215
244
243
225
227
207
270
258
253
264
213
266
298
321
302
267
277
260
208
241
206
201
225
268
251
295
266
231
283
277
279
231
217
193
208
201
180
170
174
193
209
221
194
230
295
254
261
242
228
255
248
280
274
298
299
303
259
226
251
252
279
245
246
239
256
276
289
262
268
243
242
231
238
234
267
282
326
255
252
250
252
233
230
227
236
189
227
248
246
264
240
232
249
210
180
203
202
293
200
218
219
217
202
181
205
268
322
316
321
365
333
323
312
274
201
242
212
240
214
227
229
234
255
269
212
202
194
223
199
176
220
192
207
202
236
196
190
190
190
250
238
256
211
213
269
287
232
228
218
219
228
257
300
334
365
366
353
309
310
290
294
249
261
222
222
226
233
262
266
266
244
258
277
286
288
293
309
294
286
277
270
256
269
257
268
372
297
304
283
304
317
315
335
335
382
311
289
242
226
247
252
223
231
236
292
305
301
314
322
306
292
256
221
203
233
218
267
268
258
272
340
285
300
272
227
225
243
244
246
257
270
260
253
236
249
288
273
238
281
295
278
273
235
259
300
325
258
259
293
295
307
320
330
333
304
264
278
318
277
269
246
244
243
270
241
319
335
284
274
338
331
291
268
272
269
236
298
286
241
250
283
290
284
289
312
331
316
294
281
299
267
254
264
258
217
225
279
260
279
245
260
259
268
252
235
234
260
271
254
268
268
332
336
310
305
319
318
315
355
338
296
325
316
261
230
253
246
253
225
212
244
267
268
269
259
214
216
186
182
212
269
266
253
244
197
210
213
196
221
186
180
180
178
183
178
183
235
220
227
246
245
274
235
228
204
176
217
219
238
224
230
230
236
222
273
257
227
225
214
213
215
265
253
184
214
200
194
196
228
229
228
228
229
188
203
276
252
241
194
270
284
216
225
270
291
231
232
215
225
256
254
225
278
228
238
232
224
227
237
248
274
252
269
231
269
303
285
271
268
234
248
197
286
300
334
330
345
222
225
217
228
233
232
247
251
249
241
252
199
192
199
197
192
209
185
191
189
188
185
181
203
190
198
180
193
198
198
216
270
298
232
303
249
224
230
239
271
250
294
277
281
278
270
261
252
289
322
303
284
248
259
282
274
237
252
252
238
236
218
234
248
255
243
258
308
290
299
275
317
294
292
274
245
309
257
220
275
193
201
228
226
209
291
210
206
226
256
216
222
220
246
271
278
302
279
268
271
339
287
290
272
254
247
262
211
270
234
177
199
235
232
253
255
205
231
233
255
264
256
251
288
272
228
211
216
208
214
209
227
224
262
292
239
247
288
244
261
286
324
284
243
243
247
256
249
249
250
260
241
269
242
252
256
321
288
255
238
282
290
330
323
290
248
269
248
290
264
267
283
263
248
283
273
215
224
214
213
227
210
281
243
225
265
303
244
245
198
225
319
260
214
218
195
197
208
198
178
212
216
223
240
235
225
220
212
222
221
242
213
212
251
266
232
243
307
338
316
272
238
266
284
245
230
223
209
210
223
235
235
263
247
231
238
224
227
236
259
279
274
272
268
264
261
271
213
210
240
214
208
205
215
180
196
215
232
225
215
213
253
314
333
289
290
254
276
270
274
226
234
225
220
242
208
179
192
193
200
204
212
245
210
203
191
183
215
204
236
227
246
253
239
245
226
218
196
192
214
229
242
240
309
205
196
208
204
179
189
187
187
182
242
232
248
247
251
210
268
249
264
252
240
243
238
232
256
271
220
262
273
291
259
253
235
238
212
215
273
272
241
231
246
264
289
288
227
214
242
254
258
322
350
336
277
274
251
286
231
283
230
227
252
291
330
296
308
295
295
260
244
255
251
251
281
261
216
335
317
318
252
242
257
250
246
251
252
277
284
284
232
251
265
267
232
232
258
297
243
231
201
206
235
205
207
247
259
232
216
208
228
246
240
248
237
250
220
207
207
238
240
209
220
223
247
252
299
310
317
251
265
216
222
213
202
207
231
190
202
227
269
272
366
308
289
292
294
316
284
324
282
335
374
309
307
304
233
285
230
230
219
223
224
237
229
216
228
235
269
287
302
306
288
278
284
248
198
193
244
208
220
217
229
344
354
372
326
341
238
219
182
247
231
289
286
239
270
226
272
245
320
282
256
255
282
268
263
268
285
240
238
224
291
220
275
341
290
268
262
283
276
260
268
268
283
302
318
367
395
352
284
268
275
283
280
313
271
279
258
255
236
246
288
202
246
222
211
180
178
271
182
174
186
200
196
213
223
241
255
202
233
260
237
231
247
248
253
269
240
266
255
248
249
202
196
217
259
263
268
278
342
317
259
229
225
265
257
251
210
210
232
235
269
228
174
224
206
213
275
226
244
267
243
223
247
228
229
196
214
229
228
288
250
249
262
242
237
244
249
260
285
290
288
263
231
238
224
256
249
265
228
228
236
251
243
254
258
221
221
221
240
251
291
241
252
231
230
236
219
238
302
260
277
302
314
316
399
402
384
388
364
288
346
337
339
372
332
330
264
257
287
242
251
307
243
248
241
244
208
201
209
241
231
243
202
244
253
249
230
205
210
208
198
231
201
192
245
254
270
272
279
296
269
262
215
228
226
226
253
251
271
224
276
276
270
278
298
324
333
318
345
319
260
307
277
297
268
281
271
252
243
255
249
269
253
303
268
291
212
233
211
181
179
196
219
207
203
225
256
265
251
215
189
189
196
207
300
293
241
208
262
294
282
272
247
244
287
287
285
285
242
259
240
230
252
265
243
239
239
238
234
221
225
266
275
250
270
246
241
262
269
212
241
230
227
236
213
234
237
227
260
221
223
203
224
253
251
236
297
303
277
277
266
275
285
267
259
247
282
258
233
227
255
321
336
320
330
284
294
293
279
281
271
278
245
228
204
196
205
183
179
191
178
186
228
253
231
233
224
230
256
230
220
227
217
212
231
220
222
243
244
271
263
292
248
247
206
245
238
240
242
250
213
228
241
223
222
223
242
245
240
285
243
212
256
253
303
221
230
223
240
216
255
265
282
284
266
255
258
256
303
290
434
320
301
308
309
300
278
268
287
275
276
266
264
230
221
228
267
306
271
224
252
273
329
328
348
305
281
260
231
261
224
282
267
287
278
261
259
227
200
184
222
186
241
194
185
205
199
209
249
293
224
252
233
229
210
210
238
237
269
268
246
221
266
245
196
229
200
193
199
250
292
272
271
264
244
235
265
220
244
215
221
213
229
242
240
237
251
270
268
268
239
222
238
245
223
300
298
215
287
278
299
308
307
242
239
253
219
213
291
297
323
301
286
293
228
214
216
217
210
217
203
185
201
197
203
201
210
261
184
186
205
219
241
319
351
353
463
371
338
293
291
256
257
243
227
239
230
268
345
346
227
219
254
219
201
198
239
277
290
333
274
269
271
270
321
282
246
226
239
233
253
229
218
220
284
237
252
272
304
275
282
297
315
308
325
285
292
249
273
357
321
310
309
324
374
334
338
300
358
280
278
269
275
303
299
277
314
304
269
245
228
241
242
243
277
335
302
280
279
300
310
272
276
248
239
197
193
226
228
240
342
257
263
265
293
264
256
214
228
212
218
228
209
228
232
256
252
266
277
317
321
296
287
258
249
230
295
314
307
323
346
309
290
237
241
253
234
241
288
281
272
298
283
257
266
255
294
277
289
311
291
290
303
242
243
250
240
203
245
255
298
259
228
234
282
255
267
275
270
295
280
292
280
265
236
238
225
286
277
213
225
219
236
228
239
231
248
248
270
260
265
252
245
266
277
279
291
305
316
297
281
265
241
289
285
276
309
329
387
336
311
294
342
346
337
286
246
221
237
217
247
234
264
221
207
207
207
211
207
249
243
219
198
240
188
201
198
217
229
218
249
249
267
233
239
228
242
272
285
321
286
333
294
318
327
320
342
326
318
294
279
273
278
274
313
332
323
337
335
303
302
291
254
303
330
308
341
354
354
354
330
321
328
326
381
293
309
292
268
268
327
314
351
345
319
246
222
183
206
194
184
233
210
175
169
192
188
238
268
235
219
218
230
239
254
246
259
256
258
243
246
255
216
287
297
308
306
308
316
345
298
282
236
279
285
302
305
259
239
263
225
187
194
234
240
175
186
181
207
189
225
216
271
278
266
302
272
258
246
213
215
220
238
225
272
215
204
233
195
231
258
272
223
236
260
262
252
241
219
222
209
240
240
246
234
239
241
241
242
234
240
282
237
246
235
243
261
284
297
276
276
300
285
268
260
276
284
278
318
312
311
273
270
242
234
259
250
252
240
197
200
256
209
216
229
268
319
310
313
359
395
428
428
425
392
349
391
275
242
230
239
266
259
266
264
312
302
285
290
275
307
291
292
290
293
306
329
322
337
323
329
326
377
316
312
308
334
289
254
306
301
348
307
320
316
314
375
389
370
391
435
347
312
226
263
312
303
325
330
331
359
400
325
270
282
285
256
264
263
263
295
271
295
287
270
271
294
248
251
262
224
231
246
234
263
322
284
304
293
245
254
245
265
243
257
250
287
277
243
266
250
232
264
268
236
251
250
255
266
318
341
283
255
242
249
244
202
210
214
235
272
249
260
250
255
303
307
397
387
374
353
267
251
269
278
284
282
254
256
271
299
300
336
318
245
263
269
300
312
332
375
329
289
284
299
300
301
284
285
294
248
308
320
313
321
316
324
323
313
351
379
373
346
333
320
313
304
261
276
299
284
214
322
261
282
300
298
329
363
351
299
364
396
359
377
352
351
344
301
285
276
235
221
219
237
231
251
249
267
292
284
294
288
284
269
338
378
301
341
334
325
335
338
333
269
268
294
248
193
183
185
188
202
205
245
232
210
251
243
263
263
255
198
215
225
218
219
298
277
296
240
237
244
222
222
197
204
223
245
260
266
291
265
255
275
262
256
251
206
205
206
234
246
232
210
226
192
207
200
205
196
231
211
236
225
227
220
214
219
232
209
234
226
222
219
226
235
249
228
208
205
188
200
213
210
208
252
228
215
246
217
243
210
197
213
167
221
242
235
264
278
241
216
241
230
212
206
226
261
215
257
280
279
272
289
242
257
258
250
247
281
279
330
340
291
272
231
297
278
202
182
241
224
196
216
228
217
231
257
247
229
240
280
233
296
390
324
314
307
249
241
253
243
218
221
212
234
277
297
340
324
252
210
184
200
205
204
190
171
228
313
296
318
331
246
217
216
211
271
276
288
278
275
209
239
253
259
287
257
268
278
288
294
262
267
243
274
337
414
303
349
309
238
310
233
287
302
297
330
265
239
251
234
255
224
196
189
210
225
223
194
191
176
196
196
211
245
280
290
268
257
249
260
266
258
257
237
256
254
243
258
236
224
235
232
253
253
238
232
234
231
326
345
399
316
309
328
324
277
273
266
288
283
288
267
297
251
233
268
264
246
245
257
244
208
233
229
348
223
229
215
238
224
226
212
201
198
196
278
318
294
280
222
231
214
222
201
235
261
273
264
287
272
262
254
273
260
242
242
250
256
285
343
286
268
266
257
333
244
292
233
224
256
266
252
333
319
306
287
290
251
195
204
261
220
205
199
207
217
228
272
232
223
226
222
259
286
287
332
310
323
312
303
277
235
254
240
255
322
331
280
254
276
306
305
308
327
327
328
329
329
350
345
305
316
298
319
289
281
305
316
305
325
271
234
239
232
281
291
275
222
198
207
199
249
221
215
212
205
259
266
265
256
251
261
300
340
293
347
308
280
280
301
310
305
340
295
290
311
278
295
295
302
304
334
294
317
338
274
270
285
305
290
289
300
339
310
280
336
323
256
257
307
323
239
245
255
249
284
254
292
233
276
280
301
378
352
390
367
270
226
238
244
255
259
269
280
283
311
288
288
298
311
302
313
298
280
278
300
316
305
332
312
346
357
340
263
234
229
199
242
275
247
215
288
227
237
213
239
237
275
229
250
249
241
268
265
280
272
291
302
332
302
328
296
276
324
294
269
306
315
312
274
249
252
273
235
209
250
268
218
223
221
261
261
291
262
268
240
242
213
233
249
231
219
227
239
275
226
217
205
205
233
216
214
285
294
301
345
334
341
287
280
356
281
346
378
303
249
211
227
208
254
243
287
248
261
212
232
215
258
212
227
228
277
268
210
211
234
217
203
216
207
220
227
230
237
218
221
251
254
280
262
251
230
248
279
248
206
212
219
226
210
231
214
209
186
207
181
210
206
204
220
221
226
220
229
276
264
331
255
231
233
251
228
233
228
218
205
207
224
220
221
227
223
259
279
265
237
278
210
235
181
189
195
199
226
189
214
193
230
196
228
199
235
231
253
233
285
278
280
211
205
184
222
243
223
211
219
229
216
240
243
254
255
254
287
248
305
353
387
327
303
339
309
247
230
284
308
291
303
254
315
301
284
262
266
311
278
281
283
299
290
278
263
275
264
278
269
255
248
249
228
227
320
317
248
238
220
215
209
197
198
218
212
225
218
296
313
306
295
325
338
329
355
341
329
289
272
262
216
205
205
226
253
257
252
277
284
270
268
258
278
241
241
232
218
274
267
293
322
372
326
343
314
312
299
351
369
352
347
333
340
338
362
347
336
330
395
375
317
304
322
272
261
269
252
277
298
286
305
338
349
304
371
289
318
315
298
284
253
261
235
261
252
254
260
252
262
245
214
208
281
291
267
233
281
280
226
245
236
248
312
257
308
298
300
271
248
249
224
266
239
227
252
253
238
245
241
223
270
296
318
313
304
264
334
341
336
362
355
385
339
322
324
255
254
244
239
235
242
282
253
306
334
366
362
329
293
269
308
265
253
231
238
235
265
258
225
232
225
219
215
224
221
230
283
264
334
321
340
249
259
266
294
308
313
290
223
225
293
233
254
320
309
286
238
260
242
229
233
213
221
228
232
201
210
207
207
229
273
256
248
238
297
281
289
295
305
321
312
320
350
301
314
311
312
242
264
241
273
246
273
202
219
198
222
236
250
282
267
241
233
247
231
251
244
231
226
274
273
270
254
297
293
285
295
305
290
275
265
240
315
357
335
331
241
243
268
274
263
253
251
257
239
254
235
242
272
314
306
377
317
329
297
282
283
319
259
260
235
270
266
252
274
264
269
272
244
235
238
230
225
237
241
238
261
270
276
244
263
247
268
262
260
276
243
278
257
287
274
245
269
264
270
271
252
286
269
296
285
267
251
286
287
282
296
339
305
302
314
315
319
306
311
305
309
283
252
214
197
239
236
272
259
280
267
228
332
327
248
262
266
218
222
223
208
221
203
219
237
222
269
331
257
281
275
257
259
250
280
319
300
320
341
251
238
253
271
298
261
259
268
269
316
253
244
243
222
220
212
277
300
296
300
273
260
259
318
327
273
291
232
227
241
235
244
250
265
246
229
209
217
221
235
249
272
265
285
310
289
291
280
295
275
281
251
239
214
208
196
271
249
247
233
242
240
290
290
234
257
248
240
244
232
217
207
236
239
251
233
213
210
207
183
200
247
245
199
200
245
260
239
322
316
247
275
260
250
246
227
221
237
275
239
225
207
212
207
214
227
220
234
240
243
241
274
256
221
219
225
210
209
232
239
235
246
247
229
235
244
257
250
255
299
304
308
307
284
282
252
275
287
304
287
262
241
273
270
237
241
240
237
264
230
220
234
271
273
327
242
278
344
378
355
357
329
261
272
242
261
267
260
286
337
316
329
328
322
386
390
310
281
197
197
209
216
246
249
269
238
241
304
201
222
254
216
234
249
257
249
259
290
304
290
303
289
316
311
333
347
353
368
319
317
275
262
279
288
255
262
264
250
255
270
275
261
258
257
252
226
211
213
209
213
208
194
246
280
244
194
201
213
224
191
231
195
208
223
210
242
256
377
380
360
309
314
321
300
321
327
326
361
322
297
273
273
282
291
284
267
275
239
249
277
313
328
269
312
266
249
263
266
261
254
249
241
231
214
226
285
263
245
245
265
254
247
242
233
242
253
258
270
225
213
235
252
350
375
341
295
290
249
271
292
253
211
205
228
225
235
236
215
221
217
286
296
360
356
281
273
280
224
215
240
210
206
203
209
201
224
202
229
233
231
241
337
362
289
282
293
305
297
271
278
268
264
231
239
242
258
247
236
229
228
240
233
267
255
284
286
258
240
257
237
249
235
252
292
293
256
229
243
257
266
260
273
253
265
265
253
241
267
274
330
300
298
313
305
242
240
251
237
255
263
230
246
362
362
338
340
345
322
345
363
360
372
378
397
314
336
294
305
355
346
332
286
308
291
345
356
376
300
294
273
278
268
249
250
316
323
332
299
307
361
377
361
344
347
337
375
332
343
422
347
330
296
293
312
307
281
333
369
370
346
291
298
285
267
235
240
242
241
271
250
264
256
290
235
235
213
226
223
229
249
255
266
250
242
230
227
229
232
234
237
226
212
204
227
225
226
230
238
322
315
292
160
161
172
179
191
168
155
160
168
173
175
188
195
208
231
197
236
274
267
236
258
284
286
278
275
261
250
225
224
209
238
226
234
208
256
258
224
233
253
246
236
295
285
281
292
285
266
200
212
222
239
207
194
236
239
245
246
278
382
272
296
263
245
248
240
221
235
235
266
262
218
232
230
238
256
250
334
249
210
209
212
243
252
309
233
209
221
232
225
226
289
216
277
252
217
162
248
176
213
262
276
293
243
233
229
239
235
237
224
250
226
285
262
256
294
227
205
249
220
253
262
283
283
266
261
254
287
287
319
327
295
345
374
349
339
281
265
236
251
239
306
255
249
256
277
304
336
315
276
270
306
305
318
331
353
372
385
329
269
271
241
248
232
263
310
294
280
321
325
257
240
304
238
218
220
192
206
245
218
240
203
219
201
220
248
241
255
235
230
233
219
253
233
221
254
258
254
256
284
223
237
262
330
279
264
278
249
255
262
298
325
290
283
234
225
247
183
214
211
173
253
213
260
208
197
184
178
247
210
187
202
269
223
207
211
200
213
196
199
194
189
199
207
210
177
180
198
212
204
215
248
251
196
196
195
179
170
176
252
157
156
169
179
190
204
210
252
199
210
197
198
209
231
236
278
280
277
281
293
282
313
321
317
296
309
277
260
323
258
252
258
235
254
260
262
268
240
277
271
276
263
262
293
285
271
231
213
201
222
261
317
277
263
311
296
228
293
321
274
241
237
226
250
239
231
277
233
252
264
248
269
271
269
311
273
263
248
244
242
222
255
240
251
279
309
271
300
332
309
315
283
294
274
278
274
298
279
318
294
293
299
276
252
249
228
227
259
243
280
285
314
311
286
267
238
231
268
274
275
267
284
296
321
318
294
311
273
292
264
276
229
222
285
245
268
320
229
326
317
219
260
260
226
246
241
259
242
237
233
289
331
275
272
237
242
250
261
304
265
269
272
239
240
248
231
244
268
281
273
265
261
248
260
255
273
284
343
348
340
375
380
412
345
316
287
307
306
322
308
335
338
376
355
358
280
286
308
290
315
328
287
262
270
279
274
277
284
260
291
252
216
244
251
226
214
222
213
220
218
228
231
230
281
239
239
228
214
219
228
289
364
322
366
340
258
267
233
232
241
246
219
234
237
269
327
321
241
271
251
238
226
232
247
244
201
243
197
214
231
229
232
192
241
246
229
240
263
322
312
265
222
216
306
267
251
280
298
325
296
284
288
234
270
280
334
373
331
324
335
323
328
274
313
323
272
260
195
196
219
244
226
218
240
241
255
254
284
288
260
259
297
304
308
275
266
301
300
330
308
314
288
295
256
267
263
255
238
253
217
240
272
277
217
236
256
213
223
280
247
240
252
244
259
263
256
290
231
185
185
188
189
194
179
167
209
250
233
248
221
234
277
253
238
198
179
199
210
199
229
226
272
227
255
271
250
199
204
240
212
213
204
198
201
212
242
259
270
242
278
294
301
305
268
254
263
253
257
251
254
208
248
250
286
252
249
269
258
236
225
231
287
284
301
338
318
335
334
324
323
388
361
350
371
374
351
262
308
301
272
306
281
268
281
274
234
237
224
252
217
211
228
198
205
204
270
205
206
205
207
220
212
214
260
285
259
212
220
223
212
289
242
308
330
322
301
230
235
238
239
244
239
226
229
283
290
273
247
262
179
154
150
154
234
188
228
241
264
253
254
254
229
232
222
224
265
251
229
255
240
243
241
258
244
256
251
263
228
238
276
247
229
294
256
271
309
291
301
335
323
329
270
298
294
294
333
345
359
352
250
315
249
240
236
246
271
233
235
256
291
288
256
253
231
244
226
209
210
191
196
200
194
213
217
215
204
300
210
211
237
277
221
227
253
253
258
262
223
229
240
277
284
275
271
270
291
245
240
228
217
218
221
193
184
187
198
191
216
214
256
241
195
188
210
259
299
266
295
302
343
357
298
283
257
227
218
211
275
257
252
283
280
330
313
344
323
324
289
303
304
327
267
275
304
286
283
246
255
303
325
318
278
293
295
307
301
312
316
318
266
332
304
221
229
213
216
261
188
184
180
193
286
267
254
222
216
229
236
209
208
217
262
247
211
239
234
272
268
269
259
274
277
297
289
286
225
243
321
239
235
278
277
267
286
250
258
251
256
278
240
212
253
212
263
279
287
304
284
244
225
227
203
200
222
222
228
213
221
203
179
220
232
291
250
252
269
246
269
272
305
270
253
258
251
264
237
253
272
292
268
289
289
283
268
234
224
233
229
231
224
268
234
211
187
263
285
259
202
230
241
233
237
268
265
367
376
366
361
321
323
297
290
286
302
332
302
325
330
364
388
368
319
351
316
277
283
312
279
327
227
255
248
260
278
264
263
269
292
293
287
289
310
297
311
247
264
324
289
241
275
253
227
243
283
278
294
250
234
286
254
287
246
300
300
320
277
297
358
315
293
276
292
305
302
269
281
264
272
284
252
231
231
274
301
278
277
252
277
298
307
263
231
225
252
231
242
254
256
358
364
353
386
309
304
280
276
266
233
232
232
226
229
262
263
271
309
312
285
249
244
219
222
236
206
284
266
255
236
216
248
241
218
309
218
235
229
275
298
304
272
241
251
258
324
313
320
301
300
300
239
290
244
244
256
245
222
256
247
288
271
279
256
271
298
297
290
283
310
301
242
231
235
267
277
253
288
287
267
282
283
296
226
242
234
228
213
247
238
235
258
276
256
250
283
335
266
244
310
255
250
228
238
238
220
207
224
303
198
201
182
207
236
220
219
251
209
203
192
222
220
209
181
214
210
230
269
312
291
337
342
351
349
319
274
265
275
286
278
267
307
311
315
284
257
281
278
240
223
200
206
242
220
234
217
214
223
266
257
331
309
315
373
386
331
260
269
256
266
270
271
317
292
315
321
394
342
315
280
269
263
274
237
254
252
236
264
262
233
236
249
252
239
313
303
184
167
189
181
253
259
257
276
268
212
229
214
234
217
234
242
238
250
317
325
340
297
299
207
210
200
211
203
190
197
211
302
340
308
306
317
330
233
228
232
268
280
269
289
267
262
241
199
239
224
273
238
247
217
217
200
190
244
263
319
304
289
276
284
268
232
235
236
269
282
284
283
272
275
288
313
243
248
303
247
216
221
216
217
262
198
298
241
253
221
224
240
246
238
241
239
253
263
291
251
241
229
236
266
256
271
224
251
272
267
273
285
284
299
278
311
291
281
281
298
310
283
276
309
268
280
267
287
281
287
312
307
313
288
344
334
305
320
338
307
321
308
344
287
245
211
209
239
239
243
250
249
263
255
249
233
279
254
245
259
246
181
211
179
239
168
172
190
209
206
229
211
235
303
240
262
256
273
323
263
314
288
274
278
261
257
323
380
373
323
277
286
255
241
246
246
261
267
236
332
331
235
252
256
272
320
292
269
302
300
260
247
291
254
242
231
207
210
204
232
257
267
270
272
306
357
330
300
288
263
268
223
218
252
276
228
249
245
265
269
283
280
257
282
274
261
248
245
273
318
310
204
222
206
212
246
236
200
220
310
306
230
206
206
182
198
218
236
258
286
243
249
243
251
271
251
311
299
319
278
286
278
252
246
247
242
255
267
281
291
251
251
323
312
309
271
252
239
246
215
226
235
258
302
288
259
319
292
327
341
294
286
323
307
276
265
276
244
264
273
293
281
279
279
275
277
267
272
271
265
200
245
242
190
193
174
186
207
217
214
247
244
255
244
252
290
264
266
248
264
236
265
267
260
234
238
260
256
249
241
226
222
239
232
258
237
232
244
250
234
237
228
232
224
219
224
222
248
226
259
262
227
234
235
299
217
245
227
207
239
247
238
261
263
279
272
267
247
213
192
206
240
228
199
210
220
210
205
245
271
277
288
274
369
339
257
249
226
219
244
262
224
274
254
279
238
243
246
233
207
249
210
217
233
249
246
244
243
223
252
242
225
217
228
227
217
247
272
252
267
263
234
254
302
319
334
324
349
375
298
332
296
279
272
306
335
319
306
303
302
291
326
320
315
281
280
280
250
295
275
251
258
239
226
228
211
212
208
248
227
233
233
239
227
271
282
280
293
247
226
248
254
244
208
242
205
201
230
219
245
219
220
208
201
220
206
224
218
210
216
214
229
260
251
236
234
208
182
175
219
198
251
225
219
311
346
318
324
273
256
262
256
261
291
275
282
294
308
372
319
247
249
333
323
289
305
292
370
365
280
287
299
320
286
318
321
304
295
292
256
263
262
306
273
272
243
278
260
281
286
269
250
244
259
340
271
230
221
203
195
211
200
226
233
265
249
208
189
233
214
201
216
236
241
284
270
262
253
268
276
283
350
349
367
357
324
312
319
318
307
291
280
221
262
246
243
236
300
240
285
257
206
209
195
233
222
181
169
205
167
164
174
175
200
209
230
241
252
229
239
201
220
283
274
229
232
271
278
243
232
247
290
325
270
269
282
231
270
259
227
242
237
241
260
247
234
246
294
269
244
202
195
253
259
251
244
233
278
221
229
227
259
224
255
226
231
241
295
290
291
290
291
242
217
230
238
251
249
258
261
237
209
185
184
236
258
207
192
201
223
225
266
206
224
241
291
313
331
331
323
330
314
295
247
231
236
240
223
234
271
339
235
234
261
259
250
300
273
238
231
257
300
263
257
329
310
329
289
253
242
214
266
281
272
296
267
278
262
251
245
269
248
227
283
258
280
263
249
266
284
315
294
261
254
310
304
324
296
296
290
272
334
299
288
297
284
237
217
290
304
325
335
337
332
336
330
340
283
249
277
292
242
256
274
292
305
308
287
314
301
270
258
259
238
249
225
295
328
306
304
235
299
326
373
283
293
279
342
341
275
348
288
216
209
210
212
227
222
227
215
246
216
260
290
359
305
244
264
279
252
319
309
280
208
213
264
214
219
263
274
284
362
321
318
307
308
259
244
316
247
235
266
246
250
213
200
196
167
201
223
272
281
246
231
237
202
270
238
250
253
237
238
245
227
214
218
264
299
360
246
191
181
174
169
173
198
204
220
211
366
279
243
235
251
230
227
231
250
256
257
256
293
302
285
223
221
270
284
303
270
282
298
281
307
357
361
265
256
239
242
255
227
199
226
225
217
237
237
208
205
216
228
267
281
247
201
191
249
278
269
283
198
258
205
207
247
198
181
231
233
212
230
224
279
217
221
206
219
187
198
192
180
176
186
193
244
204
282
265
199
284
243
184
237
202
186
222
211
182
196
213
219
187
201
195
198
204
197
213
216
217
223
247
232
220
214
202
200
223
191
203
235
235
191
184
228
242
209
216
205
214
245
211
210
212
202
229
276
237
235
182
204
206
218
258
266
297
203
193
157
162
164
155
207
225
286
209
174
198
190
230
227
269
269
257
248
211
207
203
217
336
223
226
231
255
238
266
264
269
246
258
273
321
321
274
242
249
249
243
269
252
303
299
212
242
268
272
302
312
304
302
298
333
343
310
303
292
281
258
280
292
318
317
301
289
277
279
285
263
270
307
298
287
258
289
266
214
190
193
183
211
250
239
269
249
331
328
333
345
328
256
234
236
316
219
254
248
260
247
245
210
187
180
172
161
232
186
190
177
171
175
180
268
190
223
218
187
257
222
231
229
228
235
201
220
232
215
190
284
197
203
255
257
218
223
217
176
209
245
243
225
230
240
253
241
235
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment