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