340
339
339
339
339
339
338
338
338
338
337
337
337
337
337
336
336
336
336
336
336
336
336
336
336
336
337
337
337
337
337
337
337
338
338
338
338
338
338
339
339
339
339
339
339
339
340
340
340
340
340
340
340
340
341
341
341
341
341
341
341
341
342
342
342
342
342
342
342
342
342
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
343
343
343
343
343
343
343
343
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
343
343
343
343
343
344
344
344
344
344
344
344
344
344
344
344
343
343
343
343
343
343
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
343
343
343
343
343
343
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
345
345
345
345
346
346
346
346
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
347
347
347
347
347
347
347
347
347
347
347
346
346
346
345
345
345
345
345
345
346
346
346
346
346
346
346
346
346
346
346
346
346
347
347
347
347
347
347
347
347
347
347
347
347
347
346
346
346
346
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
346
346
346
346
346
347
347
347
347
347
347
348
348
348
348
348
348
348
348
348
348
348
348
348
347
347
347
347
347
347
347
347
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
345
345
345
345
344
344
342
342
342
342
342
342
342
342
342
342
342
343
343
343
343
343
343
343
343
344
344
344
344
344
345
345
345
345
345
346
346
346
346
346
346
346
346
346
346
346
346
346
345
345
345
345
345
345
345
345
345
345
345
345
345
346
346
346
346
346
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
346
346
346
346
346
345
345
345
345
345
345
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
344
344
344
344
344
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
344
344
344
344
344
345
345
345
345
345
346
346
346
346
346
346
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
347
347
347
347
347
348
348
348
348
348
349
349
349
349
349
349
350
350
350
350
350
350
350
350
350
350
350
350
350
350
350
350
350
350
350
350
350
351
351
351
351
351
351
352
352
352
352
352
352
352
352
352
351
351
350
350
350
349
349
349
348
348
347
347
347
346
346
345
345
345
345
345
345
344
344
344
344
344
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
344
344
344
344
344
344
345
345
345
345
345
345
345
345
345
344
344
344
343
343
343
343
342
342
342
341
341
341
340
340
340
340
340
340
341
341
342
342
343
343
344
344
345
345
346
346
347
347
348
348
348
348
348
348
347
347
347
346
346
346
345
345
345
344
344
344
343
343
343
343
343
343
343
343
343
343
343
343
343
344
344
344
344
344
344
344
344
344
344
345
345
345
346
346
346
346
347
347
347
347
348
348
348
348
349
349
349
349
349
349
349
349
348
348
348
348
348
347
347
347
347
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
346
346
346
346
346
346
347
347
347
347
347
347
347
347
347
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
347
347
347
347
347
346
346
346
346
346
346
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
346
346
346
346
346
346
346
346
346
346
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
347
347
347
347
347
347
347
347
347
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
348
348
348
348
348
348
348
348
349
349
349
349
349
349
349
349
350
350
350
350
350
350
350
350
350
351
351
351
351
351
351
351
351
351
351
351
351
351
351
351
351
351
350
350
350
350
350
349
349
349
349
349
349
348
348
348
348
348
348
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
346
346
346
346
346
346
346
346
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
348
348
348
348
348
348
348
348
347
347
347
347
346
346
346
346
346
345
345
345
345
345
345
345
345
345
345
346
346
346
346
346
346
347
347
347
347
347
347
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
349
349
349
349
349
349
349
349
349
349
349
349
349
349
349
349
349
349
349
349
348
348
348
348
348
348
347
347
347
347
347
347
347
346
346
346
346
346
346
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
346
346
346
346
346
346
347
347
347
347
347
347
347
347
347
347
347
347
347
346
346
346
346
346
346
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
346
346
346
346
346
346
346
346
346
346
346
347
347
347
347
348
348
348
348
348
349
349
349
349
349
350
350
350
350
351
351
351
351
351
351
351
351
351
351
350
350
350
350
350
350
350
349
349
349
349
349
349
349
349
349
349
349
349
349
350
350
350
350
350
350
350
351
351
351
351
351
351
351
351
351
351
350
350
350
349
349
349
348
348
348
347
347
347
347
346
346
346
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
346
346
346
346
346
346
346
346
346
346
347
347
347
348
348
349
349
349
350
350
351
351
351
352
352
352
353
353
354
354
354
354
354
354
354
354
354
354
354
353
353
353
353
353
353
353
353
353
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
352
353
353
353
353
353
353
353
354
354
354
354
354
354
354
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
356
356
356
356
356
357
357
357
357
357
358
358
358
358
358
359
359
359
359
359
359
359
359
359
359
359
359
359
358
358
358
358
358
358
358
358
357
357
357
357
357
356
356
356
356
356
356
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
355
356
356
357
357
357
358
358
358
359
359
360
360
360
361
361
361
361
361
361
361
361
360
360
360
360
359
359
359
359
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
360
360
360
360
360
360
360
360
361
361
361
361
361
361
361
362
362
362
362
362
362
362
362
362
362
362
362
362
362
362
362
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
362
362
362
363
363
363
363
364
364
364
364
365
365
365
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
366
367
367
367
367
367
368
368
368
368
368
368
369
369
369
369
369
369
370
370
370
370
370
370
370
370
370
370
370
370
370
370
370
370
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
370
370
370
370
370
370
371
371
371
371
371
371
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
374
374
374
374
374
375
375
375
375
375
376
376
376
376
376
376
376
376
376
376
375
375
375
375
374
374
374
373
373
373
373
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
373
373
373
373
373
373
374
374
374
374
374
374
374
375
375
375
375
375
375
375
375
376
376
376
376
376
377
377
377
377
377
378
378
378
378
379
379
379
380
380
380
381
381
381
381
381
381
381
381
381
381
381
381
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
381
381
381
381
381
381
381
382
382
382
382
382
382
382
382
383
383
383
383
383
383
383
383
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
390
390
390
390
390
390
390
390
390
390
390
390
390
390
390
391
391
391
391
391
391
391
391
391
391
391
391
391
391
391
391
391
391
392
392
392
392
392
392
392
392
392
392
392
392
392
392
392
392
392
392
392
393
393
393
393
393
393
393
393
393
393
393
393
393
393
393
393
394
394
394
394
394
394
394
394
394
394
394
394
394
394
394
394
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
395
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
395
395
395
395
395
395
395
395
394
394
394
394
394
394
393
393
393
393
393
393
393
392
392
392
392
392
392
392
392
391
391
391
391
391
391
391
390
390
390
390
390
390
390
390
389
389
389
389
389
389
389
388
388
388
388
388
388
388
388
387
387
387
387
387
387
386
386
386
386
386
386
386
386
386
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
382
382
382
382
382
382
382
381
381
381
381
381
381
381
381
381
381
381
381
381
381
381
381
381
381
381
381
381
381
381
381
381
382
382
382
382
383
383
383
383
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
382
383
383
384
384
385
385
386
386
387
387
388
388
388
389
389
390
390
390
390
390
390
389
389
389
389
389
388
388
388
388
388
387
387
386
386
386
386
386
385
385
385
385
385
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
385
385
385
385
385
385
385
385
385
385
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
386
386
386
386
386
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
386
386
386
386
386
386
386
386
386
386
386
386
386
386
387
387
387
387
387
388
388
388
388
388
388
388
388
388
388
388
387
387
387
387
387
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
387
387
387
387
387
388
388
388
388
389
389
389
389
389
389
389
389
389
388
388
388
388
388
388
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
388
388
388
388
388
388
388
388
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
388
388
388
388
388
388
388
388
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
387
387
387
387
387
387
387
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
388
388
388
389
389
389
389
390
390
390
390
391
391
391
391
391
391
391
391
391
391
391
391
391
391
391
391
391
391
391
391
391
391
391
390
390
389
389
389
388
388
388
387
385
384
384
384
384
384
384
384
384
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
384
384
384
384
384
384
384
384
384
384
384
384
384
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
383
384
384
384
384
384
384
384
385
385
385
385
385
386
386
386
386
386
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
386
386
386
386
385
385
385
385
384
384
384
384
383
383
383
383
383
383
383
384
384
384
385
385
385
386
386
386
387
387
387
387
388
388
388
388
388
388
388
388
389
389
389
389
389
389
389
389
389
389
389
390
390
390
390
390
390
390
390
390
390
390
390
391
391
391
391
391
391
391
391
391
391
391
391
391
390
390
390
390
390
390
389
389
389
389
389
388
388
388
388
388
388
388
388
387
387
387
387
387
387
387
387
387
387
387
387
388
388
388
389
389
389
390
390
391
391
391
392
392
392
392
392
392
391
391
390
390
390
389
389
389
388
388
388
387
387
386
386
386
386
385
385
385
385
384
384
384
384
383
383
383
383
383
383
383
384
384
384
385
385
385
386
386
386
387
387
387
387
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
389
389
389
389
389
390
390
390
390
390
390
390
390
390
390
390
390
390
390
390
390
390
390
390
390
390
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
389
388
388
388
387
387
387
386
386
386
385
385
385
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
385
385
385
385
385
386
386
386
386
386
387
387
387
387
387
387
387
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
389
389
389
390
390
390
390
391
391
391
392
392
392
393
393
393
393
393
393
393
393
393
393
393
393
393
393
393
392
392
392
392
391
391
391
391
391
391
390
390
390
390
389
389
389
388
388
388
387
387
387
386
386
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
386
386
386
386
386
386
386
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
386
386
386
386
386
385
385
385
385
385
384
384
384
384
384
384
384
383
385
386
386
386
386
386
386
387
387
387
387
388
388
388
388
388
389
389
389
390
390
390
390
390
390
390
390
391
391
391
391
391
391
391
391
391
391
391
391
391
391
391
391
391
391
391
391
388
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
387
387
387
387
387
387
387
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
388
388
388
388
388
389
389
389
389
389
389
389
389
389
389
389
389
389
389
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
387
387
387
387
387
387
387
387
387
387
387
387
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
387
387
387
387
387
387
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
386
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
390
390
390
390
390
390
390
389
389
389
389
388
388
388
388
388
387
387
387
387
387
387
387
387
387
387
387
387
387
387
386
386
386
386
385
385
385
385
384
384
384
383
383
383
383
383
383
383
384
384
385
385
385
386
386
387
387
387
388
388
388
388
388
387
387
387
386
386
386
385
385
385
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
386
386
386
386
386
386
386
386
387
387
387
387
387
387
387
387
388
388
388
388
388
388
388
388
388
388
388
388
388
388
388
387
387
387
387
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
385
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
385
385
386
386
387
387
388
388
389
389
390
390
390
390
390
389
389
389
388
388
388
387
387
387
386
386
386
385
385
385
385
385
384
384
384
384
383
383
383
383
383
382
382
382
381
381
381
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
380
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
380
380
380
380
380
380
380
380
380
381
381
381
381
381
381
381
381
381
381
381
381
381
381
381
381
381
381
381
381
381
381
381
380
380
380
380
380
380
380
379
379
379
379
379
378
378
378
378
378
378
378
377
377
377
377
377
377
377
377
377
377
377
377
377
377
377
377
377
377
377
376
376
375
375
374
373
373
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
373
373
373
373
373
373
374
374
374
374
374
374
375
375
375
375
375
375
375
375
375
375
375
375
374
374
374
374
374
374
374
374
374
374
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
373
372
372
372
372
372
372
372
372
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
372
372
372
372
372
372
372
372
372
372
372
371
371
371
370
370
370
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
369
368
368
368
367
367
367
366
366
365
365
365
365
365
365
365
365
365
365
365
365
365
365
365
365
365
365
365
365
365
365
365
365
365
365
365
365
365
365
365
365
364
364
364
364
364
363
363
363
363
363
362
362
362
362
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
361
362
362
362
362
362
362
362
362
362
362
362
362
362
362
362
361
361
361
361
361
360
360
360
360
360
360
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
359
358
358
358
358
358
357
357
357
357
356
356
356
356
356
356
356
355
355
355
355
355
355
355
354
354
354
354
354
354
354
354
354
354
354
354
354
354
354
354
354
354
355
355
355
356
356
356
357
357
357
358
358
359
359
359
359
359
360
360
360
360
360
361
361
361
361
361
361
361
361
361
361
361
360
360
360
360
360
359
359
358
358
357
357
357
356
356
356
356
356
356
356
355
355
355
355
355
355
354
354
354
354
354
354
353
353
353
353
353
352
352
352
352
352
351
351
351
351
351
351
351
351
351
351
351
352
352
352
352
352
352
353
353
353
353
353
353
353
354
354
354
354
354
354
354
354
354
353
353
352
352
352
351
351
350
350
349
349
348
348
347
347
347
347
347
347
347
346
346
346
346
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
345
345
346
346
347
347
348
348
349
349
350
350
351
351
351
351
351
351
350
350
350
350
350
345
345
345
345
345
345
345
345
345
345
345
346
346
346
346
346
347
347
347
347
347
347
347
346
346
346
346
345
345
345
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
344
345
345
345
346
346
346
347
347
347
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
347
347
347
346
346
346
345
345
345
345
344
344
344
344
344
345
345
345
346
346
347
347
347
348
348
348
348
348
348
347
347
347
347
346
346
346
346
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
346
346
346
346
346
346
346
347
347
347
347
347
347
347
347
347
347
347
346
346
346
346
346
345
345
345
345
345
345
345
345
345
345
345
345
346
346
346
346
346
346
346
347
347
347
347
347
347
347
347
347
348
349
349
351
351
351
351
351
351
351
351
350
350
350
350
350
350
350
349
349
349
349
349
349
349
348
348
348
348
348
348
348
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
348
347
347
347
347
347
347
347
346
346
346
346
346
346
346
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
346
346
346
346
346
346
346
346
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
346
346
346
346
345
345
344
344
344
344
344
344
344
344
344
344
344
344
344
344
345
345
345
345
345
345
345
345
345
345
345
345
344
344
344
344
343
343
343
343
343
343
343
343
344
344
344
345
345
345
346
346
346
346
346
346
346
346
346
346
345
345
345
345
345
345
345
344
344
344
344
344
344
343
343
343
343
343
343
343
343
344
344
345
345
346
346
347
348
348
348
348
347
346
346
345
344
344
343
342
342
341
341
341
342
342
343
344
344
345
345
346
346
347
347
347
347
347
346
346
346
346
345
345
343
343
343
342
342
342
342
342
342
342
343
343
343
343
343
344
344
344
344
344
345
345
345
346
346
346
347
347
348
348
348
349
349
350
350
350
351
351
351
351
351
351
351
351
351
351
351
351
350
350
349
349
349
348
348
347
347
347
346
346
346
346
346
347
347
348
348
348
349
349
349
350
350
350
350
349
349
348
348
347
347
346
346
345
345
344
344
344
344
344
344
344
344
344
345
345
345
345
345
345
346
346
346
346
346
346
346
347
347
347
347
347
347
347
347
347
347
347
347
347
347
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
346
346
346
346
346
345
345
345
345
345
345
344
344
344
344
343
343
343
343
342
342
342
342
342
342
342
342
343
343
343
344
344
344
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
346
346
346
346
347
347
347
347
347
347
347
347
347
346
346
346
346
346
345
345
345
345
345
345
345
345
345
345
345
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
345
345
345
345
345
345
345
345
344
344
344
344
344
344
344
344
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
344
344
344
344
344
344
345
345
345
345
346
346
346
346
346
346
346
347
347
347
347
347
347
347
347
348
348
348
348
348
348
348
348
348
348
348
348
347
347
347
347
347
346
346
346
346
346
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
346
346
346
346
346
347
347
347
347
347
347
347
347
347
347
347
347
347
347
347
346
346
346
346
346
345
345
345
345
344
344
344
344
344
344
344
344
344
344
344
345
345
345
346
346
345
345
345
345
345
345
345
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
346
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
345
344
344
344
343
343
343
343
342
342
342
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
341
342
342
342
343
343
343
343
344
344
344
345
345
345
345
345
345
345
344
344
344
343
343
343
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
342
343
343
343
343
343
343
344
344
344
344
344
344
344
344
344
344
344
344
344
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
343
342
342
342
342
342
342
342
341
341
341
341
341
341
340
340
340
340
340
339
339
339
339
338
338
338
338
338
337
337
337
337
337
337
337
336
336
336
336
336
336
336
336
336
336
337
337
337
338
338
338
338
339
339
339
340
340
340
340
340
340
340
340
340
340
340
340
339
339
339
339
339
338
338
338
338
338
338
338
337
337
337
337
337
337
337
337
338
338
338
338
339
339
339
340
340
340
341
341
341
341
341
341
341
341
340
340
340
340
340
340
339
339
339
339
339
338
338
338
338
338
338
338
338
337
337
337
337
337
337
337
336