312
312
312
312
312
312
312
312
312
312
312
311
310
310
310
310
310
310
310
310
310
310
309
309
309
309
309
309
309
309
309
309
309
309
308
308
308
308
308
308
308
308
308
308
308
308
308
308
308
308
308
308
308
307
307
307
307
307
307
307
307
307
307
307
307
307
307
307
307
307
307
307
307
307
307
307
307
306
306
305
305
305
305
305
305
305
305
305
305
305
304
304
304
304
304
304
304
304
304
304
304
304
304
304
304
304
308
308
308
308
308
308
308
308
308
309
310
311
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
314
314
314
314
315
315
316
316
316
316
316
316
316
316
316
316
316
316
317
317
317
317
317
317
317
317
317
319
320
321
323
326
326
326
326
326
326
326
326
326
329
332
337
337
337
337
337
337
337
337
337
339
344
352
352
352
352
352
352
352
352
352
356
358
358
358
358
358
358
358
358
358
359
361
364
365
365
365
365
365
365
365
365
365
364
365
365
365
365
365
365
365
365
365
369
372
374
374
374
374
374
374
374
374
374
376
377
378
377
377
377
377
377
377
377
377
377
376
376
374
373
373
373
373
373
373
373
373
373
372
372
377
386
386
386
386
386
386
386
386
386
394
404
411
411
411
411
411
411
411
411
411
416
421
421
421
421
421
421
421
421
421
424
426
426
426
426
426
426
426
426
426
426
424
422
420
420
420
420
420
420
420
420
420
417
416
414
414
414
414
414
414
414
414
414
410
407
407
407
407
407
407
407
407
407
404
401
399
399
399
399
399
399
399
399
399
398
398
399
399
399
399
399
399
399
399
399
400
400
401
402
402
402
402
402
402
402
402
402
405
408
411
411
411
411
411
411
411
411
411
412
414
415
415
415
415
415
415
415
415
415
420
424
426
426
426
426
426
426
426
426
426
429
432
434
438
438
438
438
438
438
438
438
438
439
444
450
456
456
456
456
456
456
456
456
456
465
472
472
472
472
472
472
472
472
472
478
485
488
488
488
488
488
488
488
488
488
491
492
491
491
491
491
491
491
491
491
491
491
490
490
489
489
488
488
488
488
488
488
488
488
488
487
486
486
486
484
484
484
484
484
484
484
484
484
482
480
478
476
476
476
476
476
476
476
476
476
474
473
471
471
471
471
471
471
471
471
471
468
468
466
463
463
463
463
463
463
463
463
463
460
455
451
451
451
451
451
451
451
451
451
447
443
438
438
438
438
438
438
438
438
438
432
425
423
423
423
423
423
423
423
423
423
422
421
421
422
422
422
422
422
422
422
422
422
422
422
421
419
419
419
419
419
419
419
419
419
416
415
415
415
415
415
415
415
415
415
415
412
410
407
407
407
407
407
407
407
407
407
405
403
402
402
402
402
402
402
402
402
402
402
401
399
396
393
393
393
393
393
393
393
393
393
388
385
382
381
381
381
381
381
381
381
381
381
380
379
378
378
377
377
377
377
377
377
377
377
377
377
375
373
367
367
367
367
367
367
367
367
367
356
354
351
351
351
351
351
351
351
351
351
347
342
338
338
338
338
338
338
338
338
338
333
333
332
331
329
329
329
329
329
329
329
329
329
328
328
327
327
326
326
325
324
324
324
324
324
324
324
324
324
323
322
321
320
320
320
320
320
320
320
320
320
320
320
319
319
318
317
317
317
317
317
317
317
317
317
317
316
316
314
314
314
314
314
314
314
314
314
313
313
313
312
312
312
312
312
312
312
312
312
312
312
312