378
378
378
378
378
378
378
379
379
380
380
380
381
381
383
385
386
386
387
387
387
387
387
387
387
386
386
386
385
385
385
385
385
387
389
389
389
389
389
389
389
389
389
388
387
386
386
386
384
384
384
384
384
384
384
384
385
385
385
385
385
385
385
386
386
387
387
387
387
388
388
388
390
391
393
393
393
393
393
393
393
391
391
390
389
390
390
390
391
392
392
392
392
392
395
399
399
399
401
402
404
402
401
394
394
393
393
393
393
393
392
392
392
392
392
392
392
393
393
394
394
394
394
394
394
394
394
394
393
393
393
393
393
393
393
393
392
392
392
392
390
387
387
387
388
388
390
390
390
390
392
393
393
393
394
395
395
398
398
398
398
398
398
402
402
403
403
403
403
403
403
403
403
403
403
403
404
404
404
405
405
405
406
406
408
410
412
414
414
417
419
419
421
422
422
424
426
426
426
426
431
433
433
434
434
435
435
435
436
438
439
439
441
441
441
442
444
444
444
444
446
448
448
450
451
450
451
451
457
456
456
456
455
455
455
454
455
454
443
443
443
443
443
443
443
443
443
443
447
447
449
449
449
449
449
449
444
439
439
440
442
442
442
442
443
445
445
447
447
447
447
447
447
447
440
440
440
438
438
434
430
430
427
424
424
420
420
420
420
420
420
420
420
420
416
415
415
409
409
407
407
407
406
406
405
405
405
402
402
403
406
406
406
406
408
409
409
411
411
413
414
414
416
421
421
421
421
424
425
425
429
429
430
430
431
431
431
431
433
433
433
434
434
432
431
431
428
426
426
426
426
426
425
425
425
425
424
423
423
421
421
419
416
417
417
418
422
427
427
427
427
431
431
446
446
447
449
449
450
452
452
452
452
452
452
452
452
452
451
451
450
449
443
443
441
441
435
426
426
426
424
424
422
421
421
425
425
425
425
425
423
422
422
421
421
421
421
419
417
417
416
417
418
418
418
419
420
420
423
423
424
427
427
427
427
430
430
431
433
432
431
431
432
432
432
433
435
435
435
437
437
437
437
437
437
440
442
442
448
448
451
451
451
452
452
449
443
443
443
443
443
443
443
443
443
443
442
440
440
440
439
439
438
437
437
436
436
436
436
434
432
430
429
429
429
428
427
427
424
422
422
422
422
421
420
420
414
414
414
414
413
413
413
413
413
410
402
402
400
398
398
397
392
392
392
392
391
390
388
388
385
385
385
385
385
385
385
385
385
385
385
384
382
381
380
380
380
378
377
377
376
376
374
374
374
373
371
371
371
370
370
365
365
364
363
363
363
363
362
361
361
360
360
360
360
360
360
359
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
358
357
357
357
357
357
357
357
357
357
359
359
359
359
359
359
359
360
360
360
361
361
361
361
361
362
363
363
363
363
363
364
364
364
364
364
364
364
365
365
366
367
367
367
367
367
367
367
367
366
366
365
365
365
365
365
364
364
364
364
365
365
368
368
368
368
368
368
368
368
368
368
368
368
368
368
368
368
368
368
368
367
367
367
367
367
367
367
367
367
368
368
368
368
368
368
369
369
369
369
369
370
371
371
373
374
374
375
376
376
376
376
379
382
386
386
387
388
389
389
390
391
391
392
394
394
394
394
396
398
398
399
400
400
400
402
403
403
404
407
411
411
416
421
421
421
421
423
425
426
426
429
430
433
433
435
434
430
430
430
430
430
430
430
432
433
434
435
436
436
437
437
439
442
442
442
442
442
442
442
442
442
443
443
444
445
445
445
445
445
445
446
446
446
446
444
444
441
441
441
441
441
441
441
440
440
440
440
440
439
439
438
438
437
437
436
436
436
438
439
439
439
439
439
440
440
440
440
440
440
440
438
437
437
437
436
436
437
438
438
438
438
438
438
432
428
426
426
424
424
424
424
424
424
423
423
422
422
422
422
422
422
422
422
422
422
422
422
421
421
420
419
419
418
418
418
417
417
417
411
411
411
411
410
410
410
409
409
407
407
407
406
403
403
402
401
401
398
393
389
389
389
389
385
384
384
383
382
382
382
382
382
382
382
382
383
383
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
384
386
387
387
387
387
387
388
388
389
390
390
390
390
390
390
390
391
391
390
390
390
390
389
389
391
391
394
398
400
400
405
405
408
411
411
415
417
417
417
417
418
420
420
422
422
424
426
426
428
428
429
430
430
431
431
431
431
429
427
422
422
422
422
422
423
425
427
428
428
428
428
431
433
433
433
433
433
433
433
433
434
434
434
434
434
435
435
435
438
438
439
440
440
442
442
442
442
439
436
436
436
436
429
429
429
430
431
431
433
434
434
434
434
434
435
435
435
438
438
438
438
439
439
439
441
442
442
442
442
442
442
442
442
441
440
439
439
441
441
441
441
443
446
448
448
454
454
453
453
453
451
451
450
449
448
448
446
446
446
446
447
447
447
447
447
447
446
446
445
445
445
441
441
439
439
439
439
439
439
440
440
440
440
439
437
437
437
437
435
435
435
433
433
430
428
428
428
427
427
427
427
427
424
424
424
423
423
422
421
420
420
420
420
420
420
420
420
420
420
420
419
418
416
416
412
412
412
414
415
415
415
415
421
424
424
426
428
428
434
434
437
439
439
440
440
440
439
437
437
438
438
440
443
443
441
436
436
436
431
430
430
430
430
430
430
430
429
426
426
424
424
424
420
410
410
407
404
404
402
398
398
395
390
390
390
390
386
382
378
378
376
373
372
372
371
370
370
370
370
370
370
370
370
370
370
370
371
371
372
372
372
372
372
372
372
374
374
374
374
375
375
376
377
377
379
380
380
380
380
380
380
380
381
381
381
381
381
382
383
383
383
382
382
382
383
383
386
386
386
384
384
384
384
384
384
384
385
386
386
385
383
383
381
380
380
380
380
377
374
372
372
370
369
369
369
369
368
365
365
362
362
357
357
356
356
356
356
356
356
356
356
356
355
354
354
354
354
354
354
354
354
354
354
354
353
353
352
352
350
350
350
350
350
349
349
349
349
349
349
349
349
349
349
349
349
349
348
347
347
347
347
347
347
347
347
347
347
347
348
348
348
349
349
349
349
349
349
349
349
349
349
349
349
349
349
349
350
350
350
350
350
350
350
350
349
349
349
349
349
349
349
349
349
349
350
350
350
350
350
350
350
350
350
350
350
350
350
350
350
350
350
350
352
352
353
353
353
353
353
353
353
352
352
352
352
352
352
352
352
352
352
352
352
353
353
354
354
354
354
354
354
355
355
355
356
356
357
357
357
357
357
357
357
358
358
358
359
359
359
359
360
361
361
361
361
361
361
361
361
361
360
360
359
359
359
359
359
359
359
359
359
359
359
359
359
358
357
357
357
357
357
357
357
357
358
358
358
359
359
358
358
358
359
359
359
358
358
358
358
359
359
359
358
358
358
359
359
361
361
361
361
361
361
361
361
361
362
362
363
363
364
364
364
364
364
365
366
366
366
367
367
367
367
367
367
367
366
365
364
364
364
364
365
365
365
365
365
365
368
368
368
368
368
368
368
368
368
368
368
368
368
368
368
368
368
368
368
367
367
367
367
367
367
367
368
368
368
368
368
368
368
368
368
367
367
367
367
366
366
366
366
366
365
365
365
365
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
369
369
369
369
369
369
369
370
370
369
368
368
369
369
369
369
369
370
370
371
371
372
372
373
373
373
373
373
373
373
375
376
376
376
376
376
376
376
376
376
375
375
375
375
375
375
375
375
375
375
375
377
377
377
377
377
378
378
378
378
377
377
377
377
377
377
377
376
376
376
376
376
376
375
374
374
374
374
373
373
372
372
372
372
372
372
372
372
373
373
373
373
374
374
374
374
374
375
375
375
375
375
375
375
375
376
376
376
376
376
376
376
376
376
377
377
377
377
378
379
379
379
378
378
378
378
377