CAPE 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 9 13 16 18 22 27 31 33 32 29 27 26 25 26 26 26 25 25 25 24 24 25 25 25 25 26 28 31 33 35 36 38 39 40 42 43 43 44 44 45 46 47 48 49 50 52 52 54 54 55 54 53 52 50 49 47 46 46 45 45 45 45 45 46 46 46 46 45 43 42 40 39 39 38 38 37 36 35 34 33 32 31 30 29 29 28 28 29 29 28 26 23 21 20 20 18 16 16 17 17 18 18 18 18 19 20 22 23 24 24 24 24 25 25 25 25 25 25 25 25 25 26 27 28 29 30 30 30 29 28 26 24 23 23 22 21 19 17 16 16 15 15 15 15 15 14 14 13 12 11 10 9 8 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 7 11 14 17 20 23 25 25 23 22 20 20 21 23 26 27 28 28 28 27 27 26 25 25 24 26 28 30 32 33 35 37 38 40 41 42 43 44 44 45 46 46 48 49 50 50 52 53 54 54 54 53 52 50 49 48 47 46 46 45 45 45 45 46 46 46 46 44 43 41 40 39 39 38 37 36 35 34 33 32 32 30 29 29 28 29 29 28 27 25 22 21 20 20 19 18 18 18 19 19 19 18 18 19 20 22 23 24 25 25 25 25 25 25 25 25 25 25 25 25 26 26 28 28 29 30 30 29 28 26 25 24 23 23 22 20 18 17 16 16 15 15 15 14 14 14 13 13 12 11 10 8 8 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 7 8 9 10 11 12 12 13 13 13 14 16 18 21 24 27 29 28 27 26 24 24 23 24 25 26 28 30 32 34 36 38 39 40 41 42 43 44 45 46 47 48 48 49 50 51 52 53 53 53 53 52 51 50 49 48 46 46 46 46 46 45 46 46 45 44 43 42 41 40 39 38 37 36 36 34 33 32 31 30 30 29 29 29 29 28 26 24 22 22 21 21 20 18 18 19 20 21 20 19 19 19 20 22 23 24 25 25 26 26 26 25 25 25 25 25 25 25 25 26 27 27 28 29 29 28 27 26 25 24 24 23 22 21 19 18 17 16 16 15 15 14 14 14 13 13 12 11 10 9 8 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 2 2 3 4 4 5 6 7 8 10 13 17 21 24 25 24 22 22 23 23 24 24 25 26 28 29 31 33 35 37 38 40 41 42 44 44 46 46 47 48 49 49 50 51 51 52 52 52 52 52 51 50 49 48 47 46 46 46 46 46 45 45 44 43 42 41 41 40 39 38 37 36 35 33 32 31 30 30 29 29 29 28 27 25 23 23 23 23 22 20 18 18 20 21 21 20 20 19 19 20 21 22 23 24 25 25 25 26 26 26 26 25 25 25 25 26 26 26 27 28 28 28 28 27 26 25 24 23 23 22 22 20 19 18 17 16 16 15 15 14 14 13 13 12 11 10 9 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 2 3 5 8 11 14 17 18 18 18 19 21 24 25 25 25 26 27 28 30 31 32 34 36 38 39 40 42 43 44 45 47 48 49 49 49 50 50 50 51 51 52 52 51 51 50 49 48 48 47 47 47 46 46 45 44 44 43 42 41 41 40 39 37 37 36 35 33 32 31 30 29 29 28 27 26 24 23 23 24 23 22 19 18 18 19 20 21 21 20 19 18 18 19 20 21 22 23 24 24 25 26 26 26 26 26 26 26 26 27 27 27 28 28 28 28 28 27 25 25 24 24 23 22 21 20 19 18 17 17 16 16 15 14 14 13 12 12 10 9 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 6 8 11 13 14 16 17 20 23 25 26 27 27 28 29 30 30 31 32 33 35 36 38 39 40 42 43 45 46 48 48 49 49 49 50 50 50 51 51 51 50 50 50 50 49 48 48 47 47 46 46 45 44 43 43 42 41 40 39 38 37 36 35 34 33 32 31 29 28 27 26 25 24 23 24 24 23 21 18 17 16 17 19 20 19 18 18 17 16 16 17 19 20 22 23 23 24 25 26 26 26 27 27 28 28 28 28 28 28 28 29 29 29 28 27 27 26 25 24 23 22 21 20 19 18 17 17 16 16 15 14 14 13 12 11 10 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 6 8 10 12 14 16 19 21 23 25 27 29 30 30 30 29 29 30 32 33 34 36 37 39 40 42 44 45 46 47 47 48 49 50 50 50 50 50 50 50 50 50 50 49 48 48 48 48 47 46 45 43 43 42 41 40 39 38 37 36 36 35 34 33 31 30 29 28 26 25 24 24 24 24 23 21 18 16 15 15 16 17 16 16 15 14 14 14 14 16 18 20 21 22 23 24 25 26 27 27 28 28 29 29 30 30 30 29 30 30 29 29 29 29 28 27 26 25 24 23 21 20 19 18 18 17 17 16 15 15 14 13 12 10 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 6 8 10 12 13 14 16 19 22 25 26 27 27 27 27 28 28 30 31 32 34 35 37 39 40 41 42 44 45 46 47 48 49 49 49 49 49 49 49 49 49 49 49 48 48 48 48 47 46 44 43 42 42 41 40 38 38 37 36 35 34 33 32 30 29 28 27 25 24 24 23 23 22 20 17 14 13 12 12 12 11 11 10 10 10 10 11 13 15 18 20 21 22 23 24 25 26 27 27 28 29 29 30 31 31 30 30 30 30 30 30 30 29 29 28 27 26 24 23 21 20 20 19 19 18 17 16 16 15 14 13 11 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 5 6 8 9 11 13 16 19 21 23 23 24 24 25 25 26 28 29 31 32 34 35 36 37 38 40 41 43 44 46 47 47 48 48 48 48 48 49 49 49 49 49 49 48 48 47 47 45 44 43 42 41 40 39 38 38 37 36 35 34 32 31 29 28 27 25 24 24 23 23 22 19 16 13 10 9 8 8 8 8 8 7 8 8 8 10 12 15 17 19 20 21 22 24 25 26 26 27 28 29 30 30 30 30 29 29 29 29 29 30 29 29 29 28 27 26 24 23 22 21 20 20 20 19 18 17 16 15 13 12 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 5 7 9 11 13 16 18 20 20 21 21 22 23 25 26 28 29 31 32 33 34 35 36 38 40 41 43 44 45 46 46 46 47 47 47 48 48 49 49 49 48 47 47 47 46 45 44 43 42 41 40 39 38 37 37 35 34 32 31 29 28 27 26 25 24 23 23 22 20 16 12 8 5 5 8 11 11 10 8 7 8 8 9 10 12 14 16 17 18 20 22 23 24 25 26 26 27 28 29 29 29 29 28 28 28 28 28 28 28 28 28 27 27 26 24 23 23 22 22 21 20 19 18 16 15 14 12 11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 6 8 9 12 14 16 17 17 18 19 21 23 24 25 27 28 29 30 32 33 34 36 37 38 40 41 42 43 44 44 45 45 45 45 46 47 48 48 47 47 46 46 46 46 45 44 42 41 40 40 39 38 37 36 34 33 31 30 28 27 26 25 24 23 22 22 20 17 12 7 4 9 15 18 18 15 11 9 9 9 9 9 10 11 12 13 14 16 18 20 22 23 24 25 26 27 27 28 28 28 28 28 28 27 27 27 27 27 27 27 26 26 25 24 24 24 23 22 21 20 19 17 16 15 13 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 5 7 9 11 13 14 16 17 19 21 23 24 26 27 28 29 30 32 33 34 35 36 37 38 39 40 41 42 42 43 43 44 44 44 45 46 46 46 46 46 46 46 45 44 43 42 41 40 39 38 38 37 36 34 32 31 29 28 27 26 24 23 22 22 20 17 11 6 8 18 24 26 23 20 16 13 12 10 10 9 8 9 10 10 10 10 12 15 17 19 21 22 23 24 26 26 27 27 28 28 28 27 27 27 27 26 26 26 25 24 24 24 24 24 24 23 22 21 20 18 17 16 14 13 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 5 7 10 11 13 15 18 20 21 23 24 26 27 28 30 31 32 32 33 34 34 36 36 37 38 39 40 41 41 42 42 43 43 44 44 44 44 44 45 45 44 44 44 43 42 41 40 40 39 38 36 35 33 32 30 29 28 26 25 24 23 22 21 17 11 7 12 23 30 31 28 24 20 17 14 12 10 9 8 8 8 7 6 5 6 8 11 14 16 18 20 22 23 25 26 27 28 28 28 28 27 27 26 26 25 25 24 23 23 23 23 23 24 24 23 22 21 19 18 17 16 14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 6 8 11 13 15 17 19 21 22 24 26 28 29 30 30 30 30 31 32 33 34 35 36 37 38 39 39 40 40 41 41 42 42 42 42 43 44 44 44 43 43 43 43 42 41 40 40 39 38 36 35 33 32 31 29 27 26 25 24 23 21 17 12 8 14 25 33 35 33 32 28 24 20 16 14 11 9 8 8 6 4 3 3 4 7 9 11 13 16 19 21 23 24 25 27 28 28 28 28 27 26 26 25 24 23 22 22 22 22 22 23 23 23 22 21 20 19 17 16 15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 5 7 10 12 14 16 18 19 21 24 26 27 27 27 27 27 29 30 31 32 33 34 35 36 36 37 38 38 39 39 40 40 41 41 42 43 43 43 43 43 42 42 42 42 41 41 40 39 38 36 35 33 32 30 28 27 26 25 24 22 18 13 10 15 24 32 36 38 39 38 34 28 24 20 17 14 12 10 8 4 2 2 4 6 7 8 9 11 14 18 20 22 23 25 26 27 28 28 28 27 26 25 24 22 22 21 21 21 21 22 22 22 22 21 20 19 18 17 15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 5 7 9 11 13 15 18 20 23 23 24 25 25 27 29 30 31 32 33 34 34 35 35 36 36 36 36 37 37 38 39 40 41 41 42 42 42 42 42 42 42 42 42 42 41 41 40 38 36 34 33 31 29 27 26 25 24 22 19 15 12 16 23 30 36 40 43 45 43 39 34 29 25 22 19 16 12 8 6 5 6 7 8 8 9 10 12 14 17 19 21 22 24 25 27 27 27 27 26 24 23 22 21 20 20 20 20 20 20 20 20 19 19 18 17 16 15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 6 8 11 14 17 19 20 21 23 25 27 30 31 32 33 34 35 36 36 36 36 36 35 35 35 35 36 37 38 39 40 40 41 41 42 42 42 42 42 42 42 41 41 40 39 38 36 34 32 30 27 25 24 22 21 20 17 16 19 24 30 36 40 44 46 47 46 42 36 32 29 26 24 20 16 12 10 10 10 11 12 13 13 14 15 16 16 18 19 21 23 24 25 26 25 25 24 23 22 21 20 19 18 18 18 18 18 18 18 17 17 16 15 14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 6 9 13 15 16 18 21 24 27 30 31 32 33 35 36 37 38 38 38 37 36 36 35 35 34 35 36 37 37 38 39 40 41 41 41 41 41 42 42 42 41 41 40 39 37 35 33 31 28 25 23 21 20 19 18 19 23 27 33 38 42 43 44 46 47 45 41 37 34 33 30 27 23 19 17 15 15 16 17 18 18 19 20 20 19 17 17 18 20 22 23 23 23 23 22 22 21 20 19 18 17 17 16 16 16 16 16 16 16 15 14 13 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 7 10 12 16 19 22 25 27 29 30 32 33 35 36 38 38 39 39 39 38 37 36 36 35 35 35 36 36 37 38 39 40 40 41 41 42 42 42 42 41 41 40 38 37 35 32 30 27 24 21 19 17 16 20 25 32 38 44 46 44 43 42 42 42 41 40 40 39 38 35 30 26 24 22 21 21 21 22 22 23 24 25 24 21 18 16 18 20 21 21 21 21 21 20 19 19 18 17 16 15 15 14 15 15 15 15 14 14 13 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 7 11 15 18 21 23 25 27 29 30 32 34 35 37 38 39 40 40 39 39 38 37 36 35 35 36 36 37 38 38 39 40 40 40 41 42 42 42 41 40 40 38 36 34 32 29 26 22 20 17 16 18 24 33 44 52 52 48 43 39 38 38 40 42 45 47 47 45 42 38 34 30 28 26 24 24 25 25 26 27 28 26 22 18 16 18 19 19 20 20 19 18 18 17 17 16 15 15 14 14 14 14 14 14 14 13 13 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 6 9 12 15 18 20 23 25 27 28 30 32 34 36 37 39 39 40 40 40 39 38 37 36 36 36 36 36 37 38 38 39 39 39 40 40 41 41 41 41 40 38 37 35 32 29 25 22 19 16 16 21 30 44 55 57 52 46 40 39 40 43 47 50 53 55 54 52 48 42 37 34 30 27 26 26 26 26 27 29 29 26 21 16 16 16 18 19 19 18 18 17 17 16 15 15 15 14 14 14 14 14 14 14 13 13 13 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 6 9 12 15 18 20 22 24 26 28 30 33 34 36 37 37 38 39 39 39 39 38 38 36 36 36 36 36 37 37 37 38 38 39 40 40 41 41 40 40 39 37 35 32 29 25 22 18 17 19 26 39 53 57 53 46 43 46 50 53 55 57 60 61 61 59 56 51 44 39 34 30 28 28 29 29 28 29 29 28 23 17 14 14 16 18 18 18 18 17 17 16 16 15 15 15 15 14 14 14 14 14 14 14 14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 6 8 11 14 16 19 22 24 27 29 30 32 33 34 35 36 38 39 39 40 40 39 38 37 36 36 36 36 36 36 37 37 38 39 39 40 40 40 40 39 37 35 32 29 25 22 19 18 21 31 45 53 53 48 46 53 60 64 65 64 65 65 64 63 61 59 54 48 41 36 32 31 32 32 32 31 30 28 24 19 14 12 13 15 17 18 18 18 17 17 16 16 16 16 16 15 14 14 14 14 14 15 15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 3 5 7 9 12 15 18 21 24 25 27 28 30 31 33 35 36 38 40 41 41 40 39 37 36 35 35 35 35 36 36 36 37 38 38 38 39 40 40 39 37 35 32 29 26 22 19 18 23 33 43 48 48 50 62 71 73 71 70 69 68 67 66 65 64 63 58 52 45 40 36 34 35 35 34 32 29 26 21 16 12 11 13 14 16 16 17 18 18 17 17 17 17 16 16 15 14 14 14 15 15 16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 6 8 11 14 17 19 22 24 26 28 29 31 34 36 38 39 40 41 40 39 38 37 36 35 34 34 35 35 36 36 37 37 38 39 39 39 39 38 35 33 30 27 23 19 19 22 28 34 38 44 59 73 81 84 82 74 70 70 69 67 66 67 66 63 57 51 44 40 38 38 37 36 33 28 24 18 13 10 10 12 13 14 15 16 17 17 18 17 17 17 16 16 15 15 15 15 16 16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 4 7 10 13 16 19 22 24 26 29 31 33 35 37 38 39 40 40 40 39 38 36 35 34 34 34 34 35 36 37 38 38 39 39 39 38 37 36 34 31 28 23 20 18 18 20 23 28 42 60 76 85 87 85 82 78 72 66 64 66 68 68 67 62 56 51 47 44 42 40 37 32 27 22 16 10 8 9 10 12 13 15 16 16 17 17 17 16 16 16 16 15 15 16 16 16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 5 7 10 14 18 21 23 26 28 30 31 33 35 37 38 39 40 41 40 40 38 37 35 35 34 35 36 37 38 38 38 38 39 39 38 37 36 34 32 29 25 21 17 14 12 13 22 37 55 72 82 85 85 82 75 65 62 61 64 67 70 70 67 62 57 53 50 47 42 37 31 24 18 11 7 7 8 10 11 13 14 15 16 16 16 16 16 16 16 16 16 16 16 17 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 3 5 8 11 15 18 21 24 26 28 30 32 33 35 37 39 40 41 41 41 40 38 37 36 36 36 37 38 38 38 38 39 39 39 38 37 36 35 33 30 26 22 17 13 10 11 17 29 46 60 70 76 79 78 71 60 56 59 63 66 70 72 69 64 60 57 54 49 44 37 28 20 12 7 6 6 8 9 10 12 13 14 15 15 16 16 16 16 16 16 16 16 17 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 5 7 10 14 17 20 22 25 27 29 31 33 35 37 39 40 40 40 40 39 38 38 37 37 37 38 38 38 39 40 40 39 38 37 37 36 34 30 26 22 18 14 12 11 14 21 33 44 53 62 67 64 59 60 62 62 59 66 71 71 68 64 62 59 56 52 45 35 23 13 7 5 6 7 8 9 10 11 12 13 14 15 15 15 15 15 15 15 15 16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 3 4 6 8 11 14 18 20 23 26 29 31 33 35 37 38 39 40 40 40 39 39 38 38 38 38 38 39 40 40 40 40 39 38 38 37 34 30 26 22 19 16 13 12 12 16 21 29 38 46 46 45 48 54 60 61 62 66 68 67 64 62 60 58 57 53 44 29 16 8 5 5 6 7 7 8 9 10 11 12 13 14 14 14 14 14 14 14 14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 3 4 5 7 9 12 16 19 22 26 28 31 33 35 37 38 39 40 40 39 39 38 38 38 39 39 40 40 41 40 40 39 39 38 36 34 30 27 23 20 17 16 14 13 13 16 20 26 29 31 34 39 46 52 56 59 63 66 63 61 59 58 57 58 52 36 22 11 5 4 5 6 6 6 7 8 9 10 11 12 12 13 13 13 13 13 13 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 4 5 6 8 11 15 19 22 26 29 31 33 35 37 38 39 40 40 40 39 39 40 39 39 40 40 40 40 40 39 39 38 36 34 31 28 25 22 20 18 16 14 13 13 15 19 22 24 27 30 36 42 48 54 59 64 59 56 54 54 57 56 44 29 15 6 4 4 5 5 5 5 5 6 8 9 10 11 11 12 12 12 12 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 2 3 4 5 7 9 12 16 19 23 26 29 31 33 35 37 39 40 40 40 41 41 40 40 39 39 40 40 39 39 38 38 38 36 34 32 29 26 23 21 19 17 15 12 11 12 15 17 19 19 21 25 30 37 45 51 54 53 50 50 53 55 49 37 22 10 5 4 4 4 4 4 4 5 5 6 7 8 9 10 10 11 11 11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 2 3 5 6 8 11 14 17 20 23 26 28 31 34 36 38 39 40 41 42 42 41 41 40 40 39 39 39 38 38 37 37 36 34 32 30 27 25 22 20 18 15 12 9 9 9 11 11 11 12 15 19 26 33 40 43 45 46 46 52 52 46 32 18 8 5 3 3 4 4 4 4 4 5 6 6 7 8 9 9 10 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 4 6 7 10 12 14 17 20 23 26 29 32 34 36 38 40 41 42 42 42 41 41 40 39 38 38 38 37 36 36 35 34 33 32 30 27 24 21 18 16 12 9 7 7 7 6 6 6 8 12 18 24 29 33 36 37 44 50 51 43 28 16 8 4 4 3 4 4 4 4 5 5 6 7 8 8 9 9 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 5 6 8 10 12 15 17 20 23 26 29 32 34 36 38 40 41 41 42 41 40 40 39 39 38 38 37 36 35 35 35 35 34 32 29 26 23 20 17 14 11 8 6 5 5 4 4 6 10 15 20 24 25 26 30 38 46 49 39 26 15 8 4 4 4 4 4 4 5 5 6 7 8 8 9 9 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 5 6 8 10 12 15 18 20 23 26 29 32 34 36 38 39 40 40 41 40 40 39 38 38 38 37 36 35 35 36 36 35 34 31 28 25 22 19 16 12 9 7 5 4 3 4 6 9 14 18 21 21 22 25 32 39 39 31 21 13 7 5 4 4 5 5 5 6 6 7 7 8 9 10 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 5 7 8 10 13 15 18 21 24 27 29 32 34 36 37 38 39 40 40 39 39 38 38 38 37 36 36 35 35 35 35 34 32 30 27 24 21 17 14 11 8 6 5 4 5 6 9 13 18 20 21 21 23 27 30 28 24 17 10 7 6 5 5 6 6 6 6 7 7 8 8 9 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 4 6 8 11 13 16 19 22 25 27 30 32 33 35 36 37 38 38 38 38 38 38 37 37 36 35 34 34 34 34 34 32 30 28 25 22 20 16 13 10 8 6 5 5 6 7 12 16 19 21 22 23 24 24 22 18 13 9 7 6 6 6 6 7 7 7 7 8 8 9 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 4 6 8 11 14 17 20 22 25 27 29 31 32 34 35 35 36 37 37 37 37 36 36 35 35 34 34 34 33 32 32 30 29 27 24 22 19 16 12 10 8 7 6 6 7 9 13 16 20 22 24 24 22 19 14 11 8 7 7 7 7 8 8 8 8 8 8 9 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 5 7 10 13 16 19 22 24 26 28 30 31 32 33 34 34 35 35 35 35 35 35 35 34 33 33 32 31 31 30 29 28 26 24 21 18 15 12 10 8 7 7 7 7 9 13 17 20 23 24 22 17 12 9 7 7 7 8 8 9 9 9 9 9 9 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 6 8 12 14 17 20 22 25 27 29 30 31 31 32 33 33 34 34 34 34 34 33 32 32 32 31 30 30 29 28 27 25 22 19 17 14 12 11 9 8 8 7 7 9 13 17 20 21 19 15 11 8 7 7 8 8 9 10 10 10 10 10 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 3 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 6 9 12 15 17 20 23 25 27 28 29 30 31 32 32 32 32 32 32 32 32 32 31 30 30 29 29 29 28 26 24 21 18 16 14 13 11 10 9 8 7 8 9 12 16 17 16 13 9 7 7 7 8 9 9 10 10 10 11 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 4 7 10 12 15 18 20 23 25 27 28 29 30 30 31 31 31 31 31 31 31 30 30 29 29 29 29 28 26 25 22 20 19 17 15 14 12 11 9 8 7 7 9 11 12 12 9 8 7 6 7 7 8 9 9 10 10 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 5 8 10 13 15 18 21 23 26 27 28 29 29 29 29 29 30 30 30 30 30 29 29 29 29 28 27 25 24 23 21 19 17 16 14 12 11 9 8 8 8 8 9 8 7 6 6 6 6 7 7 8 8 9 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 6 8 11 14 16 20 22 25 26 27 28 28 27 28 28 28 29 29 30 29 29 29 28 28 27 26 25 24 23 22 20 18 16 14 13 11 10 9 8 8 8 7 6 6 6 6 6 7 7 8 8 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 0 0 0 0 0 0 0 0 0 1 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 4 7 9 13 16 19 22 24 25 26 26 26 26 26 27 28 28 29 29 29 29 28 28 27 27 26 26 25 24 22 20 18 16 15 13 12 11 9 8 8 7 6 6 6 6 6 7 7 8 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 4 3 0 0 0 1 2 3 2 3 4 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 6 9 12 15 18 20 22 23 24 24 25 25 25 26 27 28 29 29 29 29 28 28 28 27 26 26 25 24 23 21 18 16 15 13 12 11 10 9 8 7 6 6 6 6 7 8 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 5 1 0 0 3 6 7 6 6 6 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 7 9 9 7 4 2 0 0 0 0 1 2 2 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 5 8 12 15 17 20 21 22 23 24 23 24 24 25 26 27 28 29 29 29 29 28 27 27 26 26 26 24 22 20 18 16 14 13 12 11 10 9 8 7 7 7 7 8 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 4 1 1 4 7 8 7 5 4 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 4 3 2 3 3 3 1 0 0 0 0 0 0 6 8 8 6 2 1 0 0 0 0 0 0 0 0 1 2 3 4 4 4 4 3 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 5 8 11 14 17 19 20 22 22 22 22 22 22 24 25 27 28 29 29 29 28 28 27 27 27 27 26 24 22 19 17 15 14 14 13 12 11 10 9 8 8 9 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 2 0 0 0 0 0 0 0 0 0 2 3 3 2 0 0 0 0 2 5 7 7 4 4 5 5 4 2 0 0 0 0 0 0 3 4 3 2 0 0 0 0 0 0 0 0 0 0 0 1 1 3 6 10 14 17 16 12 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 1 0 0 0 0 0 0 0 0 0 2 3 0 0 0 0 0 0 0 0 0 0 0 0 1 1 2 2 2 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 5 8 11 14 16 18 19 19 19 19 19 20 21 23 24 26 28 29 29 29 29 28 28 28 27 26 25 23 21 19 17 16 16 16 15 14 13 11 10 10 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 9 15 14 8 3 0 0 0 3 5 5 4 2 2 3 3 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 6 10 16 21 24 23 17 9 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 6 5 2 1 0 0 0 0 2 5 8 12 13 7 2 0 0 0 0 0 0 0 0 1 3 4 5 7 8 8 6 4 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 5 7 10 12 14 15 16 16 16 17 17 18 20 22 24 26 28 29 30 30 29 29 28 28 27 26 24 23 21 20 19 18 18 18 17 15 14 12 11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 13 24 26 18 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 10 16 23 29 31 28 17 7 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 10 12 10 7 3 1 1 4 6 11 16 20 22 19 12 6 2 0 1 0 0 0 1 3 7 9 11 12 14 14 14 12 9 5 2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 6 8 10 12 13 14 14 14 15 16 17 20 22 24 26 28 29 30 30 30 30 29 28 27 26 25 23 22 21 20 20 20 19 17 16 14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 10 22 27 20 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 10 16 24 32 38 32 19 8 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 11 16 18 16 11 6 3 5 12 18 23 26 26 23 18 14 11 7 5 4 3 2 2 5 8 11 13 15 18 19 19 17 14 11 8 4 3 4 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 6 7 9 10 11 12 12 13 14 16 17 19 22 25 27 28 29 30 30 30 30 30 29 28 26 25 24 23 22 22 22 21 19 17 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 13 16 12 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 10 16 24 31 31 24 14 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 6 14 22 24 21 15 10 8 13 24 31 32 28 22 16 14 14 13 11 8 6 6 5 7 9 12 13 14 15 15 15 14 12 12 10 8 6 5 6 6 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 4 5 6 8 9 10 11 12 12 14 15 17 20 23 25 27 28 28 29 30 30 30 30 29 27 26 25 24 24 24 24 22 21 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 5 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 6 9 13 17 20 20 17 13 7 4 1 0 0 0 0 0 0 0 0 0 0 2 8 16 24 27 24 20 16 16 22 31 34 30 23 15 11 12 14 13 10 7 6 6 8 9 11 12 11 10 10 9 9 8 8 8 8 7 6 6 8 8 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 2 3 4 5 7 8 10 10 11 12 13 16 18 21 23 25 26 27 28 29 30 30 30 29 28 26 26 26 26 26 25 24 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 3 4 5 7 9 11 14 16 14 11 6 3 1 0 0 0 0 0 0 0 1 4 10 18 26 31 30 28 24 22 21 20 19 17 14 12 12 13 13 10 6 3 4 5 7 8 9 8 6 4 4 3 3 4 4 5 5 5 4 5 7 7 6 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 5 5 5 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 2 2 2 3 5 7 8 9 10 10 12 15 17 20 22 24 25 26 27 28 29 29 29 28 28 27 27 27 27 27 27 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 8 11 13 15 13 9 6 3 2 1 0 0 0 1 3 7 13 22 32 38 38 32 23 15 9 6 7 9 11 13 16 14 9 4 0 0 1 3 4 4 4 3 1 0 0 0 0 1 2 2 2 2 2 2 4 5 6 6 5 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 4 6 7 8 9 9 7 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 2 3 4 5 7 8 9 10 12 14 16 18 21 23 24 26 27 27 28 28 28 28 28 28 28 28 29 29 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 10 12 12 12 10 8 5 4 3 3 4 7 11 19 29 40 45 38 25 13 5 2 1 2 5 10 15 17 11 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 5 6 2 0 0 0 0 0 0 0 0 0 0 1 2 3 4 9 12 13 14 13 11 8 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 2 2 2 3 3 4 5 7 8 9 10 12 15 18 21 23 24 26 26 27 27 27 27 27 28 28 29 30 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 7 10 13 14 14 13 12 12 12 14 18 27 37 44 40 25 12 4 0 0 0 0 3 8 14 14 7 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 1 0 0 0 0 0 0 0 0 0 5 8 11 14 16 18 17 16 14 11 7 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 3 4 4 3 3 3 4 5 7 8 10 12 14 17 20 22 24 26 27 27 27 27 27 27 28 29 30 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 7 11 14 17 20 21 21 23 26 32 36 33 19 8 2 0 0 0 0 0 3 8 12 10 5 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 12 14 16 17 16 14 11 8 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 4 4 4 3 2 2 3 5 7 9 11 14 16 19 22 24 26 28 28 28 27 27 27 28 30 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 8 12 15 19 23 25 25 22 15 8 1 0 0 0 0 0 0 1 3 7 9 7 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 8 9 9 8 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 4 5 4 3 2 2 2 4 6 9 11 14 16 18 22 25 27 29 29 28 27 26 27 28 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 6 8 9 9 6 3 1 0 0 0 0 0 0 0 0 2 5 7 6 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 3 3 2 1 1 2 3 5 8 11 14 16 19 22 26 28 29 28 28 26 26 27 28 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 2 1 0 0 0 0 0 0 0 0 0 3 6 7 6 4 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 2 2 2 2 3 5 8 11 14 17 20 24 27 28 29 28 27 26 26 27 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 8 8 6 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 3 3 4 6 8 11 15 19 23 25 27 28 28 27 25 25 26 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 7 10 9 6 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 4 5 6 8 10 13 16 20 24 26 27 27 26 25 24 25 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 11 9 5 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 6 7 8 10 12 14 18 21 24 26 26 24 23 23 24 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 10 8 5 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 5 7 9 11 12 14 16 18 21 23 24 23 22 22 23 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 7 6 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 6 8 10 12 13 15 16 18 20 21 22 22 22 23 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 6 8 10 12 13 14 16 17 19 21 22 24 25 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 8 10 11 12 14 15 17 20 22 24 26 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 6 8 9 11 13 16 19 22 24 26 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 5 7 8 10 14 18 21 24 26 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 5 7 8 11 15 20 24 27 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 7 8 10 13 18 23 27 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 7 9 11 13 16 21 26 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 6 9 12 14 17 21 26 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 3 6 8 11 15 19 23 27 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 5 7 10 14 19 23 28 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 6 7 9 11 17 22 27 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 5 7 8 9 11 15 20 26 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 6 10 11 11 11 12 16 21 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 11 16 17 15 13 13 15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 12 19 22 22 19 15 13 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 11 20 27 29 28 23 18 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 10 21 29 34 36 33 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 11 22 31 37 40 39 41 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 12 21 30 37 41 40 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 10 18 27 35 40 39 38 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 8 14 22 29 35 34 32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 10 16 22 27 29 29 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 8 13 17 20 23 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 6 6 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Wind_Speed nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 16 16 16 16 16 16 16 16 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 17 17 17 17 17 18 18 18 18 18 18 18 18 18 18 18 18 18 18 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 15 15 15 15 15 15 15 16 16 16 16 16 16 16 16 16 16 16 17 17 17 17 17 16 16 16 16 16 16 16 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 14 14 15 15 15 15 15 15 15 15 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 15 15 15 15 15 15 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 16 16 16 16 16 16 16 17 17 17 17 17 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 14 14 15 15 15 15 15 15 15 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 18 18 18 18 18 18 18 18 18 18 18 18 18 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 14 14 14 14 15 15 15 15 15 15 15 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 18 18 18 18 18 18 18 18 18 18 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 16 16 17 17 16 16 16 16 16 17 17 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 14 14 14 14 14 14 15 15 15 15 15 15 16 16 16 16 16 16 16 16 16 16 16 16 16 16 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 18 18 18 18 18 18 18 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 15 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 13 14 14 14 14 14 14 15 15 15 15 16 16 16 16 16 16 16 16 16 17 17 17 17 16 16 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 16 16 16 16 16 15 15 15 15 15 15 15 15 15 15 15 15 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 13 14 14 14 14 14 15 15 15 15 15 16 16 16 16 16 16 17 17 17 17 17 17 16 16 16 16 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 nan nan nan nan nan nan nan nan nan nan nan 16 16 16 16 16 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 13 13 14 14 14 15 15 15 15 15 15 16 16 16 16 16 16 16 17 17 16 16 16 16 16 16 16 16 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 nan nan nan nan 16 16 nan nan nan nan nan nan nan 16 16 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 13 13 14 14 14 14 15 15 15 15 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 nan nan nan 16 16 16 16 16 nan nan nan nan nan nan 16 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 13 13 14 14 14 14 14 15 15 15 15 15 16 16 16 16 16 16 16 16 16 16 16 16 16 16 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 16 16 16 16 16 16 16 16 16 16 16 15 15 15 15 15 15 15 15 15 nan nan 15 15 15 15 15 15 15 15 16 nan nan nan nan nan nan nan 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 13 13 13 13 14 14 14 15 15 15 15 15 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 17 17 17 17 17 17 17 17 17 17 17 17 17 16 16 16 16 16 16 16 16 16 16 15 15 15 15 15 15 15 15 15 15 15 nan 15 15 15 15 15 15 15 15 15 15 15 nan nan nan nan nan nan nan nan nan 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 12 13 13 13 13 14 14 14 14 15 15 15 15 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 15 15 15 15 15 15 15 15 15 15 15 15 nan 15 15 15 15 15 15 15 15 15 15 15 15 nan nan nan nan nan nan nan nan nan nan 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 12 12 13 13 13 13 14 14 14 15 15 15 15 15 15 15 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 15 15 15 15 15 15 15 15 15 15 15 15 nan 14 14 14 14 14 14 14 15 15 15 15 15 15 15 15 nan nan nan nan nan nan nan nan nan 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 14 14 14 14 14 15 14 14 14 14 15 14 14 14 14 15 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 12 12 12 13 13 13 14 14 14 15 15 15 15 15 15 15 15 15 15 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 15 15 15 15 15 15 15 15 15 15 14 14 14 14 14 14 14 14 14 14 14 14 14 14 15 15 15 15 15 nan nan nan nan nan nan nan nan 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 12 12 12 13 13 13 14 14 14 14 14 14 14 14 15 15 15 15 15 15 15 15 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 15 15 15 15 15 15 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 15 15 15 15 14 14 nan 14 14 15 15 15 15 15 15 15 15 15 15 15 15 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 12 12 12 12 13 13 13 13 13 14 14 14 14 14 14 14 14 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 15 15 15 15 15 15 15 15 15 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 11 12 12 12 12 13 13 13 13 13 13 14 14 14 14 14 14 14 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 14 14 14 14 14 14 14 14 14 14 14 13 13 13 13 13 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 15 15 15 15 15 15 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 15 15 14 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 11 11 11 12 12 12 13 13 13 13 13 13 13 13 13 13 14 14 14 14 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 14 14 14 14 14 14 14 14 14 14 13 13 13 13 13 13 13 13 13 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 15 15 15 14 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 11 11 12 12 12 13 13 13 13 13 13 13 13 13 13 13 14 14 14 14 15 15 15 15 15 15 15 15 15 15 15 15 15 15 14 14 14 14 14 14 14 14 14 14 14 14 14 14 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 11 12 12 12 13 13 13 13 13 13 13 13 13 13 13 13 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 12 12 12 13 13 13 13 13 13 13 13 12 13 13 13 13 13 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 13 14 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 13 13 13 13 13 13 13 12 12 12 12 13 13 13 13 13 13 13 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 13 13 13 13 13 13 13 13 13 13 13 13 13 13 12 12 12 12 12 12 12 12 12 13 13 13 13 13 13 13 13 13 13 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 13 13 13 12 12 12 12 12 12 12 12 12 12 13 13 13 13 13 13 13 14 14 14 14 14 14 14 14 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 13 13 13 13 13 14 14 14 14 14 14 14 14 14 nan 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 13 13 13 13 14 14 14 14 14 14 14 14 nan nan nan 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 13 13 13 13 13 13 13 13 13 13 13 13 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 13 13 13 13 14 14 14 14 14 14 14 14 nan nan nan nan 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 11 11 11 11 11 11 11 11 11 11 11 11 11 12 12 12 12 12 12 13 13 13 13 13 13 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 11 11 11 11 11 11 12 12 12 12 12 12 12 13 13 13 13 13 13 14 14 14 14 14 14 nan nan nan nan nan 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 11 11 11 11 11 11 11 11 11 11 12 12 12 12 12 12 13 13 13 13 13 13 14 14 14 13 nan nan nan nan nan nan nan 14 14 14 14 14 14 14 14 14 14 14 14 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 12 12 11 11 11 11 12 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 12 12 12 12 13 13 13 13 13 13 13 13 13 nan nan nan nan nan nan nan nan 14 13 14 14 14 14 14 14 14 14 14 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 10 11 11 11 11 10 10 10 10 11 11 11 11 11 11 11 11 11 12 12 12 12 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 12 12 12 12 13 13 13 13 13 13 13 13 13 nan nan nan nan nan nan nan nan nan 13 13 13 13 13 13 14 14 14 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 10 10 10 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 12 12 12 12 12 13 13 13 13 13 13 13 nan nan nan nan nan nan nan nan nan nan nan nan 13 13 13 13 14 14 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 10 10 10 10 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 10 10 10 11 11 11 11 11 11 11 12 12 12 12 13 13 13 13 13 13 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 13 14 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 9 10 10 10 10 10 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 10 10 10 10 nan nan nan 10 10 11 11 11 11 11 12 12 12 12 12 13 13 13 13 13 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 10 10 10 10 10 10 10 10 10 10 10 10 10 nan nan nan nan nan nan nan nan 11 11 11 12 12 12 12 12 12 12 13 13 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 nan nan nan nan nan nan nan nan 11 11 12 12 12 12 12 12 12 12 13 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 nan nan nan nan nan nan nan nan 11 11 11 12 12 12 12 12 12 12 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 nan nan nan nan nan nan nan 11 11 11 11 12 12 12 12 12 12 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 nan nan nan nan nan nan 11 11 11 11 11 12 12 12 12 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 9 10 10 10 10 9 9 9 9 9 9 10 nan nan nan nan nan nan nan 11 11 11 11 11 12 12 12 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 nan nan nan nan nan nan 11 11 11 11 11 12 11 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 9 nan nan nan nan nan nan 11 11 11 11 11 11 11 nan nan nan nan nan nan nan nan 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 nan nan nan nan nan 11 11 11 11 11 nan nan nan nan nan nan nan nan 12 12 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 nan nan nan nan nan 11 11 11 nan nan nan nan nan nan nan nan nan nan 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 17 16 16 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 18 17 17 16 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 20 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 16 16 17 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 19 18 17 17 16 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 19 19 nan nan nan nan nan nan 20 20 20 21 21 21 nan nan nan nan nan nan nan nan nan nan nan 20 19 19 19 19 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 17 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 19 19 18 17 16 16 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 19 19 19 19 nan nan nan 20 20 20 20 21 21 21 22 22 nan nan nan nan nan nan nan nan 20 20 20 20 20 20 20 20 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 17 18 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 20 20 19 19 18 17 16 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 19 19 20 20 nan nan 20 20 20 20 21 21 21 22 22 22 22 nan nan nan nan nan nan 21 21 21 21 21 22 22 22 21 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 20 20 20 19 18 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 19 19 19 20 20 20 20 20 20 20 21 21 22 22 22 22 22 22 nan nan nan nan nan 22 22 22 22 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 20 20 19 17 16 nan nan nan nan nan nan nan nan nan nan nan nan 18 19 19 20 20 20 20 20 21 21 21 22 22 22 22 22 22 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 21 20 18 17 nan nan nan nan nan nan nan nan nan nan nan 19 19 19 20 20 20 21 21 nan nan nan nan 22 22 22 23 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 20 19 18 17 nan nan nan nan nan nan nan 18 19 19 20 20 20 21 21 nan nan nan nan nan nan 22 23 23 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 22 22 22 22 22 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 20 19 19 18 18 18 18 18 18 19 19 20 20 21 21 21 nan nan nan nan nan nan nan 23 23 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 22 22 22 23 23 23 23 23 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 21 20 20 19 19 19 19 19 20 21 21 21 nan nan nan nan nan nan nan nan nan 23 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 23 23 23 23 23 23 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 22 21 21 21 21 21 21 22 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 9 9 9 9 9 9 9 9 9 9 9 9 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 9 9 9 9 9 9 9 9 9 9 9 8 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 9 9 9 9 9 9 9 8 9 8 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 8 9 9 9 9 8 8 8 8 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 8 8 9 9 9 9 8 8 8 8 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 8 8 9 9 9 9 9 8 9 8 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 8 8 8 9 9 9 9 9 9 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 8 8 9 9 9 9 9 9 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 9 9 9 9 9 9 9 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 9 9 9 9 9 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 9 9 9 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 9 9 9 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 10 10 10 9 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 10 10 10 10 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 10 10 10 10 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 10 10 10 10 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 10 10 10 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 11 11 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 11 11 11 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 12 12 12 12 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 13 13 13 13 13 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 15 14 14 14 14 13 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 16 15 15 15 14 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 20 18 17 17 16 16 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 22 21 20 19 18 18 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 24 23 22 21 20 20 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 24 24 23 23 22 22 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 24 24 24 24 23 23 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 25 25 25 24 24 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 25 25 25 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan Wind_Direction nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 103 103 103 103 103 103 102 101 100 99 99 99 99 98 98 98 98 98 98 98 98 98 98 99 99 99 99 99 99 99 98 98 98 98 97 97 96 96 96 96 96 96 95 95 95 95 94 94 94 94 94 93 93 93 93 93 93 93 93 93 93 93 92 92 92 92 92 92 92 92 92 92 92 93 93 93 93 94 94 94 94 94 94 94 94 94 94 94 94 94 94 93 93 93 92 92 92 92 92 92 92 92 92 92 92 92 92 92 92 92 92 92 92 92 92 91 91 91 91 91 91 91 91 92 92 92 92 92 92 92 91 91 91 91 91 91 91 90 90 90 90 90 90 90 90 90 90 90 90 90 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 106 106 106 106 106 106 104 103 103 102 101 101 101 101 101 101 100 100 99 99 99 99 99 99 99 99 99 99 99 99 99 99 98 98 98 97 97 96 96 96 96 96 95 95 95 95 94 94 94 94 94 93 93 93 93 93 93 93 93 93 92 92 92 92 92 92 92 92 92 92 92 92 93 93 93 93 94 94 94 94 94 95 95 95 95 95 95 94 94 94 94 94 93 93 93 93 92 92 92 92 92 92 92 92 93 93 93 93 93 93 93 93 92 92 92 92 91 91 91 91 92 92 92 92 92 92 92 92 92 92 91 91 91 91 91 91 90 90 90 90 90 90 90 90 90 90 90 90 90 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 109 108 107 106 105 104 104 104 104 104 103 102 102 101 101 100 100 100 100 100 100 100 99 99 99 99 99 98 98 98 98 98 97 97 97 97 96 96 95 95 95 95 95 94 94 94 94 93 94 93 93 93 93 93 93 92 92 92 92 92 92 92 92 92 92 92 92 92 93 93 93 94 94 94 94 95 95 95 95 95 95 95 95 95 95 95 94 94 94 94 93 93 93 92 92 92 92 93 93 93 93 93 93 93 93 93 93 93 92 92 92 92 92 92 92 92 92 92 92 92 92 92 92 92 92 91 91 91 91 91 91 91 90 90 90 90 90 90 90 90 90 90 90 90 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 107 106 106 105 104 103 102 102 101 101 100 100 100 100 100 100 99 99 99 98 98 98 98 98 98 98 98 97 97 96 96 95 95 95 95 95 95 94 94 94 94 94 94 93 93 93 93 92 92 92 92 92 91 91 92 92 92 92 92 93 93 93 93 93 94 94 94 95 95 95 95 95 95 95 95 95 95 95 95 94 94 94 94 93 93 93 93 93 93 93 93 93 93 93 93 93 94 94 93 93 93 93 93 92 92 92 92 92 92 92 92 92 92 92 92 92 92 91 91 91 91 91 91 91 90 90 90 90 90 90 90 90 90 90 90 90 90 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 108 107 106 105 104 103 103 103 102 102 102 101 101 100 100 99 99 98 98 98 98 98 98 98 98 97 97 97 96 96 95 95 95 95 95 95 94 94 94 94 94 94 93 93 93 92 92 92 92 91 91 91 91 92 92 92 93 93 93 93 93 93 94 94 94 94 95 95 95 95 95 95 96 96 95 95 95 95 95 95 94 94 93 93 93 93 93 93 93 94 94 94 94 94 94 94 94 94 94 93 93 93 93 93 93 92 92 92 92 92 92 92 92 92 92 91 91 91 91 91 91 91 90 90 90 90 90 90 90 90 90 90 90 89 89 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 109 108 106 106 105 104 104 104 103 102 102 102 101 101 99 99 98 98 98 98 98 98 97 97 97 96 96 96 96 96 95 95 95 95 95 94 94 94 94 94 94 93 93 92 92 92 92 91 91 91 91 92 92 92 92 93 93 93 93 93 93 94 94 94 95 95 95 95 95 96 96 96 95 95 95 95 95 95 94 94 94 93 93 93 93 94 94 94 94 94 94 94 94 94 94 94 94 94 94 94 94 93 93 93 93 93 93 93 93 93 93 93 92 92 91 91 91 91 91 91 91 90 90 90 90 90 90 89 89 89 89 89 89 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 109 108 107 107 106 106 105 104 104 103 102 102 101 100 99 99 99 98 98 98 97 97 96 96 96 96 96 96 96 95 95 95 95 95 95 94 94 94 94 93 93 92 92 92 92 92 91 91 91 92 92 92 92 92 93 93 93 93 93 94 94 94 95 95 95 95 95 96 96 96 95 95 95 95 95 95 94 94 94 93 93 94 94 94 94 94 94 94 94 94 94 94 94 94 94 94 94 94 94 94 94 94 94 94 93 93 93 93 93 93 93 92 92 92 91 91 91 91 91 91 90 90 90 90 90 89 89 89 89 89 89 89 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 109 108 108 107 106 105 105 104 103 103 101 100 100 99 99 99 98 97 97 96 96 95 95 95 95 95 95 95 95 95 95 95 95 95 94 94 93 93 92 92 92 92 92 92 92 92 92 92 92 92 92 93 93 93 93 93 94 94 94 95 95 95 95 96 96 96 96 95 95 95 95 95 95 95 94 94 94 94 94 94 94 94 94 94 94 94 94 94 95 95 95 95 95 94 94 94 94 94 94 94 94 94 94 94 94 94 93 93 93 92 92 92 92 91 91 91 91 91 90 90 90 90 90 89 89 89 89 89 89 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 109 108 108 107 106 105 104 103 102 101 100 100 99 98 97 97 96 95 95 95 95 95 95 95 95 95 95 95 95 95 95 94 94 93 93 93 92 92 92 92 92 92 92 92 92 92 92 93 93 93 93 93 93 94 94 94 95 95 95 95 96 96 96 96 96 96 95 95 95 95 95 nan nan nan nan nan nan nan nan nan nan nan 94 94 94 94 94 95 95 94 94 94 94 94 94 94 94 94 94 94 94 94 94 94 94 93 93 92 92 92 92 91 91 91 91 91 91 91 90 90 90 90 89 89 89 89 90 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 110 109 108 107 106 104 103 102 102 100 100 99 98 97 96 96 95 95 94 94 94 94 94 94 94 94 94 95 94 94 94 93 93 93 93 92 92 92 92 92 92 92 92 93 93 93 93 93 93 93 93 94 94 95 95 95 95 95 96 96 96 96 96 96 96 96 96 95 nan nan nan nan 94 94 nan nan nan nan nan nan nan 93 93 94 94 94 94 94 94 94 94 94 94 94 94 94 94 94 94 94 94 94 94 93 93 93 92 92 92 92 92 91 91 91 91 91 91 90 90 90 90 89 89 89 89 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 110 109 108 107 105 104 103 102 101 101 99 98 97 97 96 95 95 94 94 94 94 94 94 94 94 94 94 94 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 94 94 95 95 95 95 96 96 96 96 96 96 96 96 96 96 96 nan nan nan 95 95 94 94 94 nan nan nan nan nan nan 93 93 93 94 94 94 94 94 94 94 94 94 93 93 93 93 93 94 94 94 93 93 93 93 93 92 92 92 92 92 91 91 91 91 91 91 90 90 90 89 89 89 89 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 110 109 108 106 105 104 103 102 101 99 99 98 97 96 96 95 95 94 94 94 94 94 94 94 94 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 94 94 95 95 96 96 96 96 96 96 96 96 96 96 96 97 nan nan 96 96 95 95 95 94 94 94 93 nan nan nan nan nan nan nan 93 93 93 93 94 94 94 94 93 93 93 93 93 93 93 93 93 93 93 93 93 92 92 92 92 92 91 91 91 91 91 91 91 90 90 90 89 89 89 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 110 109 108 106 106 104 103 102 101 100 99 98 97 96 95 95 94 94 94 94 94 94 94 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 94 94 94 95 95 96 97 97 97 97 97 97 96 96 96 97 nan 98 97 96 96 96 95 95 95 94 94 93 nan nan nan nan nan nan nan nan nan 93 93 94 93 93 93 92 92 92 93 93 93 93 93 93 93 93 92 92 92 92 92 92 91 91 91 91 91 91 91 91 90 90 90 89 89 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 111 110 109 108 107 105 104 103 102 101 100 99 98 97 96 95 95 94 94 94 94 94 94 94 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 94 94 95 95 96 97 97 97 97 97 97 97 96 97 97 nan 98 97 97 96 96 96 96 95 95 94 93 93 nan nan nan nan nan nan nan nan nan nan 93 93 92 92 92 92 92 92 92 92 93 93 93 92 92 92 92 92 92 92 92 91 91 91 91 91 90 90 90 90 90 90 90 90 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 111 110 109 107 106 105 104 103 102 100 99 98 97 97 96 96 96 95 95 95 94 94 94 93 93 93 93 94 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 93 94 94 95 96 96 96 97 97 97 97 97 97 97 97 nan 98 98 97 97 97 97 96 96 95 95 94 93 93 93 93 nan nan nan nan nan nan nan nan nan 92 91 91 91 91 91 92 92 92 92 92 92 92 92 92 92 92 92 92 91 91 91 90 90 90 90 90 90 90 90 90 90 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 111 109 108 107 106 105 103 103 101 100 99 98 98 97 97 97 96 96 95 95 94 94 94 94 94 94 94 94 94 94 94 94 94 94 94 94 93 93 93 93 93 93 93 94 94 94 95 95 96 96 97 97 97 97 97 97 98 99 99 99 98 98 98 98 97 97 95 95 95 94 94 93 93 93 nan nan nan nan nan nan nan nan 91 91 91 91 91 91 91 91 91 91 91 91 91 91 91 91 91 91 91 91 91 91 90 90 90 90 90 90 90 90 90 90 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 111 110 109 107 106 104 103 103 101 101 100 100 99 99 98 98 97 96 96 96 95 95 95 94 94 94 94 94 94 94 94 94 94 94 94 94 94 94 93 93 93 93 94 94 95 95 96 96 96 97 97 97 97 98 98 99 99 99 99 98 98 98 97 97 96 96 95 95 94 94 94 93 93 93 93 nan 93 92 92 91 91 91 90 90 90 90 90 90 90 91 91 91 91 91 91 91 91 91 91 91 91 90 90 90 90 89 89 89 89 89 89 89 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 111 110 108 107 106 105 105 104 103 102 101 101 100 100 99 99 98 97 97 96 96 95 95 95 94 94 94 94 94 95 95 95 95 94 94 94 94 94 94 94 94 94 94 95 95 96 96 97 97 97 98 98 98 99 99 99 99 99 98 98 98 97 97 96 96 95 95 95 95 95 95 94 94 94 93 93 92 91 91 91 90 90 90 90 90 90 90 90 90 91 91 91 90 90 90 90 90 90 90 90 90 90 89 89 89 89 89 89 89 89 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 111 110 109 108 107 106 105 104 103 103 102 102 101 101 100 100 99 99 97 97 96 96 95 95 94 94 95 95 95 95 95 95 95 95 95 94 94 94 94 94 94 95 95 96 96 96 97 97 97 98 98 99 99 99 100 100 99 99 98 97 97 96 96 96 95 95 95 95 95 95 94 94 94 93 93 92 91 91 90 90 90 89 89 89 89 90 90 90 90 90 90 90 90 90 90 90 89 89 89 89 89 89 89 89 88 88 88 88 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 113 112 111 109 108 107 106 104 103 103 103 103 102 102 102 102 101 100 99 98 97 96 95 95 95 95 95 95 95 95 95 95 95 95 95 95 95 95 95 95 95 95 96 96 97 97 97 97 98 98 98 98 99 99 100 100 99 99 98 97 96 96 96 96 95 95 95 95 95 95 95 94 94 93 92 91 91 90 90 90 89 89 89 89 89 89 90 90 90 90 89 89 89 89 89 89 89 89 89 89 89 88 88 88 88 88 88 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 113 110 109 108 106 105 104 103 103 103 103 103 103 103 102 102 101 100 99 98 96 96 95 95 95 95 95 96 96 95 95 95 95 95 95 95 95 95 95 95 96 97 97 97 97 97 98 98 98 99 99 99 99 100 100 99 99 98 97 96 96 96 96 95 95 95 95 95 95 94 94 93 92 91 91 90 90 90 89 89 89 89 89 89 89 89 89 89 89 89 89 89 89 89 89 89 89 89 88 88 88 88 88 88 88 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 111 109 107 105 104 103 102 102 102 102 103 103 103 103 102 102 101 100 98 97 97 96 96 95 96 96 96 95 95 95 95 95 96 96 96 96 96 96 97 97 97 97 97 97 98 98 98 99 99 99 99 100 100 100 100 99 98 97 97 96 96 96 96 95 95 95 95 94 94 93 92 92 91 90 90 89 89 89 89 88 89 89 89 89 89 89 89 89 89 89 89 89 89 89 89 88 88 88 87 87 87 87 87 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 108 106 104 103 102 102 102 102 102 103 103 103 103 103 102 101 100 99 98 98 97 97 97 96 96 96 95 95 95 96 96 96 96 96 97 97 97 97 97 97 97 98 98 98 99 99 99 99 99 100 100 100 100 100 98 98 98 97 97 96 96 96 96 95 95 94 94 93 92 92 90 90 89 89 89 89 88 88 88 88 88 88 89 89 89 89 89 89 89 89 88 88 88 88 88 88 87 87 87 87 87 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 104 102 102 101 101 101 102 103 103 104 104 103 103 102 101 101 100 99 99 98 97 97 96 96 96 96 96 96 96 96 97 97 97 97 97 98 98 98 98 98 99 99 99 99 99 100 100 100 100 100 100 100 99 99 98 97 97 97 96 96 96 95 94 94 93 92 91 90 89 89 89 89 88 88 88 88 88 88 88 88 88 88 88 89 89 88 88 88 88 88 88 88 88 88 87 87 87 87 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 102 101 101 101 101 102 103 104 104 104 104 104 103 103 102 101 101 100 99 98 97 97 96 96 96 96 96 97 97 97 97 97 98 98 98 98 98 99 99 99 99 99 99 99 100 100 101 101 101 100 100 100 100 99 98 98 98 97 96 95 95 94 93 92 91 90 89 89 88 88 88 88 88 88 87 nan 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 87 87 87 87 87 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 101 101 102 103 104 105 105 105 105 105 105 104 104 103 103 102 101 100 99 98 97 97 97 97 97 97 98 98 98 98 99 99 99 99 99 99 99 99 99 99 99 100 100 100 100 101 101 100 100 100 100 100 99 98 98 97 96 95 95 93 92 92 90 89 88 88 87 87 87 87 87 87 nan nan nan 88 88 88 88 88 88 88 88 88 88 88 88 87 87 87 87 87 87 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 103 103 103 104 105 105 106 106 106 106 106 105 105 105 104 103 102 101 100 100 99 98 98 98 98 98 98 99 99 99 99 99 100 100 100 100 100 99 99 99 99 100 100 100 100 100 101 101 101 101 101 100 99 99 98 97 96 95 94 93 92 90 89 88 88 87 87 87 87 87 87 87 nan nan nan nan 87 87 87 87 87 87 87 87 87 87 87 87 87 87 87 86 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 105 104 105 105 105 106 106 106 106 106 106 106 106 106 105 104 103 102 101 100 100 100 99 99 99 99 99 100 100 100 100 100 101 100 100 100 100 100 100 100 100 100 100 100 101 101 101 101 101 100 100 99 99 98 97 95 95 93 92 91 90 89 88 87 87 87 87 87 87 87 nan nan nan nan nan 87 87 87 87 87 87 87 87 87 87 87 87 87 86 86 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 106 106 106 106 106 106 106 107 107 107 107 107 107 106 106 104 104 103 102 101 101 100 100 100 100 100 101 101 101 101 101 101 101 101 100 100 100 100 100 100 100 100 100 100 100 101 101 101 100 100 99 98 97 97 96 94 93 92 91 89 88 87 87 87 87 87 87 87 nan nan nan nan nan nan nan 87 87 87 87 87 87 87 87 86 86 86 86 86 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 108 107 107 107 107 108 108 108 108 108 108 107 107 106 105 104 103 102 102 101 101 101 101 101 101 102 102 102 102 101 101 101 101 101 101 100 100 99 99 100 100 100 100 101 101 101 100 99 98 98 97 96 95 94 93 91 90 88 88 87 87 87 87 87 87 nan nan nan nan nan nan nan nan 87 86 86 86 86 86 86 86 86 86 86 86 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 109 109 108 109 109 109 109 109 109 109 108 107 107 106 104 103 103 102 102 102 101 102 102 102 102 102 102 102 102 102 101 101 101 100 100 100 100 100 100 100 101 101 101 101 100 99 98 98 97 96 95 94 92 91 89 88 87 87 87 87 87 87 87 nan nan nan nan nan nan nan nan nan 86 86 86 86 86 86 86 85 85 85 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 110 109 109 109 110 110 110 110 109 109 109 108 106 105 104 104 103 103 102 102 102 102 102 102 102 102 102 102 102 102 101 101 100 100 100 100 100 101 101 101 102 101 100 99 99 98 98 96 96 94 92 91 90 89 88 87 87 87 87 87 87 nan nan nan nan nan nan nan nan nan nan nan nan 86 86 86 85 85 85 85 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 111 111 111 111 111 111 111 110 110 109 108 107 106 106 104 104 103 102 102 102 102 102 103 103 103 103 103 102 102 101 101 101 101 101 101 101 101 101 101 101 100 100 99 99 99 97 96 95 93 92 91 89 88 88 87 87 88 88 87 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 85 85 85 85 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 113 112 112 112 112 112 112 112 111 110 109 108 107 106 105 105 104 103 103 103 103 103 103 103 103 103 102 102 102 102 102 102 102 101 101 101 101 101 nan nan nan 100 100 100 98 97 96 94 93 92 91 89 89 88 88 88 88 88 87 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 85 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 114 113 113 113 113 113 112 111 110 109 108 107 107 106 106 105 104 104 104 103 103 103 103 103 102 102 102 102 102 102 102 102 101 101 101 101 101 nan nan nan nan nan nan nan nan 96 94 92 91 90 89 89 88 88 88 88 88 88 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 115 115 115 114 114 113 112 112 111 110 109 108 108 107 106 105 105 104 104 103 103 103 103 103 103 103 103 103 103 103 102 102 101 101 101 101 101 102 nan nan nan nan nan nan nan nan 94 92 91 90 89 89 88 88 88 88 88 88 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 116 115 115 114 114 113 112 111 110 109 109 108 107 106 106 105 105 105 104 104 104 104 104 104 103 103 103 103 103 102 102 101 101 102 102 102 102 nan nan nan nan nan nan nan nan 94 93 91 91 89 89 88 88 88 88 88 88 nan nan nan nan nan nan nan nan nan nan nan nan nan nan 85 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 116 115 115 114 113 112 111 111 110 110 109 108 107 107 106 106 105 106 105 105 104 104 104 104 104 103 103 103 102 102 102 102 102 102 102 102 102 nan nan nan nan nan nan nan 95 93 92 91 90 89 88 88 88 88 88 89 nan nan nan nan nan nan nan nan nan nan nan nan nan 85 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 115 114 114 113 112 111 110 110 110 109 108 107 107 107 106 106 106 105 105 105 104 104 103 103 103 103 103 103 102 102 102 102 102 102 102 102 102 nan nan nan nan nan nan 95 93 92 91 90 89 88 88 88 88 89 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 113 113 112 111 111 111 111 110 109 109 108 108 108 107 107 106 106 105 105 105 104 104 104 104 103 102 102 102 101 102 102 102 102 102 102 101 nan nan nan nan nan nan nan 94 93 91 90 89 89 88 88 89 89 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 113 112 111 111 110 110 109 109 109 109 108 108 108 108 107 106 106 105 105 104 104 104 103 102 102 102 101 101 102 102 102 102 102 101 101 101 100 nan nan nan nan nan nan 93 91 91 89 89 88 89 89 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 111 111 110 110 109 109 109 109 108 108 108 108 107 107 106 105 105 104 104 103 102 102 102 101 102 102 102 102 102 102 102 102 101 101 100 99 nan nan nan nan nan nan 92 91 90 89 89 89 89 nan nan nan nan nan nan nan nan 87 87 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 110 109 109 109 109 109 109 109 109 109 108 107 106 106 105 104 104 103 102 102 101 101 101 101 101 102 102 102 102 102 101 100 100 99 98 97 nan nan nan nan nan 92 91 90 89 89 nan nan nan nan nan nan nan nan 88 88 88 88 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 109 109 109 109 109 109 109 108 108 107 107 106 105 104 104 103 102 101 100 100 100 100 101 101 101 102 101 101 100 99 99 99 98 97 96 nan nan nan nan nan 92 91 90 nan nan nan nan nan nan nan nan nan nan 88 88 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 109 109 109 109 109 108 108 108 107 106 105 104 104 103 102 101 100 100 100 100 100 100 100 101 101 101 100 99 99 98 98 98 97 96 96 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 110 110 109 109 108 107 106 105 105 104 103 103 101 101 100 100 100 100 100 100 100 100 100 100 100 99 99 98 97 97 96 96 96 96 96 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 109 109 108 107 106 105 105 104 103 103 102 101 100 100 100 100 100 100 100 100 100 100 99 99 98 97 97 96 96 96 96 97 96 96 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 109 108 107 107 106 105 104 103 103 102 101 100 99 99 99 99 100 100 100 99 99 99 98 97 96 96 95 96 96 96 97 97 96 96 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 107 107 106 105 104 103 103 101 101 100 99 99 99 99 99 99 99 99 99 98 98 97 96 96 95 95 95 96 96 96 97 97 96 95 95 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 105 104 104 103 102 101 100 99 99 98 98 98 98 98 98 98 98 98 97 97 97 96 95 95 95 95 95 96 96 97 97 97 97 96 95 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 318 316 313 310 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 103 103 102 101 100 99 98 98 97 97 97 97 97 98 98 98 97 97 97 96 95 95 95 95 95 95 96 96 96 97 98 98 97 96 95 94 94 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 336 338 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 323 321 318 315 312 308 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 323 325 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 102 101 100 99 99 98 97 97 97 97 97 97 97 97 97 97 97 96 96 96 96 95 95 95 95 96 96 97 98 98 98 98 97 97 95 95 94 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 331 333 334 336 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 323 321 317 314 309 305 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 318 320 320 nan nan nan nan nan nan 321 321 322 324 326 327 nan nan nan nan nan nan nan nan nan nan nan 320 319 319 319 318 317 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 99 99 98 98 97 97 97 97 97 97 97 97 97 97 97 96 96 96 96 96 95 95 95 96 96 97 98 99 99 99 99 98 97 96 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 332 333 334 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 324 322 320 316 311 307 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 317 318 319 320 321 nan nan nan 320 320 320 321 323 325 327 328 328 nan nan nan nan nan nan nan nan 323 323 323 323 323 323 323 322 320 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 99 98 97 97 97 97 97 96 97 97 97 97 97 97 97 97 96 96 96 96 95 96 97 98 99 99 99 99 99 98 98 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 333 334 335 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 327 326 324 322 318 314 308 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 317 318 320 321 321 nan nan 319 319 320 321 323 325 328 328 329 329 329 nan nan nan nan nan nan 327 327 328 328 329 329 329 328 327 326 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 97 96 96 96 96 96 96 96 96 96 97 97 97 96 96 96 96 96 96 97 98 99 100 100 100 99 99 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 328 327 325 321 316 310 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 318 319 320 322 322 321 320 320 321 322 324 326 328 329 330 330 331 331 nan nan nan nan nan 331 332 333 333 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 96 96 96 96 96 95 96 96 97 97 97 97 97 97 96 96 96 97 98 99 100 100 100 100 100 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 328 325 320 314 307 nan nan nan nan nan nan nan nan nan nan nan nan 317 319 320 322 322 322 322 322 322 324 325 327 328 330 330 331 332 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 96 95 95 95 96 96 96 97 97 97 97 96 96 96 96 97 99 100 100 101 101 101 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 330 325 319 313 nan nan nan nan nan nan nan nan nan nan nan 318 320 321 323 323 324 324 325 nan nan nan nan 330 330 331 333 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 95 95 95 95 96 96 96 96 96 96 96 96 96 97 98 99 100 101 101 101 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 325 320 315 311 nan nan nan nan nan nan nan 317 319 321 322 324 325 326 327 nan nan nan nan nan nan 331 334 338 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 327 328 328 329 330 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 95 95 95 95 96 95 95 95 96 96 96 96 97 98 99 100 101 102 102 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 328 323 319 316 314 313 313 314 316 317 320 322 325 326 327 329 nan nan nan nan nan nan nan 333 338 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 331 331 331 331 332 332 333 333 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 95 95 95 95 95 94 95 96 96 96 97 97 98 99 100 102 102 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 331 328 324 321 319 318 319 321 323 325 328 330 nan nan nan nan nan nan nan nan nan 338 343 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 337 336 336 336 336 336 336 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 95 94 94 94 94 94 95 96 96 96 97 98 98 99 101 102 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 334 332 330 328 327 329 330 332 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 95 94 94 94 94 94 95 96 97 97 97 98 99 101 102 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 95 94 94 94 94 95 96 97 97 97 98 99 100 102 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 96 95 94 94 95 96 97 97 97 98 99 100 102 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 96 95 95 95 96 96 97 97 98 99 101 102 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 97 96 96 96 96 97 97 98 99 101 102 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 350 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 99 98 97 97 96 96 96 97 98 99 101 102 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 100 99 98 97 96 96 96 97 97 98 100 102 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 100 100 99 97 96 96 95 96 97 97 99 100 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 100 99 97 96 95 94 95 95 96 97 98 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 96 95 94 94 93 94 95 96 96 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 93 92 92 93 93 94 95 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 91 91 91 91 93 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 89 90 90 90 91 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 88 88 88 89 90 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 87 87 87 88 89 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 86 86 86 87 88 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 84 84 85 86 86 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 82 82 83 84 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 79 79 80 81 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 75 75 76 77 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 72 71 71 71 71 73 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 66 67 67 66 66 67 68 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 56 60 62 63 63 63 64 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 43 51 54 56 58 58 59 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 31 39 44 48 50 52 54 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 20 27 33 38 41 43 45 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 17 23 28 31 33 34 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 7 10 14 18 21 22 23 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 7 9 12 13 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 2 3 5 6 7 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 1 2 3 3 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan Helicity -69 -67 -65 -64 -63 -61 -60 -59 -58 -58 -59 -62 -63 -63 -62 -59 -53 -48 -48 -49 -49 -47 -46 -44 -42 -41 -42 -44 -46 -47 -47 -45 -44 -44 -44 -44 -44 -44 -44 -44 -44 -45 -47 -48 -49 -48 -46 -44 -42 -39 -36 -32 -27 -20 -11 -4 3 8 13 18 21 23 23 21 17 13 9 7 6 6 7 7 6 3 -2 -9 -16 -20 -21 -19 -18 -19 -23 -30 -35 -38 -38 -38 -36 -33 -31 -31 -34 -37 -36 -30 -24 -20 -19 -20 -22 -24 -24 -24 -23 -22 -23 -24 -25 -26 -26 -26 -26 -26 -26 -26 -25 -25 -25 -25 -26 -26 -26 -25 -24 -25 -25 -25 -25 -26 -25 -24 -23 -23 -23 -24 -24 -24 -23 -21 -19 -17 -17 -16 -16 -15 -14 -11 -8 -8 -8 -9 -9 -8 -4 -1 0 -0 -2 -2 -2 -1 0 1 1 1 1 0 -1 -3 -4 -5 -6 -6 -7 -9 -11 -13 -15 -15 -13 -12 -10 -10 -11 -11 -11 -9 -7 -6 -6 -6 -6 -5 -4 -3 -2 -3 -5 -7 -10 -13 -17 -21 -25 -29 -32 -35 -38 -42 -44 -47 -48 -48 17 42 44 45 46 46 47 47 48 48 48 47 47 46 46 46 45 45 45 45 45 44 44 44 43 43 43 42 42 42 41 41 42 42 42 42 42 42 42 42 41 41 41 41 41 41 41 41 41 40 40 39 38 38 38 37 37 37 36 36 37 37 37 37 37 37 37 37 37 37 37 37 36 35 34 34 34 34 34 33 33 33 33 32 32 31 31 30 30 30 29 29 28 28 28 27 27 27 26 26 26 25 25 25 24 24 23 23 22 22 21 21 21 21 21 21 21 21 21 21 21 20 20 20 20 20 20 19 19 19 19 19 19 19 20 22 24 26 28 30 32 33 34 34 34 34 34 35 35 36 36 37 38 38 37 36 35 35 36 36 36 35 35 34 34 33 33 32 31 30 29 28 28 27 28 28 28 28 28 29 29 29 29 29 29 29 29 28 28 27 26 26 25 24 24 23 23 22 -66 -64 -63 -62 -61 -60 -59 -58 -58 -58 -58 -62 -65 -65 -63 -60 -55 -52 -51 -50 -49 -48 -48 -45 -42 -41 -41 -44 -47 -48 -48 -47 -46 -47 -47 -46 -46 -46 -46 -46 -47 -50 -52 -54 -53 -51 -48 -46 -44 -42 -39 -34 -26 -17 -9 -2 3 9 16 20 21 22 21 18 15 11 9 8 8 8 7 5 1 -3 -9 -15 -18 -17 -14 -13 -14 -19 -26 -32 -35 -36 -37 -37 -36 -34 -31 -31 -34 -37 -34 -27 -20 -17 -18 -21 -23 -24 -22 -21 -20 -19 -21 -22 -24 -24 -24 -24 -24 -24 -24 -24 -23 -23 -23 -24 -24 -24 -23 -23 -23 -23 -23 -24 -24 -24 -23 -22 -22 -22 -22 -22 -22 -22 -20 -19 -17 -17 -16 -16 -15 -13 -11 -8 -7 -8 -9 -9 -8 -5 -2 -1 -1 -2 -2 -2 -0 1 1 1 1 1 1 0 -1 -3 -4 -5 -5 -6 -7 -9 -12 -14 -15 -14 -13 -12 -11 -11 -12 -12 -11 -9 -8 -7 -6 -6 -5 -4 -4 -4 -4 -4 -5 -5 -7 -8 -11 -14 -18 -20 -22 -24 -27 -29 -31 -31 -28 -21 -4 14 29 38 43 45 46 47 48 48 48 48 47 47 46 46 46 45 45 45 44 44 44 43 43 43 42 42 42 41 41 41 42 42 42 42 42 41 41 41 41 41 41 41 42 42 42 41 41 41 40 39 39 38 38 38 37 37 37 37 37 37 37 37 37 37 37 37 38 38 37 37 36 35 35 35 35 35 34 34 34 33 33 33 33 32 32 31 31 31 30 30 29 29 29 28 28 28 28 27 27 27 26 26 26 25 25 24 24 23 23 22 22 22 21 21 21 21 21 21 21 21 21 20 20 20 20 20 19 19 19 19 19 20 21 22 23 25 26 28 30 31 31 32 32 32 33 33 34 34 35 36 36 36 35 35 34 34 35 35 35 35 35 34 34 34 34 33 32 31 30 29 29 28 28 29 29 29 29 29 29 29 29 29 29 29 29 29 28 27 27 26 26 25 24 23 23 22 -62 -61 -61 -61 -60 -59 -58 -58 -58 -59 -58 -62 -64 -64 -62 -59 -56 -55 -52 -51 -50 -50 -50 -47 -43 -41 -41 -43 -47 -48 -48 -47 -48 -49 -49 -48 -48 -48 -48 -48 -51 -54 -57 -58 -56 -53 -50 -48 -46 -44 -40 -33 -24 -15 -7 -0 6 12 17 19 19 18 18 16 14 11 10 9 8 7 4 -0 -5 -10 -14 -15 -13 -10 -10 -13 -18 -24 -30 -32 -34 -35 -36 -37 -36 -33 -30 -30 -33 -34 -31 -24 -18 -17 -19 -23 -23 -21 -19 -17 -17 -18 -20 -21 -22 -22 -21 -21 -22 -22 -22 -21 -21 -21 -22 -22 -22 -22 -22 -22 -22 -22 -22 -23 -23 -22 -21 -21 -21 -21 -21 -21 -20 -19 -18 -17 -17 -17 -16 -15 -13 -11 -9 -7 -8 -9 -9 -9 -7 -3 -2 -2 -2 -2 -2 0 2 2 1 1 1 2 2 0 -1 -3 -3 -4 -4 -5 -7 -10 -12 -14 -14 -14 -13 -12 -12 -13 -13 -12 -11 -10 -9 -8 -6 -5 -4 -4 -5 -5 -5 -4 -4 -4 -4 -6 -8 -10 -12 -14 -14 -15 -16 -18 -19 -18 -16 -9 0 10 20 28 33 37 39 42 43 45 45 46 46 46 46 45 45 44 44 43 43 43 43 43 42 42 42 42 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 40 40 40 40 39 39 38 38 38 37 37 37 38 38 38 38 38 38 38 38 38 38 37 37 36 36 36 36 36 35 35 35 34 34 33 33 33 33 32 32 32 32 31 31 30 30 30 29 29 29 29 28 28 28 27 27 27 27 26 26 25 24 24 23 23 23 22 22 22 22 22 22 22 21 21 21 20 20 20 20 20 20 20 20 20 20 21 21 22 23 24 25 27 28 29 30 30 31 31 31 32 33 34 34 34 34 34 34 33 33 33 34 34 34 34 34 34 34 34 34 33 33 32 31 30 30 30 30 30 30 30 30 30 30 30 29 29 29 28 28 28 27 27 26 26 25 24 24 23 22 -60 -59 -59 -59 -59 -59 -58 -58 -58 -59 -59 -62 -62 -62 -60 -58 -56 -55 -52 -51 -51 -51 -50 -47 -44 -41 -40 -42 -46 -48 -48 -48 -49 -50 -51 -51 -50 -50 -51 -52 -55 -59 -61 -61 -59 -55 -51 -49 -47 -44 -39 -32 -23 -13 -5 3 9 13 15 16 16 16 16 15 12 10 9 8 6 3 -3 -8 -13 -14 -12 -9 -7 -9 -14 -19 -24 -28 -30 -31 -32 -33 -34 -35 -33 -30 -28 -28 -30 -31 -27 -21 -18 -19 -21 -21 -18 -16 -16 -16 -16 -18 -20 -20 -19 -19 -18 -19 -20 -19 -19 -18 -18 -19 -20 -20 -20 -20 -20 -20 -20 -21 -21 -22 -21 -21 -20 -20 -20 -20 -20 -19 -18 -18 -17 -17 -17 -16 -16 -14 -12 -10 -8 -8 -9 -10 -10 -8 -5 -3 -2 -3 -3 -2 -0 2 3 2 2 2 3 3 2 0 -1 -2 -2 -2 -3 -5 -7 -9 -12 -13 -13 -12 -12 -12 -13 -14 -14 -13 -12 -10 -9 -8 -7 -6 -6 -6 -6 -5 -4 -3 -3 -3 -4 -5 -7 -8 -9 -10 -10 -10 -11 -12 -12 -11 -9 -4 2 9 15 21 26 30 33 36 37 39 40 42 43 44 44 44 43 43 42 42 41 41 41 41 41 41 41 41 41 41 41 41 40 40 40 40 40 40 40 40 40 40 40 40 40 40 39 39 39 39 40 40 39 39 38 38 38 38 38 38 38 38 38 38 38 38 38 38 38 38 37 37 37 37 37 37 37 36 36 35 34 34 34 33 33 33 33 33 33 32 32 32 32 31 31 31 30 30 29 29 29 29 28 28 28 28 27 27 26 26 25 25 24 24 24 23 23 23 23 22 22 22 22 21 21 21 20 20 20 20 20 20 20 20 21 21 21 21 22 23 25 26 27 28 29 29 30 30 31 32 33 33 33 34 34 33 33 33 32 33 33 34 34 34 34 34 34 34 34 33 33 32 31 31 31 31 31 31 31 30 30 30 30 29 29 28 28 27 27 26 26 26 25 25 25 24 23 23 -58 -57 -56 -57 -58 -58 -57 -57 -57 -58 -59 -61 -61 -60 -58 -57 -56 -55 -52 -52 -52 -52 -49 -46 -44 -43 -42 -42 -45 -48 -49 -49 -49 -51 -53 -53 -53 -53 -53 -56 -59 -62 -64 -62 -59 -56 -52 -49 -47 -43 -37 -29 -20 -10 -1 5 9 11 11 13 15 15 13 11 9 9 8 4 -1 -7 -12 -15 -14 -11 -8 -8 -10 -15 -21 -24 -25 -25 -27 -29 -31 -32 -32 -31 -28 -25 -25 -27 -28 -27 -22 -18 -17 -18 -18 -16 -14 -14 -14 -16 -17 -18 -18 -17 -16 -16 -17 -18 -17 -16 -16 -16 -16 -17 -18 -19 -18 -18 -18 -18 -19 -19 -20 -20 -20 -20 -19 -19 -19 -19 -18 -18 -17 -17 -16 -17 -17 -16 -15 -13 -11 -10 -9 -9 -10 -10 -9 -6 -4 -3 -3 -4 -3 -1 1 3 3 3 3 4 4 4 2 1 1 1 1 0 -2 -4 -7 -9 -11 -11 -11 -11 -11 -12 -14 -14 -14 -13 -12 -10 -9 -9 -8 -8 -8 -8 -6 -5 -3 -2 -2 -3 -4 -5 -6 -7 -7 -8 -9 -10 -11 -11 -10 -8 -6 -2 1 5 10 15 20 25 28 30 32 33 35 37 38 40 41 41 40 40 39 39 38 38 38 38 38 38 38 38 39 39 39 39 38 38 38 38 38 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 38 38 39 39 39 39 39 39 38 38 38 38 38 38 38 37 37 37 37 37 37 37 36 36 35 35 34 34 34 34 34 33 33 33 33 33 32 32 32 32 31 31 31 30 30 30 30 29 29 29 28 28 27 27 26 26 26 25 25 24 24 24 24 23 23 23 22 22 21 21 21 21 21 20 20 20 20 21 21 20 20 20 21 22 23 25 26 27 27 28 29 30 31 32 33 34 34 34 34 33 33 32 32 32 32 32 33 33 33 33 33 33 33 32 32 31 31 31 31 31 31 31 31 30 30 30 29 29 29 28 27 27 26 26 25 25 25 25 24 24 23 23 -56 -54 -53 -54 -56 -56 -56 -56 -56 -56 -57 -60 -60 -59 -58 -58 -57 -57 -55 -55 -55 -53 -48 -46 -45 -45 -45 -45 -46 -49 -50 -50 -51 -53 -56 -56 -56 -56 -57 -59 -63 -65 -65 -63 -59 -56 -52 -49 -46 -41 -33 -24 -14 -5 1 4 6 8 9 12 13 11 8 6 7 6 3 -3 -10 -15 -16 -15 -12 -10 -10 -12 -16 -20 -21 -21 -20 -22 -26 -29 -31 -32 -31 -29 -26 -23 -23 -25 -26 -25 -21 -17 -15 -15 -14 -13 -13 -13 -14 -16 -16 -15 -14 -14 -14 -15 -16 -16 -15 -14 -13 -14 -15 -16 -17 -17 -16 -16 -16 -16 -17 -18 -18 -19 -19 -18 -18 -18 -18 -18 -17 -17 -17 -16 -16 -16 -16 -15 -14 -12 -11 -10 -10 -10 -10 -9 -7 -5 -4 -3 -4 -4 -3 -1 2 3 4 4 4 5 5 4 3 2 3 3 3 1 -1 -4 -7 -8 -9 -9 -8 -9 -10 -12 -14 -14 -13 -12 -11 -10 -10 -10 -11 -11 -10 -9 -6 -4 -2 -2 -2 -4 -5 -5 -5 -5 -5 -7 -9 -11 -12 -11 -10 -8 -5 -3 -1 2 6 11 16 20 23 25 26 28 30 31 33 34 34 34 34 34 34 34 34 34 34 34 34 34 35 35 35 36 36 36 36 35 35 36 36 37 37 37 38 38 38 38 38 38 38 38 38 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 38 38 38 38 38 38 38 38 38 38 38 38 38 37 37 36 36 36 35 35 35 35 34 34 34 33 33 33 33 33 33 33 33 32 32 32 31 31 31 30 30 30 29 29 28 28 27 27 27 26 26 26 25 25 25 24 24 23 23 22 22 21 21 21 21 21 21 21 21 21 20 20 19 19 20 21 22 23 24 25 26 27 29 30 32 33 34 35 35 34 34 33 32 32 31 31 31 31 31 31 31 31 31 31 31 30 30 30 29 29 29 29 29 30 30 29 29 29 29 29 28 28 27 26 26 25 25 24 24 24 24 23 23 23 -54 -52 -51 -52 -54 -54 -54 -54 -54 -54 -56 -59 -60 -60 -60 -60 -61 -62 -58 -57 -55 -52 -49 -47 -49 -49 -49 -49 -48 -49 -50 -51 -53 -55 -59 -59 -58 -58 -60 -63 -66 -67 -66 -63 -59 -56 -53 -50 -44 -37 -28 -18 -9 -2 1 2 3 5 8 9 8 6 4 4 4 1 -4 -9 -14 -16 -15 -13 -12 -12 -14 -16 -18 -18 -17 -17 -18 -22 -27 -30 -31 -31 -30 -28 -26 -23 -22 -22 -24 -24 -20 -14 -12 -12 -12 -12 -12 -13 -14 -14 -13 -12 -12 -13 -14 -15 -15 -14 -13 -12 -13 -13 -14 -15 -15 -15 -14 -14 -14 -15 -15 -16 -16 -17 -17 -16 -16 -16 -16 -17 -17 -17 -17 -16 -15 -14 -14 -14 -13 -12 -11 -10 -10 -10 -9 -8 -7 -5 -4 -4 -4 -3 -2 0 3 4 4 4 5 5 4 4 4 4 4 4 4 2 -1 -4 -6 -7 -7 -6 -6 -8 -10 -12 -14 -13 -12 -11 -10 -11 -11 -12 -12 -12 -10 -8 -6 -4 -3 -3 -4 -5 -5 -3 -3 -3 -4 -7 -9 -11 -11 -11 -10 -8 -6 -5 -3 0 4 8 13 16 18 20 22 24 25 27 27 28 27 27 27 27 28 28 29 29 29 29 29 30 30 31 32 32 32 32 32 32 33 33 34 34 35 35 36 36 36 37 37 37 37 37 38 38 38 38 38 38 38 39 39 39 39 39 39 39 38 38 38 38 39 39 39 38 38 38 38 38 38 38 38 37 37 37 37 37 37 37 36 36 35 35 35 34 34 34 34 34 34 34 33 33 33 33 32 32 32 32 31 31 30 30 30 29 29 28 28 27 27 27 26 26 25 25 24 24 23 23 22 22 22 21 21 21 21 21 21 21 20 20 19 19 20 20 21 22 23 24 26 28 30 31 33 34 34 35 35 35 34 33 32 31 30 30 29 29 29 29 29 29 29 28 28 28 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 27 26 25 25 24 24 24 23 23 23 22 22 -52 -50 -49 -50 -52 -52 -52 -52 -52 -53 -56 -59 -61 -62 -62 -63 -64 -65 -61 -58 -55 -51 -49 -49 -51 -52 -53 -52 -51 -50 -51 -53 -55 -58 -62 -63 -62 -62 -64 -66 -68 -68 -66 -62 -59 -56 -54 -50 -44 -35 -25 -14 -5 -0 0 -0 0 2 4 4 3 2 2 2 2 -2 -6 -10 -13 -13 -13 -12 -13 -14 -16 -16 -16 -14 -14 -16 -19 -23 -27 -28 -28 -28 -28 -27 -25 -23 -22 -22 -22 -22 -17 -11 -10 -10 -11 -11 -12 -12 -11 -10 -10 -10 -11 -13 -14 -14 -14 -13 -12 -12 -12 -13 -13 -13 -13 -12 -12 -12 -13 -13 -14 -14 -15 -15 -15 -15 -15 -15 -15 -16 -16 -16 -15 -14 -13 -13 -12 -12 -12 -12 -11 -10 -9 -8 -8 -7 -6 -5 -4 -4 -3 -3 -1 1 3 4 4 4 4 5 5 5 5 5 5 5 3 1 -2 -4 -5 -5 -4 -4 -5 -7 -10 -12 -12 -11 -10 -10 -10 -11 -12 -12 -12 -11 -9 -8 -6 -5 -5 -5 -4 -4 -2 -1 -0 -1 -3 -6 -8 -9 -10 -9 -9 -8 -7 -5 -3 -0 3 7 10 12 15 17 19 21 22 23 23 23 22 22 22 23 23 23 24 25 25 25 25 25 26 27 28 29 29 29 30 30 30 31 31 32 32 33 33 34 34 35 35 35 36 36 36 36 37 37 37 37 37 38 38 38 38 38 38 38 38 38 38 38 38 38 38 39 39 39 38 38 38 38 38 37 37 37 37 37 38 38 37 37 36 36 36 35 35 35 35 35 34 34 34 34 34 34 33 33 33 33 32 32 32 31 31 30 30 29 29 29 28 28 27 27 26 26 25 24 24 23 23 22 22 22 21 21 21 21 21 21 20 20 19 20 20 20 20 21 22 24 27 29 31 32 33 33 34 34 34 34 34 32 31 31 30 29 29 28 28 29 29 28 28 27 26 25 25 25 25 25 25 25 25 25 25 25 25 25 25 26 26 26 26 25 25 24 24 23 23 22 22 22 22 21 -49 -48 -48 -49 -51 -51 -51 -51 -52 -53 -56 -59 -62 -62 -63 -63 -62 -60 -58 -56 -53 -50 -49 -50 -54 -56 -56 -54 -53 -52 -53 -55 -58 -61 -64 -66 -66 -66 -68 -70 -71 -69 -66 -62 -59 -57 -54 -50 -43 -33 -21 -10 -3 -1 -3 -5 -4 -3 -2 -2 -1 0 2 2 1 -2 -5 -7 -9 -10 -11 -13 -14 -15 -15 -15 -14 -13 -14 -16 -19 -22 -24 -24 -24 -25 -26 -26 -24 -23 -23 -22 -21 -18 -12 -9 -8 -9 -10 -10 -10 -9 -9 -9 -9 -10 -11 -12 -12 -12 -12 -11 -11 -11 -12 -12 -12 -11 -10 -10 -11 -11 -12 -12 -13 -13 -13 -13 -13 -13 -13 -13 -14 -14 -15 -15 -14 -13 -12 -11 -11 -12 -11 -11 -10 -9 -8 -7 -7 -6 -5 -4 -3 -3 -2 -1 0 2 3 3 3 4 4 5 6 6 6 6 5 4 3 1 -1 -3 -3 -2 -1 -2 -4 -7 -9 -10 -9 -9 -8 -9 -9 -10 -10 -10 -10 -9 -8 -7 -6 -6 -5 -5 -4 -2 -0 1 1 -1 -3 -5 -6 -7 -7 -8 -8 -7 -5 -4 -2 -0 2 5 7 9 11 14 16 18 20 20 20 20 19 19 19 20 20 20 21 21 21 21 21 22 23 23 24 25 26 27 27 28 28 29 29 30 30 31 31 32 32 32 33 33 33 34 34 34 35 35 36 36 36 37 37 37 37 37 37 37 37 37 37 37 37 38 38 38 38 39 39 39 39 38 38 38 38 38 38 38 38 38 38 38 37 37 37 37 36 36 36 36 35 35 35 34 34 34 34 34 34 34 33 33 33 32 32 31 31 31 30 30 30 29 28 27 27 26 26 25 25 24 23 23 22 22 22 21 21 21 21 20 20 20 20 20 20 20 20 21 22 25 28 31 32 33 33 33 33 33 33 34 33 33 31 31 30 29 29 29 29 29 29 29 28 26 25 25 24 24 24 24 23 23 23 23 23 23 23 23 23 24 24 24 24 24 24 24 23 23 22 22 21 21 21 21 -47 -46 -47 -49 -50 -50 -50 -50 -51 -53 -56 -59 -61 -61 -61 -61 -60 -55 -55 -54 -53 -50 -50 -52 -55 -58 -58 -57 -56 -55 -56 -58 -61 -64 -66 -68 -69 -70 -72 -73 -73 -71 -67 -62 -60 -58 -56 -51 -43 -30 -17 -7 -3 -6 -10 -10 -9 -7 -6 -5 -3 0 2 3 2 0 -2 -4 -6 -8 -10 -11 -12 -13 -14 -14 -15 -14 -15 -16 -17 -18 -18 -19 -21 -23 -24 -24 -23 -24 -24 -22 -18 -14 -8 -7 -7 -8 -8 -8 -8 -8 -8 -8 -9 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -9 -9 -9 -10 -10 -11 -11 -12 -12 -12 -12 -12 -12 -12 -12 -12 -13 -13 -13 -12 -12 -11 -11 -10 -10 -10 -9 -8 -7 -7 -6 -6 -5 -4 -3 -3 -2 -1 -0 1 3 3 3 3 3 5 6 7 7 6 5 4 4 3 1 0 -1 -0 0 0 -1 -3 -5 -7 -7 -7 -7 -7 -8 -8 -8 -8 -7 -7 -7 -6 -6 -6 -5 -5 -4 -3 -1 1 2 1 -0 -2 -2 -3 -4 -5 -6 -6 -5 -4 -3 -2 -1 2 4 5 7 9 12 15 17 18 19 19 18 18 18 18 18 18 19 19 19 19 18 19 19 20 21 22 23 23 24 25 25 26 27 28 28 29 29 29 30 30 30 31 31 31 32 32 33 33 33 34 34 34 35 35 35 36 36 36 36 36 36 36 36 36 37 37 37 38 38 39 39 39 39 38 38 38 39 39 39 39 39 39 39 38 38 38 38 38 37 37 37 36 36 36 35 35 35 35 34 34 34 34 34 34 33 33 33 32 32 32 31 31 30 29 29 28 27 27 26 25 25 24 24 23 23 22 22 22 21 21 20 20 20 20 20 20 20 20 20 22 26 29 32 33 32 32 32 32 32 32 33 33 33 32 31 30 29 29 30 30 31 31 30 28 27 26 25 24 24 24 23 23 23 22 22 22 22 21 22 22 22 22 22 22 22 22 22 22 21 21 21 21 20 20 20 -45 -45 -47 -48 -49 -49 -49 -50 -51 -53 -56 -59 -60 -59 -58 -57 -57 -53 -53 -53 -52 -51 -51 -53 -56 -58 -59 -59 -58 -57 -59 -61 -64 -67 -69 -71 -72 -74 -76 -77 -76 -73 -67 -62 -59 -58 -57 -52 -41 -27 -14 -7 -7 -13 -16 -15 -12 -10 -8 -6 -3 1 4 5 4 2 1 -2 -4 -6 -7 -8 -9 -11 -13 -15 -15 -14 -14 -14 -14 -13 -14 -17 -20 -22 -22 -22 -22 -23 -22 -19 -16 -13 -7 -6 -5 -6 -6 -7 -7 -8 -8 -8 -8 -9 -8 -8 -8 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -10 -10 -11 -11 -11 -11 -11 -10 -10 -11 -11 -11 -11 -11 -11 -10 -10 -9 -9 -8 -8 -7 -7 -6 -6 -5 -4 -3 -3 -2 -2 -2 -0 1 2 3 2 2 2 3 5 6 6 6 5 5 4 4 3 2 1 1 2 2 2 -0 -2 -4 -4 -5 -5 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -3 -2 0 2 2 1 0 -0 -1 -1 -2 -3 -4 -3 -3 -3 -3 -2 -1 1 2 3 5 8 11 14 16 17 18 18 18 17 17 16 17 17 18 18 17 17 17 17 17 18 18 19 20 21 22 22 23 24 25 26 27 27 28 28 28 28 29 29 30 30 30 31 31 31 32 32 32 32 33 33 33 34 34 35 35 35 35 35 35 36 36 36 37 37 38 38 38 38 38 39 39 39 39 39 40 40 40 40 39 39 39 39 39 39 38 38 38 37 37 37 36 36 36 35 35 35 35 35 34 34 34 34 34 33 33 33 32 32 31 31 30 29 28 28 27 26 25 25 24 24 23 23 22 22 21 21 20 20 19 19 20 19 19 19 20 22 26 30 32 32 31 31 31 32 32 32 32 33 33 32 31 30 29 29 31 32 32 32 31 29 28 26 25 25 24 24 23 23 23 22 22 21 21 21 21 21 21 21 21 21 21 21 21 20 20 20 20 19 19 19 19 -43 -44 -46 -46 -47 -48 -48 -49 -50 -52 -55 -58 -58 -56 -54 -54 -54 -54 -54 -54 -53 -52 -52 -54 -55 -57 -59 -59 -59 -60 -61 -64 -66 -69 -71 -74 -75 -77 -79 -80 -78 -74 -67 -61 -59 -59 -58 -51 -37 -23 -12 -9 -14 -18 -19 -16 -13 -11 -8 -5 -1 3 5 5 5 3 1 -2 -3 -3 -3 -5 -9 -12 -13 -13 -12 -13 -13 -13 -12 -12 -13 -15 -17 -19 -19 -20 -20 -19 -17 -16 -14 -13 -6 -4 -4 -5 -6 -7 -7 -7 -7 -7 -7 -6 -7 -7 -8 -8 -9 -9 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -9 -10 -10 -10 -10 -9 -9 -9 -9 -10 -10 -10 -9 -9 -9 -9 -8 -7 -6 -6 -6 -6 -5 -4 -3 -2 -1 -1 -2 -2 -1 1 2 2 2 1 1 2 3 4 5 5 5 4 4 5 5 4 3 3 3 3 3 2 -0 -2 -3 -3 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -1 1 2 2 1 1 1 1 0 -1 -1 -1 -1 -2 -3 -3 -2 -1 1 1 2 4 7 10 13 15 16 16 17 16 16 15 15 16 16 16 16 15 15 15 15 15 16 16 18 19 20 20 21 22 22 23 24 25 26 27 27 27 27 28 28 29 29 29 29 30 30 30 30 30 30 30 31 31 32 32 33 33 34 34 34 35 35 35 36 36 37 37 37 37 38 38 38 39 39 39 40 40 40 40 40 40 40 40 40 40 40 39 39 39 38 38 38 37 37 37 37 36 36 36 35 35 35 35 35 35 34 34 34 34 33 33 32 31 31 30 29 28 27 26 26 25 24 24 23 23 22 22 21 20 20 19 19 19 19 19 19 19 22 25 29 31 31 30 30 31 31 32 32 32 33 33 32 31 30 29 30 32 33 34 34 32 30 29 27 26 25 25 24 23 23 23 22 22 21 21 21 21 20 21 21 21 20 20 20 19 19 19 19 18 18 18 18 18 -43 -44 -44 -45 -45 -46 -47 -49 -50 -52 -54 -56 -56 -55 -53 -53 -54 -56 -56 -56 -54 -53 -53 -54 -56 -58 -59 -59 -60 -61 -63 -65 -67 -70 -73 -75 -77 -79 -81 -81 -79 -74 -66 -62 -61 -62 -59 -48 -32 -19 -14 -14 -18 -19 -20 -18 -15 -10 -7 -4 0 4 5 5 4 1 -1 -2 -1 -0 -2 -8 -11 -12 -11 -10 -10 -11 -12 -12 -12 -12 -13 -13 -13 -14 -16 -18 -18 -16 -14 -13 -12 -11 -5 -4 -5 -5 -6 -6 -6 -6 -6 -6 -5 -6 -6 -7 -7 -8 -8 -7 -7 -8 -8 -8 -8 -8 -7 -7 -7 -7 -8 -9 -9 -9 -9 -8 -7 -7 -8 -8 -8 -8 -8 -8 -8 -8 -7 -6 -6 -5 -5 -5 -5 -4 -2 -1 -0 -0 -1 -1 -1 0 2 2 2 1 1 1 2 3 3 4 4 4 4 4 5 5 4 3 3 4 4 3 1 -0 -2 -2 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -1 -1 -1 -2 -2 -2 -1 0 2 2 2 2 2 2 2 1 1 1 1 -0 -2 -2 -2 -1 -0 0 0 1 3 6 9 12 14 15 16 15 15 15 15 15 15 15 14 13 14 14 14 14 14 14 15 16 17 18 19 20 20 21 22 24 24 25 25 25 26 26 27 27 28 28 28 28 28 28 28 28 28 29 29 29 30 30 30 31 31 32 32 33 34 34 35 36 36 36 37 37 37 37 38 38 39 39 39 39 40 40 40 40 40 40 40 40 40 40 40 40 39 39 39 39 39 38 38 38 37 37 36 36 36 35 35 35 35 35 35 35 35 34 34 33 33 32 32 31 30 29 28 27 26 25 24 24 23 23 22 21 21 20 19 19 19 19 18 18 19 21 23 27 29 30 30 30 30 31 31 31 32 32 33 32 32 31 31 32 34 36 36 36 34 32 30 28 27 26 25 24 24 23 22 22 22 21 21 21 21 21 21 21 20 20 20 19 19 19 18 18 18 17 17 17 17 -42 -42 -43 -43 -43 -44 -45 -47 -49 -51 -52 -53 -54 -53 -52 -53 -56 -59 -60 -59 -58 -56 -56 -56 -59 -60 -60 -60 -61 -63 -65 -66 -68 -70 -73 -76 -78 -80 -81 -81 -78 -72 -66 -64 -65 -64 -57 -44 -29 -20 -17 -18 -20 -20 -20 -19 -15 -11 -7 -2 1 3 4 3 0 -2 -2 0 2 1 -5 -10 -11 -10 -7 -6 -7 -9 -10 -11 -12 -12 -11 -10 -10 -11 -14 -16 -16 -15 -12 -10 -9 -9 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -6 -6 -6 -6 -6 -6 -7 -7 -8 -8 -7 -7 -6 -6 -6 -7 -8 -8 -8 -8 -7 -7 -6 -6 -6 -6 -6 -6 -6 -6 -7 -6 -6 -5 -5 -4 -4 -4 -3 -2 -1 0 1 0 -0 -1 0 2 2 2 2 1 1 1 2 2 3 3 3 3 4 4 4 4 4 4 4 4 4 3 1 -0 -1 -1 -2 -2 -2 -2 -3 -3 -3 -3 -2 -2 -1 -1 -1 -1 -1 -1 -1 0 1 2 2 2 2 2 3 3 3 3 2 2 0 -1 -1 -1 -1 -0 -1 -0 1 3 6 9 11 13 14 15 15 15 15 15 14 13 12 12 12 12 13 13 12 12 12 13 14 16 17 17 18 19 20 21 22 23 23 23 24 24 25 26 26 27 27 27 27 27 27 27 27 27 27 28 28 28 29 29 29 30 30 31 31 32 33 34 35 35 36 36 36 37 37 37 38 38 39 39 39 39 39 39 39 39 39 39 39 40 40 40 40 40 41 41 41 40 40 39 39 38 38 37 37 37 36 36 36 36 36 36 36 35 35 35 34 34 34 33 32 31 30 29 28 27 26 26 25 24 23 23 22 21 21 20 19 19 19 18 18 18 19 21 24 26 28 29 29 30 30 30 31 32 32 32 33 32 32 33 35 37 39 39 38 36 33 31 29 28 27 26 25 24 23 23 22 22 21 21 21 21 21 21 21 21 20 20 19 19 19 18 18 18 17 17 17 17 -41 -41 -42 -42 -42 -42 -43 -45 -48 -50 -51 -51 -50 -51 -52 -54 -58 -61 -63 -63 -62 -61 -61 -61 -62 -63 -62 -62 -64 -65 -66 -68 -69 -71 -73 -76 -79 -80 -81 -80 -77 -72 -69 -68 -67 -63 -53 -39 -28 -23 -22 -22 -21 -21 -20 -19 -16 -11 -5 -1 1 2 1 -2 -5 -2 1 4 3 -1 -6 -8 -7 -5 -4 -5 -6 -8 -9 -10 -10 -9 -8 -7 -8 -10 -12 -14 -15 -13 -10 -7 -7 -8 -4 -4 -5 -5 -4 -4 -4 -5 -5 -5 -4 -4 -5 -5 -5 -5 -5 -5 -6 -6 -7 -7 -6 -6 -5 -5 -6 -6 -7 -7 -7 -7 -6 -6 -6 -6 -5 -5 -4 -4 -5 -5 -5 -5 -5 -4 -4 -3 -3 -2 -1 -0 1 1 1 0 0 0 2 3 3 2 2 2 2 2 2 2 3 3 4 4 4 4 4 3 4 4 4 4 4 2 1 0 -0 -0 -0 -1 -1 -2 -2 -2 -2 -2 -2 -1 -1 -1 -1 -1 -1 -0 0 1 1 1 2 2 3 3 3 3 3 3 3 2 1 0 0 -0 -0 -1 -1 -0 1 3 6 8 10 12 14 15 15 16 15 14 13 12 11 11 11 11 11 11 10 10 11 12 13 14 15 16 17 18 19 20 21 21 21 22 22 23 24 25 25 26 26 25 25 26 26 26 26 26 27 27 27 28 28 28 28 28 29 30 30 31 32 32 33 34 34 35 35 36 36 37 37 37 38 38 38 38 38 38 38 38 38 39 39 39 39 40 41 42 42 42 42 41 41 41 40 40 39 38 38 38 37 37 36 36 36 36 36 36 36 35 35 35 35 34 34 33 32 31 30 29 28 27 26 25 24 23 23 22 21 21 20 19 19 18 18 17 18 20 21 23 25 27 27 28 28 29 30 31 31 32 32 33 34 35 37 39 41 41 40 37 34 32 30 29 28 28 27 26 25 24 23 23 22 22 22 22 22 22 21 21 20 20 20 19 19 19 18 18 18 17 17 17 -39 -40 -40 -40 -40 -40 -41 -42 -45 -49 -51 -50 -48 -50 -52 -55 -59 -62 -64 -65 -65 -64 -64 -65 -65 -65 -65 -65 -67 -68 -68 -69 -70 -71 -74 -77 -79 -80 -80 -78 -75 -72 -71 -70 -67 -60 -48 -36 -31 -30 -28 -25 -22 -21 -21 -21 -18 -11 -4 0 1 -2 -6 -8 -6 0 4 4 2 -2 -5 -4 -3 -2 -3 -4 -6 -7 -8 -8 -7 -5 -5 -5 -6 -8 -10 -11 -13 -12 -9 -7 -6 -7 -3 -3 -3 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -4 -5 -5 -5 -5 -5 -4 -4 -4 -5 -5 -6 -6 -6 -6 -5 -5 -5 -5 -4 -4 -3 -4 -4 -4 -4 -4 -4 -3 -2 -2 -1 -1 -0 1 1 1 1 1 1 2 3 3 3 3 3 3 3 2 2 3 3 3 4 4 4 4 3 3 3 4 4 4 4 3 2 1 1 1 1 0 -0 -1 -1 -1 -2 -1 -1 -1 -1 -1 -1 -1 -0 0 1 1 1 1 2 2 3 3 4 4 4 3 3 2 2 1 1 0 -0 -1 -1 0 1 3 4 6 9 11 13 14 15 15 14 13 12 11 11 10 10 9 9 8 8 9 10 10 11 12 13 14 15 16 17 17 18 19 20 21 21 22 23 23 24 24 24 24 24 24 24 25 25 26 26 26 27 27 27 27 27 28 28 29 29 30 30 31 31 32 32 33 33 34 34 35 35 36 36 36 36 37 37 37 37 38 38 38 38 39 39 40 41 42 42 41 41 41 41 41 40 40 40 39 39 39 38 38 37 37 37 37 36 36 36 36 36 36 35 35 35 34 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 20 19 18 18 17 17 18 19 21 22 24 25 25 26 27 28 29 30 31 32 33 35 36 38 40 41 41 40 38 35 32 30 29 29 29 28 27 26 25 24 24 24 24 23 23 23 23 22 22 21 21 20 20 20 19 19 19 19 18 18 17 -38 -38 -39 -39 -39 -38 -39 -40 -44 -48 -50 -50 -48 -49 -53 -56 -59 -63 -66 -66 -67 -66 -66 -67 -67 -67 -68 -68 -68 -69 -70 -70 -70 -71 -74 -77 -80 -80 -79 -76 -74 -72 -73 -71 -65 -55 -44 -38 -38 -37 -33 -27 -23 -23 -25 -24 -18 -9 -2 -0 -3 -7 -10 -9 -2 3 3 1 -1 -2 -2 0 1 -0 -2 -3 -5 -6 -5 -4 -3 -3 -4 -5 -5 -6 -7 -9 -11 -11 -9 -7 -5 -5 -1 -1 -2 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -4 -4 -4 -5 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -1 -1 -0 0 1 1 2 1 1 1 2 3 4 4 3 3 4 4 4 3 3 3 3 3 3 4 4 4 3 3 3 4 4 4 4 3 2 2 2 2 2 1 1 0 -0 -0 -0 -0 -0 -0 -1 -1 -0 -0 0 1 1 1 1 1 2 2 3 3 3 3 3 3 3 3 2 2 2 1 1 1 1 1 1 2 3 5 7 10 12 13 13 13 12 11 11 10 9 9 8 7 7 7 7 8 8 9 9 10 11 12 13 13 14 15 16 17 18 19 20 21 21 21 21 22 22 22 23 23 23 23 24 24 25 26 26 26 27 27 27 27 28 28 29 29 29 29 30 30 30 31 31 32 32 33 33 34 34 34 35 35 35 36 36 37 37 37 38 38 39 40 41 41 40 40 40 40 40 40 40 40 40 40 40 40 39 39 39 38 38 37 37 37 37 36 36 36 36 36 35 35 35 34 33 32 32 31 29 28 27 26 25 24 23 22 21 20 19 19 18 17 17 17 18 19 20 21 22 23 23 24 25 26 28 29 31 33 34 36 38 39 39 39 39 37 35 32 30 29 29 29 29 28 27 26 26 25 25 25 25 25 24 24 24 23 23 22 22 21 21 21 21 20 20 19 19 18 -36 -37 -38 -39 -39 -38 -39 -40 -43 -46 -48 -49 -49 -52 -54 -57 -60 -64 -67 -68 -68 -67 -67 -67 -68 -69 -69 -69 -68 -69 -70 -70 -70 -71 -74 -78 -80 -80 -78 -75 -73 -73 -73 -69 -60 -51 -44 -43 -44 -41 -34 -27 -24 -27 -29 -24 -15 -6 -2 -5 -9 -11 -9 -4 2 2 -1 -3 -3 -2 1 2 2 1 -1 -2 -3 -3 -1 -0 -1 -3 -4 -5 -4 -4 -4 -6 -9 -10 -9 -7 -4 -4 0 -0 -1 -2 -2 -2 -2 -2 -2 -2 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -3 -3 -3 -3 -3 -2 -2 -1 -1 -2 -2 -2 -2 -2 -2 -2 -2 -2 -1 -1 -1 -1 -1 -1 -0 0 1 1 1 1 2 2 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 3 4 4 5 5 4 4 3 3 3 3 3 3 2 2 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 2 3 3 3 3 3 4 3 3 3 3 3 3 3 2 2 1 1 1 2 3 5 7 8 10 10 11 11 11 10 10 9 8 7 6 6 6 6 6 7 7 7 8 8 9 10 10 11 12 13 14 15 16 17 18 18 18 19 19 20 20 21 21 21 21 22 22 23 24 25 25 26 26 26 27 27 27 28 28 28 28 28 29 29 29 29 29 30 30 31 31 31 32 32 33 33 34 35 36 36 36 37 37 38 39 39 39 39 38 38 38 38 38 38 38 39 39 39 40 40 40 40 40 39 39 38 38 37 37 37 37 36 36 36 36 36 35 35 34 33 33 32 31 30 29 28 26 25 24 23 22 21 20 19 18 18 18 17 17 17 18 19 20 20 21 22 23 24 26 28 30 32 34 35 36 37 37 38 38 37 35 33 30 29 28 28 28 28 28 27 27 26 26 26 26 26 26 25 25 25 25 24 24 23 23 23 22 21 21 20 20 19 -35 -36 -37 -37 -38 -38 -39 -41 -42 -44 -47 -50 -52 -54 -55 -58 -61 -64 -68 -69 -69 -68 -68 -68 -69 -70 -69 -69 -69 -70 -71 -70 -70 -72 -75 -79 -80 -80 -77 -74 -73 -74 -72 -65 -56 -49 -47 -50 -48 -40 -32 -28 -29 -33 -30 -20 -9 -4 -6 -13 -14 -10 -3 3 3 -2 -5 -5 -4 -2 1 2 2 2 1 -0 -1 0 1 1 -1 -3 -4 -3 -2 -1 -1 -3 -7 -9 -9 -6 -3 -2 1 1 -0 -0 -0 -0 -0 -1 -1 -2 -2 -2 -2 -2 -2 -2 -2 -1 -1 -1 -1 -1 -1 -1 -2 -2 -2 -1 -1 0 1 1 0 -1 -1 -2 -2 -1 -1 -0 -0 -0 -0 0 0 0 0 -0 0 1 1 1 1 2 2 3 3 4 4 4 4 5 5 5 5 5 5 5 4 4 4 4 4 4 4 4 4 5 5 5 5 4 4 4 4 4 4 4 3 3 2 2 2 2 2 2 1 1 1 1 1 1 1 2 2 2 2 3 3 3 4 4 4 4 3 3 3 4 4 3 3 2 2 2 2 3 3 4 6 7 8 8 9 9 9 9 9 8 7 5 5 5 5 5 5 6 6 6 7 7 7 8 9 10 11 12 13 14 14 15 15 15 16 16 17 18 18 19 19 19 20 20 21 22 23 23 24 25 25 25 26 26 27 27 27 28 28 27 27 27 27 27 28 28 28 29 29 29 29 30 31 32 33 34 34 35 35 36 36 37 38 38 38 37 37 37 37 37 37 37 38 38 38 38 39 39 40 40 40 40 40 39 39 38 38 38 37 37 37 36 36 36 36 35 35 34 33 33 32 31 30 29 28 27 25 24 23 22 21 20 19 19 18 18 17 17 17 18 18 19 20 20 21 23 24 26 28 30 32 33 34 35 35 36 37 36 35 33 31 29 28 27 28 28 27 27 27 27 27 27 27 27 27 27 27 27 26 26 26 25 25 24 24 23 22 22 21 20 -33 -35 -36 -37 -37 -38 -38 -39 -41 -43 -46 -51 -54 -55 -57 -59 -62 -65 -68 -69 -69 -69 -69 -70 -71 -71 -70 -70 -70 -71 -71 -70 -70 -73 -76 -79 -80 -79 -77 -75 -74 -73 -69 -61 -53 -50 -52 -54 -47 -37 -31 -32 -36 -35 -25 -13 -6 -7 -14 -18 -14 -6 1 4 1 -3 -3 -3 -3 -3 -2 1 2 2 2 1 1 1 1 0 -1 -2 -2 -1 -0 0 -0 -2 -4 -7 -7 -6 -4 -2 1 1 1 1 2 1 1 0 -0 -1 -1 -2 -2 -2 -2 -2 -1 -1 -0 0 0 1 0 0 -0 -0 0 1 2 2 2 2 1 -0 -1 -1 -0 1 1 1 1 1 1 1 1 2 1 1 1 1 1 2 2 2 3 3 3 3 4 4 4 5 5 6 6 6 6 5 5 5 5 5 5 4 4 4 5 5 5 5 5 5 5 5 5 5 5 5 4 4 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 3 3 4 5 5 6 7 7 7 8 8 8 7 6 5 4 4 4 4 4 5 5 6 6 6 6 6 7 7 8 9 10 11 12 12 13 13 13 14 15 15 16 17 17 17 18 18 19 19 20 21 22 22 23 24 24 25 25 26 26 27 27 27 26 26 26 26 26 26 26 27 27 26 27 27 28 29 30 31 32 33 33 34 35 36 36 37 37 36 36 36 37 37 37 37 37 37 37 38 38 38 39 39 39 40 40 40 40 40 40 39 39 38 38 37 37 37 37 36 36 35 35 34 33 33 32 31 30 29 28 27 25 24 23 22 21 21 20 19 19 18 17 17 17 18 18 19 20 20 21 23 24 26 27 29 30 32 33 34 35 36 36 35 34 32 30 28 27 27 27 27 27 27 28 28 28 28 28 28 28 28 28 28 28 27 27 26 26 25 24 24 23 22 21 -32 -33 -34 -35 -36 -36 -36 -38 -40 -42 -46 -51 -54 -56 -58 -61 -63 -65 -67 -68 -70 -70 -71 -72 -73 -73 -73 -72 -72 -72 -71 -69 -70 -74 -77 -80 -79 -78 -76 -75 -74 -71 -65 -57 -52 -53 -55 -53 -42 -35 -35 -38 -38 -31 -18 -11 -10 -14 -17 -15 -7 -2 1 2 1 0 -0 -2 -3 -4 -2 1 2 2 1 1 1 1 1 1 1 1 1 1 1 1 0 -0 -2 -4 -6 -7 -6 -4 1 2 2 2 3 2 2 1 0 -0 -1 -1 -1 -1 -1 -1 -0 0 1 2 2 2 2 2 1 1 2 2 3 3 3 2 2 1 1 1 2 2 2 1 1 1 2 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 4 4 5 5 5 6 6 6 6 6 5 5 5 5 5 5 5 5 5 5 5 6 6 6 6 6 6 6 6 5 5 5 4 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 5 4 4 4 4 5 5 5 4 5 5 5 6 6 6 6 6 7 6 6 6 5 4 3 3 3 3 4 4 5 5 5 5 5 5 6 6 7 8 9 9 10 10 11 11 12 13 13 14 14 14 15 15 16 17 17 18 19 19 20 20 21 22 22 23 24 25 25 26 26 26 25 25 25 25 25 25 25 25 25 25 25 25 26 27 28 29 30 31 31 32 33 35 35 36 36 36 36 36 37 37 37 37 38 38 38 38 38 38 38 38 38 39 39 40 41 41 41 41 40 40 39 39 38 38 37 37 36 36 35 35 34 33 33 32 31 30 29 28 27 26 24 23 23 22 21 20 20 19 18 17 17 18 18 19 19 20 21 22 23 24 25 26 27 29 31 32 33 34 34 34 34 33 31 29 27 26 26 26 27 27 28 28 28 29 29 29 29 29 29 29 29 28 28 27 26 26 25 24 24 23 22 -31 -31 -33 -34 -33 -33 -33 -37 -40 -43 -47 -52 -55 -57 -59 -62 -64 -65 -67 -69 -71 -72 -73 -74 -74 -74 -74 -73 -72 -71 -70 -69 -71 -74 -77 -78 -77 -76 -75 -74 -72 -68 -60 -55 -53 -54 -54 -47 -39 -36 -38 -38 -34 -25 -16 -14 -16 -18 -17 -10 -3 0 2 2 1 2 1 -1 -2 -3 -1 -0 -0 -1 -1 -1 -1 -0 1 2 3 4 3 3 2 1 1 1 -1 -3 -5 -6 -6 -5 1 2 2 3 3 3 2 1 1 0 -0 -0 -1 -0 -0 0 1 1 2 3 4 4 3 3 3 2 3 3 4 4 4 4 3 3 4 4 4 3 2 2 2 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 5 6 6 6 6 6 6 6 6 6 5 5 5 5 5 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 5 5 5 5 4 4 4 4 4 4 4 4 3 3 3 4 4 4 4 4 4 4 4 5 5 5 5 5 6 6 6 6 6 6 6 6 6 7 6 6 6 5 4 4 3 3 3 3 4 4 5 5 5 5 5 5 6 6 6 6 7 7 8 8 9 9 10 11 11 12 13 13 14 14 15 16 16 17 17 18 18 19 19 20 21 21 22 23 23 24 24 24 24 24 24 24 24 24 24 23 23 23 23 24 24 25 26 27 28 29 29 31 32 33 34 34 35 35 36 36 37 37 37 38 38 38 38 38 38 38 38 38 38 38 39 40 40 41 41 42 41 41 41 40 40 39 39 38 38 37 36 36 35 34 33 33 32 31 30 29 28 27 26 25 24 23 22 21 20 20 19 18 18 18 19 19 19 20 20 21 22 22 23 23 25 26 28 29 30 31 32 32 32 32 31 29 28 26 26 26 27 27 28 28 28 29 29 29 30 30 29 29 29 28 28 27 26 26 25 25 24 23 22 -31 -31 -31 -32 -31 -30 -33 -38 -41 -45 -49 -53 -56 -58 -60 -62 -65 -67 -69 -71 -73 -75 -75 -75 -75 -74 -73 -72 -70 -69 -69 -70 -72 -75 -76 -77 -75 -74 -74 -73 -71 -66 -58 -55 -54 -54 -50 -43 -38 -38 -38 -35 -29 -21 -17 -18 -19 -18 -14 -7 -2 1 2 2 2 2 1 0 -1 -1 -1 -2 -3 -4 -4 -3 -2 -0 1 2 4 5 5 4 3 2 2 1 0 -1 -4 -5 -6 -5 1 2 3 3 3 3 2 1 1 0 0 -0 0 1 1 1 1 2 3 4 4 4 4 4 3 4 4 5 5 5 5 5 6 6 6 6 5 5 4 4 5 6 6 5 5 4 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 6 6 6 7 7 7 7 7 7 6 6 6 6 6 6 6 6 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 6 6 6 5 5 5 5 4 4 4 4 3 3 3 3 3 3 4 4 4 4 5 5 6 6 6 6 7 7 7 8 8 8 8 8 8 7 7 6 5 5 5 4 4 4 4 4 4 5 5 5 5 5 6 6 6 5 5 5 5 5 6 7 8 8 9 10 11 11 12 13 13 14 14 15 16 16 17 17 17 18 18 19 20 20 21 21 22 22 23 23 23 23 23 23 23 22 22 22 22 22 22 23 24 24 25 26 26 27 28 30 31 32 32 33 34 35 36 36 37 37 38 38 38 39 39 39 39 38 38 38 39 39 40 40 40 41 41 41 42 42 41 41 41 40 40 39 39 38 37 36 35 35 34 33 32 31 31 30 28 27 26 25 24 23 23 22 21 20 19 19 19 19 19 19 19 20 20 21 21 21 22 23 24 25 26 28 28 29 30 30 31 30 29 28 26 26 26 26 27 27 28 28 28 29 29 29 29 29 28 28 27 27 26 26 25 25 24 24 23 22 -31 -30 -30 -29 -29 -30 -34 -39 -44 -47 -51 -55 -57 -59 -61 -63 -65 -68 -72 -75 -77 -77 -76 -76 -76 -74 -73 -71 -69 -67 -68 -69 -72 -75 -76 -75 -73 -73 -73 -73 -71 -65 -58 -55 -54 -52 -48 -41 -38 -37 -35 -30 -25 -20 -19 -19 -18 -15 -11 -5 -1 1 2 2 2 1 1 1 1 0 -1 -3 -4 -5 -5 -3 -1 0 1 2 4 5 6 6 5 4 3 2 1 -1 -2 -3 -4 -4 2 3 3 4 4 3 2 1 1 0 0 0 1 1 1 1 2 3 3 4 4 4 4 4 4 5 5 6 6 6 6 7 7 8 8 8 8 7 8 8 9 8 7 6 6 6 6 6 6 6 6 7 7 7 6 6 6 6 6 6 6 6 7 7 7 7 8 8 8 8 8 8 8 7 7 7 7 7 7 8 8 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 8 8 8 7 7 6 6 5 5 5 4 4 4 4 3 3 3 3 4 4 4 4 4 5 5 6 7 7 8 8 9 9 9 9 9 9 9 9 8 7 7 6 6 6 5 5 5 5 5 5 6 6 6 6 6 6 6 5 5 4 4 4 5 5 6 7 8 8 9 10 11 11 12 13 13 14 14 15 15 16 16 16 17 17 18 18 19 19 20 20 21 21 21 21 21 21 21 21 21 21 21 20 21 21 22 22 23 23 24 25 26 27 28 29 30 31 33 34 35 35 36 37 37 38 39 39 39 39 39 39 39 39 39 39 39 39 39 39 40 40 41 41 42 42 42 42 42 41 41 40 39 38 37 36 35 34 33 33 32 31 30 29 28 27 26 25 24 23 22 21 20 20 19 19 19 19 19 19 20 20 20 20 21 22 23 23 25 26 27 27 28 28 29 29 28 27 26 26 26 26 26 27 27 28 28 28 28 28 28 28 28 27 27 26 26 25 25 24 24 23 22 22 -32 -29 -28 -27 -27 -30 -36 -42 -47 -50 -52 -55 -58 -59 -60 -62 -65 -69 -75 -78 -79 -79 -78 -77 -76 -75 -73 -70 -68 -67 -67 -69 -72 -75 -76 -75 -73 -73 -73 -72 -69 -63 -57 -55 -53 -51 -46 -42 -39 -36 -31 -26 -22 -20 -19 -18 -16 -12 -8 -4 -1 0 1 1 1 1 2 2 2 1 -1 -3 -5 -5 -4 -2 -1 0 1 2 3 4 5 6 6 6 6 4 2 1 -1 -2 -2 -3 3 4 4 4 4 3 2 1 0 -0 0 1 1 1 1 1 2 3 3 4 4 4 4 4 5 5 6 6 6 6 7 8 9 10 10 10 10 10 11 11 11 10 9 9 8 8 8 8 8 8 8 8 8 8 8 8 7 7 7 7 7 7 8 8 8 8 9 9 9 9 9 9 9 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 10 10 10 11 11 11 10 10 10 10 9 8 8 7 6 6 5 5 4 4 4 4 3 3 3 4 4 4 4 4 4 4 5 6 7 7 8 9 9 10 10 11 11 11 11 10 9 9 8 8 8 7 7 6 6 6 6 6 6 7 7 7 7 7 6 6 5 4 4 4 5 5 5 6 6 7 7 8 9 10 10 11 12 13 13 14 14 15 15 15 16 16 16 17 17 17 18 18 19 19 19 19 20 20 20 20 20 20 20 19 20 20 20 21 21 21 22 23 23 24 25 26 27 29 30 32 33 34 35 36 37 38 38 39 39 40 40 40 40 40 40 39 39 39 38 38 38 38 39 40 41 41 42 42 42 42 42 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 21 20 20 19 19 19 20 20 20 20 20 20 21 22 22 23 24 25 26 26 27 27 28 27 27 26 26 26 26 26 26 27 27 28 28 28 28 27 27 27 26 26 25 25 24 24 23 23 22 22 21 -33 -29 -27 -26 -26 -30 -37 -45 -51 -53 -54 -55 -58 -58 -60 -62 -65 -70 -75 -78 -80 -80 -79 -78 -76 -74 -71 -69 -68 -66 -67 -69 -72 -75 -76 -76 -74 -73 -73 -71 -67 -61 -56 -53 -52 -50 -47 -43 -38 -34 -29 -25 -22 -20 -18 -16 -13 -9 -5 -2 -1 -0 0 0 1 1 2 2 2 1 -1 -3 -4 -4 -3 -1 -0 0 -0 0 1 3 5 6 8 9 9 7 5 2 0 -1 -2 -2 3 4 4 4 4 3 2 1 0 0 0 1 1 1 1 1 1 2 2 3 3 3 3 4 5 5 6 6 7 7 8 9 10 11 11 11 11 12 12 12 12 12 12 12 11 11 10 10 10 10 10 10 10 10 10 10 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 9 9 10 10 10 10 10 10 10 10 10 10 10 11 11 11 11 12 12 12 12 12 12 11 11 10 9 9 8 7 6 5 5 5 5 5 4 3 3 4 4 5 5 4 4 4 5 5 6 6 7 8 8 9 10 10 11 11 11 11 11 10 10 10 9 9 9 9 8 8 8 8 7 7 7 8 8 7 7 7 6 6 5 5 5 5 5 5 6 6 6 6 7 7 8 9 10 11 11 12 13 13 14 14 14 15 15 15 15 15 16 16 16 17 17 17 18 18 18 18 19 19 19 19 19 19 19 19 19 20 20 20 21 21 22 22 23 25 26 28 30 31 32 33 34 36 37 38 38 39 40 40 40 40 40 39 39 38 38 37 37 37 37 38 38 39 40 41 41 42 42 42 42 42 42 41 40 39 38 36 35 34 34 33 32 30 29 28 27 26 25 25 24 23 22 21 21 20 20 20 20 20 20 20 20 20 20 21 21 22 23 24 24 25 26 27 27 27 26 26 26 26 26 26 26 27 27 28 28 28 27 27 27 26 26 26 25 25 24 23 23 22 22 21 21 -34 -30 -26 -26 -27 -30 -37 -46 -52 -53 -54 -55 -57 -57 -59 -61 -65 -70 -75 -78 -78 -79 -78 -78 -76 -74 -70 -67 -66 -66 -67 -69 -72 -75 -76 -76 -75 -74 -72 -69 -64 -58 -54 -53 -52 -50 -46 -42 -37 -32 -28 -25 -22 -20 -17 -14 -11 -7 -3 -1 0 0 1 1 1 1 1 2 2 1 0 -2 -3 -2 -2 -1 -1 -1 -1 -1 0 2 4 8 10 12 13 12 9 6 3 0 -1 -3 1 4 4 4 4 3 2 1 1 0 0 1 1 1 1 1 1 1 1 2 2 2 2 3 4 5 6 6 7 8 9 10 11 11 12 12 12 12 12 13 13 14 14 14 14 13 13 13 13 13 12 12 12 12 12 12 12 11 11 10 10 10 10 10 10 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 12 12 12 12 12 13 13 13 14 14 13 13 12 11 10 10 9 8 6 6 5 5 5 5 4 4 4 4 5 5 5 5 5 5 6 6 6 6 7 7 7 8 9 9 10 10 10 10 10 10 10 10 10 11 10 10 10 10 10 9 9 9 9 9 9 8 8 8 7 6 6 6 6 6 5 5 5 5 6 6 6 6 7 7 8 9 10 11 11 12 13 13 13 13 14 14 14 14 14 15 15 15 16 16 16 16 17 17 17 17 17 18 18 18 18 19 19 19 19 19 19 19 20 20 21 22 24 26 27 29 30 31 32 34 35 36 37 38 39 39 39 39 39 39 38 38 37 37 37 36 36 37 37 38 38 39 39 40 41 41 42 42 42 42 41 40 39 38 37 36 35 34 33 32 30 29 28 27 26 26 25 24 24 23 22 21 21 20 20 20 20 20 20 20 20 20 21 22 22 23 23 24 25 26 26 26 26 26 26 26 26 27 27 27 28 28 28 28 28 27 27 27 26 26 26 25 24 23 22 22 21 21 20 -34 -30 -26 -26 -26 -28 -34 -44 -52 -54 -54 -54 -56 -57 -59 -62 -66 -71 -74 -76 -77 -77 -77 -77 -75 -72 -69 -66 -65 -65 -67 -69 -72 -75 -77 -77 -76 -75 -72 -68 -63 -57 -54 -53 -51 -48 -44 -39 -35 -31 -28 -26 -23 -20 -17 -14 -11 -7 -4 -0 1 2 2 2 2 1 1 2 2 2 1 -1 -2 -2 -2 -2 -2 -3 -3 -2 -1 1 5 9 13 16 16 15 12 10 7 4 1 -3 -1 3 4 4 4 3 2 1 1 1 1 1 1 1 0 0 -0 -0 0 0 0 1 1 2 4 5 6 6 7 8 9 10 11 11 12 12 12 12 12 13 14 15 15 15 15 15 15 15 15 15 15 14 14 14 14 14 14 13 13 13 12 12 12 12 12 12 12 13 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 13 13 13 13 14 14 14 14 15 15 14 14 13 12 11 10 9 8 7 6 6 5 5 4 4 4 4 5 5 5 5 5 6 6 6 6 6 6 6 7 7 7 7 8 9 9 9 9 10 10 10 11 11 11 12 12 12 12 11 11 11 11 10 10 10 10 10 9 8 8 7 6 6 5 5 5 5 6 6 6 6 6 7 7 8 8 9 9 10 11 11 12 12 12 12 13 13 13 13 13 14 14 15 15 15 15 15 16 16 16 16 16 17 17 18 18 18 19 19 19 19 19 19 19 20 21 22 24 25 26 27 28 30 31 33 34 35 36 37 37 37 37 38 38 37 37 37 37 36 36 36 36 36 37 37 37 38 38 39 40 40 41 41 42 42 41 40 40 38 37 36 35 34 33 32 30 29 28 27 27 26 25 25 24 23 22 22 21 21 20 20 20 20 20 20 21 21 21 22 22 22 23 24 25 26 26 26 26 26 26 26 27 28 28 28 28 28 28 28 28 27 27 27 27 26 25 24 24 23 22 21 21 20 -34 -29 -27 -27 -26 -27 -32 -43 -53 -56 -56 -55 -57 -59 -62 -65 -67 -71 -73 -75 -76 -76 -76 -75 -74 -70 -68 -65 -65 -65 -67 -69 -72 -75 -77 -78 -78 -77 -74 -69 -63 -59 -56 -54 -51 -47 -42 -37 -34 -31 -28 -25 -22 -20 -17 -15 -12 -9 -5 -2 1 3 4 5 5 4 3 2 2 1 -0 -1 -2 -2 -3 -3 -3 -4 -3 -3 -1 2 7 9 13 17 18 16 14 13 10 7 4 -0 -1 3 5 4 4 3 2 2 1 1 1 1 1 0 0 -0 -1 -1 -1 -1 -1 -0 0 2 3 4 5 6 6 7 9 10 11 11 11 11 11 11 11 13 14 15 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 15 15 15 14 14 14 14 14 14 14 14 14 14 14 14 13 13 13 13 13 13 13 13 13 13 13 14 14 14 14 14 14 15 15 15 15 15 15 15 15 14 13 12 11 10 9 8 7 7 6 5 4 4 4 4 5 5 5 5 6 6 7 7 7 7 7 7 7 7 7 7 7 7 8 8 8 9 9 10 10 11 11 12 12 13 13 13 13 12 12 12 12 12 12 12 11 10 9 8 7 6 5 5 5 5 6 6 7 7 7 7 8 8 8 8 8 9 9 10 10 11 11 11 12 12 12 12 13 13 14 14 14 14 14 14 15 15 15 15 15 16 16 17 18 18 18 19 19 19 19 19 19 20 21 22 22 22 23 24 25 27 28 30 31 32 33 34 35 35 36 36 37 37 37 37 37 37 37 36 36 36 36 36 36 37 37 38 38 39 40 40 41 41 41 41 40 40 39 37 36 35 34 33 32 31 29 28 28 27 26 26 25 24 24 23 22 21 21 20 20 20 20 20 21 21 21 21 22 22 22 23 24 25 26 26 26 26 26 26 27 28 29 29 28 28 28 28 28 28 28 28 28 27 27 26 25 24 23 22 21 21 -33 -30 -28 -28 -27 -27 -32 -44 -55 -57 -57 -57 -59 -62 -66 -68 -69 -70 -72 -74 -75 -75 -75 -74 -72 -67 -64 -63 -64 -65 -67 -70 -73 -75 -77 -78 -79 -78 -75 -69 -63 -59 -56 -54 -51 -46 -42 -37 -34 -31 -28 -24 -22 -20 -18 -16 -14 -11 -8 -4 -1 2 4 6 7 6 4 3 1 -0 -2 -3 -3 -3 -3 -4 -4 -4 -4 -3 -1 3 8 9 12 15 17 17 15 14 11 8 6 2 -1 3 5 4 4 3 2 2 1 1 1 1 1 0 -0 -1 -1 -1 -2 -2 -2 -1 -0 1 3 4 5 5 6 7 8 10 10 11 11 10 10 10 11 12 14 15 16 16 17 17 17 17 18 18 18 18 18 18 17 17 17 17 17 17 17 16 16 16 16 16 16 16 16 16 16 16 16 15 15 15 15 14 14 14 14 14 14 14 15 15 15 16 16 16 15 15 15 15 15 15 15 14 14 13 13 12 11 10 9 8 7 5 5 4 4 5 5 5 5 6 6 7 7 7 7 7 7 7 7 8 7 7 7 7 7 8 8 8 9 9 10 10 11 12 12 13 13 14 14 14 14 14 13 13 13 13 12 11 10 9 8 7 6 5 5 5 6 6 6 7 7 7 8 8 8 8 8 8 8 9 9 10 10 10 11 11 11 12 12 13 13 13 13 13 14 14 14 14 14 14 14 15 15 16 17 18 18 19 19 19 19 20 20 21 21 21 21 20 20 21 22 24 25 27 28 29 30 31 32 33 34 35 36 36 37 37 37 37 37 37 37 37 36 36 36 37 37 37 38 38 39 39 40 40 40 41 41 40 40 39 38 37 36 35 33 32 31 30 29 28 27 27 26 25 24 24 23 22 21 21 21 20 20 21 21 21 21 21 22 22 22 23 23 24 25 26 26 26 26 26 27 28 28 28 28 28 28 28 28 28 29 29 29 28 28 27 26 25 24 23 22 22 -34 -33 -31 -30 -28 -27 -31 -46 -56 -57 -57 -59 -63 -67 -70 -71 -71 -70 -71 -73 -74 -75 -74 -73 -70 -66 -62 -61 -62 -65 -67 -70 -73 -75 -77 -79 -80 -78 -73 -68 -62 -58 -56 -54 -51 -47 -42 -38 -35 -31 -28 -24 -22 -20 -19 -17 -15 -12 -9 -6 -2 1 4 7 8 7 5 3 0 -2 -3 -4 -4 -4 -4 -4 -4 -4 -4 -3 -0 4 7 8 10 13 15 16 16 14 11 9 7 4 -0 2 4 5 4 3 3 2 2 1 1 1 1 0 -0 -1 -2 -2 -2 -2 -2 -1 -0 1 3 4 5 5 6 7 8 9 10 10 10 10 10 10 11 12 13 15 16 17 17 17 18 18 18 18 19 19 18 18 18 18 19 19 18 18 18 18 18 18 18 17 17 17 17 17 18 18 18 17 17 16 16 16 15 15 15 15 15 15 16 16 16 17 17 17 17 16 16 16 16 16 15 15 15 14 14 13 13 12 11 10 8 7 6 5 5 5 5 6 6 7 7 7 7 7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 8 9 9 10 11 11 12 13 14 14 15 15 15 15 15 14 14 13 13 12 11 10 9 8 7 6 6 6 5 5 5 6 6 6 7 7 7 8 8 8 8 8 9 9 9 9 10 10 11 11 12 12 12 13 13 13 13 13 13 13 13 14 14 14 15 15 16 17 18 18 19 19 20 20 21 21 21 20 19 19 19 20 21 22 23 24 25 25 27 28 29 30 32 33 34 35 35 36 37 37 37 37 37 37 37 37 37 37 37 37 37 37 38 38 38 39 39 40 40 40 40 40 39 38 37 36 35 34 33 31 30 29 28 28 27 26 26 25 24 23 22 22 21 21 21 20 21 21 21 22 22 23 23 23 23 24 25 25 26 26 26 26 27 27 28 28 28 28 28 28 28 29 29 29 30 29 29 29 28 27 26 25 24 23 -35 -36 -34 -30 -28 -26 -31 -46 -57 -57 -58 -62 -67 -71 -74 -74 -72 -71 -71 -73 -74 -75 -74 -72 -68 -64 -60 -59 -61 -64 -67 -69 -72 -74 -76 -78 -78 -76 -71 -66 -60 -56 -55 -53 -50 -47 -43 -39 -35 -31 -28 -24 -22 -20 -19 -18 -16 -13 -10 -7 -4 -1 3 6 8 7 4 2 -1 -3 -5 -5 -5 -4 -4 -5 -5 -4 -4 -3 -0 3 5 6 8 10 12 14 15 13 11 10 8 5 1 1 3 5 4 3 3 2 2 2 2 1 1 0 -0 -1 -2 -2 -2 -2 -1 -1 0 1 2 4 5 6 7 7 8 9 10 10 10 9 9 9 10 11 13 15 16 16 17 17 18 18 18 18 19 19 19 19 19 19 19 19 19 19 19 20 20 20 19 19 19 19 19 19 19 19 19 19 19 18 18 17 16 16 16 15 16 16 16 17 17 18 18 18 18 18 18 17 17 17 16 16 15 15 15 15 14 13 12 11 10 9 8 7 7 6 7 7 7 7 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 11 12 13 13 14 15 16 16 16 15 15 15 14 13 12 12 11 10 9 8 8 7 6 6 5 5 5 5 6 6 6 7 7 7 8 8 8 8 9 9 9 9 10 10 11 11 12 12 12 13 13 13 13 13 13 13 13 13 13 14 15 15 16 17 18 18 19 20 21 21 21 20 19 18 17 18 19 19 20 21 21 22 23 24 25 26 27 29 30 31 32 33 34 35 36 36 37 37 37 37 37 37 37 37 37 37 37 37 37 37 38 38 39 39 40 40 40 40 39 38 37 36 35 34 33 32 31 30 29 29 28 27 26 25 24 23 23 22 21 21 21 21 21 21 22 22 23 23 24 24 24 24 25 26 26 26 26 26 27 28 28 28 27 27 27 28 28 29 30 30 30 30 30 29 29 28 26 25 24 -37 -40 -39 -34 -30 -29 -34 -47 -57 -57 -59 -64 -70 -74 -75 -75 -73 -72 -72 -75 -76 -76 -74 -71 -66 -62 -58 -58 -60 -64 -66 -68 -70 -73 -75 -76 -75 -72 -67 -62 -57 -54 -53 -51 -48 -45 -41 -38 -34 -31 -27 -24 -22 -21 -19 -18 -16 -13 -11 -8 -5 -2 2 5 6 5 2 -0 -2 -4 -5 -5 -4 -4 -5 -5 -5 -4 -4 -3 -1 1 2 4 6 8 10 11 12 12 11 10 9 7 3 0 3 5 4 3 3 2 2 2 2 1 1 0 -0 -1 -1 -2 -2 -1 -1 -0 0 1 2 4 6 7 7 8 9 9 10 10 9 9 8 8 9 11 12 13 14 14 15 16 17 18 18 18 18 18 19 19 19 20 20 20 20 20 20 21 21 21 21 21 21 21 21 21 21 21 20 20 20 19 19 18 17 17 16 16 16 16 17 17 18 18 19 19 19 19 18 18 18 18 17 17 17 16 16 16 15 15 14 13 12 11 10 9 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 10 10 11 11 12 12 13 14 15 16 16 17 17 16 16 15 14 13 13 12 11 10 9 8 7 6 6 5 5 5 6 6 6 6 6 6 7 7 7 8 8 9 9 9 9 10 10 11 11 12 12 12 12 12 12 12 12 12 12 12 12 13 13 14 15 15 16 17 18 19 20 21 21 20 19 17 16 16 16 17 17 18 18 19 20 21 22 23 24 25 26 27 28 29 30 32 33 34 34 35 36 36 37 37 37 37 37 37 37 37 37 37 37 37 37 38 38 39 39 40 40 40 39 38 38 37 36 35 34 33 32 31 30 29 28 27 26 26 25 24 23 23 22 21 21 21 21 22 22 23 24 24 25 25 25 25 25 26 26 26 27 27 28 28 27 27 27 27 28 28 29 30 30 31 31 31 31 30 29 28 26 25 -38 -43 -46 -43 -37 -36 -40 -48 -56 -58 -61 -66 -71 -74 -75 -75 -74 -74 -75 -77 -77 -76 -74 -70 -65 -60 -56 -56 -59 -63 -65 -67 -69 -71 -73 -73 -71 -67 -62 -57 -53 -51 -50 -48 -45 -42 -39 -36 -33 -29 -26 -24 -22 -21 -20 -18 -17 -14 -12 -10 -7 -3 0 3 4 2 -1 -3 -4 -4 -3 -3 -4 -4 -4 -4 -4 -4 -4 -3 -2 -1 0 2 5 7 9 10 10 10 11 11 11 10 7 2 2 5 5 3 3 2 2 2 2 1 1 1 0 -0 -0 -1 -1 -1 -0 -0 0 1 3 5 7 8 8 8 9 9 10 9 9 8 7 8 9 10 10 10 11 12 13 15 16 17 17 18 18 18 18 19 20 20 20 21 21 21 21 22 22 23 23 23 23 23 23 23 22 22 21 21 20 20 19 18 18 17 17 17 17 17 17 18 18 19 19 20 20 19 19 18 18 18 18 18 18 17 17 17 16 16 15 15 14 13 12 11 10 10 10 10 10 10 11 11 11 11 10 10 10 10 10 9 9 10 10 10 11 11 11 11 11 11 11 11 11 12 12 13 13 14 15 16 17 17 17 18 17 17 16 15 14 13 11 10 8 7 6 6 5 5 6 6 6 6 7 7 7 7 7 7 7 8 8 8 9 9 10 10 10 11 11 12 12 12 12 12 12 12 11 11 11 11 11 12 12 13 14 14 15 16 17 18 19 20 20 19 17 16 15 15 15 15 15 15 16 16 17 18 19 20 21 22 23 25 26 27 28 29 30 31 32 33 34 35 35 36 36 36 37 37 37 37 36 36 36 37 37 37 37 37 38 38 39 39 39 39 38 38 37 37 36 35 34 33 32 31 30 29 28 27 27 26 25 24 23 23 22 22 22 22 22 23 24 24 25 25 25 25 26 26 26 27 27 27 28 28 28 27 27 28 28 28 29 30 30 31 31 32 31 31 30 29 27 26 -39 -45 -50 -49 -43 -41 -42 -48 -56 -59 -62 -67 -72 -74 -75 -75 -75 -75 -76 -78 -79 -77 -74 -70 -65 -59 -55 -55 -58 -62 -64 -66 -68 -69 -70 -69 -67 -63 -59 -55 -52 -50 -48 -45 -42 -39 -37 -34 -31 -28 -25 -24 -23 -22 -21 -19 -18 -16 -14 -12 -8 -4 -1 0 0 -1 -4 -5 -4 -3 -2 -2 -3 -3 -3 -3 -4 -4 -4 -4 -4 -4 -2 1 4 7 8 8 9 10 11 12 13 13 11 5 3 3 5 4 3 3 3 2 2 2 1 1 1 1 0 0 -0 -0 -0 -0 -0 1 3 5 7 8 8 9 9 9 9 9 8 7 7 7 8 8 7 7 8 10 12 14 15 16 17 17 18 18 18 19 20 20 21 21 21 22 22 23 24 24 25 25 25 25 24 24 24 23 23 22 21 20 19 19 18 17 17 17 17 17 18 18 19 19 20 20 20 20 19 19 18 18 18 18 18 18 18 17 17 17 16 15 15 14 13 12 12 11 11 11 12 12 13 13 13 13 13 13 12 12 12 11 10 10 10 10 10 11 11 11 11 11 12 12 12 12 13 13 14 15 16 16 17 18 18 19 19 18 18 17 16 14 13 11 9 7 5 5 4 4 5 5 6 7 7 8 8 8 8 8 8 8 8 8 9 9 9 10 10 10 11 11 11 12 12 12 11 11 11 10 10 10 10 11 11 12 13 13 14 15 16 17 19 19 19 18 16 15 15 14 14 13 13 13 13 13 14 15 16 17 18 20 21 23 24 25 26 28 29 30 31 31 32 33 33 34 35 35 36 36 36 36 36 36 36 36 36 36 36 36 36 37 37 38 38 38 38 38 38 37 37 36 36 35 33 32 31 30 29 29 28 27 27 26 25 24 23 23 23 22 23 23 23 24 25 25 26 26 26 26 26 27 27 27 28 28 28 28 28 28 28 29 30 30 31 31 32 32 32 31 30 29 28 27 -40 -44 -50 -50 -46 -43 -44 -48 -56 -60 -63 -68 -71 -73 -74 -74 -75 -76 -77 -78 -79 -78 -75 -71 -66 -59 -54 -54 -57 -61 -64 -65 -67 -68 -68 -66 -64 -61 -58 -55 -53 -49 -46 -42 -40 -37 -35 -32 -28 -26 -24 -23 -23 -22 -21 -20 -19 -18 -16 -13 -9 -6 -3 -3 -3 -5 -6 -5 -4 -2 -1 -1 -2 -2 -2 -2 -3 -4 -4 -5 -5 -4 -2 1 3 5 7 7 8 10 12 14 15 15 14 10 5 3 5 5 4 4 3 3 2 2 2 2 1 1 1 0 0 -0 -1 -1 -0 1 3 5 7 8 8 8 9 9 9 8 8 7 7 6 6 5 4 5 6 9 11 13 14 15 16 17 18 18 19 19 20 21 21 22 22 23 23 24 25 26 26 26 26 26 26 26 25 25 24 23 22 21 20 20 19 18 18 18 18 18 18 19 19 20 20 20 20 20 19 19 19 18 18 18 18 18 18 18 17 17 16 16 15 14 13 13 12 12 12 12 12 13 14 14 15 15 15 15 15 15 14 14 13 12 11 10 10 10 10 11 11 12 12 13 13 14 14 15 15 16 17 17 18 18 19 19 19 19 18 17 16 15 13 12 10 8 6 4 3 3 3 4 5 6 7 8 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 11 11 11 11 10 10 10 9 9 9 10 10 11 11 12 13 14 15 17 18 19 19 18 17 16 15 14 14 13 12 11 11 11 11 11 12 13 14 16 18 20 21 23 24 26 27 28 29 30 30 31 31 32 33 34 34 35 35 36 36 36 36 36 36 35 35 35 35 35 36 36 37 37 37 38 38 38 37 37 37 36 35 34 33 32 31 30 30 29 28 27 26 25 24 24 23 23 23 23 23 24 24 25 25 26 26 26 27 27 27 28 28 28 28 28 28 28 29 30 30 31 32 32 32 32 32 31 31 30 29 28 -41 -43 -47 -49 -47 -47 -47 -49 -55 -60 -65 -68 -70 -72 -73 -73 -74 -75 -76 -77 -78 -77 -76 -73 -68 -60 -53 -52 -55 -60 -63 -64 -65 -65 -65 -65 -64 -62 -60 -57 -53 -48 -44 -41 -39 -36 -33 -29 -27 -25 -24 -23 -23 -22 -22 -21 -20 -19 -16 -13 -10 -8 -6 -6 -6 -7 -6 -4 -2 -1 -0 -0 -1 -0 0 -0 -2 -3 -4 -5 -5 -4 -1 1 3 5 5 6 7 10 13 14 15 15 14 12 8 5 6 5 5 4 3 3 3 3 3 2 2 2 1 1 0 -0 -1 -1 -0 1 3 5 6 7 7 7 8 8 8 8 8 7 6 5 4 2 2 3 6 8 11 12 14 15 16 17 18 19 19 20 20 21 22 23 24 24 25 25 26 27 27 27 27 27 27 27 27 27 26 25 24 23 22 21 20 20 20 19 19 19 20 20 21 21 21 21 21 20 20 20 19 19 19 19 19 19 19 18 18 17 16 15 15 14 13 13 12 12 11 11 12 12 13 14 14 15 16 16 17 17 17 16 15 14 13 12 11 11 11 11 11 12 13 13 14 15 16 17 18 18 18 19 19 19 19 19 18 18 18 17 16 15 14 12 11 9 7 5 3 2 2 2 2 3 5 6 8 9 10 10 10 10 10 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 8 8 8 8 9 10 10 11 12 13 15 16 18 19 19 19 18 17 17 16 14 13 12 11 11 10 9 9 9 10 11 12 14 16 18 20 22 23 25 26 27 28 29 29 30 30 31 32 33 33 34 35 35 35 36 36 35 35 35 34 34 34 34 34 35 35 36 36 36 37 37 37 37 37 36 36 35 34 33 32 31 30 29 29 28 27 26 25 24 24 23 23 23 23 24 24 25 25 26 26 27 27 28 28 28 27 28 28 28 29 29 30 31 32 33 33 33 33 32 32 31 30 29 28 -42 -44 -46 -48 -49 -50 -50 -51 -54 -59 -64 -68 -69 -70 -72 -73 -73 -74 -74 -75 -75 -75 -73 -72 -69 -62 -54 -51 -53 -57 -60 -61 -62 -63 -64 -64 -63 -62 -59 -55 -51 -47 -44 -42 -39 -36 -32 -29 -28 -27 -25 -25 -24 -24 -23 -22 -21 -19 -16 -14 -12 -10 -10 -9 -9 -8 -6 -4 -2 -1 0 1 1 2 2 1 -1 -2 -2 -3 -2 -1 1 2 4 5 5 6 7 10 12 14 14 13 13 13 11 7 6 5 4 3 3 3 3 3 3 3 3 2 2 1 1 0 -0 -0 0 1 2 3 5 5 6 6 7 8 8 8 7 5 4 3 2 1 2 3 6 8 10 12 13 15 16 18 19 19 20 21 22 23 24 25 26 27 27 27 28 28 29 29 29 29 29 29 29 28 27 27 26 25 24 23 22 22 21 21 21 21 21 22 22 22 22 22 22 21 21 20 20 20 20 20 20 19 19 18 18 17 16 15 14 14 13 12 11 11 11 11 11 11 11 12 12 14 15 16 17 17 17 17 17 16 15 15 14 13 13 12 12 13 13 14 16 17 18 19 20 20 21 21 20 20 19 19 18 18 17 16 16 15 14 13 11 10 8 6 4 3 2 1 1 1 2 3 5 7 9 10 10 11 10 10 10 9 9 9 9 9 8 8 8 8 8 8 8 8 8 8 7 7 7 8 8 9 9 10 11 12 13 15 17 18 19 19 19 19 18 17 16 15 13 12 11 10 9 8 8 8 9 10 11 12 14 16 18 20 22 23 25 26 27 28 28 29 29 30 31 32 33 34 34 35 35 35 35 35 35 34 34 33 33 33 33 34 34 35 35 35 36 36 36 37 37 37 36 36 35 33 32 31 31 30 29 28 27 26 26 25 24 24 24 24 24 24 25 25 26 26 26 27 27 28 28 28 28 28 28 29 30 31 32 33 34 34 34 34 33 32 32 31 30 30 -44 -45 -47 -50 -52 -53 -53 -52 -53 -56 -60 -65 -68 -69 -71 -72 -72 -72 -73 -74 -74 -72 -70 -69 -68 -65 -57 -51 -49 -52 -57 -59 -60 -62 -62 -61 -59 -58 -56 -53 -49 -46 -44 -41 -39 -36 -33 -31 -30 -28 -27 -26 -26 -25 -25 -23 -21 -19 -17 -15 -13 -13 -12 -11 -10 -8 -6 -4 -2 -0 1 2 3 3 3 2 1 2 2 2 2 3 3 4 5 5 5 6 7 10 12 13 13 13 14 16 15 13 10 8 5 3 2 2 3 3 4 4 4 4 4 3 2 2 1 1 0 1 2 3 4 4 5 6 7 7 7 6 5 3 2 1 1 2 3 4 5 7 9 12 13 15 16 17 18 19 21 22 23 25 26 27 28 29 30 30 31 31 31 31 31 31 31 31 30 30 29 28 27 27 26 25 25 24 24 23 23 23 23 23 24 24 24 23 23 22 21 21 21 21 21 21 20 20 19 18 17 17 16 15 14 13 12 11 11 10 9 9 9 9 9 9 10 12 13 14 15 15 16 17 17 17 17 16 16 15 15 14 14 14 14 15 16 17 19 20 21 22 23 23 23 22 21 20 19 18 17 17 16 15 14 13 12 10 8 7 5 3 2 1 0 -0 0 1 3 5 7 8 10 10 11 11 11 10 10 9 9 9 9 8 8 7 7 7 6 6 6 6 6 6 7 7 7 8 8 9 10 11 12 14 15 16 17 17 18 18 18 18 18 16 15 13 12 10 9 7 7 7 7 8 9 10 11 13 14 16 18 20 21 23 25 26 26 27 28 29 29 30 31 32 33 33 34 34 34 35 34 34 34 33 33 33 33 33 33 33 34 34 35 35 35 36 36 37 37 37 36 35 34 33 32 31 30 30 29 28 27 27 26 25 25 24 24 24 24 25 25 26 26 27 27 27 27 28 28 29 29 29 30 31 32 33 34 35 35 34 34 33 32 32 31 31 -45 -47 -49 -51 -53 -54 -54 -54 -54 -53 -57 -62 -67 -70 -70 -71 -71 -71 -72 -73 -72 -69 -67 -65 -64 -63 -59 -52 -49 -50 -53 -56 -58 -59 -59 -58 -57 -56 -54 -50 -47 -45 -44 -42 -39 -37 -35 -33 -31 -30 -29 -28 -28 -27 -26 -24 -21 -19 -17 -16 -15 -14 -13 -11 -10 -8 -6 -4 -2 0 2 4 5 5 5 5 5 7 7 7 7 6 6 6 6 6 7 8 9 11 13 14 16 17 19 22 24 22 19 17 12 8 5 5 5 6 7 7 8 8 8 7 6 5 3 2 1 1 2 2 3 4 5 6 6 6 5 4 2 0 0 1 2 3 3 4 5 6 9 12 13 14 14 15 17 19 21 23 25 27 28 29 30 31 31 32 33 33 33 34 33 33 33 33 32 31 30 29 29 28 28 28 28 27 27 26 26 25 25 25 25 25 25 25 24 23 22 21 21 21 21 21 20 20 19 18 17 16 16 15 14 12 11 10 10 9 8 8 7 8 8 8 9 10 11 11 12 12 13 14 15 16 17 17 17 16 16 15 15 15 15 15 16 17 19 20 21 22 23 24 25 25 25 24 22 21 20 19 18 17 16 14 13 11 9 7 5 3 2 1 -0 -1 -1 -0 1 3 5 7 8 9 10 11 11 11 11 10 10 9 9 8 8 7 7 6 5 4 4 4 4 5 5 6 6 7 7 8 8 10 11 13 14 15 15 15 16 16 17 17 17 17 15 13 12 10 8 7 6 6 6 6 7 8 9 10 11 13 14 16 18 20 22 23 25 26 26 27 28 29 30 31 31 32 32 33 33 34 34 34 34 34 33 33 32 32 32 32 33 33 33 34 34 35 35 36 36 37 36 36 35 34 33 33 32 31 31 30 29 28 28 27 26 25 25 25 25 25 25 26 26 26 26 26 27 27 28 29 30 30 31 31 32 33 34 35 35 35 34 34 33 33 32 32 -45 -47 -48 -49 -50 -53 -54 -54 -54 -51 -54 -59 -64 -68 -69 -70 -70 -71 -71 -72 -70 -67 -64 -63 -63 -63 -61 -57 -53 -50 -50 -53 -54 -55 -55 -55 -55 -53 -51 -49 -48 -47 -45 -44 -42 -39 -37 -34 -33 -31 -31 -30 -29 -28 -26 -23 -21 -19 -17 -17 -16 -15 -13 -11 -9 -7 -5 -3 -1 2 4 5 6 7 8 9 11 13 13 12 11 10 9 9 10 10 11 12 14 16 18 20 22 25 28 32 35 35 33 31 27 21 16 14 14 14 14 15 16 16 17 16 14 12 9 6 3 2 2 2 3 4 5 5 6 5 3 1 -1 -1 0 2 4 3 3 3 4 6 10 12 13 12 13 14 16 19 21 24 26 27 28 29 30 31 32 33 33 34 35 35 35 35 35 34 34 33 32 31 30 30 30 30 30 30 29 29 28 28 27 27 27 27 26 26 25 24 23 22 21 21 21 20 20 20 19 18 17 16 15 14 12 11 10 10 9 8 7 7 8 8 9 10 10 10 10 10 10 10 11 11 12 14 15 15 16 16 16 15 15 14 14 15 15 16 18 19 20 21 23 25 26 27 27 27 26 25 23 22 20 19 18 17 15 13 11 9 7 4 2 1 -0 -1 -2 -1 -0 1 3 5 7 8 9 10 11 11 11 11 10 10 9 8 8 7 7 6 5 4 3 2 2 3 3 4 4 4 5 6 7 9 10 12 13 14 14 14 13 13 14 15 15 15 14 12 11 9 7 6 5 4 4 5 6 7 7 8 9 10 11 13 15 17 19 21 23 24 25 26 27 28 29 29 30 30 31 31 32 33 33 33 34 34 34 33 33 33 32 32 32 32 33 33 33 34 34 35 35 36 36 36 36 35 34 34 33 33 32 32 31 30 29 29 28 27 26 26 25 25 25 26 26 26 26 26 26 26 27 28 30 31 31 32 33 33 34 34 35 35 35 34 34 33 33 33 -46 -47 -47 -45 -46 -49 -52 -53 -53 -51 -51 -55 -61 -65 -68 -70 -70 -71 -72 -72 -70 -66 -64 -64 -64 -64 -65 -63 -58 -52 -48 -48 -49 -50 -51 -52 -52 -51 -50 -49 -49 -48 -48 -47 -44 -41 -38 -36 -35 -34 -32 -31 -29 -27 -24 -22 -20 -18 -18 -17 -16 -14 -12 -10 -8 -6 -4 -1 1 3 5 7 8 10 12 14 16 17 17 15 14 14 14 16 18 19 21 22 24 25 26 28 30 33 36 39 43 46 44 42 45 41 36 31 30 29 28 27 27 27 27 27 25 22 18 13 8 4 2 2 3 3 4 5 5 4 1 -1 -2 -1 1 3 3 2 2 2 3 6 10 12 11 11 11 13 15 18 20 22 24 25 27 28 29 30 31 32 33 34 35 35 36 36 35 35 34 34 33 32 32 32 32 33 32 32 32 31 30 30 29 29 28 28 27 27 26 25 24 23 22 21 20 20 20 19 18 18 16 15 13 12 10 10 9 9 8 7 6 7 9 11 12 12 12 12 12 12 12 12 11 11 11 11 12 13 13 14 14 14 14 13 13 13 14 15 17 18 19 20 22 24 26 27 28 28 28 28 26 25 23 22 20 19 17 16 14 11 9 6 4 2 -0 -1 -2 -2 -1 0 2 4 6 8 9 10 11 11 12 11 11 10 10 9 8 7 7 6 5 4 2 1 1 1 1 1 2 2 3 5 6 7 9 10 12 13 13 13 12 12 11 12 12 12 11 10 9 7 6 4 3 2 2 2 3 4 5 5 6 7 8 9 11 14 16 19 21 23 24 26 27 28 28 29 29 30 30 30 31 32 32 33 33 34 34 34 34 33 33 33 33 32 32 32 33 33 33 34 35 35 36 36 36 35 35 35 34 34 34 33 32 32 31 30 30 29 28 28 27 26 26 26 26 26 26 26 26 26 27 27 29 30 31 32 33 34 34 35 35 35 35 35 35 34 34 33 -46 -48 -50 -49 -45 -46 -49 -51 -52 -51 -51 -54 -59 -63 -66 -69 -71 -73 -74 -73 -71 -68 -66 -66 -66 -66 -68 -67 -63 -56 -50 -46 -46 -46 -47 -48 -48 -48 -49 -49 -50 -50 -50 -48 -45 -43 -40 -39 -37 -35 -33 -31 -29 -26 -23 -21 -20 -19 -18 -17 -15 -13 -11 -8 -6 -4 -2 1 3 5 6 8 10 13 16 18 19 19 18 18 19 21 24 27 30 32 34 35 36 35 34 34 35 37 40 42 45 49 48 43 49 52 52 49 47 45 42 39 36 35 35 34 33 31 27 23 16 9 4 2 2 3 4 5 5 3 0 -2 -3 -0 2 3 2 0 0 1 3 6 9 9 9 9 10 12 14 16 17 19 21 22 24 25 27 28 29 30 32 33 35 36 36 36 36 35 35 35 34 34 34 34 34 34 33 33 32 32 31 31 30 30 29 29 28 27 26 25 24 23 22 21 20 19 19 18 17 16 15 13 11 9 8 8 8 8 7 5 6 9 12 14 15 14 14 15 16 16 17 16 15 14 13 12 12 11 11 12 12 12 12 12 12 12 13 14 16 17 18 19 21 22 24 25 26 27 27 28 28 27 25 24 22 21 19 18 16 14 11 9 6 4 2 0 -1 -1 -1 0 2 4 6 8 10 11 12 12 12 12 12 12 11 10 9 8 7 6 5 4 3 2 1 -0 -1 -0 0 1 3 4 5 5 6 8 9 11 11 11 11 10 10 9 9 9 8 8 7 6 5 3 2 1 0 -0 0 1 1 2 2 3 4 5 7 10 13 16 19 21 23 25 26 27 28 29 29 29 30 30 31 31 32 32 33 33 34 34 34 34 34 33 33 33 33 33 33 33 33 34 34 35 35 36 36 36 35 35 35 35 35 34 34 33 33 32 31 31 30 30 29 28 27 27 27 27 26 26 26 26 26 27 28 29 31 32 33 34 34 35 35 36 36 36 35 35 35 34 -43 -46 -50 -51 -47 -46 -48 -51 -53 -54 -52 -54 -57 -60 -63 -68 -71 -73 -74 -74 -73 -70 -69 -68 -68 -69 -70 -69 -67 -61 -55 -49 -46 -44 -44 -45 -44 -45 -47 -49 -50 -51 -50 -48 -45 -44 -43 -41 -38 -36 -34 -31 -28 -25 -24 -22 -21 -20 -19 -17 -15 -13 -10 -8 -5 -3 -1 2 4 6 7 10 13 15 17 18 19 19 21 23 26 30 34 37 39 40 41 42 42 40 39 37 37 39 40 40 42 45 47 41 43 47 50 50 49 48 44 41 38 36 36 35 34 33 32 30 25 17 9 3 1 2 3 4 5 4 1 -2 -2 0 1 1 -0 -1 -0 1 3 5 7 7 7 9 10 12 13 13 14 15 17 19 21 23 25 26 28 30 31 33 35 37 37 37 37 37 36 36 35 35 35 35 35 34 34 33 32 31 31 30 30 30 29 29 28 27 27 25 24 23 22 21 19 18 17 17 16 14 12 10 8 6 5 6 6 5 4 4 5 10 14 16 17 16 16 18 19 21 21 21 21 20 19 17 15 13 13 12 12 11 11 11 11 11 12 14 15 17 18 19 20 21 22 24 24 25 25 26 27 27 27 26 24 23 21 20 18 16 14 12 10 7 5 3 1 1 1 2 4 6 8 10 11 12 13 13 13 13 13 13 13 12 11 9 8 6 6 5 4 3 1 0 -0 -0 0 1 2 2 3 3 4 5 6 7 8 9 9 9 8 8 7 6 6 5 5 4 3 2 1 -0 -1 -1 -1 -1 -1 -1 -1 -1 0 1 3 6 9 13 16 20 22 24 25 27 28 28 29 29 30 30 31 31 31 32 32 33 33 34 34 34 34 34 34 33 33 33 33 33 33 34 34 34 35 35 35 36 36 35 35 35 35 35 35 35 34 33 33 32 32 31 31 30 29 28 28 27 27 27 27 27 27 27 28 29 30 31 33 34 34 35 36 36 36 36 36 36 36 36 -40 -43 -48 -52 -51 -48 -48 -51 -54 -56 -54 -54 -56 -58 -61 -67 -70 -72 -73 -73 -73 -72 -71 -71 -71 -72 -71 -70 -69 -66 -62 -56 -49 -46 -45 -43 -41 -41 -45 -48 -49 -49 -48 -47 -46 -45 -44 -41 -39 -37 -35 -32 -30 -28 -27 -25 -24 -22 -20 -18 -15 -12 -10 -8 -5 -3 -0 2 5 7 10 12 15 17 19 19 20 22 25 28 32 35 38 40 41 41 41 41 41 41 40 38 38 38 38 37 36 38 42 41 39 41 43 45 44 42 40 38 36 35 34 33 32 31 31 31 30 25 16 7 2 1 3 4 5 4 2 -1 -1 0 0 -0 -1 -1 -0 1 3 4 4 5 7 8 10 11 10 10 11 12 14 17 19 22 24 26 28 30 32 34 36 38 39 39 39 39 38 38 37 37 37 37 36 35 34 33 32 31 30 30 30 30 29 29 28 27 26 26 24 23 22 21 19 18 16 15 13 12 9 7 5 3 3 4 4 3 2 2 5 10 14 17 18 17 18 20 23 25 26 26 26 25 25 23 21 19 17 16 15 14 12 12 11 11 12 13 14 16 17 19 20 21 22 24 25 25 25 25 26 27 27 27 26 25 23 21 20 19 17 15 13 11 9 6 4 3 3 4 5 7 9 11 12 13 14 14 14 14 14 14 14 14 13 11 10 8 6 5 4 3 2 1 1 0 0 0 0 0 0 1 1 2 3 4 5 5 6 6 6 6 6 5 5 4 4 3 2 1 -1 -2 -2 -2 -1 -1 -1 -1 -2 -2 -2 -1 0 3 6 10 14 18 20 22 24 25 26 27 28 29 29 30 31 31 31 32 32 33 33 33 33 34 34 34 34 34 33 33 33 34 34 34 34 35 35 35 35 36 36 36 36 36 36 36 36 36 35 35 34 34 33 33 32 32 31 30 29 28 28 27 27 27 27 27 28 29 30 31 32 33 34 35 35 36 37 37 37 37 37 37 -40 -42 -47 -52 -53 -50 -49 -51 -55 -57 -55 -54 -55 -57 -60 -65 -68 -70 -71 -71 -72 -72 -72 -72 -73 -72 -71 -70 -69 -68 -66 -62 -56 -52 -48 -45 -41 -38 -40 -44 -46 -47 -46 -46 -45 -43 -42 -41 -39 -37 -35 -34 -33 -32 -30 -28 -26 -24 -21 -18 -15 -12 -10 -7 -5 -3 1 4 7 10 13 15 17 19 21 22 24 27 29 32 34 36 38 39 39 38 38 37 38 38 38 37 36 35 35 36 35 35 38 41 39 37 38 41 40 39 37 36 35 34 33 32 30 29 29 29 31 29 23 13 4 1 2 4 5 5 3 1 1 0 -0 -1 -1 -1 -0 1 2 3 3 5 7 8 9 9 9 9 9 11 13 16 19 21 24 26 29 31 32 34 36 38 40 42 42 41 41 40 40 40 39 39 38 37 36 34 33 32 31 31 30 30 29 29 28 27 27 25 24 23 22 20 19 17 15 13 11 9 6 4 2 2 2 3 2 2 1 2 5 9 14 17 17 17 19 22 25 28 29 29 30 31 31 30 28 26 24 22 21 18 16 14 13 12 12 12 13 15 16 19 21 22 24 26 27 28 28 27 27 27 27 28 28 27 25 23 22 21 20 19 17 14 12 9 7 6 5 6 7 9 10 12 13 13 14 14 14 14 14 15 15 15 14 13 12 10 8 6 5 4 3 2 1 1 -0 -1 -2 -2 -2 -1 -0 0 1 1 1 1 2 2 3 4 4 4 4 3 3 1 0 -1 -3 -3 -3 -3 -2 -1 -1 -0 -1 -1 -1 -1 -0 2 5 9 13 16 18 20 21 23 24 25 26 27 28 29 30 31 31 32 32 33 33 33 33 33 33 33 33 33 33 33 33 34 34 35 35 35 36 36 36 36 36 36 36 36 36 36 36 36 36 36 35 35 35 34 34 33 33 32 31 30 29 28 28 27 27 28 28 29 30 30 31 32 33 34 35 36 37 37 38 38 39 38 -43 -43 -45 -51 -52 -52 -51 -52 -55 -57 -56 -54 -55 -57 -60 -64 -67 -69 -69 -69 -70 -71 -71 -72 -71 -70 -69 -69 -67 -65 -63 -61 -58 -56 -54 -50 -45 -40 -40 -42 -44 -45 -45 -43 -41 -40 -40 -40 -39 -38 -38 -37 -36 -35 -32 -30 -28 -25 -22 -19 -16 -13 -10 -7 -5 -2 2 6 10 13 16 19 21 23 24 26 27 29 31 32 34 35 36 37 36 35 34 34 34 35 35 34 32 32 34 37 37 36 37 41 39 35 35 37 38 38 37 35 35 34 33 32 31 29 28 27 29 30 27 19 9 3 3 4 5 5 4 3 2 1 0 -0 -1 -0 -0 0 1 2 4 5 6 6 7 8 8 8 9 11 14 17 19 22 24 26 29 31 32 33 35 38 41 43 43 43 42 41 41 41 41 41 40 39 37 36 35 34 34 33 33 32 31 30 30 29 27 26 24 23 22 20 18 16 14 11 9 7 4 3 2 2 2 2 2 1 1 2 5 9 12 15 16 16 19 23 27 30 31 32 33 35 36 36 35 33 31 29 27 24 21 18 16 14 13 13 13 14 16 19 22 24 26 28 30 31 32 31 29 28 28 28 28 28 27 25 23 22 22 21 20 18 16 13 10 8 7 7 7 9 10 11 11 12 13 13 13 14 14 14 14 15 15 14 13 11 9 8 6 5 4 3 1 -0 -2 -3 -4 -4 -3 -2 -1 -1 -1 -1 -1 -2 -2 -2 -1 1 2 3 3 3 2 1 -1 -3 -4 -5 -4 -4 -3 -2 -1 -0 0 0 0 0 2 4 6 9 12 14 16 17 18 19 20 21 23 24 25 27 28 29 30 31 32 32 33 33 33 33 33 33 33 33 33 33 34 34 35 35 36 36 36 36 36 36 36 36 36 36 36 36 36 36 36 36 36 36 36 35 35 34 34 34 33 32 31 30 29 28 28 28 28 29 30 30 31 32 32 33 34 35 36 37 38 39 39 39 -46 -44 -45 -49 -50 -52 -53 -54 -55 -57 -57 -55 -55 -56 -58 -61 -64 -66 -66 -66 -67 -67 -67 -67 -67 -67 -67 -66 -64 -62 -59 -58 -57 -57 -57 -54 -50 -44 -41 -41 -41 -41 -40 -39 -38 -39 -40 -41 -40 -41 -41 -40 -38 -37 -34 -32 -29 -27 -24 -20 -16 -13 -9 -6 -3 -0 4 8 13 17 20 23 25 26 27 28 28 29 30 31 33 34 35 35 34 33 32 32 32 33 32 31 30 32 35 38 40 39 38 39 38 35 33 34 36 38 37 36 35 35 34 32 31 29 27 26 27 29 28 24 15 7 5 5 6 6 5 5 4 3 1 1 0 0 0 -0 1 2 4 4 5 5 5 6 7 8 9 11 14 16 19 21 23 25 27 29 30 31 33 37 41 42 41 40 39 38 38 39 40 40 39 38 36 36 35 35 36 36 36 35 35 34 32 31 29 27 25 23 22 20 18 15 13 10 8 6 5 4 3 2 2 1 1 0 1 2 4 8 11 14 15 16 19 24 28 30 31 32 35 37 39 39 38 36 34 32 30 27 23 20 17 16 15 14 14 15 17 20 24 26 27 29 31 33 35 35 33 31 30 29 29 28 28 27 25 24 23 23 22 21 19 17 14 12 10 9 9 9 9 9 9 10 11 12 13 13 13 13 14 14 14 14 14 12 10 9 7 6 4 3 1 -1 -2 -3 -3 -3 -3 -2 -2 -1 -1 -2 -2 -3 -4 -4 -3 -2 -0 1 2 2 2 0 -1 -3 -5 -5 -5 -4 -3 -2 -1 0 1 1 2 2 3 4 6 8 10 11 12 13 13 14 15 17 18 20 22 24 26 27 29 30 31 32 32 33 33 33 33 33 33 33 33 34 34 35 35 35 36 37 37 37 37 37 37 37 37 37 37 37 37 37 37 37 37 37 37 37 36 36 36 35 35 34 33 32 31 30 29 29 29 30 30 31 31 31 32 33 34 35 36 37 38 39 40 40 -48 -45 -46 -48 -49 -50 -52 -54 -55 -57 -57 -55 -55 -55 -57 -59 -61 -62 -62 -61 -61 -62 -61 -61 -63 -64 -64 -63 -61 -58 -56 -55 -56 -57 -57 -55 -51 -46 -43 -40 -37 -35 -35 -35 -36 -39 -41 -43 -43 -44 -43 -42 -39 -37 -35 -33 -31 -28 -24 -20 -16 -12 -8 -4 -1 2 7 11 15 20 24 27 28 29 29 29 28 28 28 30 31 33 34 34 34 33 32 32 32 32 31 30 30 35 38 40 40 40 39 38 37 35 32 31 32 37 38 37 36 35 34 32 30 28 27 25 25 26 26 25 20 12 9 8 8 8 7 6 6 4 3 2 1 1 0 0 1 2 3 3 3 4 4 5 6 7 9 10 12 14 17 19 21 23 25 26 27 29 32 36 39 38 37 35 33 33 33 34 34 35 34 34 33 32 32 33 35 36 38 38 38 37 35 34 32 30 28 25 23 21 18 16 13 11 8 7 6 5 4 2 1 0 -1 -1 -1 1 4 8 11 13 15 17 20 24 27 29 29 31 33 36 38 38 36 34 32 30 28 25 22 20 18 17 16 15 16 17 19 22 25 28 29 30 31 32 35 36 36 35 33 31 29 29 28 28 27 25 24 23 23 23 22 21 19 17 15 13 11 10 10 9 9 9 10 11 12 12 13 13 14 14 14 14 13 13 11 9 7 6 4 2 1 -0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -2 -2 -2 -3 -3 -2 -2 -1 0 1 2 2 1 -1 -2 -4 -4 -4 -3 -2 -1 -0 1 1 2 3 3 3 4 4 5 6 6 7 7 8 9 10 11 13 16 18 21 23 25 27 29 30 31 32 32 33 33 33 33 33 34 34 34 35 35 36 36 37 37 37 38 38 38 38 38 38 38 38 38 38 38 38 38 38 38 38 38 38 37 37 37 36 36 35 34 33 32 31 31 31 31 31 31 31 32 32 33 33 34 35 36 38 39 39 40 -49 -47 -47 -47 -46 -48 -51 -54 -55 -56 -55 -54 -53 -54 -55 -55 -56 -58 -58 -57 -56 -56 -55 -56 -58 -60 -61 -60 -59 -57 -54 -53 -53 -55 -55 -53 -50 -46 -42 -37 -33 -31 -31 -33 -37 -41 -44 -45 -45 -45 -43 -40 -38 -35 -34 -33 -31 -27 -23 -20 -16 -11 -5 -1 2 5 9 14 19 24 28 30 31 30 29 28 27 26 27 29 31 33 34 34 34 34 33 32 31 31 30 29 31 40 40 40 40 39 38 36 35 34 32 29 27 34 36 37 36 35 33 31 28 27 25 24 22 22 22 22 20 16 12 11 10 10 9 8 6 5 4 2 1 1 1 2 2 3 3 2 2 3 4 5 7 8 8 9 10 12 14 16 18 20 22 23 25 27 30 33 36 34 32 30 29 28 29 29 30 30 30 30 30 30 30 31 32 33 35 37 37 37 36 35 35 33 32 29 26 23 20 18 15 13 10 9 7 6 4 2 1 -1 -2 -2 -2 -0 4 8 12 14 16 18 21 24 25 26 26 27 29 31 32 31 28 26 24 23 22 20 18 18 17 17 16 16 17 19 21 24 28 30 32 32 32 32 34 36 37 37 35 33 31 30 29 29 28 27 25 24 24 24 24 24 23 22 20 18 16 14 12 11 11 10 10 11 11 12 13 14 15 15 15 14 14 13 12 10 8 5 4 2 1 0 -0 0 0 1 1 1 0 0 0 0 0 1 1 1 1 1 2 2 3 3 3 2 0 -1 -2 -2 -2 -1 0 1 2 2 3 3 3 4 3 3 2 1 0 -0 -0 0 1 2 4 6 9 12 15 18 21 23 25 27 29 30 31 32 33 34 34 34 34 34 35 35 36 36 37 37 37 38 38 38 38 39 39 39 39 39 39 40 40 40 39 39 39 39 39 39 39 39 38 38 38 37 37 36 35 34 33 33 32 32 32 32 32 32 33 33 34 34 35 36 37 39 39 40 -49 -49 -49 -48 -46 -47 -50 -53 -54 -55 -53 -52 -51 -50 -51 -51 -52 -54 -55 -54 -51 -50 -50 -52 -54 -56 -58 -57 -57 -56 -53 -50 -49 -51 -51 -50 -47 -42 -38 -33 -30 -28 -29 -33 -39 -42 -44 -44 -44 -43 -39 -36 -35 -34 -34 -31 -28 -24 -21 -17 -13 -8 -3 2 5 8 12 17 23 28 31 32 32 30 29 28 27 26 27 29 31 33 35 35 36 36 35 32 30 29 28 28 32 42 41 40 39 38 37 34 31 32 32 28 23 27 32 35 35 34 32 29 27 25 23 21 20 18 17 16 15 14 13 11 11 9 8 6 5 3 2 1 0 1 2 3 4 3 3 2 2 3 4 6 8 9 9 9 9 11 13 15 16 18 19 21 23 25 28 31 32 31 29 28 27 26 26 27 27 28 28 29 29 29 30 31 32 33 34 34 33 33 32 32 34 35 36 34 31 27 23 21 19 16 13 11 8 6 4 2 -0 -1 -2 -2 -2 0 5 10 13 15 17 19 21 22 23 23 23 23 24 24 23 20 17 16 15 15 15 14 14 15 16 16 15 15 17 20 23 26 29 33 35 35 35 34 34 35 36 37 36 35 33 31 30 29 29 28 26 24 23 24 25 26 26 26 25 23 21 18 16 15 14 13 12 12 12 13 14 16 17 17 17 16 15 14 12 10 8 6 4 2 1 1 0 0 0 0 1 1 1 2 3 3 4 5 5 5 5 5 5 6 6 6 5 3 2 0 -0 -0 0 1 3 4 5 5 4 4 4 4 3 1 -1 -3 -5 -6 -7 -7 -6 -4 -2 1 4 8 11 15 18 21 24 26 27 29 31 32 33 34 34 35 35 35 36 36 37 37 38 38 38 39 39 39 39 39 39 40 40 40 41 41 42 42 42 41 41 41 41 40 40 40 40 39 39 39 39 38 37 36 35 35 34 34 34 34 34 34 34 34 34 35 36 37 38 39 39 39 -50 -50 -50 -49 -46 -47 -49 -52 -54 -54 -51 -49 -48 -48 -47 -47 -47 -50 -52 -51 -49 -46 -47 -49 -50 -52 -54 -54 -55 -55 -52 -47 -45 -45 -46 -46 -44 -39 -32 -29 -28 -29 -30 -33 -37 -39 -41 -41 -39 -37 -35 -35 -34 -33 -31 -27 -23 -20 -17 -13 -9 -4 1 4 8 12 16 22 27 31 33 33 32 31 30 29 27 27 28 30 32 33 34 35 36 35 33 31 29 30 30 30 34 42 40 39 38 37 35 30 26 29 31 27 20 18 24 31 34 32 30 28 25 23 21 20 18 16 14 12 11 10 10 9 8 6 5 2 0 -1 -1 -1 -1 0 2 4 4 4 3 2 2 3 4 7 9 10 10 10 11 12 14 15 16 17 19 20 22 24 26 28 29 28 27 26 25 25 26 26 27 27 28 28 29 30 32 33 34 35 35 34 33 32 30 29 30 32 34 36 35 32 27 24 21 18 15 12 8 5 2 1 -1 -1 -1 -1 -1 2 7 11 13 15 17 19 20 21 21 21 20 19 18 17 15 11 9 8 9 10 11 11 11 13 14 15 14 15 17 20 23 26 30 34 37 38 38 37 36 35 36 37 37 36 34 32 30 29 29 29 27 24 23 23 25 26 27 28 28 27 25 23 22 20 18 17 16 16 16 16 17 19 21 21 21 20 18 16 14 12 10 7 5 4 2 1 -0 -1 -1 -0 1 2 3 4 6 7 8 9 8 8 8 8 8 9 9 9 8 6 4 2 1 1 2 3 5 6 7 7 6 5 5 4 2 0 -3 -6 -8 -10 -11 -11 -10 -8 -6 -3 -0 3 7 11 15 19 21 24 26 27 29 30 32 32 33 34 35 36 37 37 38 38 38 39 39 39 40 40 40 40 40 40 41 41 42 43 44 44 44 44 43 43 43 42 42 42 41 41 41 41 40 40 39 38 37 37 36 36 36 35 35 35 35 35 35 36 36 37 38 39 40 40 -51 -52 -52 -51 -48 -48 -50 -52 -54 -54 -51 -48 -47 -46 -45 -44 -43 -46 -48 -49 -47 -44 -45 -47 -48 -49 -49 -51 -52 -53 -50 -45 -40 -39 -41 -42 -42 -37 -31 -30 -33 -35 -32 -30 -31 -34 -36 -36 -34 -33 -34 -34 -33 -31 -27 -23 -20 -17 -12 -8 -2 2 4 7 11 16 21 26 31 33 35 34 33 31 30 29 28 28 29 30 31 31 31 32 32 32 30 29 31 33 32 32 35 40 36 34 34 34 30 24 20 24 27 27 21 13 17 25 31 30 29 27 24 22 21 19 18 16 14 12 10 9 8 7 5 4 1 -1 -2 -3 -3 -2 -2 -0 1 3 4 4 4 4 3 3 5 7 10 11 12 13 14 15 16 17 17 18 19 20 21 22 24 25 26 25 24 24 24 24 26 27 28 28 29 30 31 32 33 35 36 37 37 36 34 33 31 30 30 30 30 31 32 32 30 27 23 19 16 12 8 4 1 -0 -1 -1 -0 -0 1 5 9 12 13 14 15 17 18 20 21 20 19 17 15 12 9 6 4 4 4 6 7 8 10 12 13 14 14 15 17 20 22 25 29 33 37 39 40 40 38 36 35 36 37 37 35 33 31 29 29 28 27 24 22 22 24 26 27 28 29 30 29 28 27 25 24 23 22 22 21 21 22 24 25 26 26 25 23 20 17 15 12 10 8 5 3 1 -1 -1 -1 0 2 3 5 7 9 10 11 11 10 9 9 8 9 10 11 11 10 8 6 4 2 2 3 4 6 7 8 8 7 6 5 3 1 -2 -5 -8 -10 -11 -11 -11 -9 -8 -6 -4 -1 2 5 8 11 15 18 21 24 26 27 29 30 31 31 32 33 34 36 37 38 39 39 39 40 40 40 40 40 40 41 41 41 42 43 44 45 45 46 46 46 45 45 44 44 43 43 43 43 42 42 42 41 40 39 39 39 38 38 37 37 36 37 37 37 37 38 38 39 40 40 40 -54 -53 -53 -51 -49 -49 -50 -53 -54 -54 -51 -48 -47 -45 -44 -42 -41 -43 -45 -47 -46 -44 -44 -45 -47 -47 -46 -46 -48 -49 -47 -42 -37 -37 -38 -39 -39 -38 -35 -36 -40 -41 -37 -30 -29 -31 -32 -32 -31 -33 -34 -34 -32 -29 -24 -21 -18 -13 -8 -2 2 6 8 12 16 21 27 31 34 37 37 37 35 33 31 30 27 27 27 28 28 27 27 28 28 28 28 29 34 33 32 32 34 37 31 29 29 29 23 18 15 17 21 24 24 15 16 21 26 27 27 26 24 22 21 19 18 17 16 14 11 9 8 6 4 2 -1 -3 -4 -4 -3 -2 -1 -0 0 1 1 1 2 4 4 4 5 6 9 10 12 13 15 16 17 17 18 18 19 19 20 20 21 22 23 22 22 22 23 25 27 29 30 30 31 32 33 34 35 36 38 38 38 37 35 34 33 32 31 30 29 27 27 28 28 28 25 20 16 11 7 4 1 -1 -1 -1 -0 1 3 7 10 12 13 12 13 14 16 19 21 21 19 16 12 8 6 4 2 1 2 3 5 7 9 11 12 13 13 15 17 19 20 22 26 30 34 38 40 41 39 36 34 35 36 37 35 33 31 29 28 27 26 24 22 21 22 24 26 27 28 30 31 32 32 32 31 30 29 29 28 27 28 29 31 32 32 31 28 25 22 19 16 13 10 7 4 2 1 1 2 3 5 6 8 10 11 12 12 12 11 10 9 8 8 9 10 11 11 10 8 6 4 3 3 4 5 7 8 8 8 6 4 2 -1 -3 -6 -8 -8 -9 -8 -7 -6 -4 -2 -0 2 4 6 8 10 12 15 17 20 24 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 40 40 41 41 41 41 41 42 42 43 44 45 46 47 47 47 47 47 46 46 45 45 44 44 44 44 43 42 42 41 41 41 40 40 39 38 38 38 38 38 38 39 39 40 41 41 41 -56 -53 -52 -50 -48 -48 -49 -51 -53 -53 -50 -48 -47 -45 -43 -41 -41 -41 -43 -44 -45 -44 -44 -44 -45 -46 -45 -43 -44 -46 -44 -39 -35 -35 -36 -37 -38 -39 -39 -41 -43 -43 -40 -33 -28 -28 -29 -30 -31 -34 -34 -32 -30 -26 -21 -18 -15 -9 -4 2 6 9 13 17 22 28 32 35 38 40 40 39 36 34 32 29 25 24 24 25 26 25 25 26 26 26 27 28 32 30 29 29 30 32 27 25 25 23 18 15 11 10 13 19 25 20 19 19 20 23 26 25 24 22 21 19 19 18 16 15 12 10 7 5 2 -0 -2 -4 -4 -3 -2 -1 -0 -0 -1 -1 -2 -2 -1 1 3 4 5 5 7 8 10 12 13 15 15 15 15 16 17 18 18 19 20 21 21 21 22 23 25 27 29 31 32 33 33 34 35 36 37 38 39 39 38 37 36 34 33 31 30 29 28 27 25 24 25 25 25 22 17 12 8 4 1 0 -1 -1 -1 -0 3 7 10 12 12 12 11 12 14 18 21 21 18 13 9 5 3 3 1 1 2 4 6 8 9 11 12 13 14 15 17 18 20 21 24 28 32 36 39 41 39 36 34 34 35 35 34 32 31 29 28 27 25 24 21 20 21 23 24 25 27 30 33 36 38 39 39 38 37 36 34 33 32 33 35 37 37 37 34 30 27 24 21 18 14 11 8 6 5 6 7 8 9 10 11 12 13 13 13 12 11 10 9 8 8 9 10 10 10 10 9 7 5 3 2 3 4 6 8 9 8 6 4 1 -1 -2 -3 -3 -3 -3 -3 -3 -1 1 4 5 7 8 9 11 13 14 15 16 18 21 24 26 28 28 29 30 31 32 32 33 34 35 37 38 39 40 40 41 41 41 41 41 41 42 43 44 45 46 47 48 48 48 48 48 48 47 47 46 46 46 46 45 44 43 43 43 43 42 42 41 40 39 39 39 39 39 40 41 42 42 42 42 -55 -52 -50 -48 -46 -46 -47 -49 -51 -51 -50 -48 -47 -46 -44 -42 -40 -40 -41 -42 -42 -42 -43 -43 -43 -44 -43 -41 -40 -40 -40 -37 -33 -33 -35 -36 -37 -39 -41 -42 -43 -42 -40 -34 -28 -25 -26 -29 -32 -34 -32 -30 -27 -23 -19 -15 -11 -5 1 5 9 13 18 22 27 32 36 38 40 42 42 40 38 35 32 28 23 22 22 25 26 27 27 27 27 26 25 26 27 26 25 25 26 27 25 23 21 19 16 13 8 5 6 11 22 23 23 20 16 17 24 25 24 22 20 19 18 18 16 15 12 10 7 3 0 -2 -4 -4 -4 -3 -1 -0 0 -1 -2 -3 -4 -5 -3 -1 1 3 4 5 5 7 8 10 11 12 12 13 14 16 17 17 18 19 20 21 21 22 23 25 27 29 31 33 34 34 35 35 36 37 38 39 40 40 39 38 36 34 32 30 29 28 28 28 26 24 23 22 22 22 19 15 10 6 3 2 0 -1 -1 -1 2 5 8 10 12 12 11 11 12 15 18 17 14 10 6 3 2 1 0 2 5 8 10 11 12 13 14 15 16 17 18 19 20 22 24 27 31 35 39 40 39 37 35 33 33 33 33 32 31 30 28 27 26 24 21 20 20 21 23 24 26 31 35 40 43 45 46 46 44 42 39 37 36 37 38 40 41 41 39 36 33 31 29 25 22 18 15 13 12 12 12 13 13 13 13 13 13 13 13 12 11 10 9 9 10 11 11 10 10 9 8 7 5 3 1 2 3 5 7 9 9 7 4 3 2 1 2 2 1 0 -1 -0 3 5 7 9 10 11 13 14 16 17 18 19 19 20 22 24 26 28 29 30 31 31 32 32 33 34 35 36 37 38 40 41 41 42 42 42 42 42 42 43 44 45 46 47 48 49 49 49 49 49 48 48 48 48 47 46 46 45 45 45 44 44 43 43 42 41 41 40 40 40 41 42 43 43 44 43 -51 -49 -47 -45 -44 -43 -43 -46 -48 -49 -48 -46 -45 -45 -43 -41 -40 -40 -40 -39 -39 -40 -42 -42 -41 -41 -41 -38 -35 -35 -35 -34 -32 -33 -34 -35 -36 -38 -40 -40 -40 -39 -38 -34 -27 -24 -25 -28 -31 -31 -29 -28 -25 -20 -16 -11 -5 0 5 8 13 17 22 26 30 33 36 39 41 43 43 41 38 34 30 25 22 22 25 28 30 30 30 29 27 25 24 23 23 23 23 24 25 25 24 22 19 17 14 11 7 4 3 6 15 22 24 21 16 13 21 23 23 22 20 19 18 17 15 14 11 8 5 1 -2 -4 -5 -5 -4 -2 -1 -0 -0 -1 -3 -5 -6 -6 -5 -3 -1 1 3 4 4 6 7 8 9 9 10 12 15 17 18 19 19 20 21 21 22 23 24 26 28 30 32 34 35 35 35 36 36 37 38 39 40 40 39 38 36 33 31 29 28 28 29 30 29 28 25 22 20 19 18 16 14 11 8 5 3 1 -0 -1 1 3 6 9 10 11 10 9 9 11 12 12 11 8 6 3 0 -1 2 6 11 14 15 15 16 17 18 19 19 20 20 20 20 21 24 27 31 35 38 41 41 39 37 35 33 33 33 33 32 31 30 29 27 25 23 20 20 21 23 25 28 32 37 42 45 47 48 48 47 45 42 40 39 39 40 41 43 44 43 41 39 38 36 34 31 28 24 21 19 17 17 17 16 16 15 14 14 14 13 12 11 11 11 12 13 14 14 13 11 10 9 7 5 3 1 1 3 5 7 9 9 7 6 5 6 6 6 4 2 -0 -1 0 4 7 9 11 12 13 15 17 18 20 21 22 22 22 22 22 24 27 28 30 31 31 32 33 33 34 35 35 36 37 38 39 41 42 43 43 43 43 42 42 43 43 44 46 47 48 49 49 50 50 50 50 50 50 49 48 47 47 46 46 46 46 45 45 44 43 42 42 41 41 42 42 43 44 44 44 -47 -45 -44 -44 -43 -42 -43 -45 -47 -48 -47 -45 -44 -43 -42 -41 -40 -40 -39 -38 -37 -37 -39 -40 -40 -38 -37 -35 -31 -30 -30 -31 -31 -32 -34 -34 -35 -36 -37 -38 -38 -38 -37 -34 -29 -26 -25 -26 -27 -28 -28 -26 -21 -16 -12 -6 -0 4 7 11 15 20 24 28 31 33 36 39 42 43 42 40 36 32 27 23 21 23 27 30 30 30 29 27 25 23 22 22 22 22 23 23 24 24 22 20 18 15 13 10 6 3 2 3 7 16 22 23 18 12 16 20 22 21 20 19 17 16 14 12 10 7 3 -0 -3 -5 -5 -4 -3 -2 -1 -1 -1 -2 -4 -5 -6 -6 -5 -4 -2 -1 1 2 3 5 5 6 7 7 9 12 15 17 19 20 20 21 21 21 22 23 25 27 29 31 33 34 34 35 35 34 35 36 37 39 40 39 38 37 35 33 31 30 30 31 31 32 33 33 31 28 23 18 16 16 16 16 13 10 7 4 2 1 1 2 4 6 8 9 7 6 6 7 9 11 11 11 8 4 -0 1 7 14 18 20 20 20 20 21 21 21 20 20 19 19 19 21 23 26 30 34 38 41 43 42 41 39 37 37 36 36 36 35 34 33 31 29 26 23 22 24 26 28 31 34 39 42 45 46 46 46 45 44 43 41 40 39 40 41 42 44 44 44 43 42 42 42 40 37 33 29 25 23 21 21 20 19 18 16 15 15 14 14 13 14 14 16 17 18 18 17 15 13 10 8 5 3 2 3 4 5 6 7 8 8 8 9 9 8 6 2 -1 -2 -1 2 6 9 11 13 14 15 16 18 19 21 22 23 23 23 23 23 24 26 28 29 31 32 33 34 34 35 35 35 35 36 37 38 39 40 42 43 43 43 43 43 42 42 43 44 45 46 48 49 49 50 50 51 51 51 51 50 49 48 48 48 48 47 47 47 46 45 44 43 43 43 43 43 43 44 45 45 -43 -43 -43 -43 -43 -44 -45 -46 -48 -50 -50 -47 -45 -43 -41 -40 -40 -39 -38 -36 -35 -35 -37 -38 -38 -37 -35 -33 -28 -26 -26 -28 -29 -31 -32 -32 -32 -32 -32 -35 -36 -36 -35 -34 -32 -30 -28 -26 -26 -27 -25 -21 -17 -12 -7 -2 3 6 9 11 15 21 25 29 32 35 38 40 41 41 41 39 35 29 25 21 21 24 27 28 28 28 26 24 23 21 20 20 21 21 22 22 22 22 20 18 16 14 12 9 6 4 3 2 2 9 19 23 21 15 10 14 18 20 20 19 17 15 13 11 8 5 1 -2 -4 -5 -5 -4 -3 -2 -2 -2 -3 -3 -4 -5 -5 -5 -5 -4 -3 -2 -1 1 2 3 4 5 5 6 8 11 13 16 17 19 19 20 20 21 22 23 25 27 29 31 32 33 33 33 32 32 32 34 36 38 38 37 36 35 34 34 34 34 34 34 34 34 36 38 38 37 33 25 19 16 16 17 17 15 11 8 5 3 2 2 3 4 5 6 5 4 5 7 10 12 13 12 9 5 2 7 15 21 23 22 22 22 22 22 21 19 18 16 16 16 17 19 21 25 28 33 37 41 44 45 45 44 43 42 42 42 42 42 41 40 38 36 32 29 28 29 30 32 34 36 39 41 42 42 41 41 41 41 41 41 40 39 39 39 39 41 42 43 43 44 44 45 45 43 40 36 31 28 27 26 26 24 22 20 18 17 17 17 17 18 19 21 22 23 23 22 20 17 13 9 6 5 4 4 5 5 5 5 7 8 9 10 9 6 2 -1 -2 -0 3 7 10 13 15 16 17 18 18 19 20 22 22 23 24 24 25 25 25 26 27 28 30 32 34 35 35 35 35 35 35 35 36 37 38 39 40 41 42 43 43 43 43 42 42 42 43 44 46 47 48 49 50 51 52 52 51 51 50 50 50 49 49 49 49 48 47 46 45 45 44 44 44 44 44 44 44 45 -42 -44 -44 -44 -45 -46 -48 -50 -52 -54 -55 -53 -49 -45 -42 -40 -40 -39 -38 -36 -35 -34 -35 -37 -38 -36 -34 -31 -27 -23 -23 -25 -27 -28 -29 -28 -27 -27 -29 -32 -33 -33 -31 -32 -34 -33 -31 -27 -23 -21 -20 -17 -14 -10 -5 -1 3 6 8 11 16 21 26 30 34 36 38 39 39 38 37 35 32 27 23 20 21 24 26 27 27 26 24 23 22 20 19 18 19 19 19 19 18 18 17 16 14 13 11 9 7 7 6 5 1 4 13 20 22 18 10 8 12 16 19 18 17 15 13 10 7 3 -0 -3 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -5 -5 -5 -4 -4 -4 -4 -3 -2 -1 0 1 2 3 3 5 7 9 11 13 15 16 17 18 19 20 22 23 25 27 29 30 31 31 31 31 30 29 30 32 34 36 36 35 34 34 35 37 37 38 37 36 35 34 36 39 41 43 42 38 32 26 21 18 17 15 13 10 7 4 3 2 1 2 3 4 4 5 7 9 10 11 12 11 10 8 9 15 21 24 23 21 20 20 19 19 17 15 14 13 14 15 16 17 19 22 26 30 35 40 43 46 48 48 48 47 47 48 48 49 49 48 47 45 42 38 36 35 36 36 37 38 38 38 38 37 36 36 37 37 39 39 39 39 38 37 37 38 39 40 41 41 42 43 44 44 42 39 36 33 32 32 31 29 27 24 22 21 21 22 23 24 25 26 27 28 28 27 25 22 17 12 8 6 6 6 5 5 4 5 7 8 9 8 5 2 0 0 2 6 10 13 16 18 19 20 21 21 21 22 23 24 24 24 25 25 25 26 26 26 26 27 28 30 32 33 35 35 35 35 35 35 35 36 37 37 38 39 40 41 42 43 43 43 42 42 43 43 44 45 47 48 50 51 52 52 51 51 50 50 51 51 51 51 50 50 49 48 47 46 46 45 45 45 44 44 44 44 -43 -46 -47 -46 -47 -48 -51 -53 -56 -59 -61 -59 -54 -49 -44 -41 -40 -39 -38 -37 -36 -34 -34 -36 -36 -35 -32 -28 -24 -20 -19 -21 -23 -24 -24 -24 -24 -25 -27 -29 -29 -28 -28 -30 -32 -30 -27 -23 -20 -19 -18 -17 -13 -9 -5 -2 1 5 10 15 20 23 26 29 31 34 36 37 36 35 33 30 28 25 22 22 22 24 25 26 25 24 23 22 20 18 17 16 16 15 15 15 15 15 15 14 13 11 9 8 9 11 13 10 0 0 6 15 21 19 14 6 5 9 14 16 16 14 11 9 6 2 -1 -4 -5 -6 -6 -6 -7 -7 -7 -6 -5 -5 -5 -4 -4 -4 -4 -4 -4 -3 -2 -2 -1 -0 1 2 3 4 6 8 10 11 13 15 16 17 18 20 22 24 25 27 28 29 29 29 29 28 28 28 28 30 31 33 33 32 33 35 37 39 39 39 38 36 35 34 35 37 39 41 42 43 41 38 34 29 23 18 14 10 7 4 2 1 0 1 3 5 7 8 9 9 10 10 10 10 11 12 16 21 24 23 21 19 17 17 16 16 14 13 12 12 13 14 15 16 17 20 23 27 32 37 41 45 48 49 49 49 50 51 52 53 54 55 54 53 51 47 45 43 41 40 39 38 37 35 33 32 32 33 34 35 37 38 39 39 38 38 37 37 37 38 38 39 39 40 40 40 40 39 37 36 36 36 35 33 31 29 27 26 26 26 28 29 31 32 32 33 33 32 30 27 21 15 9 7 7 6 6 5 5 6 7 8 7 5 3 3 5 8 11 14 17 19 21 23 24 24 24 24 24 24 25 26 26 26 26 26 25 25 25 25 25 25 26 27 28 29 31 32 33 33 33 34 34 35 36 36 37 38 38 39 40 41 42 43 43 43 43 43 44 44 45 47 48 50 51 51 51 51 50 50 51 51 52 52 51 51 50 49 48 47 47 46 46 45 45 45 45 45 -44 -47 -48 -49 -49 -50 -54 -56 -60 -63 -65 -64 -58 -52 -46 -43 -41 -38 -37 -36 -35 -34 -34 -35 -35 -34 -32 -27 -22 -18 -17 -18 -19 -20 -20 -21 -22 -23 -24 -24 -24 -24 -25 -27 -28 -26 -23 -20 -19 -19 -17 -15 -12 -8 -6 -4 1 7 14 20 25 26 27 29 30 31 32 33 33 32 30 28 26 24 22 23 24 24 25 24 23 22 21 20 19 17 15 14 13 13 12 12 12 12 13 12 11 10 8 8 12 17 19 15 4 1 2 10 19 19 16 7 2 2 6 11 13 12 10 7 5 2 -1 -3 -5 -6 -7 -8 -9 -8 -7 -6 -5 -4 -4 -3 -3 -3 -4 -4 -3 -3 -2 -2 -1 0 1 3 4 6 8 9 11 13 14 15 16 17 19 20 22 24 25 26 27 27 27 27 27 27 27 27 28 28 29 29 29 31 33 36 38 40 40 39 38 36 35 35 35 35 36 37 38 39 40 40 39 37 33 28 23 17 11 6 2 1 2 5 8 10 10 10 9 9 9 8 9 11 15 19 23 24 23 21 19 17 16 15 15 14 13 12 12 12 13 14 14 15 16 18 21 25 30 34 39 43 46 48 49 50 50 52 53 54 56 57 57 57 55 52 49 46 43 41 38 36 33 31 30 30 31 32 33 35 36 37 38 39 39 39 39 39 39 39 38 38 38 38 38 37 37 36 36 36 37 37 36 35 34 32 31 30 30 30 32 33 35 36 37 37 36 35 34 30 24 17 11 7 7 7 7 6 6 7 8 8 8 8 9 12 15 18 20 22 23 24 26 26 27 27 26 26 25 26 26 27 27 27 27 26 25 24 24 24 24 24 24 23 23 24 24 25 26 28 29 31 32 33 34 34 35 36 36 37 38 39 41 42 43 43 44 44 44 44 45 46 47 48 49 50 50 50 50 50 50 51 51 51 51 51 51 50 49 48 47 46 46 46 45 45 45 45 -45 -48 -49 -51 -52 -53 -55 -58 -62 -66 -68 -67 -61 -53 -47 -42 -40 -37 -36 -35 -34 -33 -33 -35 -35 -34 -32 -28 -23 -18 -15 -15 -15 -17 -17 -18 -19 -20 -21 -21 -20 -20 -21 -23 -23 -21 -18 -17 -18 -19 -16 -12 -9 -7 -5 -3 2 9 16 22 26 27 29 30 31 31 29 29 29 29 28 26 26 23 22 24 25 24 23 21 20 19 19 18 16 14 13 12 11 10 9 9 9 10 11 11 10 8 7 7 14 21 23 19 12 7 4 9 16 17 16 10 4 -1 -1 4 8 9 8 6 4 1 -1 -3 -5 -7 -8 -9 -9 -7 -6 -4 -3 -2 -2 -1 -2 -3 -3 -2 -2 -2 -1 -0 1 2 3 5 7 9 10 12 14 15 16 16 17 18 20 21 23 24 25 25 26 26 26 27 27 28 28 27 27 26 26 26 27 30 33 36 38 39 39 38 37 36 35 35 34 33 32 32 32 33 34 34 35 35 35 34 31 27 21 16 12 11 12 14 14 12 11 9 9 9 8 9 11 16 21 26 26 25 22 20 19 18 16 15 14 14 13 12 12 12 13 13 14 15 16 19 22 25 29 33 37 40 44 46 48 49 50 51 52 54 55 56 56 55 53 51 48 44 41 38 34 32 30 28 28 29 30 32 33 35 36 37 38 39 40 41 41 41 41 41 40 40 39 39 38 37 37 36 36 36 36 37 36 36 35 34 33 32 32 33 34 36 38 39 39 39 39 38 36 33 26 19 12 8 8 9 9 9 9 9 10 11 13 15 18 22 24 25 26 26 26 27 28 28 28 28 27 27 27 27 27 27 28 28 27 26 25 24 22 22 22 23 22 21 20 19 19 19 19 20 22 24 26 28 30 31 33 33 34 35 35 36 38 40 42 43 44 44 44 44 45 45 46 47 47 47 48 49 49 50 50 50 50 50 50 50 50 50 49 48 47 47 46 46 46 46 46 46 -44 -47 -50 -53 -54 -55 -56 -58 -62 -66 -68 -67 -60 -52 -45 -41 -38 -35 -34 -34 -34 -34 -33 -35 -34 -32 -30 -26 -21 -17 -14 -13 -13 -14 -14 -15 -17 -18 -19 -17 -16 -16 -18 -20 -19 -17 -15 -15 -16 -16 -13 -9 -7 -6 -4 -1 4 9 15 20 23 24 28 31 32 30 27 25 26 26 26 25 27 22 21 23 25 23 21 19 18 17 17 16 14 12 11 10 10 9 8 7 8 9 10 10 9 7 5 5 12 20 23 20 18 15 10 10 13 13 13 11 7 2 -2 -1 3 5 6 5 3 1 -1 -4 -6 -8 -9 -8 -7 -5 -3 -2 -0 0 1 0 -1 -1 -1 -1 -0 0 1 2 3 4 6 7 9 11 13 14 16 16 17 17 18 19 20 22 23 24 24 25 26 26 27 28 28 29 29 27 26 24 24 24 26 30 33 36 38 38 37 36 36 35 35 34 33 32 30 28 28 27 27 27 28 29 30 31 32 30 28 24 21 19 18 16 13 11 10 9 9 9 9 11 17 23 28 30 27 24 22 21 20 18 17 15 14 13 12 12 12 12 13 13 13 15 17 20 22 25 28 32 35 39 42 45 47 48 50 50 51 52 53 53 52 51 49 46 44 40 37 34 32 30 28 28 28 29 30 32 33 35 36 37 38 39 41 42 43 43 43 43 42 42 41 40 39 38 38 37 37 37 37 36 36 36 36 35 34 34 34 35 37 38 40 41 41 41 41 40 38 34 28 21 15 12 13 15 16 16 15 15 16 18 21 24 27 29 29 29 27 26 26 27 28 29 29 28 28 28 28 28 28 29 29 29 29 28 26 25 24 23 23 22 22 20 19 17 16 15 14 14 15 16 17 19 21 24 27 30 31 32 32 33 34 36 38 40 42 44 44 44 44 45 45 45 45 45 45 46 47 48 48 48 48 48 48 48 49 49 49 48 47 46 46 46 46 47 47 47 -43 -45 -49 -52 -54 -55 -57 -59 -62 -63 -65 -65 -59 -52 -45 -40 -36 -33 -31 -32 -34 -36 -36 -35 -33 -30 -27 -23 -19 -16 -13 -11 -11 -11 -11 -12 -14 -15 -16 -14 -13 -14 -16 -17 -16 -14 -13 -13 -14 -13 -9 -8 -6 -4 -2 1 6 10 14 17 20 22 26 28 29 28 25 23 23 23 22 24 24 21 21 23 23 21 19 18 17 16 14 13 11 10 9 9 8 7 7 7 7 8 9 9 8 6 3 2 7 15 20 18 18 18 15 12 10 7 7 8 8 7 4 3 0 0 1 2 2 1 -2 -5 -7 -8 -9 -7 -5 -2 -0 2 3 3 2 1 0 0 1 2 2 3 4 5 6 7 8 10 12 13 15 16 17 17 18 18 19 20 21 22 23 24 25 26 26 27 28 29 30 30 28 26 24 23 23 23 26 30 33 36 37 36 35 35 35 34 34 33 32 30 28 26 25 24 23 23 22 23 24 25 26 27 26 24 21 19 16 14 11 10 10 10 10 10 13 19 25 31 32 30 26 24 22 21 20 18 16 15 14 13 13 13 13 13 13 13 14 16 18 20 23 25 28 31 34 37 40 43 46 48 49 50 51 51 51 50 49 47 46 43 41 38 36 34 32 30 29 29 29 29 31 32 33 34 35 36 37 39 41 42 42 43 43 43 43 42 42 41 41 40 39 39 38 38 37 37 37 37 36 35 34 34 36 37 38 39 41 42 42 43 43 42 40 36 30 25 22 22 23 25 26 25 24 24 25 26 28 30 31 31 30 28 26 24 24 25 27 28 29 29 29 29 29 29 30 31 31 31 31 30 29 28 27 26 25 24 23 21 19 17 16 14 13 12 11 12 13 14 15 16 18 20 25 28 29 29 30 31 34 36 39 41 43 44 44 44 44 44 44 43 43 43 44 45 46 46 46 46 46 46 46 47 47 47 46 46 46 46 47 47 48 48 -45 -45 -48 -52 -55 -57 -58 -60 -61 -61 -61 -60 -56 -50 -45 -40 -36 -31 -29 -30 -33 -36 -37 -35 -32 -28 -25 -21 -17 -15 -13 -11 -9 -8 -9 -10 -11 -12 -12 -12 -11 -13 -14 -14 -13 -12 -12 -13 -12 -9 -6 -6 -6 -4 -1 3 8 12 15 18 20 24 27 28 28 26 25 23 21 19 18 24 20 20 22 23 21 20 19 18 17 16 13 11 9 8 8 7 7 6 6 7 7 7 8 8 7 4 1 -1 3 11 15 12 12 16 15 11 5 1 2 1 4 8 11 10 2 -3 -4 -1 0 -2 -3 -6 -8 -9 -8 -5 -2 1 3 5 5 4 3 3 2 2 3 4 5 6 7 7 8 9 11 12 14 15 17 17 18 18 18 19 19 21 22 23 23 24 25 26 26 27 29 29 30 28 26 24 23 23 23 25 28 31 33 35 36 35 35 34 34 34 33 32 30 28 27 26 25 24 23 22 21 20 20 20 20 20 20 18 17 15 13 11 11 10 10 10 11 15 22 29 33 34 32 29 26 24 23 22 19 17 15 14 14 13 13 14 13 13 13 13 15 17 19 21 22 24 27 29 32 35 38 41 44 46 48 50 50 50 50 49 48 46 45 43 41 39 37 35 33 32 30 29 29 29 30 31 32 32 33 34 36 38 39 40 40 40 40 41 41 42 42 42 41 41 40 40 39 39 38 38 38 38 37 36 35 37 38 39 39 40 42 43 44 44 45 45 43 39 35 32 30 30 31 32 32 32 32 32 32 31 31 31 31 30 28 26 24 23 23 24 26 28 29 29 30 30 30 31 32 33 33 34 33 32 31 31 30 29 28 26 25 24 22 20 17 15 14 12 12 12 13 14 15 15 15 16 17 20 24 27 27 28 29 31 33 36 39 41 42 43 44 43 42 42 41 41 41 41 42 42 43 44 44 44 44 44 44 45 45 46 46 47 47 48 48 48 -47 -46 -47 -50 -53 -57 -59 -61 -61 -60 -58 -55 -52 -48 -44 -40 -36 -32 -29 -29 -31 -34 -36 -34 -31 -28 -25 -20 -16 -14 -12 -9 -7 -6 -7 -8 -9 -9 -9 -10 -11 -12 -13 -13 -12 -12 -12 -12 -9 -6 -5 -5 -6 -5 -1 6 11 14 17 19 23 27 30 30 28 26 25 23 18 13 12 19 16 19 22 22 21 20 20 19 17 16 14 11 10 8 8 7 7 6 6 6 6 6 7 6 5 3 1 -1 2 7 9 5 5 10 10 5 0 -1 2 -1 -2 2 7 10 3 -3 -5 -5 -5 -7 -7 -7 -8 -8 -6 -4 -0 3 6 7 6 5 4 4 4 5 6 7 8 9 10 10 11 12 13 14 16 17 17 18 18 18 19 19 20 21 22 23 24 24 25 26 26 27 28 28 28 26 24 23 23 23 24 25 28 31 33 35 36 35 35 34 34 34 33 31 30 28 27 26 26 25 24 23 22 20 19 18 17 16 15 14 13 12 12 11 11 10 10 13 18 25 32 36 37 35 32 29 27 25 23 20 17 16 15 15 15 15 15 15 14 14 14 15 16 18 19 21 23 24 26 28 31 33 36 38 41 44 46 48 48 49 49 48 47 46 45 44 42 40 39 37 35 33 31 30 29 29 29 30 30 30 31 33 34 36 36 36 36 36 36 37 39 40 41 42 42 42 41 40 40 39 39 39 39 39 38 38 38 39 40 40 40 41 43 45 45 46 47 47 46 43 40 37 35 34 33 32 32 32 33 33 32 31 30 29 28 28 27 25 24 22 22 24 26 28 29 29 29 30 31 32 33 34 35 35 34 34 33 33 32 32 31 29 28 26 25 23 20 18 16 15 14 14 15 16 17 18 18 17 17 18 19 22 25 26 26 27 29 31 34 36 39 41 42 42 42 41 40 40 39 38 38 39 39 40 41 41 42 42 43 43 44 45 46 47 47 48 48 48 -48 -45 -45 -47 -50 -54 -58 -60 -60 -59 -56 -52 -48 -45 -42 -39 -36 -33 -32 -31 -32 -34 -34 -33 -31 -29 -27 -23 -17 -14 -11 -7 -4 -4 -5 -6 -6 -6 -6 -9 -12 -13 -13 -13 -11 -11 -11 -9 -7 -5 -6 -6 -6 -3 1 7 11 14 15 17 21 25 26 26 25 23 22 18 11 5 3 8 13 18 20 21 20 20 20 19 18 16 14 12 10 9 8 8 8 6 6 5 5 5 5 4 3 2 1 -0 1 3 4 1 0 3 3 1 -2 -1 2 -0 -3 -4 -0 5 5 2 0 -2 -8 -13 -11 -9 -7 -6 -4 -1 2 5 7 8 7 6 6 6 7 8 9 10 11 12 12 13 13 14 15 16 17 17 18 18 18 19 19 20 20 21 22 23 23 24 25 25 26 26 27 26 25 23 22 22 23 23 24 26 28 31 33 35 36 35 35 35 35 35 34 33 31 30 29 29 28 27 26 25 23 21 20 18 17 16 15 14 14 13 13 12 11 11 14 20 28 36 39 39 37 34 32 30 28 25 22 18 16 15 16 16 17 16 16 15 15 15 16 17 18 19 20 22 23 25 26 28 29 31 33 36 38 40 43 44 46 46 47 46 46 46 45 44 42 41 39 37 35 33 31 30 29 28 28 28 29 29 30 31 32 33 33 32 32 33 34 35 37 38 40 41 42 42 42 41 41 41 41 41 41 41 40 40 41 41 41 41 42 44 46 47 47 48 49 49 47 45 42 38 35 33 31 31 31 31 32 31 30 30 29 28 28 28 28 27 25 23 23 25 27 28 28 28 29 30 32 33 34 34 35 35 35 34 34 34 34 34 33 32 30 29 28 26 24 22 20 18 17 17 18 18 19 20 20 20 20 20 20 21 24 25 26 26 27 27 29 31 33 36 38 39 40 40 40 39 38 36 36 35 36 37 38 39 40 40 41 42 43 44 45 46 47 48 48 48 -46 -45 -45 -45 -46 -50 -55 -58 -58 -56 -53 -49 -45 -42 -39 -37 -36 -35 -34 -34 -34 -34 -33 -31 -31 -31 -31 -27 -20 -17 -12 -8 -4 -3 -4 -4 -4 -3 -4 -7 -11 -13 -13 -12 -10 -10 -8 -7 -5 -5 -8 -7 -5 -1 3 8 11 12 13 13 15 17 18 19 19 17 15 9 2 -3 -4 2 11 16 18 18 18 18 18 18 17 15 14 12 11 9 8 8 8 7 6 5 4 4 3 3 3 2 1 1 0 1 0 -1 -2 -1 -1 -2 -2 -1 3 -0 -4 -6 -5 -2 3 5 5 3 -4 -10 -12 -11 -8 -5 -2 1 4 6 8 9 9 8 8 9 10 11 13 14 15 15 15 15 15 16 16 17 17 18 18 19 19 19 20 20 20 20 21 22 23 23 23 24 25 25 25 24 22 21 22 22 23 23 23 25 28 30 32 34 35 34 35 36 36 36 36 35 33 32 31 30 29 28 26 25 23 21 19 18 17 17 17 17 16 15 14 13 13 16 22 31 38 41 41 39 36 34 32 30 27 24 20 17 16 17 18 18 18 17 16 16 16 16 17 17 18 20 21 23 24 26 27 28 29 30 32 33 35 37 39 41 42 43 44 44 44 43 43 42 40 39 37 35 33 32 30 29 28 28 27 27 28 28 29 30 30 30 30 30 31 31 32 34 35 38 40 42 43 43 43 43 43 43 43 43 42 42 43 43 43 42 42 42 44 46 47 47 47 47 48 47 46 43 40 36 33 31 30 31 32 33 33 32 31 31 30 30 31 31 30 29 27 25 25 26 28 28 27 28 29 30 32 33 34 34 34 35 35 35 35 35 36 36 35 34 33 32 31 29 27 25 23 22 20 20 20 20 21 21 21 21 21 21 22 22 24 25 26 26 26 26 26 27 28 30 32 34 36 37 38 38 38 36 35 34 33 34 35 36 37 39 39 40 42 43 44 45 46 47 48 48 -43 -45 -46 -45 -45 -46 -51 -54 -54 -52 -49 -46 -42 -39 -37 -36 -35 -34 -34 -34 -34 -33 -31 -29 -30 -32 -33 -31 -24 -19 -14 -8 -4 -2 -3 -2 -1 -1 -2 -5 -8 -11 -12 -11 -10 -8 -7 -5 -5 -6 -8 -7 -4 -0 4 8 11 12 13 12 11 11 10 11 11 8 3 -3 -8 -10 -7 2 10 14 15 15 15 15 15 15 14 13 12 11 10 9 8 8 9 8 6 5 4 3 3 3 2 2 1 1 0 -1 -1 -2 -3 -3 -3 -3 -3 -1 1 -2 -5 -6 -7 -7 -2 4 7 6 2 -3 -6 -9 -9 -6 -3 1 4 6 9 10 11 11 12 12 14 15 16 17 18 18 18 17 17 17 17 17 18 19 19 20 20 20 20 19 19 20 21 22 22 22 22 23 24 24 23 22 21 21 22 22 22 22 23 25 27 29 31 32 33 33 34 35 36 36 35 34 33 32 31 29 28 26 25 23 21 20 19 19 19 19 19 18 17 17 16 15 18 25 33 39 42 41 39 38 36 35 33 30 26 22 19 17 18 19 19 19 17 16 16 16 16 16 17 17 19 20 22 24 25 26 27 28 29 30 31 32 33 35 36 38 39 40 41 41 41 41 40 39 38 37 35 34 32 31 29 28 27 27 27 27 28 28 29 29 29 29 29 29 30 31 32 33 35 37 39 41 42 43 44 44 44 44 44 44 44 44 44 45 44 43 42 43 44 45 45 45 45 45 45 44 43 40 37 34 32 31 32 33 35 36 36 35 34 33 33 33 33 34 33 32 30 29 29 29 29 28 27 28 29 31 32 33 33 34 34 34 35 36 36 37 37 37 37 36 35 34 33 31 29 27 26 24 23 22 22 22 22 22 21 21 21 21 22 23 23 25 26 27 26 25 25 25 25 25 26 28 30 32 34 36 36 36 35 35 33 33 33 34 35 37 38 40 41 42 43 44 45 45 46 47 -40 -45 -49 -49 -46 -44 -46 -49 -50 -49 -46 -43 -40 -39 -37 -35 -33 -33 -33 -33 -33 -32 -30 -28 -29 -33 -35 -33 -27 -20 -15 -10 -5 -2 -2 -0 1 1 -0 -2 -5 -7 -9 -9 -8 -7 -5 -5 -5 -6 -7 -5 -3 0 3 7 11 14 15 14 11 9 7 6 3 -1 -9 -14 -15 -12 -5 3 9 11 11 12 12 12 12 11 11 10 10 9 9 8 9 9 10 9 7 6 5 4 3 3 2 2 2 1 -0 -1 -2 -3 -3 -3 -4 -4 -3 -3 -2 -3 -5 -6 -7 -8 -5 4 9 8 6 3 1 -3 -6 -7 -5 -2 1 4 8 11 14 15 16 16 17 19 20 20 21 20 19 19 18 17 17 17 17 19 20 21 21 20 20 19 20 20 21 21 21 21 22 23 23 23 23 22 22 22 22 21 21 21 22 25 27 29 30 30 31 31 32 32 33 33 32 32 31 29 28 26 25 23 21 20 19 19 19 19 20 20 19 19 19 19 19 21 26 32 37 40 40 39 38 38 37 35 32 28 24 20 19 19 20 20 19 18 16 15 15 15 16 16 17 18 19 21 22 24 25 26 27 28 29 29 30 31 32 33 35 36 37 38 39 39 39 39 38 38 37 36 35 34 33 31 30 28 27 27 27 27 28 28 28 28 28 28 29 29 30 30 31 32 33 35 37 39 40 42 43 45 45 46 45 45 45 45 46 45 44 42 42 42 43 43 43 43 43 43 43 43 41 39 36 34 32 32 33 35 37 38 38 38 37 36 35 35 36 36 35 34 33 32 32 32 31 28 28 28 29 30 31 32 32 33 33 34 35 36 36 37 37 37 37 37 36 35 34 32 30 29 27 27 26 25 24 24 23 23 23 22 21 21 21 22 22 23 24 25 26 25 24 24 24 24 23 24 25 27 29 31 33 34 35 35 34 33 33 33 34 36 38 39 40 41 42 42 43 44 44 45 -39 -45 -50 -52 -49 -45 -43 -46 -47 -46 -44 -42 -40 -38 -36 -34 -32 -32 -32 -32 -32 -31 -29 -27 -29 -33 -36 -35 -28 -22 -16 -11 -6 -3 -1 1 2 2 1 0 -2 -4 -5 -4 -4 -4 -3 -3 -4 -5 -4 -3 -2 0 3 7 13 16 18 18 15 13 9 3 -4 -10 -17 -18 -14 -8 -1 4 8 8 8 8 9 10 9 9 8 8 8 8 7 8 9 10 10 9 8 7 6 5 4 4 3 3 2 1 0 -1 -2 -3 -3 -3 -4 -4 -4 -4 -3 -4 -4 -5 -6 -7 -4 5 11 10 8 6 4 2 -0 -3 -2 -3 -2 1 5 9 16 19 20 20 20 21 22 22 22 22 21 19 18 16 15 15 16 18 19 20 20 20 20 20 20 21 21 20 20 21 22 23 24 24 23 23 22 21 20 19 19 20 22 24 26 27 28 28 29 29 29 29 28 28 28 27 27 26 24 22 20 19 17 16 16 17 18 18 19 19 19 19 20 21 23 26 30 34 37 39 39 39 39 38 36 34 30 26 22 20 20 20 20 19 18 16 15 14 14 15 15 16 17 18 20 21 22 23 24 26 27 28 29 29 30 31 32 33 34 35 36 37 38 38 38 38 37 37 36 36 35 34 33 32 31 29 28 28 27 27 27 27 28 28 28 28 29 29 29 30 30 31 32 32 34 36 38 41 43 44 45 45 45 45 45 46 46 45 43 41 41 41 41 41 41 41 42 43 43 42 40 38 36 34 33 33 35 36 38 38 39 39 38 38 37 37 37 37 37 37 36 37 37 36 33 31 29 29 29 30 30 31 31 31 32 32 33 34 35 35 36 36 36 36 36 36 34 32 31 29 29 28 27 27 26 25 25 25 24 24 23 23 22 22 21 21 21 22 24 25 25 24 22 22 22 22 22 23 24 26 28 30 32 34 34 34 34 33 34 35 37 38 40 40 40 41 41 42 42 43 -40 -45 -50 -53 -52 -48 -44 -45 -46 -45 -42 -40 -39 -37 -35 -33 -32 -32 -33 -33 -32 -31 -28 -27 -30 -33 -36 -35 -28 -23 -18 -13 -8 -4 -1 1 2 2 2 1 -1 -1 -1 0 1 1 1 1 -0 -1 -1 -1 -0 1 4 9 14 18 20 20 18 16 10 1 -8 -15 -18 -13 -6 -1 2 4 6 6 5 5 7 8 8 8 7 7 8 7 7 8 9 10 9 8 8 8 7 7 6 5 5 4 3 2 2 1 -0 -1 -2 -2 -3 -3 -3 -3 -3 -2 -2 -3 -5 -6 -3 7 14 12 9 6 4 4 4 4 4 2 1 1 1 5 14 20 22 22 21 22 22 23 23 23 22 20 18 16 14 14 16 17 18 19 20 20 21 21 21 21 20 20 21 22 23 25 25 25 24 23 22 21 19 18 17 19 21 23 25 26 26 27 27 26 25 25 24 24 23 23 22 22 20 18 16 15 13 13 13 14 15 16 17 17 18 19 21 23 25 28 30 33 36 38 39 39 39 38 35 32 28 25 23 21 20 20 19 18 16 15 14 14 14 14 15 16 17 19 20 21 22 23 25 26 27 28 29 29 30 31 32 33 34 35 35 36 36 36 36 36 36 36 36 35 35 34 34 32 31 30 29 28 27 27 27 27 28 28 28 28 28 28 28 28 29 29 30 30 31 33 36 40 42 43 44 44 44 44 45 45 44 43 41 41 41 41 41 40 41 42 42 43 43 41 40 38 36 34 34 34 34 35 36 37 38 39 39 39 38 38 38 39 39 40 40 41 41 40 37 34 32 30 29 29 30 30 30 30 30 31 31 32 33 34 35 35 36 36 36 36 35 33 32 30 29 28 28 27 27 26 26 25 25 25 25 25 24 24 23 22 21 20 20 22 24 25 24 21 20 19 19 20 20 22 24 27 29 31 32 33 34 34 34 35 36 37 38 39 39 40 40 40 41 42 -42 -47 -51 -54 -55 -52 -48 -45 -44 -44 -42 -39 -37 -35 -34 -33 -33 -34 -34 -34 -33 -30 -28 -28 -31 -34 -35 -34 -28 -23 -19 -14 -9 -5 -2 -0 1 2 2 1 0 1 2 4 6 7 7 7 6 5 3 1 1 4 7 11 16 19 20 18 16 13 6 -3 -10 -13 -10 -3 2 3 3 5 6 5 4 4 6 7 7 7 7 7 8 8 8 8 7 7 6 6 7 8 8 8 7 6 6 6 5 4 3 2 1 1 0 -0 -1 -1 -1 -1 -0 0 0 -1 -3 -5 -1 9 16 14 10 4 1 0 1 5 6 8 8 6 2 3 9 18 23 22 21 21 21 22 23 23 23 21 18 15 13 14 15 16 17 18 19 20 21 21 21 20 20 21 22 24 25 26 26 26 25 24 23 21 19 17 17 18 20 22 24 25 25 25 25 24 23 22 22 21 20 20 19 19 18 16 14 12 11 10 11 12 13 14 15 17 18 20 21 23 24 26 29 32 35 38 39 39 38 37 34 31 28 25 23 21 20 19 18 17 16 15 14 14 14 14 15 16 18 19 20 21 22 24 25 26 27 28 28 29 29 30 31 32 33 33 34 34 34 34 34 34 34 34 34 34 34 33 33 32 31 30 29 28 27 27 27 28 28 28 28 27 27 27 27 28 28 29 29 29 30 32 35 38 40 41 42 42 43 43 43 43 42 41 40 41 41 41 41 41 41 42 43 43 43 41 39 37 35 34 33 33 33 34 35 36 38 39 40 40 40 40 40 41 42 43 44 46 46 45 41 38 35 33 31 30 30 29 29 29 29 28 29 29 31 32 34 35 35 36 36 37 36 35 33 31 30 28 27 27 26 25 25 25 24 24 24 25 25 25 25 24 23 22 21 20 20 22 23 23 20 16 15 15 16 18 20 24 26 28 29 30 32 34 35 35 35 35 36 36 37 38 39 39 40 40 -44 -48 -53 -56 -56 -54 -50 -46 -44 -43 -41 -38 -36 -34 -33 -33 -34 -35 -36 -35 -33 -30 -29 -31 -33 -35 -35 -32 -28 -23 -20 -16 -11 -8 -5 -3 -1 0 1 0 2 3 5 7 10 12 13 13 13 11 9 6 5 6 9 12 16 19 19 16 11 7 0 -7 -10 -9 -3 2 6 5 4 5 6 5 4 4 5 5 5 5 5 6 8 8 8 7 7 6 5 6 6 7 8 8 7 7 6 6 5 4 3 3 2 2 2 2 2 3 3 4 4 4 3 2 -0 -1 4 13 18 16 10 1 -3 -4 -3 0 2 7 11 13 11 7 4 14 22 21 20 19 19 20 22 24 24 21 18 15 13 13 14 15 16 18 19 20 20 20 20 20 21 23 24 26 28 28 28 27 26 24 23 22 20 18 17 17 19 21 23 24 25 24 23 23 22 22 21 20 19 18 18 17 16 15 13 11 10 9 9 10 11 14 16 18 19 20 20 21 22 24 28 32 35 37 37 37 36 35 33 30 27 25 23 21 20 19 18 17 16 15 14 14 14 14 15 16 17 18 19 20 22 23 25 26 27 27 27 28 28 29 30 30 31 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 31 30 29 28 27 27 27 27 28 28 27 27 27 27 28 29 29 30 30 30 30 31 34 36 38 39 39 40 41 42 41 41 40 40 40 41 41 41 41 41 41 42 43 43 42 40 38 35 33 32 31 31 32 32 34 36 38 40 42 42 42 42 43 43 44 46 48 49 50 49 46 42 39 37 34 32 30 29 29 28 27 27 27 27 29 30 32 34 35 36 37 38 38 37 36 34 31 29 27 26 25 25 24 24 24 24 24 24 25 26 26 26 26 25 24 22 20 19 19 21 21 19 12 10 10 12 15 19 23 25 26 28 29 31 33 34 34 33 33 33 35 36 38 39 39 40 -46 -49 -53 -56 -57 -55 -52 -47 -44 -42 -40 -37 -35 -34 -34 -34 -35 -37 -37 -35 -32 -31 -31 -34 -36 -36 -35 -32 -28 -23 -20 -17 -13 -10 -7 -5 -3 -1 0 0 2 4 6 8 12 15 16 17 17 16 15 12 12 11 12 13 15 16 15 12 8 4 -2 -8 -10 -6 -0 4 6 6 4 4 6 4 3 3 2 2 3 4 5 6 7 7 7 7 7 6 5 5 6 7 8 8 7 6 6 5 5 4 3 3 3 3 4 5 6 7 8 9 9 8 7 5 4 5 11 16 18 15 9 1 -3 -4 -4 -4 -4 0 4 8 13 9 3 12 20 20 18 17 18 19 21 23 23 21 18 15 14 14 14 15 17 18 19 20 20 20 20 22 23 25 27 29 30 30 29 28 27 26 25 24 22 20 18 17 17 19 21 23 24 23 23 22 22 21 20 19 18 17 17 16 15 14 12 11 9 8 8 9 12 15 17 18 18 18 19 19 20 23 27 31 33 34 34 34 34 33 31 29 26 24 22 20 20 20 19 17 16 15 14 14 14 14 15 16 17 18 19 20 21 23 24 25 25 25 25 26 26 27 28 29 30 30 31 31 31 31 31 31 30 30 30 30 30 31 31 31 31 30 29 28 27 27 27 27 26 26 26 27 27 28 29 30 30 31 31 30 30 30 31 33 35 36 37 39 39 40 39 39 39 39 40 41 41 40 40 39 40 41 42 42 41 39 36 33 31 29 29 30 31 31 33 35 38 41 43 45 45 45 46 46 47 49 51 52 53 52 50 47 44 41 38 35 32 30 29 28 27 26 25 26 27 29 31 33 35 36 38 39 39 39 38 36 34 31 29 27 25 25 24 23 23 23 24 24 25 26 26 27 27 27 26 25 23 20 17 15 16 15 3 0 1 3 7 11 16 20 23 25 27 29 31 32 32 32 31 31 32 33 35 37 38 39 -48 -51 -53 -56 -57 -56 -53 -48 -44 -41 -38 -36 -35 -35 -35 -35 -36 -37 -36 -34 -33 -33 -34 -37 -39 -38 -36 -31 -27 -23 -21 -19 -16 -11 -7 -3 -0 1 2 3 4 5 6 8 10 14 16 18 19 19 19 19 19 19 19 17 15 13 10 6 3 1 -4 -9 -9 -4 1 5 6 6 5 3 5 1 -0 -1 -0 2 3 4 5 6 5 5 6 7 6 5 4 5 7 8 8 8 6 6 5 5 4 4 3 3 4 5 6 8 9 11 12 13 14 13 11 9 8 11 14 15 15 12 6 1 -1 -3 -4 -5 -7 -6 -5 -2 4 3 2 10 17 16 15 15 17 19 20 22 22 20 18 16 15 15 15 16 17 19 20 20 20 21 22 24 26 28 30 31 31 32 31 30 29 28 27 26 24 22 20 17 17 18 21 23 23 23 23 22 21 21 20 19 18 17 16 15 15 13 11 9 8 6 6 9 12 15 17 17 16 17 17 18 19 22 26 29 31 30 30 30 31 30 29 27 24 23 21 21 21 20 19 18 16 15 14 14 14 14 15 15 16 17 18 19 20 21 22 23 23 23 23 24 24 25 27 28 29 30 30 30 30 31 31 31 31 30 30 30 30 31 31 31 31 30 29 28 27 26 26 25 25 25 25 26 27 27 28 28 29 29 29 28 28 29 30 31 33 35 37 38 38 38 38 38 38 39 40 40 39 38 38 38 38 39 41 41 39 36 33 30 28 28 28 29 30 31 32 34 38 42 45 47 48 48 48 49 50 52 54 55 55 54 52 50 48 45 42 37 33 30 28 27 26 25 25 25 26 27 30 32 34 36 38 40 41 41 40 39 37 34 32 30 28 26 25 24 24 24 25 25 26 26 26 26 26 26 25 24 23 20 17 13 9 4 -6 -11 -10 -7 -4 0 5 10 15 20 25 27 29 30 31 30 29 29 29 30 32 33 35 36 -51 -53 -54 -56 -57 -57 -54 -49 -44 -40 -37 -36 -36 -37 -37 -37 -36 -36 -35 -34 -34 -35 -36 -38 -40 -38 -34 -30 -26 -24 -21 -19 -16 -12 -7 -2 2 4 5 7 8 9 9 9 9 11 14 17 19 21 22 24 26 26 24 21 16 13 8 3 -1 -3 -6 -8 -7 -2 3 6 6 5 5 3 2 -1 -3 -3 -1 2 4 5 6 6 4 5 6 6 4 3 3 5 7 7 7 7 6 6 5 5 5 5 4 5 5 7 9 10 12 14 15 17 18 17 15 13 11 12 12 11 10 9 5 2 0 -1 -3 -5 -7 -10 -12 -12 -8 -5 0 8 13 12 10 10 15 18 19 21 21 20 18 17 16 16 16 17 18 19 20 21 22 23 24 26 28 30 31 32 33 33 33 33 32 31 29 28 26 23 20 18 17 18 20 22 23 23 23 23 22 21 20 19 17 16 16 15 14 13 11 9 7 6 6 9 12 14 15 15 15 15 16 17 18 21 24 26 27 26 26 26 27 27 26 24 23 21 21 21 21 20 19 17 16 15 14 14 14 14 14 15 16 17 18 19 20 21 21 21 21 21 21 22 23 24 26 28 29 29 30 30 30 31 31 32 32 32 32 32 32 32 32 31 30 29 29 28 27 26 26 25 25 24 24 25 25 25 25 25 25 25 25 26 26 28 30 32 34 36 37 38 38 37 37 37 38 39 39 39 38 37 36 36 36 37 39 39 37 34 31 28 27 27 28 28 29 29 31 34 39 43 47 49 50 50 50 51 53 54 56 57 57 55 54 53 52 49 45 40 35 31 28 26 25 25 24 24 24 26 28 31 34 37 39 41 42 42 42 41 39 37 35 33 30 28 27 26 26 26 27 27 27 27 27 26 26 25 24 22 20 17 14 11 6 2 -5 -14 -17 -16 -12 -10 -7 -2 4 11 19 24 28 29 29 29 28 27 27 27 28 29 30 32 -52 -56 -56 -57 -58 -58 -54 -49 -42 -38 -36 -36 -38 -37 -36 -36 -35 -34 -34 -35 -35 -36 -38 -38 -38 -35 -31 -26 -23 -21 -19 -16 -13 -9 -5 -0 3 6 9 11 13 14 14 12 10 11 13 16 19 22 25 27 28 28 27 23 19 15 10 3 -3 -4 -4 -4 -3 -0 4 6 6 5 4 3 0 -3 -4 -2 1 4 6 7 7 5 3 5 5 4 2 3 3 5 6 6 6 6 7 6 6 6 7 7 6 7 8 10 11 13 15 16 17 18 19 19 18 16 12 10 8 7 7 7 4 3 1 -0 -2 -4 -8 -12 -15 -16 -14 -11 -3 5 9 9 6 5 12 17 17 18 19 19 18 17 16 16 17 18 19 20 21 22 24 25 26 28 29 30 31 32 33 34 34 34 34 33 31 29 27 24 21 19 19 20 21 23 23 24 24 23 23 22 20 19 18 17 16 15 14 13 11 9 7 6 7 10 12 14 15 14 14 14 14 15 16 19 22 23 23 22 22 23 23 23 22 21 20 20 20 20 19 18 17 17 16 15 14 13 13 13 14 15 16 17 18 19 20 21 21 21 20 20 20 21 22 24 25 27 28 29 29 29 30 31 32 33 33 34 34 34 34 34 33 32 31 31 30 30 29 28 28 27 26 25 25 24 24 23 22 22 22 22 23 24 26 28 30 32 33 35 37 37 38 37 37 37 38 38 38 37 37 36 35 35 35 36 36 36 35 32 29 27 26 27 27 28 28 28 31 35 40 44 47 49 50 50 51 52 54 56 58 59 58 57 56 55 55 53 48 42 36 31 27 25 24 24 23 23 24 25 27 30 33 37 39 41 42 43 43 42 41 39 37 35 32 30 29 28 28 29 29 29 29 29 28 27 26 25 23 21 18 15 12 9 5 1 -4 -10 -14 -17 -16 -16 -15 -12 -8 -1 8 16 23 28 29 28 27 26 25 24 24 24 25 26 -52 -57 -59 -59 -58 -56 -52 -46 -40 -37 -37 -38 -38 -36 -35 -34 -33 -33 -34 -35 -36 -37 -38 -37 -34 -31 -27 -23 -19 -17 -14 -12 -8 -4 -0 3 7 9 12 14 16 17 17 16 15 14 16 17 19 22 26 27 26 26 25 24 20 17 12 5 -1 -2 1 2 2 1 4 6 7 6 4 2 -1 -2 -1 1 3 4 5 6 5 3 2 3 3 2 2 3 4 5 5 5 5 6 7 8 8 9 10 10 10 10 11 12 13 15 16 17 17 18 19 19 18 16 12 9 7 7 8 7 6 4 3 1 -1 -4 -9 -13 -14 -13 -10 -7 -0 5 8 9 7 5 10 14 12 11 15 16 17 16 16 16 18 19 19 20 21 23 25 27 28 28 28 29 30 31 33 34 35 36 35 34 32 30 27 25 23 22 21 22 23 23 24 25 25 24 24 23 21 20 19 18 17 16 15 13 11 9 8 8 9 11 13 14 14 14 14 13 13 13 15 17 19 20 19 18 18 19 19 19 18 18 18 19 19 18 16 16 15 15 15 14 14 13 13 13 14 15 16 17 18 19 20 20 20 20 20 19 19 20 21 23 25 26 27 28 29 29 29 30 32 33 34 35 36 36 36 35 35 34 33 33 32 32 33 32 32 31 30 28 27 26 25 23 22 21 21 22 23 25 27 29 30 31 32 33 35 37 38 38 38 38 38 38 37 37 36 35 34 34 34 34 35 34 33 30 28 26 26 26 26 26 27 28 32 36 41 44 46 48 49 50 51 52 55 57 60 61 60 59 58 58 57 55 51 45 38 32 27 24 23 23 23 23 24 25 27 29 33 36 39 41 42 43 43 43 41 40 38 35 33 32 31 31 31 31 32 32 31 31 30 28 27 25 23 20 17 14 11 8 5 2 -2 -5 -9 -13 -15 -15 -16 -17 -16 -13 -6 4 13 21 27 28 27 25 23 22 20 19 20 20 -54 -57 -58 -58 -56 -53 -48 -43 -39 -38 -38 -38 -37 -34 -33 -32 -31 -32 -33 -35 -37 -37 -37 -35 -32 -28 -24 -20 -16 -12 -9 -7 -3 0 5 7 10 12 14 16 17 18 19 19 20 21 22 22 21 22 24 25 23 22 23 23 19 18 14 7 1 2 8 8 5 2 4 7 7 7 5 1 -0 0 2 2 2 0 1 1 1 0 1 1 1 1 1 3 4 5 5 5 5 6 8 9 11 12 13 13 13 13 14 14 14 15 16 16 15 16 17 17 16 14 11 10 10 11 10 10 8 6 4 2 -1 -4 -10 -12 -9 -2 5 6 9 9 9 11 11 10 11 11 7 3 7 9 12 15 15 16 17 18 19 20 21 23 25 26 27 27 27 28 29 31 32 34 36 36 36 35 33 31 29 27 26 24 24 24 24 25 25 26 26 26 25 24 23 21 20 19 18 18 16 14 12 10 9 9 10 11 13 13 13 13 13 12 12 12 14 16 17 17 16 15 15 15 15 15 15 15 16 16 16 15 14 14 14 14 14 13 13 13 13 14 14 15 16 17 18 19 19 20 20 19 19 18 19 19 20 22 23 25 26 27 28 28 29 30 31 32 34 35 36 36 36 36 35 35 34 34 34 35 36 36 36 35 34 33 32 30 29 27 26 25 25 25 26 28 29 30 30 30 31 32 34 36 38 39 39 39 39 39 38 37 36 35 35 34 34 34 33 32 31 29 27 26 26 26 26 26 27 30 34 39 42 44 46 47 49 50 51 53 56 59 61 63 62 62 61 60 59 57 53 47 40 34 28 25 23 22 22 23 24 25 27 29 32 35 38 40 42 43 43 42 41 39 37 36 34 34 33 33 33 33 33 33 32 32 31 29 27 24 22 19 16 13 10 8 5 2 -0 -2 -4 -7 -9 -12 -14 -15 -16 -17 -15 -9 -1 9 19 23 25 24 22 19 17 16 15 15 -55 -56 -57 -56 -53 -50 -46 -41 -39 -38 -38 -37 -34 -32 -31 -29 -29 -30 -32 -34 -36 -37 -36 -34 -31 -27 -22 -18 -13 -9 -6 -3 0 3 7 9 12 13 15 16 17 18 19 21 24 27 28 26 24 22 23 21 19 20 21 22 18 17 13 7 1 4 11 12 8 4 5 8 9 8 6 2 2 3 3 2 -1 0 0 -0 -1 -1 0 -0 -1 -0 1 2 3 5 5 5 5 7 9 11 14 15 16 16 16 16 15 14 13 15 16 16 15 16 18 18 16 13 12 15 16 14 13 11 10 8 5 3 -1 -6 -10 -7 2 13 20 20 18 15 13 14 15 13 12 11 7 1 -1 -0 4 11 14 15 16 17 18 19 20 22 23 25 26 26 26 27 28 30 32 34 35 36 35 35 33 31 30 29 27 26 25 25 25 26 27 27 27 27 26 26 24 23 21 21 20 20 18 15 13 11 10 10 11 12 12 12 13 12 12 11 11 11 13 14 14 14 13 12 12 12 12 11 11 12 13 14 14 13 13 13 13 13 12 12 12 13 13 14 15 15 16 16 17 17 18 18 18 18 18 18 18 18 19 21 22 23 25 26 27 27 27 28 29 30 31 33 34 34 34 34 34 34 34 34 34 35 36 37 38 38 37 37 36 35 33 33 31 31 31 31 31 31 31 31 31 30 30 31 33 35 38 39 41 41 41 40 39 38 37 36 35 35 34 33 33 31 30 28 27 27 27 27 27 27 30 34 38 42 44 45 46 47 48 50 51 54 57 60 63 65 65 64 63 63 61 59 55 50 44 37 31 27 24 23 23 23 24 25 27 28 30 33 36 38 41 43 43 42 41 39 38 36 36 35 34 34 33 33 33 32 32 31 30 28 25 22 19 17 15 13 11 8 6 3 2 0 -1 -3 -5 -7 -9 -11 -12 -13 -15 -15 -12 -5 5 13 19 21 20 18 16 14 13 12 -54 -55 -55 -54 -52 -48 -44 -40 -39 -38 -36 -34 -32 -29 -28 -27 -28 -29 -31 -33 -34 -35 -34 -32 -29 -24 -20 -16 -12 -7 -4 -1 2 4 7 10 12 14 15 17 18 19 21 23 26 29 28 26 24 23 23 19 17 17 18 17 14 10 6 1 0 6 12 13 10 6 6 8 10 10 9 6 6 7 5 2 0 5 4 2 1 2 3 3 2 1 1 1 4 5 5 5 6 7 10 13 15 17 18 18 17 16 15 14 15 16 17 17 18 19 20 20 17 14 14 22 20 17 15 13 11 9 6 3 -1 -5 -4 5 16 24 25 24 23 20 19 20 18 15 14 14 13 10 1 -3 -1 4 11 11 13 15 16 17 19 19 21 23 24 25 25 26 27 29 31 33 34 35 35 35 34 32 31 30 29 27 26 26 27 27 28 28 28 28 27 27 26 24 23 23 22 22 20 17 14 12 11 11 11 11 11 11 11 11 11 10 10 11 11 11 11 11 10 10 10 9 9 8 9 10 11 12 12 12 12 12 12 11 11 11 12 13 14 15 16 16 16 16 16 16 16 16 16 17 17 17 17 18 18 19 20 22 23 25 25 26 26 26 27 27 28 30 30 31 31 31 31 31 31 32 33 34 35 37 38 39 39 39 38 38 37 37 36 36 35 35 35 34 33 33 32 32 32 32 34 36 38 40 42 43 42 41 40 38 37 37 36 36 35 34 33 32 31 30 29 29 29 29 29 30 33 37 41 44 46 47 48 49 50 51 53 56 59 63 65 66 66 65 65 64 63 61 57 53 48 42 36 30 26 24 23 23 24 25 26 27 28 30 33 36 39 42 43 43 43 41 40 39 37 36 34 33 33 33 32 32 31 30 28 26 23 20 17 16 15 13 11 9 8 6 4 3 2 -0 -2 -4 -5 -7 -8 -9 -10 -12 -14 -13 -7 1 9 14 16 16 14 13 11 10 -53 -54 -55 -54 -51 -47 -43 -39 -38 -36 -33 -31 -29 -27 -26 -27 -27 -28 -30 -31 -31 -31 -29 -27 -24 -21 -17 -14 -10 -7 -4 -1 2 5 7 10 13 14 16 18 19 21 23 24 24 24 23 22 22 23 23 19 17 16 15 11 6 1 -2 -2 1 7 12 13 12 9 9 9 11 12 12 10 10 9 6 3 3 9 8 5 5 7 7 7 5 3 2 3 6 6 6 6 6 8 10 13 15 17 18 17 16 14 14 14 16 17 18 18 19 20 20 19 16 14 16 22 21 19 16 14 12 10 7 4 3 6 9 19 26 27 24 23 23 23 24 26 25 21 17 16 15 15 12 9 4 2 6 4 9 10 11 13 16 17 18 20 23 25 26 26 26 28 30 32 33 34 35 35 35 33 32 31 30 30 29 28 28 28 29 29 28 28 28 28 27 26 25 24 24 23 21 19 16 13 12 12 12 11 11 10 10 10 10 10 10 10 9 9 8 8 8 8 8 7 7 6 7 8 10 11 11 11 11 11 11 11 10 11 12 13 14 15 15 15 15 15 14 14 14 14 15 15 16 17 17 17 18 18 19 20 22 23 24 25 25 25 25 25 26 27 28 29 29 29 29 29 29 30 30 32 33 35 37 38 39 39 39 39 39 39 38 38 38 37 36 35 34 34 33 33 33 34 35 37 39 41 43 43 43 42 41 39 39 38 38 37 37 36 35 34 34 33 33 33 32 31 32 33 37 40 43 45 47 48 49 50 51 53 55 58 62 64 66 67 66 66 65 65 64 62 59 56 52 47 41 35 30 27 25 24 24 24 25 25 26 28 30 33 37 40 43 45 45 45 43 41 38 36 34 33 33 33 33 32 31 30 28 25 22 20 19 18 17 15 13 12 11 10 9 8 6 4 2 0 -1 -2 -3 -5 -6 -7 -9 -11 -11 -8 -2 6 11 12 12 11 9 8 -52 -53 -54 -54 -50 -46 -42 -38 -35 -32 -29 -27 -25 -24 -25 -26 -26 -27 -27 -27 -26 -24 -23 -20 -19 -17 -15 -12 -9 -6 -3 0 3 5 7 11 14 15 17 19 20 21 21 21 19 17 18 19 21 23 22 19 17 15 12 5 -3 -7 -5 1 5 9 12 15 15 13 12 11 12 15 16 15 13 11 8 6 7 12 10 8 9 12 11 10 7 5 4 6 6 6 5 6 7 8 9 11 12 14 14 14 13 12 13 14 16 17 17 18 18 17 17 16 15 15 17 21 20 19 17 15 14 11 8 6 8 19 23 27 28 25 21 18 18 22 26 28 29 25 20 16 11 6 6 10 11 8 7 2 4 3 1 6 13 12 13 17 21 24 26 26 27 27 28 30 31 33 34 36 36 35 34 33 32 32 31 30 30 29 29 29 28 29 29 29 28 26 25 25 25 24 22 20 17 15 14 13 12 11 10 9 9 9 9 9 9 8 7 6 6 6 6 7 6 6 6 6 6 8 9 10 10 10 10 10 10 10 10 11 12 14 15 15 15 14 14 13 13 13 13 13 13 14 15 16 17 17 17 18 18 19 21 22 23 24 24 24 24 24 25 26 26 27 28 28 28 28 28 28 29 30 32 33 35 37 38 39 40 40 40 39 39 39 38 37 35 34 34 33 33 34 34 35 36 37 39 41 43 43 43 42 42 41 41 40 40 39 39 38 38 37 37 37 36 35 34 34 34 37 39 42 44 45 46 48 49 51 52 55 57 60 63 65 66 65 65 64 64 64 64 62 61 58 55 51 45 39 34 30 28 26 25 24 24 24 24 25 27 31 34 38 42 45 46 46 44 41 38 36 35 35 35 35 34 34 33 31 29 26 24 23 23 22 20 18 17 15 15 14 14 13 12 10 7 6 4 3 2 0 -1 -2 -3 -4 -6 -8 -6 -2 5 8 8 8 7 6 -49 -51 -53 -53 -49 -45 -40 -35 -30 -27 -24 -23 -23 -23 -23 -23 -23 -23 -22 -21 -20 -18 -17 -16 -15 -12 -9 -7 -5 -3 -0 2 3 6 8 11 14 16 17 18 18 17 15 14 13 13 15 17 19 21 21 19 17 14 7 -3 -9 -10 -2 7 12 12 13 16 17 16 15 14 15 18 20 18 16 13 10 9 11 14 11 11 12 13 11 9 6 5 4 3 1 1 2 3 5 6 6 7 8 9 9 10 10 10 12 14 14 15 15 16 15 13 13 14 16 18 20 20 20 19 18 17 15 13 10 9 12 27 28 28 25 20 15 11 14 20 24 25 30 29 23 15 4 -6 -6 -0 5 7 10 7 4 -4 -10 -3 10 7 8 12 15 21 24 26 26 27 27 28 30 32 34 36 36 36 35 34 34 33 33 32 31 30 29 29 28 29 29 29 28 27 26 25 25 24 23 21 19 18 16 15 13 12 10 9 8 8 8 8 7 6 6 5 5 5 5 6 6 6 6 6 7 8 9 10 10 10 10 10 10 10 11 12 13 14 15 15 14 14 13 13 12 12 12 12 12 13 14 15 16 16 17 17 18 19 20 21 23 23 24 24 24 24 24 25 26 26 27 27 26 26 26 27 28 29 30 31 33 35 36 38 39 39 39 39 39 38 37 36 34 33 33 33 33 33 34 35 36 37 39 40 42 42 43 43 42 42 42 42 42 41 41 40 40 39 39 39 38 37 36 36 37 39 40 42 43 44 45 46 47 49 52 54 57 60 62 63 63 62 62 61 62 62 63 63 61 60 58 54 49 43 38 34 32 29 28 26 24 23 22 23 25 28 32 36 40 43 44 44 42 40 38 37 37 37 37 36 36 35 35 33 32 29 28 27 26 25 23 21 20 19 18 18 19 19 18 16 14 12 10 9 7 6 5 3 3 2 1 -1 -4 -4 -1 3 4 4 3 2 -46 -48 -51 -51 -47 -42 -36 -30 -25 -22 -21 -21 -21 -20 -19 -19 -19 -19 -18 -18 -16 -15 -13 -12 -11 -7 -4 -2 -0 1 2 3 5 7 9 12 14 14 15 15 14 11 8 7 9 13 15 17 18 19 19 18 16 10 1 -7 -10 -8 3 13 17 16 16 18 19 18 17 17 19 22 23 22 19 16 14 14 15 16 13 12 11 9 7 5 3 2 -0 -4 -6 -4 -2 1 3 3 4 4 4 5 6 8 9 10 11 12 12 13 13 12 11 10 12 16 20 22 21 20 20 20 19 18 16 13 11 12 18 30 25 23 18 11 7 6 13 18 18 16 24 27 24 14 -0 -12 -15 -12 -8 -3 5 4 1 -8 -14 -6 10 6 6 7 6 16 22 24 25 26 26 28 29 32 34 35 36 35 35 35 34 34 33 33 32 30 29 28 29 29 29 28 27 26 25 25 24 24 23 22 21 20 18 16 14 12 11 10 9 8 8 7 6 6 5 5 5 5 6 6 6 7 7 7 8 9 9 10 10 10 11 11 11 11 12 13 14 15 15 15 14 13 13 12 12 12 12 12 12 12 12 13 14 15 15 16 17 18 19 20 22 22 23 23 23 24 24 25 25 25 25 25 25 25 25 25 25 26 26 27 29 31 33 34 36 37 38 38 37 36 35 34 33 33 32 32 33 33 34 34 35 36 37 39 40 41 42 42 43 43 43 43 43 42 42 41 40 40 40 39 39 38 38 38 38 39 40 41 41 42 42 43 44 46 49 52 55 57 59 60 60 59 58 58 59 60 61 62 62 61 59 56 51 47 42 39 36 33 31 28 26 23 22 21 23 26 29 33 36 38 40 40 39 39 38 38 39 39 38 38 37 37 37 36 35 33 31 30 29 27 25 23 23 22 22 22 22 22 22 20 19 17 15 14 12 11 10 9 8 8 7 6 3 -0 -1 -0 1 0 -1 -2 -43 -45 -48 -48 -43 -37 -31 -25 -22 -20 -19 -18 -17 -16 -16 -16 -16 -16 -16 -15 -14 -13 -11 -9 -7 -4 -1 1 2 3 3 4 6 8 9 11 12 12 12 12 11 7 4 5 9 14 16 17 16 16 16 16 12 6 -2 -7 -5 -1 8 15 19 20 19 19 20 21 20 21 22 25 27 26 22 20 18 18 19 18 14 10 7 4 1 -0 -2 -4 -7 -9 -7 -2 1 3 3 3 3 3 3 4 6 7 8 9 10 10 10 11 10 9 8 11 16 20 22 23 21 21 21 20 20 18 15 12 13 19 27 31 19 15 11 3 1 5 14 15 9 5 13 19 19 13 1 -13 -17 -18 -17 -14 -7 -6 -7 -12 -14 -7 10 10 9 6 0 9 20 24 25 26 26 27 29 31 32 33 33 33 34 34 34 34 34 33 32 30 29 29 29 29 29 28 27 26 25 24 24 24 23 23 22 22 20 18 16 14 12 11 10 10 9 8 7 6 6 6 6 6 6 7 7 7 8 8 9 9 10 10 11 11 12 12 12 12 13 14 15 15 16 15 15 14 13 12 12 12 12 12 11 11 11 12 12 13 13 14 15 16 17 19 20 21 22 22 23 23 24 24 24 24 24 24 23 23 23 23 23 22 22 23 24 26 28 30 32 33 34 34 34 34 33 33 32 32 33 33 34 34 34 34 34 35 36 37 39 40 40 41 41 42 43 43 43 43 42 41 40 40 39 39 39 39 39 39 39 39 39 39 40 40 40 41 42 43 45 48 51 53 55 56 56 55 55 55 56 57 59 60 61 60 59 57 53 50 46 43 40 37 34 31 28 24 22 21 21 22 25 29 31 34 36 37 38 39 40 40 40 40 39 38 37 37 38 38 37 35 34 32 30 28 26 25 25 25 25 25 25 25 24 23 22 21 19 18 16 15 15 14 13 13 12 12 10 7 3 0 -1 -2 -3 -5 -40 -43 -45 -43 -38 -32 -27 -22 -19 -17 -16 -15 -14 -13 -13 -14 -14 -15 -14 -14 -13 -12 -10 -7 -5 -2 0 2 3 3 4 5 6 7 7 9 10 11 11 12 11 6 6 9 13 16 16 16 14 13 13 13 10 6 2 0 4 6 11 15 19 22 22 22 22 24 25 26 26 28 30 29 24 22 21 21 22 19 14 10 7 4 1 -2 -4 -6 -8 -6 3 8 9 7 5 4 4 3 3 4 5 6 6 7 7 8 9 9 8 8 9 13 18 21 21 22 21 21 21 20 19 17 13 11 16 27 37 33 16 9 5 1 -0 3 9 9 3 -0 2 8 10 10 5 -11 -16 -18 -18 -18 -16 -15 -14 -15 -14 -9 5 9 10 8 2 5 18 24 25 25 26 27 29 29 29 29 29 30 31 31 32 32 33 32 31 30 29 29 29 28 28 27 26 26 25 24 24 24 24 24 23 23 21 19 17 16 14 13 12 11 10 9 8 7 7 6 6 6 7 7 8 8 8 9 9 10 10 11 11 12 12 12 12 13 14 14 15 15 16 16 15 14 13 12 12 12 12 11 11 11 10 10 10 10 11 11 12 13 15 16 17 19 20 21 21 22 22 22 22 22 22 22 22 22 21 21 20 20 19 20 20 21 23 25 27 28 30 30 31 31 31 32 33 33 34 35 35 35 34 34 35 35 36 37 38 39 39 39 40 41 41 42 43 43 42 41 40 40 39 39 39 39 40 40 39 39 38 38 38 38 38 39 40 41 43 44 46 49 50 51 52 52 52 53 53 54 56 58 59 60 59 57 55 52 49 47 44 40 36 33 29 26 22 20 19 19 21 24 27 30 33 35 38 40 41 42 41 40 39 38 37 37 38 38 37 36 34 33 31 29 27 26 26 27 27 28 28 28 27 26 25 24 22 21 20 20 19 19 19 18 18 17 16 13 9 4 1 -2 -4 -5 -37 -39 -40 -37 -33 -28 -23 -19 -17 -16 -14 -13 -13 -12 -12 -13 -14 -14 -14 -13 -13 -11 -9 -6 -3 -1 1 3 4 4 4 5 5 5 4 5 8 11 14 14 11 9 11 15 17 17 16 15 13 12 12 12 12 11 11 10 9 10 12 14 17 21 23 25 25 26 28 30 31 32 31 29 27 26 23 21 19 16 14 11 8 4 -1 -4 -4 -3 -1 2 12 13 10 7 6 6 6 5 4 3 3 3 3 3 4 5 6 6 7 8 10 13 16 19 21 21 22 21 20 19 17 15 11 10 17 27 33 28 15 8 5 3 1 -0 1 2 2 -0 -2 -2 -2 0 2 -9 -13 -14 -15 -15 -16 -15 -15 -15 -15 -13 -5 -1 3 7 5 7 17 22 23 23 23 25 27 27 26 25 25 26 27 28 29 30 30 30 29 28 27 27 27 27 26 26 26 25 25 25 25 25 24 24 24 23 21 19 18 17 16 15 14 13 12 11 10 9 8 7 7 7 7 8 8 8 9 9 10 10 11 11 11 12 12 12 13 13 14 14 15 16 16 16 14 13 12 12 12 11 11 11 10 10 9 9 8 8 8 9 10 11 12 13 15 17 18 19 20 20 20 20 20 21 21 21 21 21 20 19 18 18 18 18 18 19 21 22 23 24 26 26 27 29 30 32 34 35 36 36 36 36 36 35 36 36 37 37 38 38 38 38 39 40 41 41 42 42 42 41 40 40 40 40 40 40 40 40 40 39 38 37 37 37 37 37 38 40 41 42 43 45 46 47 49 50 50 51 51 52 53 55 57 58 58 57 55 53 51 49 46 42 38 34 30 26 23 20 18 17 18 20 23 26 30 34 38 41 43 43 42 40 38 37 36 36 37 37 36 34 33 32 31 30 28 28 28 29 29 30 30 30 30 29 28 27 26 25 25 24 24 24 24 24 24 23 22 19 16 11 7 3 -0 -2 -34 -35 -35 -32 -27 -23 -20 -18 -15 -14 -13 -12 -12 -12 -12 -12 -13 -14 -14 -12 -12 -10 -7 -4 -0 1 2 4 4 5 5 4 3 3 3 4 9 14 17 14 9 13 15 18 20 19 19 17 15 16 17 17 16 17 17 16 12 13 13 15 17 21 25 27 27 27 28 30 34 35 33 30 29 28 23 17 12 10 11 10 7 2 -3 -3 -0 3 6 10 16 13 9 8 10 10 9 7 6 4 4 3 2 1 2 3 4 6 8 8 9 12 16 19 21 21 22 20 19 18 17 15 11 9 12 18 20 16 11 7 5 3 1 -1 0 1 2 0 -2 -4 -6 -7 -6 -9 -10 -10 -10 -10 -8 -9 -11 -13 -15 -16 -15 -14 -10 -4 0 7 12 15 17 17 17 19 22 23 22 21 21 22 23 24 25 26 26 25 25 25 25 24 24 24 24 24 24 25 25 26 26 26 25 25 24 22 20 19 18 17 17 16 15 15 14 13 12 11 10 8 7 7 7 8 8 9 9 10 10 11 11 11 11 11 11 12 13 14 14 14 15 15 15 15 13 12 11 11 11 11 11 10 10 9 8 7 6 6 6 6 7 8 10 11 13 15 17 18 18 19 18 18 19 19 19 20 20 19 18 17 17 17 17 18 18 19 19 20 21 22 23 24 25 27 29 32 35 36 37 38 38 37 37 37 37 37 38 38 38 38 38 38 39 39 40 41 41 41 41 41 40 40 41 41 41 41 41 41 40 39 38 37 37 36 36 36 37 38 40 41 41 42 43 44 46 47 48 49 49 49 50 52 55 57 58 57 56 54 52 50 47 43 39 34 30 26 23 20 17 16 16 17 19 23 27 32 36 40 42 42 41 39 37 35 35 35 36 35 35 33 32 32 32 31 29 29 29 30 31 31 32 32 31 31 31 30 30 30 29 29 30 30 30 29 29 28 27 24 21 17 14 10 6 3 -31 -31 -30 -26 -22 -20 -18 -16 -14 -12 -11 -11 -10 -10 -10 -11 -12 -12 -12 -11 -10 -8 -5 -1 2 4 5 5 6 6 3 2 1 1 4 7 12 14 12 9 9 15 18 19 20 20 21 20 20 21 22 21 20 21 21 19 15 14 15 17 20 23 27 28 28 28 27 30 33 33 31 27 25 24 20 14 10 9 10 9 5 1 -3 1 5 8 11 15 16 13 10 11 13 12 10 9 8 7 6 5 3 1 1 2 5 8 8 7 7 12 18 20 21 22 21 21 19 18 16 15 12 9 10 13 13 9 8 6 4 3 1 0 1 2 2 0 -2 -4 -6 -7 -8 -8 -7 -6 -5 -2 5 3 -5 -11 -14 -16 -18 -20 -20 -18 -14 -4 -0 2 3 4 4 7 13 17 16 18 18 18 19 21 22 22 21 20 20 20 21 21 21 21 21 21 22 24 25 26 27 27 26 25 23 22 20 19 18 17 17 16 16 15 15 15 14 13 11 10 9 8 8 8 9 9 10 11 11 11 11 11 11 11 11 12 13 14 14 15 15 15 14 13 12 11 10 10 10 10 10 9 9 8 6 5 4 3 4 4 5 7 8 10 12 14 15 16 17 17 17 17 17 17 17 17 17 17 16 16 16 16 17 18 19 19 19 20 21 21 22 23 24 26 29 32 35 37 38 39 39 39 39 39 39 39 38 38 39 39 39 39 39 40 40 40 40 40 40 40 40 40 40 41 41 42 42 41 41 40 39 38 37 37 36 36 36 37 39 40 40 41 41 42 43 45 47 47 47 48 48 50 53 56 57 57 56 55 53 51 48 44 40 36 31 27 23 20 18 16 15 15 17 20 24 29 34 38 40 40 38 36 34 34 34 35 35 35 34 33 32 32 32 31 30 29 30 31 31 32 32 32 31 31 31 32 32 32 32 33 34 34 34 34 33 33 31 29 26 23 20 16 13 10 -28 -28 -26 -21 -18 -17 -16 -14 -12 -11 -11 -9 -8 -7 -7 -9 -9 -9 -8 -7 -6 -4 -2 1 3 7 8 8 8 7 4 1 -0 2 7 11 12 9 6 6 11 17 20 21 21 21 23 24 25 25 25 24 25 25 24 20 17 17 17 19 22 26 29 29 28 28 27 29 30 28 25 20 16 15 14 12 11 11 11 9 5 1 -0 6 10 12 13 16 14 12 12 13 13 11 10 10 10 10 8 6 4 2 2 4 7 9 7 6 7 14 19 21 21 21 21 21 20 19 17 15 13 11 11 11 9 6 6 6 4 3 1 1 2 2 1 -0 -2 -5 -6 -7 -7 -5 -4 -3 -1 4 13 10 -0 -9 -13 -15 -16 -19 -21 -23 -22 -19 -18 -16 -14 -13 -12 -8 -1 4 6 12 15 16 16 17 18 18 17 16 15 15 17 18 18 18 18 19 20 22 24 26 27 27 26 25 23 21 20 19 18 17 17 16 16 16 15 15 14 14 13 12 11 10 9 9 10 11 12 12 12 12 12 12 11 10 11 12 13 14 15 15 15 14 14 12 11 10 9 9 9 9 9 8 7 6 5 3 2 2 2 2 4 5 7 9 10 12 13 14 14 15 15 15 15 15 15 14 14 14 14 14 15 16 17 18 18 19 19 20 21 22 22 23 24 26 28 31 34 36 38 40 40 41 41 41 40 40 39 39 39 39 39 39 39 40 40 39 39 39 38 38 38 39 39 40 40 41 41 41 41 40 40 39 38 37 36 36 35 36 38 39 39 39 39 40 41 43 45 46 46 47 48 49 52 54 56 56 56 55 54 52 49 45 42 38 33 28 24 21 19 17 15 15 16 18 22 27 31 34 36 35 33 32 31 31 33 34 35 35 34 32 32 32 32 31 31 30 31 31 31 31 31 31 31 31 31 31 32 32 33 34 35 35 36 36 36 36 35 33 31 28 25 22 19 16 -25 -24 -21 -18 -16 -15 -15 -14 -13 -12 -10 -8 -5 -4 -4 -5 -5 -4 -2 -2 -2 -1 1 4 7 9 10 10 10 9 5 1 -0 3 10 13 10 5 4 7 14 19 22 24 24 25 26 27 28 29 29 28 29 28 26 22 19 19 20 21 24 27 29 29 28 28 28 29 27 22 17 13 8 6 7 8 10 12 12 9 6 4 7 12 13 14 15 15 11 11 12 11 9 7 7 7 8 8 7 5 3 2 3 8 10 9 6 4 8 15 18 19 20 20 21 21 20 19 18 15 14 13 12 11 8 5 6 6 4 3 2 2 2 2 1 -1 -3 -5 -6 -6 -5 -3 -1 0 1 3 8 6 -1 -8 -12 -13 -16 -18 -21 -22 -23 -24 -24 -24 -23 -22 -19 -17 -13 -10 -8 2 9 11 13 14 15 14 13 12 11 11 13 15 16 16 17 17 19 21 24 26 27 27 26 25 23 22 20 19 18 17 17 16 16 16 15 15 14 14 14 13 13 12 11 11 12 13 13 13 13 13 13 12 10 10 11 12 13 14 15 15 14 14 13 12 10 9 8 8 8 8 8 8 6 5 4 2 1 0 0 1 2 4 6 7 8 10 11 12 13 13 13 13 12 12 11 11 10 10 11 12 13 14 15 15 16 17 18 19 21 22 22 23 24 25 27 30 32 35 37 39 40 41 41 41 40 39 39 38 38 38 38 39 39 39 39 38 38 37 37 37 37 37 38 38 39 39 40 40 40 40 40 40 40 38 37 36 35 36 37 37 38 38 38 39 40 41 43 45 46 47 48 49 51 54 55 56 55 55 54 52 50 47 44 41 36 31 27 24 21 19 17 15 15 17 21 25 28 31 31 30 29 29 30 31 33 34 35 35 34 33 31 31 31 32 32 33 33 33 32 32 31 31 31 31 31 31 32 32 33 34 35 35 36 37 37 38 38 37 35 32 30 27 25 22 -22 -21 -19 -17 -16 -16 -15 -14 -13 -12 -9 -6 -4 -3 -1 -1 -0 1 2 1 1 2 4 6 9 11 11 10 10 10 6 1 1 5 12 13 9 4 5 11 17 21 23 26 27 28 29 30 31 32 32 32 32 29 26 23 21 21 21 21 23 26 28 28 27 27 28 27 24 19 13 9 5 2 3 5 8 11 11 7 6 9 16 16 15 16 16 13 10 10 9 6 3 2 2 2 2 2 2 1 1 3 7 10 10 8 4 4 9 15 17 18 18 18 19 19 19 18 17 15 14 14 13 11 7 5 6 6 5 4 3 3 2 1 0 -2 -4 -5 -6 -5 -3 -1 1 3 3 3 3 1 -2 -6 -10 -13 -16 -19 -21 -23 -24 -25 -26 -26 -25 -24 -21 -18 -16 -15 -15 -10 -2 2 5 10 11 12 11 10 9 8 10 12 14 15 16 17 19 21 23 25 27 27 26 25 23 22 20 19 18 17 17 16 16 15 15 15 14 14 14 14 14 13 13 13 14 14 14 14 14 14 13 11 10 10 11 12 13 14 14 14 14 14 13 12 10 9 8 8 8 8 8 7 6 5 3 2 1 -0 -1 -0 1 2 4 5 6 8 9 10 11 11 10 10 10 9 8 8 8 8 8 9 10 11 11 12 13 14 15 17 19 20 21 21 22 23 25 27 30 32 34 36 37 38 38 38 38 37 37 36 36 36 37 37 37 37 37 37 36 36 36 36 36 36 36 37 37 37 38 38 38 39 40 40 40 39 38 36 35 35 36 36 37 37 37 37 38 40 41 43 45 47 49 50 51 53 55 55 55 54 54 53 51 48 46 43 39 35 30 27 25 22 19 16 16 17 20 23 26 28 28 28 28 29 31 32 34 35 36 36 35 33 31 30 31 33 35 36 37 36 36 35 34 33 33 33 33 33 33 33 33 34 34 35 36 37 38 38 39 38 37 35 33 31 29 26 -20 -19 -18 -18 -17 -16 -15 -14 -12 -9 -6 -4 -2 0 3 4 5 5 4 2 1 3 6 9 11 12 12 12 12 11 6 2 3 9 14 14 9 7 9 15 20 22 25 28 30 31 32 34 36 36 34 33 32 27 24 23 23 22 21 20 21 23 25 24 24 24 24 22 19 16 12 9 8 7 6 6 8 9 7 5 6 12 21 18 18 19 18 14 12 9 5 2 -1 -3 -3 -4 -4 -3 -2 -2 1 6 10 11 9 5 4 6 10 14 16 16 16 16 16 17 17 16 15 14 14 14 13 10 6 4 5 6 5 4 4 3 1 -0 -2 -3 -5 -5 -5 -3 -1 1 3 4 5 4 2 0 -3 -6 -10 -13 -17 -20 -22 -24 -25 -25 -26 -26 -25 -22 -20 -17 -16 -15 -15 -15 -12 -10 -7 -0 2 6 7 7 7 7 8 10 13 15 16 17 18 20 22 24 26 27 27 25 24 22 21 20 19 17 16 16 15 15 15 15 14 14 14 14 15 15 15 15 15 15 15 15 14 14 12 11 10 10 11 12 13 14 14 14 14 14 13 11 10 8 8 7 7 7 7 7 6 5 4 2 1 -1 -1 -1 -0 1 2 3 4 6 7 9 9 9 8 8 7 6 6 5 5 5 6 6 7 7 7 8 9 10 11 12 14 16 17 18 19 21 23 24 26 28 30 31 32 33 33 34 34 34 34 33 33 33 33 34 34 34 34 34 34 34 34 34 35 35 35 35 36 36 36 36 37 37 38 39 39 39 37 36 35 35 35 35 35 35 36 36 37 38 40 42 44 47 49 51 52 53 54 55 55 54 54 53 52 50 48 46 43 39 35 32 28 25 21 18 17 18 20 22 25 27 28 28 29 31 33 35 36 37 37 37 36 34 32 30 31 33 38 40 41 41 40 39 38 36 36 35 35 35 34 34 34 34 35 35 36 36 37 38 38 38 37 36 34 32 31 29 -20 -20 -19 -18 -17 -15 -14 -12 -9 -6 -3 -1 1 4 6 8 8 7 4 2 0 3 7 11 14 15 15 16 15 13 8 4 7 13 17 16 12 11 14 19 23 25 28 31 33 34 36 39 39 37 34 32 30 25 22 22 24 21 19 18 19 21 21 20 18 17 16 15 14 12 10 10 12 12 11 9 6 5 2 3 8 15 21 19 23 25 22 18 16 11 7 4 1 -3 -5 -6 -4 -2 -2 0 5 10 10 6 4 3 5 9 13 15 15 15 14 13 13 14 14 13 13 12 12 12 11 8 5 5 7 7 5 4 3 1 -1 -3 -5 -5 -5 -5 -4 -2 0 2 4 5 5 4 2 -0 -3 -7 -10 -15 -19 -21 -23 -25 -26 -26 -26 -25 -22 -19 -17 -16 -14 -14 -15 -15 -16 -17 -16 -13 -10 -4 -2 0 3 5 6 9 12 14 16 17 18 20 22 24 26 27 27 26 24 23 22 20 19 17 16 16 15 15 15 15 15 15 15 15 15 15 16 16 16 16 16 15 15 14 12 11 11 11 11 12 13 13 14 14 14 14 13 11 9 8 7 7 7 7 7 7 7 6 4 3 1 -0 -1 -1 -0 0 1 2 3 5 6 7 8 7 6 5 4 4 3 3 3 3 3 3 3 3 3 4 4 5 6 8 9 10 12 14 16 18 20 21 23 24 25 26 27 28 28 29 30 30 30 30 30 30 30 30 30 30 30 30 30 30 31 31 32 33 33 34 34 35 35 35 35 35 36 37 38 37 37 35 35 34 34 34 34 34 34 34 35 36 38 40 43 46 49 52 52 53 53 54 55 54 54 54 53 52 50 49 47 44 40 37 33 29 25 21 19 20 21 22 24 27 29 31 33 35 36 37 38 38 38 37 36 35 33 32 32 34 39 42 44 44 43 41 40 38 36 36 36 36 35 35 35 35 35 35 35 36 36 37 37 36 36 35 34 32 31 30 -21 -20 -19 -17 -14 -13 -11 -9 -7 -4 -1 1 4 6 9 8 7 7 5 2 0 4 10 15 17 19 21 22 21 17 11 9 13 17 20 18 15 15 19 24 26 30 32 34 36 37 40 40 38 35 32 30 25 21 20 22 23 20 17 17 19 21 20 17 13 11 10 11 8 5 3 4 6 7 7 5 3 3 2 7 14 19 22 25 29 28 24 20 16 12 8 4 -1 -5 -5 -4 -2 -0 -0 4 9 9 6 2 2 4 9 13 15 14 14 13 11 10 9 9 9 9 9 9 9 9 7 6 4 7 11 9 5 2 1 -2 -4 -7 -7 -6 -6 -6 -5 -3 -0 2 3 3 4 3 0 -2 -5 -8 -12 -17 -20 -22 -24 -25 -26 -25 -24 -21 -18 -15 -15 -14 -14 -14 -14 -15 -18 -21 -22 -22 -20 -16 -15 -11 -5 0 3 7 11 14 16 17 18 19 21 23 26 27 28 27 25 24 22 21 19 18 16 15 15 15 15 15 16 16 16 16 16 16 16 16 16 16 16 16 15 14 13 12 12 12 12 12 13 13 13 14 14 14 12 10 8 7 7 6 7 7 7 7 7 7 5 4 2 0 -0 -1 -0 1 1 2 3 4 5 6 6 6 5 4 2 1 1 0 0 0 0 -0 -0 -0 0 1 1 2 3 3 4 6 7 9 12 14 17 19 20 21 22 22 23 24 25 26 27 28 28 28 28 27 27 27 27 27 27 27 27 26 27 27 28 29 30 31 32 33 33 34 34 34 35 35 36 36 36 35 34 34 34 33 33 32 32 33 34 35 37 39 41 44 48 51 51 52 53 54 55 55 54 54 54 53 52 51 50 48 45 42 38 34 29 25 23 23 23 24 26 28 32 35 37 38 39 39 39 38 37 36 36 35 34 34 33 34 38 41 44 45 44 42 40 38 36 35 35 36 36 37 36 36 35 35 35 35 35 35 35 34 34 33 32 32 32 31 -21 -19 -17 -14 -12 -11 -9 -7 -5 -2 0 3 5 7 9 8 7 7 7 5 3 8 14 19 21 24 27 27 25 20 16 15 19 22 22 19 17 20 25 29 32 33 34 36 38 39 39 37 34 30 27 23 19 20 22 24 22 19 18 18 20 21 18 14 9 7 6 7 3 -1 -4 -4 -2 -1 -0 0 2 4 7 13 19 24 26 30 30 27 22 17 13 9 6 3 -1 -2 -1 1 2 1 2 7 10 8 3 1 4 10 14 15 14 12 11 9 8 6 5 4 4 4 4 4 4 4 3 2 2 6 12 10 4 0 -2 -4 -7 -8 -8 -7 -7 -7 -6 -5 -2 -1 0 1 1 -0 -3 -5 -7 -11 -15 -19 -21 -23 -24 -25 -25 -23 -20 -16 -13 -12 -13 -14 -15 -15 -15 -16 -19 -23 -26 -28 -27 -27 -26 -23 -17 -9 -2 3 8 12 14 15 17 18 20 23 26 28 28 28 26 25 23 22 20 19 17 16 15 15 15 15 16 17 17 18 18 17 17 17 17 17 17 16 16 15 14 14 14 13 13 13 13 13 13 14 14 13 11 9 7 6 6 6 6 7 7 8 8 7 6 5 3 1 0 0 1 1 2 3 4 4 5 6 6 5 4 3 1 -1 -2 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -1 -1 -0 1 2 3 5 7 10 12 14 16 17 18 19 20 22 23 24 26 26 27 27 26 25 25 25 24 24 24 24 24 23 23 23 23 24 25 27 29 30 31 32 32 33 33 34 35 35 35 34 34 34 34 33 32 32 32 32 33 34 36 38 40 43 46 49 50 51 52 54 56 56 56 55 54 54 53 53 52 51 49 47 43 39 34 30 28 27 27 27 28 31 34 38 40 41 41 40 39 38 36 35 34 34 34 34 34 34 36 38 41 44 43 41 39 37 36 35 36 37 38 39 38 37 36 35 34 33 34 33 33 33 32 32 32 32 33 33 -20 -18 -15 -12 -10 -9 -8 -6 -3 -0 2 5 6 7 7 7 8 9 10 10 10 14 18 22 25 30 30 29 27 24 20 22 25 27 26 25 23 26 29 31 33 34 35 36 37 37 35 32 29 26 22 19 19 22 24 24 21 19 18 19 20 20 16 11 7 4 4 5 1 -3 -5 -5 -5 -5 -3 0 4 7 12 18 24 28 30 32 27 23 18 15 10 7 4 3 3 3 5 6 4 3 5 7 8 4 -1 2 9 16 18 16 12 10 8 6 4 1 -1 -2 -2 -2 -2 -2 -2 -2 -2 -2 -1 2 5 4 1 -2 -5 -7 -9 -10 -9 -8 -8 -8 -8 -7 -5 -4 -2 -2 -2 -4 -6 -8 -10 -13 -16 -19 -21 -22 -23 -24 -23 -20 -16 -12 -9 -10 -13 -15 -16 -17 -17 -18 -21 -24 -29 -31 -32 -32 -33 -32 -29 -20 -11 -4 3 8 11 13 14 16 18 21 25 27 28 28 27 26 25 23 22 21 19 17 16 15 15 15 16 18 19 19 19 19 18 18 17 17 17 17 17 16 16 15 15 15 14 14 14 13 13 13 13 12 10 8 7 6 5 6 6 6 7 8 7 7 6 5 3 2 1 1 1 2 3 4 4 5 5 5 5 5 4 1 -1 -3 -5 -5 -6 -6 -6 -6 -6 -6 -6 -5 -5 -4 -4 -3 -3 -2 -1 1 3 5 7 9 11 13 14 15 17 18 20 22 24 25 25 25 25 24 24 23 23 23 23 22 22 22 21 20 20 20 21 22 25 27 29 30 31 32 32 33 34 34 34 34 34 34 34 33 32 32 32 32 33 34 35 37 39 41 43 46 48 50 52 54 57 58 57 56 55 54 54 54 54 53 52 50 48 45 40 36 33 32 31 30 31 33 36 39 41 42 41 40 39 38 36 34 33 33 33 34 34 34 34 35 37 41 41 40 38 37 36 37 38 39 40 40 40 38 36 34 33 32 32 32 32 31 31 31 31 32 33 34 -18 -16 -13 -11 -9 -9 -6 -3 -0 2 6 7 6 5 5 7 9 11 13 15 15 17 20 23 26 30 30 28 27 26 25 27 29 31 31 31 30 31 31 30 31 33 33 34 34 33 32 30 27 24 22 21 23 24 25 23 20 19 19 20 21 19 14 9 6 4 4 3 2 1 0 -1 -4 -4 -1 4 7 10 15 20 25 30 32 30 25 21 19 16 11 8 7 8 9 9 10 9 6 4 8 7 4 -1 -3 4 15 20 20 15 10 8 6 3 0 -3 -6 -7 -7 -7 -7 -7 -7 -6 -6 -5 -4 -3 -2 -2 -3 -5 -8 -10 -11 -12 -11 -11 -11 -11 -11 -10 -8 -7 -6 -6 -7 -9 -10 -12 -13 -15 -18 -20 -21 -22 -22 -22 -21 -18 -13 -10 -9 -10 -13 -16 -19 -20 -21 -21 -23 -26 -30 -33 -35 -35 -36 -36 -36 -31 -23 -14 -4 3 7 9 12 14 16 19 23 26 28 28 28 26 25 25 24 23 21 19 18 16 15 16 17 18 20 21 21 20 20 19 19 18 18 18 18 17 17 17 17 16 16 15 14 14 13 13 12 11 9 8 6 6 5 5 6 6 7 7 7 6 5 4 3 2 1 1 2 3 4 5 5 5 5 5 5 4 3 -0 -3 -6 -7 -8 -8 -8 -9 -9 -9 -9 -9 -8 -8 -8 -8 -8 -7 -6 -5 -3 -2 0 2 4 6 8 9 10 12 13 15 18 20 22 23 24 24 23 23 22 22 22 22 22 22 22 22 20 19 18 18 19 21 24 27 29 30 31 32 33 33 33 34 34 34 34 34 33 33 32 32 33 33 34 35 36 38 39 41 44 46 49 51 54 56 58 58 57 56 56 55 55 55 54 54 53 52 50 46 41 38 35 34 33 32 33 35 38 39 40 40 39 38 38 37 35 34 34 34 35 35 34 34 34 35 39 40 40 39 38 38 39 40 41 41 40 39 37 35 33 32 32 32 32 31 31 30 30 31 32 33 34 -17 -15 -12 -10 -9 -7 -3 0 3 5 6 5 4 4 6 8 11 14 17 19 19 20 21 23 25 28 28 28 28 28 29 31 32 33 34 33 33 32 30 29 28 31 31 32 32 31 31 30 28 26 26 26 26 25 24 22 20 19 19 20 20 18 12 7 6 6 5 4 5 5 5 2 -1 1 5 8 9 12 16 19 24 29 31 28 24 23 22 19 14 13 13 14 14 13 12 9 6 5 8 6 0 -4 -3 9 20 22 19 14 10 8 5 1 -3 -6 -9 -10 -10 -10 -10 -10 -10 -10 -8 -7 -6 -7 -7 -8 -8 -9 -11 -13 -14 -14 -14 -14 -14 -14 -13 -13 -12 -10 -9 -10 -11 -13 -14 -15 -16 -17 -18 -20 -21 -21 -21 -21 -20 -16 -13 -10 -10 -12 -16 -19 -21 -23 -24 -23 -24 -27 -31 -35 -37 -37 -38 -38 -38 -36 -33 -25 -14 -2 3 6 9 11 13 16 20 23 26 27 27 26 25 25 25 24 23 21 19 18 16 16 17 18 20 21 22 22 21 21 20 19 19 19 19 19 18 18 18 17 17 16 15 14 13 12 11 10 8 7 6 6 5 5 6 6 6 6 6 5 4 3 2 1 1 1 3 4 6 6 6 6 5 5 4 3 1 -2 -5 -8 -10 -11 -11 -11 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -11 -10 -9 -7 -5 -4 -2 -0 1 3 4 5 6 7 9 12 15 18 20 22 22 22 22 22 22 23 23 24 25 25 25 24 22 20 19 19 20 23 25 28 30 31 32 33 33 33 33 34 34 34 34 34 33 33 33 33 34 34 35 36 37 39 41 43 45 48 50 53 56 58 59 59 58 58 57 56 56 55 55 55 55 54 51 46 41 37 35 33 33 33 34 35 37 37 37 38 38 38 38 38 37 36 36 37 36 36 35 35 35 38 40 40 40 38 39 41 42 42 41 39 37 35 33 32 32 32 32 32 32 31 31 30 30 31 32 33 -16 -14 -12 -9 -7 -3 1 3 3 3 2 2 4 7 10 13 16 19 21 23 23 22 22 23 25 27 28 29 29 31 32 34 35 35 34 33 32 31 29 28 28 30 31 32 32 32 32 32 31 30 29 29 27 25 24 22 19 19 20 20 18 14 8 5 6 7 6 6 7 7 4 2 2 6 7 8 10 13 16 19 23 28 29 28 26 26 25 21 19 19 19 17 14 14 11 7 3 2 5 4 -1 -2 4 16 22 21 17 14 11 7 3 -1 -5 -8 -11 -12 -12 -11 -10 -10 -11 -11 -10 -9 -9 -10 -12 -12 -13 -14 -16 -17 -17 -17 -17 -17 -17 -16 -16 -15 -15 -14 -14 -14 -15 -17 -18 -18 -18 -19 -20 -20 -21 -20 -20 -20 -19 -15 -12 -11 -12 -15 -18 -21 -24 -25 -26 -25 -26 -29 -33 -36 -37 -38 -39 -39 -39 -38 -37 -33 -23 -7 -2 2 5 8 10 13 17 20 23 24 24 24 24 25 25 25 24 23 21 19 18 17 17 18 19 21 22 23 23 22 21 21 20 20 20 20 20 19 19 19 18 17 15 14 13 12 11 10 8 7 6 6 6 6 6 6 5 5 4 4 3 2 1 0 1 2 4 5 6 7 6 6 5 4 3 2 -1 -4 -8 -11 -13 -14 -14 -14 -14 -14 -14 -14 -14 -15 -15 -16 -16 -16 -15 -14 -12 -11 -9 -7 -5 -4 -2 -1 -0 1 1 2 3 5 9 12 15 18 21 22 22 23 23 24 26 27 28 29 30 29 27 24 22 21 21 23 25 27 29 31 33 34 34 34 34 34 35 35 35 35 34 34 34 34 34 35 35 36 37 39 40 43 45 47 50 52 55 58 60 60 60 60 59 58 57 56 56 56 57 57 55 50 45 39 35 33 32 32 32 33 34 34 35 36 37 39 40 40 39 39 39 39 39 38 37 36 36 38 39 40 39 38 38 39 41 41 39 36 34 33 32 32 32 32 33 33 33 32 32 31 30 30 31 32 -14 -12 -9 -6 -3 1 3 3 1 -0 0 3 7 10 14 17 20 23 25 26 26 24 22 22 25 27 29 30 31 33 34 36 37 35 33 31 30 31 30 30 31 32 33 33 34 35 36 35 33 32 31 29 26 25 23 20 19 20 21 19 15 9 3 3 5 6 6 7 7 4 2 1 3 6 6 7 10 14 16 20 24 27 28 28 27 26 25 22 21 20 19 16 13 12 8 1 -5 -7 -5 -3 -2 4 14 23 22 18 16 14 11 6 2 -2 -5 -9 -11 -12 -11 -10 -10 -10 -12 -12 -12 -12 -13 -15 -16 -18 -19 -20 -21 -21 -21 -21 -21 -20 -20 -18 -18 -18 -18 -18 -17 -18 -19 -20 -21 -21 -21 -21 -21 -21 -20 -20 -19 -19 -18 -15 -13 -13 -14 -17 -20 -23 -26 -27 -28 -28 -29 -31 -34 -37 -38 -39 -40 -41 -40 -39 -39 -36 -27 -12 -7 -4 1 4 7 9 13 17 20 21 21 21 22 23 24 24 24 23 22 21 19 18 17 18 19 21 22 23 24 23 23 22 22 21 22 22 21 21 21 20 19 17 16 14 13 12 11 10 8 8 7 7 6 6 5 5 4 4 3 2 1 1 0 1 2 3 5 6 7 7 6 5 4 3 2 -0 -3 -6 -10 -13 -15 -16 -16 -16 -16 -16 -16 -16 -17 -17 -18 -18 -18 -18 -18 -17 -16 -14 -12 -10 -8 -7 -6 -5 -4 -3 -3 -2 -1 1 3 7 10 14 17 19 21 22 23 24 26 28 31 32 33 33 31 28 26 24 23 24 26 28 29 31 33 35 35 35 35 35 36 36 37 36 36 35 35 35 35 35 35 35 36 38 40 42 45 47 49 51 55 58 60 62 62 61 61 59 58 57 57 57 58 59 58 54 48 41 35 32 30 30 30 31 31 32 33 35 36 38 39 40 40 40 41 42 42 41 39 38 37 36 37 38 38 36 36 36 37 38 37 35 33 32 31 32 33 34 34 34 34 34 34 33 32 30 30 31 -11 -9 -6 -3 -0 3 3 1 -1 -1 1 5 9 13 16 20 23 26 27 28 26 24 21 22 25 27 30 32 33 34 35 37 36 33 31 30 31 34 34 34 35 35 35 35 36 37 38 37 35 33 30 27 25 24 21 19 19 20 19 15 10 3 -0 3 5 6 5 5 3 -0 -1 1 4 5 5 6 9 12 15 20 24 27 28 26 25 24 22 19 17 16 15 12 7 5 2 -5 -12 -15 -13 -9 -1 11 22 25 21 18 15 14 11 7 3 -1 -4 -8 -10 -10 -10 -9 -8 -9 -11 -13 -14 -16 -17 -19 -22 -24 -25 -26 -25 -25 -26 -26 -25 -24 -22 -20 -20 -20 -21 -20 -20 -21 -22 -23 -23 -23 -23 -23 -22 -21 -20 -20 -19 -19 -18 -16 -14 -14 -16 -19 -22 -25 -27 -29 -30 -32 -33 -35 -37 -39 -39 -40 -41 -42 -42 -41 -40 -37 -31 -18 -12 -11 -6 1 3 5 9 13 16 18 18 19 19 20 22 23 23 23 22 21 21 19 19 18 19 21 22 24 24 25 24 24 23 23 23 23 23 23 22 22 20 19 17 15 14 12 11 10 9 9 8 8 7 6 5 4 3 3 2 2 1 1 1 2 3 5 6 7 7 6 5 4 3 1 -0 -2 -5 -9 -12 -15 -17 -18 -18 -18 -18 -17 -17 -18 -18 -19 -20 -20 -20 -20 -19 -19 -18 -17 -15 -13 -11 -10 -9 -8 -7 -6 -6 -5 -4 -3 -1 2 5 9 12 14 16 17 18 20 22 25 28 30 33 33 33 31 28 26 25 26 27 28 30 32 34 35 36 36 36 36 37 37 38 38 37 37 36 35 35 34 34 35 36 37 40 42 44 46 48 50 53 57 60 62 63 63 62 60 59 58 57 57 58 60 60 56 50 43 36 31 29 29 30 30 31 32 33 34 35 36 38 39 39 40 41 42 43 42 41 38 36 34 34 34 35 34 33 33 34 36 36 35 34 32 32 32 33 34 35 35 35 35 35 34 33 31 30 30 -8 -5 -3 -1 1 2 0 -2 -3 -2 2 7 10 14 17 21 25 27 27 26 25 23 21 21 22 25 29 32 34 35 35 34 32 29 29 32 36 38 38 37 36 37 36 36 37 37 37 36 35 32 30 27 26 23 20 18 16 15 12 8 4 -1 -0 5 6 5 3 1 -2 -3 -3 -1 3 4 5 6 7 10 15 18 21 24 24 22 21 19 16 13 11 8 8 6 2 -1 -3 -9 -15 -17 -14 -6 4 16 24 25 21 18 15 13 10 7 4 1 -3 -6 -7 -8 -8 -7 -7 -10 -12 -14 -16 -19 -21 -24 -27 -29 -31 -30 -30 -30 -30 -29 -28 -26 -24 -22 -22 -22 -22 -23 -23 -24 -25 -25 -25 -24 -25 -25 -24 -22 -21 -21 -21 -21 -19 -17 -17 -17 -18 -20 -23 -26 -29 -31 -33 -36 -38 -40 -41 -41 -41 -42 -43 -43 -43 -42 -40 -38 -33 -25 -18 -17 -11 -2 0 1 4 8 12 15 16 16 17 18 19 21 22 22 22 22 21 21 20 19 20 21 22 24 25 26 26 26 25 25 25 25 25 25 25 24 22 20 18 16 15 13 12 11 11 10 10 9 8 7 5 4 3 2 2 2 2 2 2 4 5 6 7 7 6 5 3 2 -0 -2 -4 -6 -9 -12 -16 -18 -19 -20 -19 -19 -19 -18 -18 -19 -20 -21 -21 -21 -21 -21 -21 -20 -20 -19 -17 -16 -14 -13 -11 -10 -10 -9 -8 -7 -6 -5 -4 -2 1 3 6 8 9 10 12 13 16 18 22 25 28 29 30 30 28 26 26 26 27 28 30 32 34 36 37 37 37 37 37 37 38 38 38 38 37 36 35 34 34 35 35 37 39 41 43 45 47 49 52 55 58 61 63 63 62 60 59 58 58 57 58 59 60 57 52 44 37 32 29 29 30 31 32 33 33 34 34 35 36 37 38 38 39 41 42 43 41 38 33 30 29 29 31 31 31 31 32 35 37 37 36 35 33 33 34 34 35 35 36 36 35 35 34 32 30 29 -4 -1 0 1 1 -1 -3 -5 -5 -2 4 8 11 15 19 23 25 26 25 24 24 23 22 21 22 24 29 32 35 36 34 30 28 28 30 35 38 38 36 35 35 37 37 37 37 38 37 35 34 31 29 27 26 23 19 16 12 9 6 2 -2 -3 1 6 6 4 1 -1 -4 -5 -5 -3 1 3 4 5 6 8 13 15 16 17 17 16 16 15 11 8 4 2 1 2 0 -4 -7 -12 -15 -14 -6 3 10 17 22 22 20 18 16 13 11 8 5 2 -1 -3 -4 -5 -5 -6 -8 -11 -13 -16 -18 -21 -24 -27 -31 -34 -35 -34 -33 -32 -32 -31 -29 -27 -25 -23 -23 -23 -24 -25 -26 -27 -28 -27 -26 -26 -27 -27 -26 -25 -23 -23 -23 -23 -21 -20 -19 -19 -20 -21 -24 -26 -30 -33 -36 -39 -42 -43 -43 -43 -43 -43 -44 -44 -43 -42 -40 -37 -34 -30 -22 -18 -12 -3 -2 -3 -1 2 7 11 13 14 15 16 17 19 20 21 21 22 22 22 21 21 21 21 23 25 26 27 28 28 28 27 27 27 27 27 26 26 24 22 20 17 16 14 13 12 12 11 11 10 9 7 5 4 3 3 3 3 3 4 5 6 7 8 8 7 5 3 1 -1 -4 -6 -8 -10 -14 -17 -19 -20 -21 -21 -21 -20 -20 -20 -20 -20 -21 -22 -22 -22 -22 -22 -21 -21 -21 -20 -19 -18 -17 -15 -14 -13 -12 -12 -11 -10 -9 -8 -7 -5 -4 -2 -1 1 2 3 5 6 9 12 16 19 22 24 26 26 26 25 25 25 26 27 29 31 34 36 37 38 38 37 37 37 38 38 38 38 37 36 36 35 35 35 36 37 38 40 42 44 47 49 51 53 56 59 62 63 62 60 58 58 58 56 55 56 58 57 52 45 39 33 30 29 30 31 33 34 34 34 33 33 34 35 37 38 38 39 40 41 40 34 26 23 23 22 25 28 29 30 32 35 38 39 39 37 35 34 33 33 33 34 35 35 35 35 34 33 31 30 -1 1 2 1 -0 -2 -3 -4 -3 1 6 10 15 19 23 25 25 25 24 24 24 23 23 24 24 26 29 32 35 35 32 28 27 29 33 36 36 32 30 31 35 38 37 36 37 38 37 35 33 31 28 27 24 20 16 12 8 5 1 -2 -4 -3 3 6 6 3 0 -3 -5 -7 -6 -4 -0 3 3 3 3 6 7 8 8 9 8 8 9 8 6 4 1 -1 -2 -2 -2 -6 -9 -11 -12 -9 3 10 14 17 20 20 18 18 16 14 11 9 6 4 1 -1 -2 -3 -5 -6 -9 -13 -15 -17 -19 -22 -25 -29 -33 -36 -38 -37 -35 -33 -32 -30 -28 -26 -24 -24 -24 -25 -26 -27 -27 -28 -28 -28 -27 -28 -30 -30 -30 -28 -27 -26 -27 -26 -24 -22 -22 -22 -21 -22 -24 -27 -31 -35 -38 -41 -44 -45 -44 -44 -44 -44 -44 -43 -43 -42 -39 -36 -34 -32 -25 -17 -10 -4 -5 -7 -7 -5 0 7 10 12 13 14 15 16 18 19 20 21 21 22 22 22 21 22 23 25 27 28 29 30 30 30 29 29 28 28 28 27 25 23 21 18 16 15 13 13 12 12 11 10 9 7 6 5 4 5 5 5 6 6 7 8 9 9 8 6 4 1 -2 -5 -8 -10 -12 -15 -18 -20 -22 -22 -23 -23 -22 -22 -22 -21 -21 -22 -22 -23 -23 -23 -23 -22 -22 -22 -22 -22 -21 -21 -20 -19 -17 -16 -15 -15 -14 -14 -13 -12 -10 -9 -8 -7 -6 -5 -4 -2 -1 1 4 7 11 14 17 20 21 23 24 24 24 24 24 25 27 29 32 35 37 38 38 38 37 37 38 38 38 38 37 37 37 37 37 37 37 37 38 40 41 44 47 50 52 53 55 58 60 61 61 58 57 57 56 54 49 50 53 54 51 43 40 35 31 29 30 31 33 34 35 34 33 32 32 34 36 37 38 37 37 38 36 27 18 13 14 12 18 23 27 31 33 36 39 40 40 38 36 33 31 31 31 32 33 34 34 34 34 34 33 31 2 3 3 2 1 1 0 0 3 7 11 16 20 24 26 26 26 25 24 23 22 24 25 26 26 26 29 32 33 32 29 27 28 31 34 34 30 25 26 30 34 35 34 34 35 36 35 32 31 28 26 24 21 15 11 7 3 1 -2 -5 -4 -0 5 7 5 2 -1 -4 -7 -8 -6 -3 1 1 -0 -1 0 1 0 0 1 1 1 1 1 1 1 0 1 -0 -3 -5 -6 -8 -7 -7 -7 -3 8 13 15 16 17 16 16 16 15 14 13 11 8 6 3 0 -1 -3 -5 -8 -11 -14 -16 -18 -20 -22 -25 -29 -34 -37 -39 -39 -36 -33 -31 -28 -26 -25 -24 -24 -25 -26 -27 -28 -28 -28 -29 -29 -30 -31 -33 -34 -34 -33 -31 -31 -30 -28 -26 -25 -25 -24 -23 -23 -24 -27 -31 -35 -39 -42 -43 -44 -44 -43 -43 -43 -43 -43 -43 -41 -38 -36 -34 -33 -29 -18 -10 -8 -10 -12 -14 -14 -10 -1 6 9 10 11 12 13 15 17 18 19 20 21 21 21 21 22 23 25 27 29 30 31 32 32 31 31 30 30 29 28 26 23 21 19 17 15 14 13 13 12 12 10 9 8 7 6 6 7 7 7 8 9 10 10 10 9 7 4 1 -3 -6 -9 -11 -13 -16 -19 -21 -23 -24 -25 -25 -25 -24 -24 -23 -23 -23 -23 -23 -24 -24 -23 -23 -23 -23 -23 -23 -24 -24 -23 -23 -22 -21 -20 -19 -18 -17 -17 -16 -15 -14 -13 -11 -10 -9 -8 -7 -6 -5 -3 -0 3 7 10 14 16 18 20 21 22 23 23 23 24 25 27 30 33 36 37 38 38 38 38 38 38 38 38 38 38 38 38 39 39 39 39 39 40 41 43 47 50 53 55 57 58 58 58 58 56 53 52 52 48 39 39 44 48 46 38 39 36 33 30 30 31 33 34 35 35 32 30 30 32 35 37 37 36 35 34 30 19 10 6 7 5 9 16 24 31 33 36 39 41 41 39 36 32 30 29 29 30 31 32 32 32 33 34 34 33 3 3 3 3 4 5 4 5 7 9 11 18 22 25 26 26 25 22 21 21 23 26 27 26 26 26 29 31 31 30 28 29 30 32 32 29 23 22 25 28 30 28 28 29 31 31 30 27 25 23 21 19 14 9 4 1 -2 -5 -6 -6 -2 3 6 6 4 0 -3 -6 -9 -8 -5 -0 2 -0 -3 -4 -4 -4 -6 -5 -4 -4 -4 -4 -4 -4 -4 -2 -0 -2 -6 -10 -10 -8 -2 -1 -2 -1 7 13 15 15 14 12 13 14 15 15 15 13 10 6 3 -0 -2 -4 -7 -10 -13 -15 -16 -17 -19 -22 -25 -28 -33 -37 -39 -40 -37 -33 -29 -27 -26 -25 -25 -26 -26 -27 -28 -28 -29 -29 -29 -30 -32 -34 -36 -37 -37 -36 -35 -33 -31 -29 -29 -29 -28 -27 -24 -24 -26 -29 -32 -35 -38 -39 -41 -42 -43 -42 -42 -42 -43 -43 -42 -40 -37 -36 -35 -35 -33 -23 -16 -16 -18 -21 -21 -22 -22 -12 -3 3 6 8 8 9 11 14 16 17 18 20 20 20 20 20 22 24 26 28 30 31 32 32 33 32 32 31 29 28 25 23 21 19 17 15 14 13 13 13 12 11 10 9 8 8 8 9 9 9 10 10 10 10 9 7 5 1 -3 -7 -10 -12 -14 -16 -18 -21 -23 -25 -26 -27 -27 -27 -26 -26 -25 -25 -25 -25 -24 -24 -24 -24 -24 -24 -24 -25 -25 -26 -26 -26 -26 -25 -24 -23 -22 -21 -21 -20 -20 -18 -17 -16 -14 -13 -12 -11 -10 -9 -7 -6 -3 -0 3 7 10 13 15 17 19 20 22 22 23 23 23 25 27 31 34 36 37 38 39 39 39 39 39 39 39 39 39 40 40 41 41 41 40 40 40 43 46 50 54 56 57 57 54 53 56 53 46 43 42 39 31 30 33 38 37 32 37 36 33 32 32 32 33 35 36 35 32 29 28 29 33 36 37 35 33 31 23 12 5 4 5 8 7 10 19 31 33 35 37 40 41 39 35 32 29 27 28 29 29 30 30 30 31 32 34 35 2 3 5 6 6 6 6 7 8 9 12 18 23 26 27 27 22 19 19 22 26 28 28 26 24 26 28 30 31 30 29 29 29 29 27 23 19 21 24 24 22 19 21 23 24 24 23 20 17 14 12 10 6 2 -1 -4 -9 -12 -10 -5 0 5 6 4 1 -2 -5 -9 -11 -8 -2 3 3 -2 -5 -6 -7 -8 -9 -9 -8 -7 -8 -8 -9 -10 -9 -6 -6 -8 -12 -13 -10 -3 5 3 -1 0 7 13 14 12 10 11 12 14 16 17 17 14 10 6 2 -1 -3 -6 -9 -11 -14 -16 -16 -17 -19 -21 -23 -27 -32 -36 -38 -39 -36 -32 -29 -27 -26 -26 -27 -27 -27 -28 -29 -29 -29 -29 -30 -32 -34 -36 -37 -37 -37 -37 -36 -34 -32 -31 -32 -33 -32 -29 -26 -26 -27 -30 -32 -36 -37 -37 -39 -40 -41 -40 -41 -43 -44 -44 -41 -39 -38 -37 -37 -37 -36 -31 -27 -28 -30 -32 -29 -28 -29 -26 -16 -8 -3 2 3 5 7 10 13 14 16 17 18 18 18 18 20 23 25 27 28 29 30 31 32 33 32 30 28 26 24 23 21 19 17 15 14 14 14 13 13 12 11 10 10 10 10 10 10 11 11 11 10 8 7 5 2 -3 -7 -11 -13 -14 -16 -17 -19 -22 -25 -27 -29 -30 -30 -29 -28 -27 -27 -26 -26 -26 -25 -25 -24 -24 -25 -25 -26 -27 -28 -28 -28 -28 -28 -28 -27 -27 -26 -25 -24 -24 -23 -21 -20 -18 -16 -15 -14 -13 -12 -10 -9 -8 -5 -3 1 4 7 10 13 14 16 19 20 22 22 22 22 23 26 29 32 34 36 37 38 39 39 39 39 39 39 40 41 41 42 43 43 43 42 40 40 42 45 48 51 53 54 53 49 46 52 48 39 34 33 32 33 33 31 28 28 27 32 33 32 32 33 34 34 35 36 35 32 29 26 26 29 33 35 34 32 29 19 10 6 7 5 13 14 15 21 31 32 33 36 39 40 38 35 31 28 27 27 27 28 28 27 27 28 30 33 35 3 5 7 8 7 6 7 8 9 11 14 19 23 26 27 25 18 17 19 24 27 28 27 24 23 25 27 30 29 28 28 28 27 24 21 18 18 20 19 17 14 13 14 16 17 17 15 13 9 6 3 1 0 -1 -3 -6 -11 -13 -8 -2 3 4 4 2 -1 -4 -7 -12 -12 -7 0 4 1 -3 -6 -7 -8 -9 -9 -10 -10 -11 -12 -13 -14 -15 -14 -12 -12 -14 -16 -13 -3 6 6 1 -2 1 6 11 12 10 9 11 11 13 15 17 16 12 9 5 3 1 -3 -6 -9 -12 -14 -16 -16 -17 -18 -19 -21 -25 -30 -35 -37 -37 -35 -32 -30 -29 -28 -28 -28 -28 -28 -29 -30 -29 -29 -29 -30 -32 -35 -36 -36 -36 -36 -36 -35 -33 -32 -33 -35 -36 -34 -31 -27 -27 -29 -31 -33 -35 -36 -36 -37 -38 -38 -38 -40 -43 -45 -44 -41 -39 -38 -38 -39 -39 -40 -39 -39 -40 -42 -44 -38 -31 -28 -31 -29 -24 -16 -7 -3 -1 2 6 9 11 12 14 14 15 15 15 17 20 23 26 27 27 28 29 31 31 30 28 26 24 22 21 20 19 18 16 15 15 14 14 13 13 12 12 12 12 11 11 11 11 11 9 8 6 4 2 -1 -6 -11 -15 -17 -18 -18 -19 -21 -23 -26 -29 -31 -32 -32 -31 -30 -29 -28 -28 -28 -27 -26 -26 -25 -25 -26 -27 -28 -29 -30 -30 -30 -31 -31 -31 -31 -30 -29 -28 -27 -27 -25 -24 -22 -20 -18 -17 -16 -15 -13 -12 -11 -9 -7 -4 -1 2 5 8 10 12 14 17 19 21 22 21 21 22 24 27 30 33 34 36 36 38 38 39 38 38 39 40 42 43 44 45 45 45 43 39 37 39 41 42 42 44 46 46 43 40 47 41 35 31 31 32 38 39 35 28 23 25 29 30 30 31 33 35 36 36 36 36 34 30 26 24 26 30 32 32 31 27 19 11 8 13 6 12 19 25 28 32 32 33 36 39 40 38 35 32 29 27 26 27 27 27 25 25 26 28 30 33 4 7 8 8 7 7 7 9 10 12 15 19 23 25 25 21 14 15 20 24 26 25 23 21 22 24 27 28 27 25 24 22 21 19 17 17 18 18 15 12 10 9 10 12 12 12 10 8 5 2 -0 -2 -2 0 -0 -4 -8 -7 -1 3 3 2 1 0 -2 -5 -8 -13 -11 -4 1 3 -0 -3 -4 -5 -6 -6 -8 -9 -10 -12 -14 -16 -17 -18 -17 -16 -16 -18 -18 -10 2 6 1 -3 -2 1 5 9 9 8 8 9 9 10 12 12 12 9 8 6 5 2 -4 -7 -9 -11 -14 -15 -16 -16 -17 -18 -20 -24 -29 -32 -34 -33 -33 -32 -31 -30 -29 -28 -29 -29 -30 -30 -30 -29 -28 -29 -30 -32 -33 -34 -34 -34 -35 -35 -34 -33 -33 -34 -37 -38 -37 -33 -30 -29 -30 -32 -34 -34 -35 -36 -36 -36 -35 -37 -41 -44 -45 -43 -40 -39 -38 -39 -40 -41 -43 -45 -46 -47 -48 -49 -46 -39 -30 -27 -33 -38 -34 -23 -13 -10 -5 1 5 7 8 9 10 11 11 12 14 18 21 24 25 25 26 27 28 28 27 25 23 20 19 19 19 18 17 16 15 15 15 14 14 13 13 13 13 13 12 12 12 11 9 7 5 3 1 -1 -5 -9 -14 -18 -20 -21 -21 -22 -23 -25 -28 -31 -32 -33 -33 -32 -31 -30 -30 -29 -29 -29 -28 -27 -26 -26 -27 -29 -30 -31 -32 -32 -33 -33 -34 -34 -34 -34 -33 -32 -31 -29 -28 -26 -24 -22 -20 -19 -17 -16 -15 -13 -11 -10 -8 -5 -2 1 4 6 8 10 12 15 17 20 21 21 21 21 22 25 29 31 33 34 35 36 37 37 38 38 39 41 42 44 45 47 47 46 44 38 31 31 33 33 31 34 41 42 38 36 41 36 33 33 34 38 38 37 34 28 22 24 30 33 31 29 32 35 37 37 37 37 35 32 28 24 24 26 28 28 26 24 19 12 10 19 7 7 18 30 34 33 33 34 36 39 40 38 36 32 29 28 27 27 27 27 25 24 24 25 28 30 6 8 9 8 7 7 7 8 10 12 14 18 21 22 20 16 13 15 18 21 21 18 18 19 21 22 26 26 23 20 17 14 16 16 16 16 17 15 12 10 9 8 9 11 11 10 8 7 4 3 1 -0 2 2 -0 -4 -6 -1 4 5 4 1 1 1 -1 -4 -7 -10 -7 -2 1 2 -1 -1 -2 -3 -4 -5 -5 -7 -9 -12 -14 -15 -16 -16 -16 -17 -18 -19 -15 -7 2 2 -3 -4 -3 1 3 6 6 5 5 5 6 7 7 7 6 5 6 7 5 -0 -7 -8 -8 -10 -12 -14 -15 -15 -16 -17 -20 -23 -26 -28 -31 -33 -33 -32 -31 -30 -29 -29 -29 -29 -29 -29 -29 -28 -27 -27 -28 -30 -31 -32 -33 -34 -35 -35 -35 -34 -33 -35 -38 -40 -39 -36 -32 -32 -33 -34 -34 -34 -35 -36 -36 -34 -33 -37 -41 -44 -44 -42 -39 -38 -39 -39 -41 -43 -46 -48 -49 -50 -51 -53 -53 -50 -42 -30 -28 -35 -40 -38 -29 -24 -16 -7 0 3 4 5 6 7 7 9 11 15 18 22 23 23 24 24 25 25 23 21 19 17 16 16 16 16 16 15 15 14 14 14 13 13 13 13 13 13 13 13 12 10 7 4 2 -0 -2 -4 -7 -12 -16 -21 -24 -24 -24 -24 -24 -26 -29 -31 -33 -34 -34 -33 -32 -32 -31 -31 -30 -30 -29 -28 -28 -28 -29 -31 -32 -33 -34 -34 -35 -36 -36 -37 -37 -37 -37 -35 -34 -32 -30 -28 -25 -23 -21 -20 -18 -17 -15 -14 -12 -10 -8 -6 -3 -0 2 4 6 8 10 13 16 18 20 20 20 20 21 24 27 30 32 33 33 34 35 36 36 37 38 40 43 45 47 48 49 48 45 38 25 22 23 25 24 30 41 43 37 34 35 33 33 36 38 42 35 29 26 25 20 23 30 36 32 30 30 33 37 37 38 38 37 34 30 26 23 23 24 24 16 14 12 8 7 18 6 5 15 31 34 34 34 35 37 39 40 39 37 34 31 28 27 26 26 27 26 24 23 24 26 28 8 9 9 7 6 6 6 7 9 11 13 16 18 18 15 11 11 15 16 16 13 12 14 17 19 20 22 21 17 14 11 9 12 11 11 11 12 12 11 10 9 8 9 11 11 9 7 5 4 2 1 1 2 -0 -4 -7 -6 -1 3 2 1 1 3 3 0 -2 -5 -6 -3 -1 0 0 -1 0 -1 -3 -4 -4 -4 -6 -8 -11 -11 -11 -11 -12 -14 -15 -17 -16 -10 -3 1 -1 -5 -6 -4 -1 1 2 2 1 1 2 2 2 1 1 1 3 5 5 1 -6 -9 -7 -6 -8 -10 -12 -14 -14 -15 -17 -19 -21 -22 -25 -30 -33 -33 -32 -31 -30 -29 -29 -28 -28 -27 -27 -27 -27 -26 -26 -27 -28 -30 -32 -33 -35 -36 -36 -36 -35 -35 -37 -40 -41 -40 -38 -36 -35 -36 -36 -36 -36 -37 -37 -36 -34 -34 -39 -42 -44 -43 -40 -38 -38 -39 -40 -42 -45 -48 -50 -52 -53 -54 -55 -58 -58 -55 -42 -32 -32 -35 -36 -38 -41 -34 -21 -7 -1 1 1 2 3 4 6 9 12 16 19 21 21 21 22 22 21 20 18 16 14 13 13 13 13 14 13 13 12 12 12 12 12 12 13 13 13 13 13 11 8 4 1 -1 -3 -4 -6 -9 -13 -18 -22 -25 -26 -25 -25 -26 -27 -30 -32 -33 -34 -35 -35 -34 -33 -32 -32 -32 -31 -30 -30 -30 -31 -32 -33 -34 -35 -36 -37 -38 -38 -39 -39 -40 -40 -39 -38 -36 -34 -31 -29 -27 -25 -23 -21 -19 -18 -16 -15 -13 -11 -9 -7 -4 -2 1 3 4 6 8 11 14 17 18 19 19 19 19 22 25 28 30 32 32 33 33 34 35 36 38 40 43 45 48 49 50 49 47 39 22 16 17 20 23 30 42 46 37 34 33 32 32 35 41 42 29 20 18 18 18 21 27 33 32 31 29 30 33 36 37 39 38 36 33 28 22 19 19 19 7 3 1 0 1 9 5 7 16 28 32 34 35 35 36 39 40 40 38 35 32 29 27 25 23 27 26 24 23 22 24 25 9 9 8 7 5 5 5 6 7 9 11 14 15 14 11 7 9 12 12 10 9 11 14 15 15 16 17 16 13 9 8 7 5 3 2 4 6 8 9 8 7 7 9 9 8 6 4 2 1 -1 -1 -0 -1 -5 -8 -8 -6 -3 -1 -3 -3 -1 1 0 -1 -3 -3 -1 -1 -0 -1 -1 -1 -0 -2 -3 -3 -3 -4 -6 -8 -8 -7 -7 -8 -9 -12 -14 -14 -11 -6 -2 -0 -3 -6 -8 -7 -5 -3 -2 -3 -3 -2 -2 -3 -4 -4 -3 -1 2 4 1 -4 -10 -8 -4 -3 -5 -8 -11 -13 -13 -14 -16 -17 -18 -19 -23 -28 -31 -31 -30 -30 -30 -30 -29 -28 -27 -26 -26 -26 -26 -26 -26 -27 -29 -31 -33 -35 -36 -37 -37 -37 -38 -38 -40 -41 -42 -42 -41 -39 -39 -38 -38 -38 -39 -39 -38 -37 -36 -37 -41 -43 -43 -41 -38 -38 -39 -40 -41 -44 -46 -49 -52 -55 -57 -58 -59 -61 -63 -64 -56 -46 -38 -31 -22 -30 -44 -46 -35 -17 -5 -3 -1 -1 1 2 4 6 9 13 16 18 19 19 18 18 17 15 14 12 10 9 9 9 10 10 10 10 10 11 11 11 12 12 12 13 13 13 11 9 6 2 -1 -4 -5 -7 -8 -10 -14 -19 -23 -26 -26 -26 -26 -27 -28 -30 -32 -34 -35 -36 -36 -35 -35 -34 -34 -33 -33 -33 -33 -34 -35 -36 -37 -37 -38 -39 -40 -41 -41 -42 -42 -42 -42 -42 -41 -39 -36 -33 -30 -28 -26 -24 -22 -20 -19 -17 -15 -13 -12 -10 -8 -6 -3 -1 1 3 4 6 9 13 16 17 18 18 18 18 20 23 26 29 31 32 32 33 34 35 36 38 40 42 45 48 50 51 51 49 43 26 18 16 20 28 34 44 47 37 34 34 34 36 42 49 40 26 17 14 15 16 19 22 27 30 32 31 29 29 31 35 38 38 36 32 29 20 13 12 14 1 -4 -5 -5 -4 0 1 9 19 23 28 32 34 34 35 37 39 40 38 36 32 29 27 22 18 26 26 24 22 20 20 20 7 8 7 6 4 3 3 4 5 7 9 12 13 12 9 6 7 9 9 9 9 11 13 13 12 12 13 12 9 7 4 1 -5 -6 -4 -0 4 5 5 5 5 6 7 5 4 2 0 -1 -3 -4 -3 -2 -4 -7 -8 -8 -7 -5 -6 -8 -8 -6 -6 -6 -6 -4 -1 1 0 -0 -1 -2 -2 -3 -3 -2 -1 -0 -3 -5 -6 -5 -3 -4 -6 -8 -10 -11 -9 -8 -5 -3 -2 -5 -7 -9 -11 -10 -9 -8 -7 -6 -5 -5 -7 -7 -5 -2 1 3 2 -2 -7 -9 -2 1 0 -4 -8 -11 -11 -11 -12 -14 -15 -15 -18 -22 -26 -28 -28 -29 -30 -31 -31 -31 -29 -28 -26 -26 -27 -27 -27 -28 -29 -30 -32 -34 -36 -37 -37 -38 -39 -40 -41 -42 -42 -42 -42 -42 -41 -40 -40 -40 -41 -43 -42 -40 -39 -39 -40 -42 -43 -42 -39 -38 -38 -39 -41 -42 -45 -47 -50 -53 -57 -61 -63 -64 -64 -66 -68 -67 -60 -49 -32 -11 -19 -35 -43 -39 -26 -10 -6 -4 -3 -1 1 2 4 7 10 13 15 15 15 14 13 12 11 9 8 6 6 6 6 7 7 7 8 8 9 10 11 11 12 12 12 12 11 10 7 4 0 -3 -6 -7 -8 -10 -12 -15 -19 -23 -26 -26 -26 -27 -28 -29 -31 -32 -34 -35 -36 -37 -37 -36 -36 -36 -36 -35 -36 -36 -38 -39 -40 -40 -41 -41 -42 -43 -44 -44 -45 -45 -45 -44 -44 -43 -41 -38 -35 -32 -29 -27 -26 -24 -22 -20 -18 -16 -14 -12 -11 -9 -7 -4 -2 -0 2 3 5 8 11 14 16 16 16 16 17 19 21 24 27 29 31 32 33 34 35 36 38 40 43 46 49 52 53 54 53 49 37 27 22 26 37 43 48 48 38 36 35 35 39 51 53 39 25 17 15 16 17 18 20 23 26 34 35 31 30 31 31 34 35 33 27 27 18 8 5 8 -0 -4 -6 -7 -7 -5 -2 4 12 13 20 27 32 32 32 35 37 39 38 36 33 29 26 22 15 23 24 23 20 16 13 13 7 7 6 5 3 2 1 1 3 5 8 10 12 11 9 7 6 9 10 9 8 9 10 9 9 9 10 8 6 4 -1 -7 -13 -11 -5 0 3 3 2 3 4 4 3 1 -1 -3 -5 -6 -7 -6 -5 -5 -7 -8 -7 -7 -8 -7 -9 -11 -12 -12 -13 -12 -9 -5 0 3 1 -1 -2 -4 -4 -4 -3 -1 1 1 -1 -4 -4 -2 -1 -3 -6 -8 -8 -8 -7 -7 -7 -6 -5 -7 -7 -10 -14 -16 -16 -15 -11 -8 -7 -8 -8 -7 -3 1 4 3 0 -4 -6 -3 5 6 2 -3 -8 -9 -8 -8 -9 -11 -12 -14 -17 -21 -24 -25 -26 -28 -30 -32 -33 -33 -31 -29 -28 -27 -28 -28 -29 -29 -30 -32 -33 -35 -37 -38 -39 -40 -42 -43 -43 -43 -43 -43 -43 -43 -42 -41 -42 -43 -44 -45 -44 -42 -41 -41 -43 -43 -42 -40 -39 -39 -39 -40 -41 -43 -45 -48 -51 -55 -60 -64 -67 -68 -69 -70 -71 -73 -69 -56 -34 -8 -10 -21 -29 -33 -29 -15 -9 -6 -5 -3 -1 0 2 4 7 10 12 12 12 11 10 8 7 6 4 3 2 3 3 3 4 5 6 7 8 10 10 11 11 11 11 10 9 8 5 2 -1 -5 -7 -9 -10 -12 -14 -17 -21 -24 -26 -27 -27 -28 -29 -30 -31 -33 -34 -36 -37 -38 -38 -38 -38 -38 -39 -39 -39 -40 -41 -42 -43 -43 -44 -44 -45 -46 -47 -47 -48 -48 -47 -47 -46 -45 -43 -40 -37 -33 -30 -29 -27 -25 -23 -21 -19 -17 -15 -13 -11 -10 -8 -6 -3 -1 0 2 3 6 9 12 14 15 15 14 15 17 20 23 25 28 30 31 33 35 36 37 39 41 43 47 51 54 56 58 57 56 50 40 30 36 47 52 52 48 39 38 37 36 39 50 52 39 27 21 18 18 18 18 20 20 23 34 38 36 32 33 31 31 30 27 20 21 15 6 2 3 2 -0 -4 -7 -7 -6 -4 -1 2 2 10 21 30 30 30 32 34 37 38 36 33 29 25 21 16 18 20 19 16 10 5 3 6 6 5 3 2 -0 -1 -1 2 5 7 10 11 11 9 7 6 8 9 8 6 6 6 5 5 5 5 4 3 -1 -7 -14 -15 -10 -3 1 2 2 2 3 3 1 -2 -5 -7 -8 -10 -10 -9 -7 -7 -8 -9 -7 -7 -8 -9 -9 -11 -13 -14 -14 -14 -12 -9 -5 -1 1 -0 -2 -4 -4 -3 -4 -3 -1 0 1 -1 -2 -1 1 1 -2 -5 -6 -6 -7 -7 -9 -9 -8 -7 -7 -8 -12 -16 -18 -19 -19 -15 -12 -11 -10 -8 -5 -1 3 4 2 1 -1 -1 5 11 10 3 -4 -8 -6 -5 -5 -6 -8 -11 -14 -17 -20 -22 -23 -25 -27 -30 -33 -34 -34 -33 -31 -29 -28 -29 -29 -30 -30 -31 -33 -34 -36 -38 -41 -42 -43 -44 -44 -44 -44 -45 -45 -45 -45 -44 -44 -44 -46 -47 -46 -45 -45 -45 -45 -44 -43 -41 -40 -39 -39 -39 -40 -42 -44 -47 -49 -52 -56 -61 -66 -70 -72 -73 -74 -75 -75 -71 -58 -35 -7 -6 -9 -16 -26 -34 -24 -15 -10 -8 -7 -5 -2 -0 2 4 7 9 9 9 8 7 6 4 3 1 0 -0 -0 0 0 1 2 4 6 8 9 10 11 11 10 9 8 7 5 3 1 -3 -6 -8 -10 -12 -14 -16 -19 -22 -25 -26 -27 -27 -28 -29 -31 -32 -33 -35 -36 -38 -39 -39 -40 -40 -41 -42 -42 -43 -44 -45 -45 -45 -46 -47 -47 -48 -49 -49 -50 -51 -51 -50 -49 -47 -46 -44 -42 -39 -35 -32 -30 -28 -26 -24 -22 -20 -17 -15 -13 -12 -10 -9 -7 -4 -2 -1 0 2 4 7 10 12 12 12 12 13 15 18 21 24 26 29 31 33 35 37 39 40 43 45 49 54 58 61 63 63 62 58 52 43 49 51 52 52 47 43 40 39 38 38 44 48 40 32 28 26 22 20 21 22 19 20 31 39 38 31 33 34 34 30 24 21 18 12 6 3 3 7 6 -1 -6 -7 -4 -3 -4 -5 -4 5 18 30 30 29 29 31 34 36 36 32 27 22 17 11 9 11 13 10 2 -3 -2 3 3 3 2 0 -2 -3 -1 2 5 7 9 11 11 9 6 5 6 6 5 4 3 2 1 1 1 1 0 -1 -6 -12 -16 -12 -6 -2 -1 -0 1 2 2 -1 -4 -8 -11 -12 -12 -13 -13 -10 -9 -10 -12 -10 -9 -9 -10 -10 -11 -13 -13 -13 -13 -12 -10 -10 -8 -6 -5 -4 -3 -2 -2 -2 -3 -2 0 2 3 2 2 4 4 3 -1 -4 -5 -6 -8 -10 -11 -10 -10 -11 -12 -12 -14 -16 -17 -18 -18 -16 -14 -13 -10 -7 -4 -1 3 4 5 7 7 7 13 16 12 4 -4 -5 -2 -2 -3 -5 -8 -12 -15 -17 -19 -21 -22 -24 -27 -30 -33 -35 -36 -34 -32 -30 -29 -29 -30 -30 -32 -33 -35 -36 -38 -41 -44 -46 -46 -46 -45 -45 -46 -46 -47 -47 -47 -47 -47 -47 -48 -48 -47 -47 -47 -47 -46 -44 -42 -41 -40 -39 -38 -39 -40 -43 -46 -48 -51 -54 -58 -63 -68 -71 -74 -76 -78 -79 -77 -71 -57 -34 -8 -5 -7 -13 -26 -42 -36 -25 -17 -13 -12 -9 -6 -4 -1 1 4 6 7 7 6 5 4 3 2 -0 -2 -2 -2 -2 -2 -2 -0 2 5 7 9 10 10 10 8 7 5 4 3 2 -1 -4 -6 -9 -11 -14 -17 -19 -22 -24 -26 -26 -27 -28 -28 -30 -31 -32 -34 -35 -37 -38 -39 -40 -41 -42 -43 -44 -46 -46 -47 -47 -47 -48 -48 -50 -51 -51 -51 -52 -52 -53 -53 -52 -51 -49 -47 -46 -43 -40 -37 -33 -31 -29 -28 -26 -23 -21 -19 -17 -15 -13 -12 -10 -8 -6 -4 -2 -1 0 2 5 7 9 10 10 10 11 13 16 19 22 25 28 31 33 36 38 40 42 45 49 54 59 63 67 68 68 66 63 59 55 56 51 48 49 48 46 44 42 40 38 39 43 40 35 34 31 25 22 22 25 19 20 28 36 36 28 30 35 38 34 26 24 18 10 5 2 2 8 8 -0 -5 -6 -2 -1 -5 -7 -5 3 16 30 31 28 27 28 31 35 35 30 22 16 10 2 1 3 4 1 -6 -6 2 -0 1 2 1 -0 -2 -3 -0 2 4 6 8 11 10 7 5 4 4 3 2 1 0 -1 -2 -2 -2 -3 -3 -5 -10 -14 -13 -7 -5 -4 -4 -4 -2 -1 -2 -4 -8 -13 -14 -14 -14 -13 -12 -10 -12 -13 -14 -12 -12 -13 -14 -15 -15 -15 -14 -13 -12 -11 -10 -11 -11 -10 -9 -7 -4 -1 0 1 2 4 6 7 7 7 7 7 5 2 -2 -4 -7 -9 -12 -13 -14 -14 -14 -16 -16 -14 -14 -14 -14 -15 -14 -14 -13 -11 -8 -5 -1 3 7 11 14 15 15 17 22 19 12 4 -1 -0 2 1 -2 -5 -9 -13 -15 -16 -18 -20 -23 -25 -28 -30 -33 -35 -35 -33 -31 -29 -29 -30 -31 -32 -34 -36 -37 -39 -41 -43 -46 -48 -48 -47 -47 -47 -48 -48 -49 -49 -49 -49 -49 -49 -49 -49 -48 -49 -49 -48 -46 -44 -41 -40 -39 -37 -37 -38 -41 -44 -48 -50 -53 -56 -60 -64 -68 -72 -75 -78 -81 -82 -76 -65 -48 -28 -10 -7 -7 -10 -19 -37 -43 -37 -28 -21 -19 -16 -12 -8 -5 -2 1 3 4 5 5 4 4 3 1 -1 -2 -3 -4 -4 -4 -4 -2 0 3 6 8 9 9 8 6 4 3 2 2 1 -1 -4 -7 -10 -13 -16 -19 -22 -24 -25 -26 -27 -27 -28 -29 -30 -31 -33 -34 -35 -37 -38 -39 -41 -43 -44 -46 -47 -48 -49 -49 -49 -50 -50 -51 -53 -54 -54 -54 -54 -54 -54 -55 -54 -52 -50 -48 -46 -44 -41 -38 -35 -33 -31 -29 -27 -25 -23 -21 -18 -17 -15 -13 -12 -10 -8 -5 -4 -3 -2 -0 2 5 7 7 7 6 7 9 13 17 21 24 27 30 34 37 39 41 44 48 53 59 65 69 72 73 72 67 63 60 57 57 51 48 50 51 49 47 45 43 40 39 40 39 37 36 32 26 23 22 23 20 21 26 31 31 26 26 33 39 37 30 25 17 9 4 1 -1 1 2 -2 -5 -6 -3 -1 -4 -2 -2 3 15 29 30 27 25 26 28 33 33 25 14 8 2 -4 -4 -3 -5 -7 -9 -4 10 -3 -0 1 1 -1 -2 -2 -0 1 3 6 9 10 9 7 5 4 3 1 0 -0 -2 -3 -4 -4 -4 -5 -6 -8 -12 -14 -12 -8 -6 -6 -7 -7 -4 -2 -2 -6 -11 -15 -14 -13 -12 -11 -11 -11 -13 -15 -15 -14 -14 -16 -17 -17 -18 -16 -15 -13 -12 -12 -12 -12 -12 -11 -9 -8 -5 -2 1 4 9 12 13 13 11 10 9 6 2 -3 -6 -8 -12 -15 -18 -18 -18 -18 -19 -19 -16 -13 -12 -12 -11 -9 -7 -6 -5 -3 -2 1 6 12 17 21 21 21 23 26 27 21 12 6 3 5 5 2 -2 -6 -10 -13 -14 -16 -18 -21 -23 -26 -28 -30 -32 -34 -33 -32 -30 -29 -30 -32 -33 -35 -37 -39 -39 -40 -42 -44 -47 -48 -49 -48 -48 -48 -49 -50 -50 -50 -51 -51 -50 -50 -50 -49 -49 -49 -49 -47 -45 -42 -41 -39 -37 -36 -36 -39 -42 -46 -49 -52 -55 -58 -61 -65 -69 -72 -75 -78 -82 -81 -72 -55 -35 -17 -11 -10 -10 -9 -10 -18 -33 -41 -40 -33 -30 -25 -20 -15 -9 -5 -2 1 2 3 3 3 3 2 1 -1 -3 -4 -4 -5 -6 -6 -5 -2 1 4 7 7 7 5 3 2 1 1 1 0 -2 -5 -8 -11 -15 -19 -21 -23 -24 -25 -26 -27 -28 -29 -30 -31 -31 -33 -34 -35 -37 -39 -41 -43 -45 -47 -48 -49 -50 -50 -51 -52 -52 -53 -54 -55 -56 -56 -56 -55 -55 -56 -56 -56 -54 -51 -49 -47 -44 -42 -39 -36 -34 -32 -30 -29 -27 -24 -22 -20 -18 -17 -15 -14 -12 -9 -7 -6 -4 -3 -2 0 3 4 5 4 2 1 4 9 15 20 24 27 31 34 37 40 42 46 50 57 64 69 73 74 75 73 65 58 55 54 53 50 49 50 51 49 48 47 45 42 41 41 41 38 34 30 26 23 22 22 22 22 24 26 26 25 25 28 33 33 29 22 15 9 4 0 -3 -3 -4 -4 -6 -7 -5 -1 0 7 5 6 14 27 28 23 21 23 25 28 28 19 6 -0 -4 -8 -8 -7 -10 -9 -6 3 18 -4 -1 0 0 -1 -2 -2 -2 -0 3 6 9 9 8 7 7 6 3 1 -1 -3 -4 -5 -4 -4 -5 -6 -7 -8 -11 -13 -13 -10 -7 -6 -6 -5 -2 -2 -5 -9 -12 -13 -11 -10 -9 -9 -10 -12 -14 -16 -17 -15 -15 -16 -17 -18 -17 -15 -14 -13 -13 -13 -13 -12 -11 -10 -8 -8 -6 -3 0 5 11 14 15 14 11 8 5 0 -6 -10 -12 -14 -17 -20 -21 -21 -21 -21 -21 -18 -14 -11 -10 -10 -8 -3 1 3 3 3 3 7 12 17 22 24 23 26 30 32 29 21 13 8 7 9 8 2 -3 -8 -11 -13 -14 -16 -19 -22 -24 -27 -28 -30 -31 -32 -32 -31 -31 -32 -33 -35 -37 -38 -40 -40 -40 -41 -42 -44 -47 -49 -50 -50 -50 -49 -50 -50 -50 -51 -50 -50 -50 -50 -49 -48 -48 -48 -47 -46 -43 -41 -40 -38 -35 -34 -36 -39 -43 -47 -51 -54 -56 -59 -62 -65 -68 -72 -75 -79 -81 -78 -68 -51 -31 -16 -14 -14 -14 -13 -13 -13 -20 -30 -37 -38 -39 -38 -34 -26 -15 -9 -5 -3 -0 1 1 2 2 2 0 -2 -3 -4 -5 -5 -6 -7 -6 -5 -2 1 4 5 4 3 1 0 1 1 1 -1 -3 -6 -10 -14 -18 -21 -23 -24 -25 -26 -26 -28 -29 -30 -31 -31 -32 -33 -34 -36 -37 -40 -42 -45 -47 -49 -50 -51 -51 -52 -53 -54 -55 -56 -57 -57 -57 -57 -57 -56 -57 -58 -58 -58 -56 -53 -50 -47 -45 -42 -40 -37 -35 -33 -31 -30 -28 -26 -24 -22 -20 -19 -18 -16 -14 -12 -9 -7 -6 -5 -4 -2 -0 1 1 -2 -5 -9 -6 2 11 18 24 28 31 34 38 40 43 47 51 57 63 68 71 72 72 69 60 51 49 49 48 48 48 50 49 49 49 48 46 43 43 43 43 39 33 29 26 25 24 24 24 23 22 22 22 22 23 24 25 25 23 18 14 9 5 0 -3 -4 -5 -6 -7 -6 -1 8 11 18 14 9 11 21 22 17 14 16 16 18 18 12 1 -3 -6 -9 -10 -10 -8 -1 6 15 28 -4 -2 -1 -2 -3 -4 -5 -5 -1 3 6 7 7 9 9 9 7 3 -1 -3 -4 -5 -5 -5 -4 -5 -5 -5 -6 -10 -14 -14 -10 -6 -4 -3 -1 -1 -4 -8 -11 -11 -9 -8 -7 -7 -9 -10 -12 -15 -17 -18 -16 -14 -15 -15 -15 -14 -13 -14 -14 -14 -15 -14 -11 -9 -8 -7 -7 -5 -3 0 4 7 9 10 8 5 2 -1 -6 -12 -15 -16 -18 -20 -21 -21 -23 -24 -23 -20 -16 -11 -9 -9 -9 -6 -1 5 6 5 4 4 8 11 15 18 19 21 27 32 32 27 21 14 10 9 11 7 1 -5 -9 -13 -14 -16 -18 -21 -23 -26 -28 -29 -30 -32 -32 -32 -32 -33 -35 -37 -38 -40 -41 -42 -41 -41 -42 -43 -45 -48 -50 -52 -52 -51 -50 -49 -49 -49 -50 -49 -49 -49 -49 -49 -48 -48 -47 -46 -44 -42 -40 -38 -36 -34 -34 -36 -39 -43 -47 -51 -55 -58 -60 -63 -66 -69 -72 -76 -79 -77 -70 -62 -50 -35 -20 -17 -17 -18 -19 -19 -18 -19 -22 -24 -26 -32 -45 -49 -42 -27 -16 -12 -9 -5 -2 -1 0 1 0 -1 -2 -4 -5 -5 -6 -6 -7 -7 -7 -5 -2 0 1 1 -0 -1 -1 0 1 -0 -2 -6 -9 -13 -17 -20 -22 -23 -24 -25 -26 -28 -29 -30 -31 -32 -32 -33 -34 -35 -36 -39 -41 -44 -47 -49 -51 -52 -52 -53 -54 -56 -57 -58 -58 -58 -58 -58 -58 -58 -58 -59 -59 -60 -60 -59 -56 -52 -48 -45 -43 -41 -38 -36 -34 -32 -30 -29 -27 -25 -24 -23 -21 -20 -19 -17 -14 -11 -8 -7 -6 -6 -5 -5 -5 -7 -13 -16 -21 -20 -9 4 15 23 28 31 34 38 40 43 46 49 53 56 60 62 64 65 60 52 45 45 45 45 45 46 47 48 49 48 48 46 44 44 44 43 38 33 30 28 26 26 26 25 23 20 18 18 18 19 19 19 18 17 15 13 9 4 0 -3 -5 -6 -7 -7 -2 8 20 23 24 18 8 3 10 13 10 7 8 7 6 6 4 -1 -3 -5 -8 -10 -9 -0 13 21 28 35 -6 -4 -3 -5 -7 -9 -11 -9 -3 2 4 5 7 10 11 10 7 1 -3 -4 -5 -6 -6 -6 -6 -5 -4 -4 -7 -12 -16 -15 -8 -4 -2 -1 -1 -3 -6 -8 -8 -8 -7 -5 -6 -8 -10 -11 -13 -16 -18 -18 -16 -12 -11 -12 -12 -12 -14 -15 -15 -15 -15 -13 -10 -7 -5 -5 -5 -4 -2 0 2 2 2 2 0 -3 -4 -6 -9 -12 -14 -15 -17 -18 -20 -23 -27 -27 -24 -19 -13 -10 -10 -9 -8 -5 -1 2 3 2 1 2 4 5 7 8 10 18 24 27 26 22 18 13 10 10 10 6 -1 -6 -10 -14 -16 -18 -21 -23 -26 -28 -30 -31 -32 -33 -33 -34 -35 -37 -38 -40 -41 -42 -43 -43 -42 -42 -43 -44 -46 -49 -51 -52 -52 -51 -49 -49 -48 -48 -48 -48 -48 -49 -48 -48 -47 -46 -45 -43 -41 -39 -37 -35 -33 -33 -34 -36 -39 -43 -47 -51 -55 -59 -61 -64 -66 -69 -73 -77 -78 -73 -60 -52 -45 -36 -24 -20 -19 -21 -24 -28 -29 -28 -26 -24 -24 -30 -42 -48 -46 -37 -27 -25 -22 -16 -8 -5 -3 -2 -2 -3 -4 -6 -6 -7 -6 -6 -7 -8 -8 -7 -5 -4 -3 -3 -3 -3 -1 -0 -0 -2 -5 -9 -12 -16 -18 -20 -21 -23 -24 -26 -28 -29 -31 -32 -33 -33 -33 -34 -35 -36 -38 -40 -42 -45 -48 -50 -52 -53 -54 -55 -57 -59 -59 -59 -59 -59 -59 -59 -59 -59 -60 -60 -61 -62 -62 -62 -59 -55 -51 -48 -45 -43 -42 -40 -37 -35 -33 -32 -31 -29 -28 -27 -25 -24 -23 -21 -17 -13 -10 -8 -9 -10 -11 -13 -15 -17 -26 -28 -30 -29 -23 -8 8 20 28 31 34 37 40 42 43 40 42 44 46 48 51 51 47 42 40 41 42 41 40 41 44 47 48 48 47 45 44 44 43 41 36 32 30 29 29 29 28 25 21 17 15 14 14 15 15 15 14 13 13 11 8 3 -2 -5 -6 -8 -10 -8 1 14 21 21 21 14 1 -5 -0 3 3 2 2 0 -1 0 1 -2 -4 -5 -7 -8 -4 12 27 35 36 38 -8 -4 -3 -6 -11 -14 -13 -11 -5 -0 2 3 6 10 10 8 3 -3 -5 -6 -6 -6 -6 -7 -6 -5 -3 -5 -11 -17 -19 -15 -6 -2 -1 -0 -1 -2 -3 -3 -5 -6 -5 -4 -6 -10 -12 -12 -14 -17 -18 -18 -13 -8 -8 -9 -10 -14 -17 -17 -16 -15 -14 -11 -7 -5 -4 -4 -3 -2 -1 1 3 1 -1 -3 -4 -4 -2 -2 -4 -6 -9 -12 -15 -18 -22 -28 -31 -28 -23 -18 -14 -13 -12 -10 -8 -6 -4 -3 -2 -2 -3 -4 -5 -4 -2 1 7 15 19 19 17 17 15 11 9 9 9 4 -2 -7 -10 -15 -18 -21 -24 -26 -29 -31 -32 -34 -35 -36 -35 -36 -38 -39 -41 -42 -43 -43 -44 -44 -44 -44 -45 -46 -47 -49 -51 -52 -51 -50 -49 -48 -48 -48 -48 -48 -48 -49 -49 -48 -48 -46 -44 -42 -39 -37 -34 -32 -31 -32 -33 -36 -40 -43 -47 -51 -55 -59 -62 -65 -67 -70 -73 -76 -77 -71 -52 -42 -37 -33 -26 -22 -20 -22 -28 -38 -43 -43 -38 -34 -33 -34 -37 -39 -40 -41 -38 -40 -40 -33 -21 -16 -10 -7 -6 -6 -7 -8 -9 -9 -8 -8 -8 -8 -9 -9 -9 -8 -7 -7 -6 -4 -3 -2 -2 -5 -8 -12 -15 -17 -19 -20 -22 -23 -25 -27 -29 -30 -32 -33 -34 -34 -34 -35 -36 -37 -39 -41 -43 -46 -48 -50 -52 -54 -56 -58 -60 -62 -62 -62 -61 -61 -61 -62 -62 -62 -61 -62 -62 -63 -64 -65 -63 -60 -56 -52 -49 -48 -48 -48 -46 -43 -41 -40 -40 -39 -39 -37 -32 -29 -28 -25 -21 -17 -13 -11 -11 -17 -20 -24 -29 -29 -33 -34 -34 -32 -28 -16 -0 16 28 31 32 35 38 40 38 29 27 28 31 34 36 38 37 36 36 36 36 35 35 36 41 44 46 47 46 45 43 43 41 38 33 31 30 30 32 32 29 24 18 13 11 11 10 10 9 9 8 8 8 6 3 -1 -4 -7 -9 -10 -11 -9 1 15 13 13 13 7 -4 -7 -6 -3 -1 0 -0 -2 -3 -1 3 -2 -4 -5 -6 -4 8 25 35 39 39 39 -7 -4 -4 -12 -17 -17 -11 -11 -4 -0 1 2 5 8 8 4 -3 -8 -7 -5 -5 -6 -8 -8 -6 -5 -5 -9 -16 -22 -22 -14 -1 1 1 2 3 4 3 1 -3 -5 -3 -3 -7 -10 -12 -13 -14 -15 -16 -14 -8 -5 -6 -9 -12 -15 -15 -14 -13 -12 -10 -7 -4 -3 -3 -1 2 4 6 7 7 5 2 1 3 5 6 4 1 -2 -7 -13 -18 -23 -28 -31 -30 -27 -22 -18 -17 -16 -14 -12 -10 -9 -8 -7 -5 -5 -7 -8 -8 -5 -2 2 9 13 13 12 12 13 11 8 8 9 9 3 -2 -7 -12 -16 -20 -23 -27 -30 -32 -33 -35 -37 -38 -37 -37 -38 -39 -41 -42 -43 -44 -44 -45 -45 -45 -46 -47 -48 -48 -49 -51 -51 -51 -50 -49 -48 -48 -48 -48 -49 -50 -50 -50 -49 -48 -46 -43 -40 -37 -34 -32 -30 -29 -30 -33 -37 -41 -44 -48 -52 -56 -60 -63 -66 -68 -70 -73 -76 -77 -72 -54 -45 -40 -36 -30 -25 -22 -22 -28 -42 -52 -55 -53 -48 -47 -46 -40 -38 -41 -49 -51 -53 -52 -46 -37 -31 -22 -16 -13 -10 -10 -10 -11 -11 -10 -10 -9 -10 -11 -11 -12 -12 -11 -10 -8 -6 -4 -4 -5 -8 -13 -16 -18 -19 -19 -21 -23 -25 -26 -28 -29 -31 -32 -33 -34 -34 -35 -35 -36 -38 -40 -42 -45 -47 -49 -51 -54 -56 -59 -61 -63 -64 -65 -65 -64 -64 -65 -65 -65 -64 -64 -64 -65 -66 -69 -70 -69 -67 -63 -60 -57 -56 -58 -59 -57 -53 -50 -49 -49 -49 -48 -47 -42 -38 -37 -31 -27 -23 -19 -15 -12 -25 -29 -33 -37 -37 -37 -35 -32 -28 -23 -9 3 15 27 29 30 32 35 36 34 19 16 16 19 22 26 29 30 32 32 32 31 30 30 32 37 40 43 45 45 44 43 41 38 35 31 30 31 33 35 33 28 21 15 10 8 7 6 5 3 2 2 2 2 1 -1 -4 -6 -7 -8 -10 -11 -8 -1 11 8 8 6 1 -5 -5 -4 -3 -1 -0 0 -0 -1 -0 3 -3 -5 -5 -3 4 18 29 36 39 40 40 -5 -3 -8 -17 -19 -15 -10 -11 -3 -0 -0 1 4 7 5 -2 -10 -14 -9 -4 -4 -7 -11 -9 -7 -6 -10 -15 -20 -23 -20 -10 3 3 3 4 8 10 5 0 -2 -3 -2 -4 -7 -9 -10 -9 -8 -8 -7 -5 -2 -5 -9 -12 -12 -10 -8 -5 -4 -4 -4 -2 -1 0 2 5 10 12 12 12 12 9 9 12 14 14 9 4 -1 -6 -12 -17 -23 -27 -29 -29 -27 -23 -20 -19 -19 -19 -17 -16 -15 -13 -11 -9 -8 -7 -6 -5 -2 1 4 6 7 7 7 7 8 8 6 5 6 10 9 3 -3 -8 -14 -19 -22 -26 -29 -32 -34 -36 -38 -40 -40 -37 -36 -38 -40 -42 -43 -44 -45 -45 -46 -46 -47 -48 -48 -49 -49 -50 -51 -52 -52 -51 -50 -49 -49 -49 -50 -51 -51 -51 -51 -51 -49 -46 -43 -39 -35 -32 -30 -28 -27 -29 -33 -38 -41 -45 -48 -52 -56 -61 -64 -67 -68 -70 -72 -74 -76 -73 -58 -49 -45 -41 -35 -29 -24 -22 -23 -30 -45 -56 -61 -61 -61 -59 -53 -50 -53 -60 -62 -60 -57 -53 -47 -42 -35 -29 -25 -19 -18 -16 -14 -14 -13 -12 -12 -13 -13 -14 -15 -15 -14 -12 -10 -8 -6 -7 -9 -13 -17 -19 -20 -21 -22 -24 -26 -27 -28 -28 -30 -31 -32 -33 -34 -35 -35 -36 -37 -39 -41 -44 -46 -49 -51 -53 -56 -58 -61 -63 -65 -66 -67 -67 -67 -67 -68 -68 -68 -67 -67 -68 -70 -73 -78 -79 -79 -77 -75 -72 -69 -66 -68 -68 -65 -60 -56 -54 -54 -54 -54 -52 -49 -47 -46 -41 -39 -34 -28 -21 -12 -26 -31 -31 -33 -36 -35 -31 -25 -16 -9 5 13 20 26 28 28 30 31 32 30 15 10 10 13 17 20 24 27 28 29 29 27 27 27 30 33 36 39 41 44 44 42 39 35 32 30 31 33 35 37 33 27 19 12 8 7 5 2 -0 -2 -3 -3 -3 -2 -3 -4 -6 -5 -2 -0 -6 -8 -7 -3 5 9 10 5 -3 -5 -0 3 3 1 1 2 2 1 -1 -2 -5 -6 -6 -1 12 21 28 34 38 40 40 -3 -4 -12 -19 -18 -15 -11 -8 -1 -1 -2 1 6 6 -0 -9 -16 -17 -9 -4 -5 -10 -13 -11 -10 -11 -16 -20 -21 -21 -18 -8 6 7 5 6 8 9 2 0 -1 -2 -3 -6 -6 -6 -3 -1 -1 -0 1 1 -1 -7 -10 -10 -8 -8 -6 -2 0 1 1 2 3 4 7 11 14 15 14 13 13 14 18 21 20 15 6 -1 -8 -13 -18 -22 -25 -26 -26 -25 -24 -21 -20 -20 -22 -22 -22 -22 -20 -16 -12 -11 -9 -7 -3 -0 3 4 5 4 3 3 3 4 4 4 2 3 6 9 8 1 -4 -10 -16 -22 -25 -29 -32 -34 -35 -38 -41 -41 -38 -35 -36 -38 -41 -43 -44 -45 -45 -45 -46 -47 -48 -48 -49 -49 -50 -51 -53 -54 -53 -52 -51 -50 -51 -51 -52 -53 -53 -53 -53 -51 -49 -45 -42 -38 -34 -31 -28 -26 -26 -29 -33 -37 -41 -45 -48 -52 -56 -61 -64 -66 -68 -69 -70 -73 -75 -73 -63 -55 -51 -48 -42 -33 -27 -24 -23 -24 -33 -47 -60 -65 -65 -64 -63 -63 -64 -66 -65 -62 -58 -54 -51 -46 -42 -38 -35 -31 -29 -24 -21 -20 -17 -16 -15 -16 -17 -18 -19 -19 -17 -14 -11 -9 -9 -11 -14 -19 -22 -23 -23 -24 -26 -28 -28 -29 -29 -30 -30 -31 -32 -34 -35 -35 -36 -36 -37 -40 -43 -46 -49 -52 -54 -56 -58 -61 -63 -65 -67 -68 -68 -69 -69 -69 -70 -71 -72 -72 -72 -75 -78 -81 -87 -88 -88 -88 -86 -83 -80 -75 -72 -71 -68 -62 -58 -55 -55 -55 -54 -52 -51 -51 -52 -49 -46 -37 -27 -20 -8 -15 -16 -15 -16 -25 -25 -21 -12 1 6 15 20 23 25 27 27 27 27 27 22 13 9 10 12 15 19 22 24 25 26 26 25 25 27 33 32 32 34 37 41 42 40 36 32 30 30 31 34 36 37 31 24 16 9 6 4 1 -3 -5 -7 -8 -7 -7 -6 -6 -7 -8 -6 1 3 -4 -6 -6 -4 0 14 18 11 -2 -3 4 10 10 4 3 4 3 2 -1 -5 -7 -8 -7 -2 12 16 23 31 36 39 40 -4 -6 -17 -20 -19 -16 -12 -5 -1 -2 -1 4 9 2 -7 -14 -16 -15 -7 -5 -8 -13 -12 -11 -12 -15 -19 -23 -21 -20 -15 -4 10 11 9 9 10 9 4 1 -1 -5 -9 -9 -7 -3 2 4 4 5 5 3 -2 -7 -8 -7 -8 -10 -8 -4 -1 2 4 5 6 7 9 13 15 14 14 14 17 20 24 24 18 9 -1 -8 -14 -19 -23 -25 -26 -24 -23 -23 -21 -19 -20 -22 -25 -27 -28 -27 -23 -17 -14 -12 -10 -7 -2 2 4 3 2 0 -0 0 1 0 0 1 1 3 6 7 5 -1 -7 -12 -19 -24 -28 -30 -33 -35 -37 -40 -42 -39 -35 -33 -36 -39 -42 -44 -44 -44 -45 -45 -46 -47 -48 -48 -49 -50 -52 -54 -56 -56 -55 -53 -51 -51 -51 -52 -53 -53 -54 -54 -53 -52 -48 -44 -40 -37 -33 -30 -26 -24 -25 -28 -33 -36 -40 -43 -47 -51 -55 -59 -63 -65 -67 -68 -69 -71 -73 -73 -66 -61 -58 -56 -50 -40 -31 -26 -25 -26 -30 -41 -53 -62 -64 -64 -65 -66 -66 -65 -63 -61 -58 -54 -51 -47 -44 -42 -40 -39 -38 -34 -31 -29 -24 -23 -22 -21 -22 -23 -23 -23 -21 -18 -14 -12 -13 -15 -19 -23 -24 -25 -27 -28 -30 -31 -31 -31 -31 -32 -33 -33 -34 -34 -35 -36 -37 -37 -39 -41 -46 -50 -53 -55 -57 -59 -60 -62 -64 -66 -68 -69 -70 -70 -71 -71 -72 -75 -78 -80 -81 -84 -87 -88 -91 -92 -92 -92 -90 -86 -80 -72 -68 -69 -66 -60 -56 -54 -53 -53 -52 -50 -50 -51 -52 -52 -43 -30 -17 -11 -3 -1 2 5 6 -5 -6 -3 4 15 17 19 21 22 24 26 26 23 20 19 13 10 9 10 12 15 18 20 21 23 24 24 23 23 27 35 32 28 29 33 36 38 36 33 30 29 30 31 34 36 34 28 20 13 7 3 -0 -4 -8 -10 -11 -11 -11 -10 -9 -9 -10 -10 -8 -3 -1 -4 -4 -4 -4 -1 15 21 15 2 -0 5 11 13 5 4 4 2 0 -2 -6 -9 -10 -9 -6 3 6 14 25 31 36 40 -7 -11 -23 -23 -21 -18 -13 -4 1 2 4 7 6 -5 -11 -14 -13 -7 -4 -8 -11 -13 -12 -13 -16 -20 -24 -27 -25 -19 -9 4 15 14 12 13 14 10 4 -2 -8 -14 -17 -14 -8 -1 4 6 5 5 4 0 -5 -8 -7 -7 -9 -10 -8 -5 -2 1 4 5 5 6 9 12 13 13 15 18 21 24 24 19 10 -0 -8 -13 -17 -21 -24 -26 -25 -23 -22 -21 -20 -20 -22 -26 -28 -30 -30 -27 -22 -17 -15 -14 -11 -8 -3 1 1 -1 -2 -3 -2 -1 -2 -2 -1 1 1 3 4 4 1 -4 -9 -15 -21 -25 -28 -31 -33 -36 -39 -41 -39 -35 -31 -31 -36 -39 -42 -43 -44 -44 -44 -45 -46 -47 -48 -49 -50 -52 -54 -56 -58 -57 -56 -53 -51 -51 -51 -52 -53 -53 -54 -54 -53 -50 -46 -42 -39 -35 -32 -28 -25 -24 -25 -28 -32 -35 -38 -41 -44 -49 -53 -57 -60 -63 -66 -67 -68 -69 -71 -73 -69 -65 -64 -64 -60 -49 -38 -30 -28 -27 -28 -33 -44 -58 -64 -63 -63 -64 -64 -64 -61 -59 -56 -54 -51 -48 -44 -42 -41 -42 -42 -41 -39 -38 -34 -34 -32 -30 -30 -31 -29 -27 -26 -23 -19 -18 -18 -20 -23 -25 -26 -27 -29 -31 -33 -33 -33 -33 -34 -35 -37 -37 -37 -37 -37 -38 -38 -40 -41 -44 -49 -53 -56 -58 -59 -60 -62 -63 -65 -67 -69 -70 -71 -72 -72 -75 -77 -82 -87 -90 -90 -92 -93 -92 -91 -92 -93 -92 -90 -84 -76 -66 -62 -63 -62 -58 -55 -52 -52 -51 -50 -49 -48 -49 -51 -49 -35 -19 -9 -5 -1 3 7 11 14 13 14 14 15 18 19 19 20 21 24 26 26 20 11 10 7 7 9 10 12 15 17 18 19 20 22 22 22 22 24 33 30 26 26 29 31 32 31 30 29 28 29 31 33 33 28 22 15 9 3 -0 -4 -8 -11 -14 -14 -14 -13 -13 -13 -13 -13 -12 -10 -8 -3 -0 2 3 -2 1 14 19 15 8 3 3 7 10 5 3 2 -0 -2 -4 -7 -9 -10 -11 -11 -7 -4 4 17 22 32 39 -9 -18 -28 -24 -21 -18 -12 -3 1 3 4 4 -3 -9 -13 -13 -10 -4 -6 -11 -16 -18 -18 -19 -22 -26 -29 -31 -27 -19 -6 7 16 14 15 16 14 7 -3 -11 -18 -22 -21 -15 -7 -1 2 2 2 1 -1 -5 -9 -9 -8 -8 -7 -6 -4 -2 -0 1 3 2 2 5 9 12 12 13 16 20 22 22 17 9 -1 -9 -13 -16 -19 -21 -23 -25 -24 -23 -22 -21 -20 -22 -24 -27 -29 -29 -27 -24 -21 -18 -17 -16 -13 -10 -5 -1 -2 -3 -4 -4 -3 -3 -4 -3 -0 1 -0 1 2 1 -2 -6 -12 -18 -23 -26 -28 -31 -34 -36 -39 -38 -34 -30 -28 -30 -35 -38 -40 -42 -42 -43 -44 -45 -47 -48 -49 -50 -51 -53 -55 -58 -60 -58 -56 -52 -51 -51 -51 -52 -52 -53 -53 -52 -50 -48 -44 -40 -36 -33 -30 -28 -26 -25 -26 -28 -30 -32 -35 -38 -41 -45 -49 -54 -57 -61 -63 -65 -67 -68 -71 -73 -72 -70 -70 -73 -72 -60 -47 -36 -31 -30 -29 -31 -40 -57 -63 -63 -62 -62 -62 -60 -58 -56 -54 -52 -50 -48 -45 -43 -42 -42 -42 -42 -43 -43 -43 -44 -43 -41 -42 -41 -37 -35 -34 -32 -29 -28 -28 -28 -27 -27 -28 -29 -31 -34 -35 -35 -35 -36 -37 -40 -42 -42 -42 -41 -40 -41 -42 -43 -45 -48 -52 -55 -58 -60 -61 -63 -64 -66 -68 -70 -71 -72 -74 -75 -76 -81 -85 -90 -95 -97 -97 -96 -95 -92 -90 -90 -91 -90 -86 -79 -68 -59 -54 -53 -51 -53 -52 -51 -51 -50 -48 -47 -46 -47 -48 -42 -25 -10 -5 -3 -0 3 7 11 15 17 18 16 15 16 17 18 19 21 23 26 25 18 5 4 5 7 9 10 12 15 17 18 19 20 21 21 20 19 20 28 29 28 28 27 27 27 27 27 27 28 30 31 31 27 21 14 9 4 -0 -4 -8 -11 -14 -16 -16 -16 -16 -16 -17 -17 -15 -13 -11 -7 3 8 12 13 6 4 10 14 10 11 6 3 4 5 4 2 -0 -2 -5 -7 -8 -8 -9 -12 -13 -12 -9 -2 9 15 28 36 -14 -25 -29 -24 -21 -16 -11 -3 -2 1 2 -1 -8 -11 -12 -10 -7 -5 -10 -18 -23 -24 -24 -25 -27 -30 -31 -31 -28 -19 -8 4 12 15 17 16 10 -1 -13 -20 -24 -24 -21 -14 -6 -3 -4 -6 -7 -8 -10 -12 -14 -13 -10 -7 -3 -0 2 3 2 1 -1 -2 0 5 9 11 12 13 15 16 15 12 5 -2 -8 -13 -16 -17 -18 -19 -21 -24 -25 -24 -23 -22 -21 -23 -24 -24 -25 -24 -22 -20 -19 -19 -19 -18 -15 -11 -7 -4 -4 -4 -4 -5 -5 -6 -5 -2 1 0 -2 -2 -1 -2 -5 -10 -15 -21 -25 -27 -29 -31 -33 -35 -36 -32 -28 -25 -26 -30 -34 -37 -39 -40 -41 -43 -45 -46 -48 -50 -51 -52 -52 -54 -57 -61 -61 -59 -55 -51 -51 -51 -51 -52 -52 -52 -51 -50 -48 -45 -42 -38 -34 -31 -28 -28 -27 -27 -28 -28 -29 -30 -32 -34 -37 -41 -45 -49 -54 -57 -60 -63 -65 -68 -71 -74 -75 -75 -76 -81 -82 -72 -56 -42 -35 -33 -31 -32 -40 -57 -62 -62 -60 -59 -58 -57 -55 -52 -50 -49 -48 -47 -46 -44 -43 -43 -42 -42 -42 -44 -46 -49 -50 -51 -52 -51 -46 -44 -44 -44 -43 -42 -40 -38 -34 -33 -33 -33 -35 -37 -37 -37 -38 -39 -41 -44 -47 -48 -48 -46 -45 -46 -47 -48 -50 -52 -54 -57 -59 -62 -64 -66 -68 -70 -72 -74 -75 -77 -80 -82 -84 -87 -91 -96 -100 -101 -100 -98 -94 -91 -89 -89 -89 -86 -79 -71 -58 -50 -46 -43 -40 -44 -48 -50 -50 -49 -47 -45 -44 -44 -43 -32 -18 -7 -5 -3 0 3 6 9 13 16 16 12 7 11 15 18 19 21 23 25 24 16 3 3 5 7 8 10 12 15 17 19 19 20 20 19 17 15 17 25 31 32 32 28 26 25 26 26 26 27 29 29 26 19 12 6 2 -2 -5 -8 -11 -13 -16 -17 -17 -18 -19 -20 -21 -20 -18 -14 -11 -3 9 16 19 21 14 7 6 8 6 7 5 4 4 3 2 1 -2 -4 -6 -8 -10 -8 -8 -14 -16 -15 -11 -5 7 12 23 31 -17 -26 -25 -24 -22 -17 -9 -3 -3 -2 -3 -7 -12 -14 -13 -11 -11 -14 -19 -26 -28 -28 -28 -29 -30 -29 -29 -28 -24 -16 -6 4 12 17 18 13 2 -12 -21 -24 -25 -23 -20 -14 -10 -11 -15 -19 -19 -19 -20 -21 -21 -17 -9 -3 1 2 3 4 2 -2 -5 -4 1 6 10 10 8 8 8 7 6 3 -2 -6 -10 -14 -15 -15 -16 -17 -21 -24 -25 -25 -25 -23 -21 -21 -21 -20 -20 -19 -18 -18 -19 -21 -21 -18 -14 -10 -7 -4 -4 -3 -4 -6 -6 -7 -5 -2 1 -2 -4 -4 -4 -5 -10 -14 -19 -24 -28 -30 -29 -30 -31 -32 -31 -26 -23 -22 -26 -30 -33 -35 -37 -39 -41 -43 -46 -48 -50 -52 -53 -53 -54 -56 -60 -63 -62 -59 -54 -51 -51 -51 -51 -51 -51 -51 -50 -48 -46 -44 -40 -36 -32 -29 -27 -28 -28 -29 -29 -30 -30 -30 -31 -32 -34 -37 -41 -45 -50 -54 -57 -61 -64 -68 -72 -74 -76 -78 -80 -84 -85 -78 -63 -46 -38 -36 -33 -34 -41 -56 -60 -60 -58 -55 -54 -53 -51 -48 -47 -46 -45 -45 -45 -44 -44 -43 -42 -41 -41 -43 -45 -49 -52 -55 -56 -55 -53 -52 -54 -55 -54 -52 -50 -47 -43 -42 -40 -39 -41 -42 -41 -42 -43 -45 -47 -50 -52 -53 -53 -52 -51 -52 -54 -54 -55 -56 -57 -59 -62 -65 -68 -71 -74 -77 -79 -80 -81 -83 -86 -89 -91 -92 -95 -99 -101 -102 -101 -98 -94 -90 -88 -87 -86 -80 -68 -60 -50 -44 -41 -39 -36 -37 -43 -49 -49 -48 -45 -43 -42 -41 -35 -21 -12 -8 -7 -3 1 4 6 8 11 13 13 7 -5 2 9 14 16 18 19 21 19 13 4 4 6 7 9 10 12 15 17 19 20 20 19 18 15 13 18 28 35 35 32 27 25 24 24 25 25 26 26 24 18 10 4 0 -3 -6 -9 -11 -13 -15 -17 -18 -19 -20 -21 -23 -24 -23 -20 -16 -12 -3 7 14 19 21 19 9 3 2 2 3 3 4 4 4 2 0 -2 -4 -7 -10 -11 -11 -11 -17 -19 -19 -15 -7 9 14 19 23 -18 -24 -24 -28 -25 -17 -9 -4 -5 -7 -10 -14 -17 -19 -18 -19 -21 -24 -28 -30 -30 -29 -28 -27 -26 -25 -24 -22 -16 -7 2 10 16 18 16 7 -7 -20 -27 -29 -29 -27 -23 -19 -18 -22 -27 -30 -29 -26 -26 -25 -23 -13 -4 1 3 3 4 0 -3 -6 -7 -3 3 7 8 5 3 4 5 5 4 2 -0 -5 -10 -14 -15 -14 -15 -18 -22 -23 -24 -25 -25 -23 -20 -19 -19 -18 -16 -15 -16 -19 -20 -21 -20 -17 -12 -6 -3 -3 -4 -5 -5 -5 -5 -6 -4 -1 -1 -5 -6 -5 -6 -11 -16 -20 -24 -29 -33 -30 -26 -25 -27 -28 -27 -23 -21 -22 -26 -30 -32 -34 -37 -39 -42 -44 -46 -49 -51 -53 -55 -55 -57 -59 -63 -64 -62 -58 -54 -52 -51 -51 -50 -50 -49 -49 -48 -46 -45 -43 -39 -35 -31 -28 -27 -28 -29 -30 -31 -31 -31 -31 -31 -32 -33 -34 -37 -41 -46 -50 -54 -59 -64 -68 -72 -73 -75 -78 -81 -84 -84 -78 -64 -48 -41 -38 -37 -39 -46 -55 -58 -57 -54 -51 -50 -48 -47 -45 -44 -43 -43 -43 -43 -43 -44 -43 -41 -40 -40 -41 -44 -47 -50 -53 -54 -54 -55 -56 -58 -59 -57 -55 -53 -52 -50 -50 -47 -47 -48 -50 -47 -47 -49 -52 -55 -57 -59 -60 -60 -58 -58 -61 -63 -62 -61 -61 -61 -64 -67 -71 -75 -77 -81 -84 -85 -86 -87 -89 -92 -93 -95 -95 -97 -101 -103 -104 -102 -99 -94 -91 -88 -86 -82 -73 -59 -52 -47 -45 -44 -42 -38 -37 -42 -48 -48 -46 -44 -41 -40 -38 -30 -19 -14 -14 -14 -6 -1 3 5 7 8 10 10 5 -13 -8 -0 5 7 8 10 12 11 6 5 6 7 8 9 10 12 14 17 19 19 19 18 16 13 12 18 26 29 28 24 22 22 22 23 22 23 23 21 17 9 3 -1 -4 -7 -9 -12 -13 -15 -16 -17 -19 -20 -22 -24 -26 -26 -24 -21 -17 -14 -10 -3 5 12 16 16 10 3 -3 -1 0 1 2 3 3 2 0 -2 -4 -8 -11 -12 -13 -15 -20 -22 -22 -20 -13 1 6 7 9 -16 -21 -26 -32 -28 -19 -11 -6 -8 -13 -17 -20 -23 -24 -25 -27 -29 -30 -31 -29 -27 -24 -21 -20 -19 -17 -16 -14 -7 2 9 14 17 20 12 -1 -14 -24 -29 -32 -33 -29 -23 -18 -22 -26 -27 -25 -21 -19 -20 -19 -13 -2 3 4 3 2 0 -3 -6 -8 -6 1 5 6 5 3 4 7 8 7 6 5 0 -6 -11 -14 -13 -13 -15 -18 -20 -21 -23 -25 -25 -23 -19 -18 -17 -15 -13 -13 -16 -18 -19 -18 -18 -14 -9 -5 -3 -3 -5 -5 -5 -4 -5 -5 -4 -4 -5 -8 -8 -9 -12 -18 -23 -27 -31 -33 -30 -22 -20 -22 -25 -27 -25 -22 -21 -23 -26 -30 -32 -35 -37 -40 -42 -45 -47 -50 -53 -56 -57 -58 -60 -63 -66 -65 -61 -57 -54 -52 -51 -50 -49 -48 -47 -46 -45 -44 -43 -41 -38 -34 -31 -28 -28 -29 -30 -32 -33 -32 -32 -32 -33 -33 -33 -34 -35 -39 -43 -47 -51 -57 -63 -68 -70 -72 -75 -77 -80 -83 -83 -78 -67 -53 -46 -44 -44 -47 -51 -53 -54 -53 -51 -48 -46 -45 -43 -42 -41 -40 -40 -40 -41 -42 -42 -41 -40 -38 -38 -40 -43 -46 -49 -51 -53 -53 -54 -55 -56 -56 -50 -50 -52 -53 -53 -53 -53 -54 -55 -56 -54 -54 -57 -60 -63 -64 -65 -67 -67 -65 -67 -70 -73 -72 -70 -69 -69 -71 -75 -79 -83 -85 -88 -90 -91 -91 -92 -93 -95 -96 -97 -97 -99 -102 -105 -104 -102 -98 -94 -90 -88 -85 -80 -70 -57 -51 -49 -49 -51 -49 -43 -41 -44 -47 -46 -44 -41 -39 -37 -35 -29 -22 -19 -22 -21 -13 -5 0 2 5 6 7 8 4 -12 -14 -10 -7 -6 -4 -2 0 2 2 5 7 8 9 10 11 13 15 16 18 18 17 15 13 11 10 14 17 17 16 13 15 17 18 19 19 19 17 14 8 2 -3 -6 -8 -10 -11 -13 -14 -15 -17 -18 -20 -22 -24 -27 -28 -28 -25 -21 -17 -15 -15 -12 -7 1 6 8 7 3 -6 -4 -1 -0 1 1 2 1 -1 -2 -4 -7 -10 -12 -15 -18 -21 -24 -24 -23 -19 -10 -7 -6 -5 -17 -20 -26 -32 -27 -20 -14 -11 -12 -16 -19 -22 -24 -25 -28 -30 -32 -33 -31 -26 -20 -16 -14 -15 -15 -13 -12 -11 -5 4 11 15 17 14 3 -11 -24 -33 -36 -32 -25 -17 -12 -13 -19 -21 -20 -15 -12 -11 -13 -11 -5 4 6 4 1 -3 -6 -8 -11 -11 -5 3 5 5 4 4 7 9 9 8 6 4 -2 -8 -12 -12 -10 -12 -14 -16 -17 -19 -22 -25 -25 -23 -19 -18 -16 -13 -11 -12 -14 -15 -14 -14 -15 -12 -8 -6 -5 -5 -6 -6 -5 -5 -5 -5 -6 -8 -10 -12 -13 -16 -21 -27 -31 -33 -33 -30 -23 -17 -18 -23 -26 -26 -23 -21 -22 -24 -27 -30 -32 -35 -38 -40 -43 -46 -49 -52 -55 -58 -60 -61 -63 -65 -66 -63 -59 -56 -53 -52 -50 -49 -47 -46 -45 -44 -43 -42 -41 -40 -37 -35 -32 -30 -29 -30 -32 -33 -34 -33 -33 -33 -34 -35 -35 -35 -36 -38 -41 -45 -49 -56 -62 -68 -69 -72 -74 -77 -79 -82 -83 -81 -75 -67 -63 -61 -57 -51 -43 -41 -46 -49 -47 -44 -42 -41 -40 -39 -39 -38 -37 -38 -39 -40 -41 -39 -38 -36 -37 -38 -41 -44 -47 -50 -51 -52 -52 -53 -53 -50 -41 -43 -50 -52 -52 -52 -54 -56 -58 -59 -59 -61 -64 -67 -69 -69 -70 -72 -73 -73 -75 -77 -79 -79 -78 -76 -76 -79 -82 -86 -89 -91 -93 -95 -95 -94 -95 -95 -96 -97 -97 -99 -101 -103 -105 -103 -100 -95 -91 -88 -85 -82 -79 -72 -59 -54 -52 -54 -56 -54 -48 -46 -46 -45 -43 -41 -39 -37 -34 -32 -29 -25 -23 -25 -25 -20 -12 -7 -4 1 3 4 5 2 -8 -15 -17 -17 -16 -14 -12 -9 -5 -1 4 7 10 11 12 13 14 15 16 16 16 14 13 11 8 7 8 8 8 7 7 10 12 13 14 14 13 11 6 1 -4 -8 -9 -11 -12 -13 -14 -15 -16 -17 -19 -21 -23 -26 -29 -30 -28 -25 -21 -18 -17 -17 -17 -15 -10 -5 -2 -2 -3 -10 -6 -4 -3 -2 -2 -1 -1 -3 -4 -5 -7 -6 -8 -14 -19 -22 -25 -26 -25 -23 -18 -15 -13 -13 -20 -19 -23 -27 -24 -21 -18 -18 -18 -20 -21 -22 -24 -25 -27 -30 -31 -31 -25 -17 -12 -11 -13 -13 -12 -10 -8 -6 1 8 13 16 17 10 -1 -14 -24 -30 -29 -23 -17 -12 -10 -13 -17 -18 -17 -13 -11 -11 -12 -10 -5 2 3 1 -4 -9 -12 -15 -17 -14 -4 4 5 4 3 5 8 8 7 5 4 0 -5 -9 -10 -8 -8 -10 -12 -14 -15 -18 -22 -24 -25 -24 -21 -18 -14 -12 -10 -10 -10 -10 -11 -12 -12 -10 -8 -7 -7 -7 -7 -7 -7 -6 -7 -8 -10 -14 -17 -19 -21 -24 -28 -33 -34 -32 -28 -23 -17 -16 -20 -25 -27 -25 -22 -21 -23 -26 -28 -31 -33 -36 -39 -42 -45 -49 -52 -56 -59 -61 -62 -63 -64 -65 -64 -60 -57 -54 -52 -50 -48 -47 -46 -45 -43 -42 -41 -40 -39 -38 -37 -36 -34 -33 -31 -32 -33 -34 -34 -33 -33 -33 -34 -36 -37 -37 -38 -39 -41 -44 -49 -55 -62 -67 -68 -71 -73 -75 -78 -80 -82 -81 -79 -75 -72 -69 -63 -50 -35 -31 -40 -45 -44 -41 -39 -37 -37 -37 -37 -36 -35 -36 -37 -38 -39 -37 -36 -35 -35 -37 -40 -43 -46 -48 -50 -50 -51 -51 -50 -44 -35 -36 -41 -44 -49 -52 -53 -55 -57 -59 -62 -64 -68 -70 -71 -71 -72 -74 -76 -78 -79 -80 -81 -82 -80 -78 -79 -83 -87 -91 -94 -96 -97 -97 -96 -95 -96 -96 -97 -97 -98 -100 -101 -103 -103 -100 -94 -88 -83 -80 -78 -77 -76 -73 -62 -57 -56 -57 -57 -55 -50 -47 -45 -42 -40 -38 -36 -34 -32 -30 -28 -26 -25 -26 -25 -23 -18 -14 -12 -6 -4 -2 0 -4 -8 -15 -20 -22 -22 -20 -18 -15 -11 -5 1 6 10 13 15 16 16 17 16 15 14 12 10 8 6 5 4 4 4 3 6 8 8 8 8 7 6 3 -1 -5 -9 -11 -13 -13 -14 -15 -15 -16 -17 -18 -20 -23 -26 -28 -31 -31 -29 -25 -22 -19 -19 -19 -18 -16 -11 -7 -6 -9 -13 -14 -10 -7 -6 -6 -5 -4 -4 -5 -5 -6 -7 -5 -6 -15 -20 -23 -25 -26 -25 -24 -21 -18 -17 -16 -24 -19 -18 -22 -22 -23 -25 -26 -24 -23 -24 -26 -27 -27 -30 -32 -30 -23 -16 -12 -10 -10 -12 -9 -8 -5 -2 1 4 8 12 13 9 0 -8 -16 -21 -22 -21 -19 -17 -16 -17 -19 -21 -21 -21 -20 -18 -17 -17 -16 -12 -5 -4 -6 -11 -14 -16 -20 -21 -16 -4 4 4 3 3 4 5 4 3 2 0 -4 -7 -7 -5 -4 -5 -8 -10 -12 -14 -18 -22 -24 -25 -24 -22 -18 -13 -9 -7 -7 -6 -7 -9 -10 -9 -8 -8 -8 -9 -8 -9 -9 -10 -10 -11 -13 -17 -20 -23 -25 -27 -30 -32 -33 -31 -27 -21 -17 -15 -18 -24 -27 -26 -24 -23 -22 -25 -28 -30 -32 -35 -37 -41 -44 -49 -53 -56 -59 -62 -63 -63 -63 -64 -64 -62 -58 -54 -51 -49 -48 -46 -45 -44 -43 -42 -41 -39 -38 -38 -37 -37 -37 -37 -36 -34 -34 -35 -35 -33 -33 -32 -33 -34 -36 -38 -39 -40 -41 -42 -45 -49 -55 -61 -65 -66 -69 -72 -74 -76 -79 -81 -82 -80 -76 -74 -71 -66 -57 -45 -40 -43 -44 -42 -39 -36 -34 -33 -34 -34 -34 -34 -35 -36 -37 -37 -35 -34 -34 -34 -36 -38 -41 -44 -47 -48 -49 -49 -49 -47 -40 -32 -30 -31 -33 -42 -49 -52 -54 -57 -59 -62 -65 -68 -71 -71 -71 -72 -74 -77 -80 -80 -79 -79 -81 -78 -76 -78 -83 -89 -93 -96 -97 -98 -97 -96 -96 -97 -97 -98 -99 -100 -101 -102 -102 -98 -94 -86 -77 -72 -70 -68 -70 -72 -71 -64 -59 -57 -57 -55 -53 -49 -46 -42 -40 -37 -35 -33 -31 -30 -28 -27 -26 -26 -25 -25 -23 -21 -18 -17 -12 -12 -10 -7 -14 -16 -20 -23 -24 -23 -22 -21 -18 -14 -9 -2 5 10 14 16 18 18 18 17 15 13 11 10 8 6 4 3 3 5 4 8 8 5 3 2 2 -0 -3 -6 -9 -12 -14 -15 -16 -16 -17 -17 -18 -18 -19 -22 -24 -27 -30 -32 -32 -30 -26 -23 -22 -22 -21 -19 -17 -9 -4 -4 -10 -18 -18 -15 -13 -12 -10 -9 -8 -8 -8 -8 -8 -9 -9 -10 -17 -22 -24 -25 -23 -21 -20 -18 -18 -19 -19 -25 -18 -15 -19 -22 -25 -27 -27 -24 -22 -24 -25 -26 -29 -32 -29 -23 -15 -12 -11 -12 -13 -13 -9 -6 -3 -0 1 2 5 6 5 -1 -8 -13 -16 -17 -18 -20 -22 -23 -25 -26 -27 -28 -29 -29 -29 -28 -25 -24 -23 -19 -13 -11 -13 -16 -18 -20 -23 -22 -15 -2 5 3 2 2 1 -0 -0 -0 -1 -2 -5 -5 -3 -0 -0 -3 -6 -8 -11 -14 -19 -21 -22 -22 -22 -21 -16 -10 -6 -4 -4 -5 -6 -7 -7 -6 -6 -7 -9 -10 -9 -10 -11 -14 -16 -18 -20 -22 -24 -26 -27 -30 -33 -33 -30 -26 -21 -16 -14 -16 -22 -27 -26 -24 -22 -23 -24 -27 -30 -31 -34 -37 -40 -44 -49 -53 -57 -60 -62 -63 -62 -62 -62 -63 -62 -59 -54 -51 -48 -47 -45 -45 -44 -43 -43 -42 -40 -38 -37 -36 -37 -38 -38 -38 -37 -37 -38 -37 -36 -34 -33 -33 -33 -34 -35 -38 -40 -41 -43 -44 -46 -49 -54 -59 -62 -65 -68 -71 -73 -75 -78 -81 -82 -80 -75 -71 -69 -66 -61 -53 -48 -46 -45 -42 -38 -34 -31 -31 -31 -32 -32 -33 -34 -35 -35 -35 -34 -34 -33 -33 -34 -37 -40 -43 -45 -46 -47 -47 -46 -45 -39 -34 -29 -27 -28 -35 -44 -51 -54 -56 -59 -62 -65 -67 -69 -69 -70 -72 -74 -78 -80 -79 -78 -77 -80 -77 -74 -76 -82 -88 -93 -97 -98 -98 -97 -97 -97 -98 -99 -100 -100 -101 -101 -101 -100 -93 -87 -77 -66 -62 -62 -62 -64 -68 -67 -63 -59 -56 -54 -52 -50 -46 -43 -41 -38 -36 -33 -31 -29 -29 -28 -27 -27 -26 -25 -24 -23 -21 -20 -18 -16 -16 -15 -14 -19 -21 -23 -24 -24 -24 -23 -22 -20 -17 -11 -4 3 8 12 15 18 19 19 18 16 14 13 11 9 7 5 5 8 13 7 8 6 2 -1 -2 -3 -5 -7 -9 -11 -13 -15 -16 -17 -18 -19 -19 -19 -20 -21 -21 -23 -25 -30 -33 -33 -32 -29 -26 -26 -25 -23 -22 -20 -12 -6 -6 -13 -20 -20 -19 -18 -17 -16 -14 -12 -12 -12 -11 -11 -12 -14 -16 -21 -24 -24 -20 -11 -9 -8 -9 -14 -21 -22 -22 -18 -14 -16 -21 -25 -26 -24 -21 -20 -20 -20 -21 -22 -24 -22 -16 -11 -11 -15 -17 -17 -15 -11 -8 -6 -6 -8 -8 -3 -2 -4 -9 -14 -18 -19 -18 -19 -24 -27 -30 -32 -33 -35 -35 -35 -34 -34 -32 -29 -26 -23 -20 -17 -15 -16 -18 -21 -23 -23 -18 -9 2 5 2 0 -2 -4 -4 -3 -2 -2 -2 -3 -1 2 3 1 -3 -5 -8 -11 -16 -19 -19 -18 -18 -17 -15 -11 -7 -4 -3 -5 -6 -6 -5 -5 -4 -6 -8 -10 -10 -10 -11 -14 -18 -22 -24 -25 -26 -26 -26 -28 -32 -33 -31 -27 -22 -18 -15 -15 -18 -24 -27 -24 -21 -21 -23 -26 -29 -32 -33 -36 -40 -44 -48 -53 -57 -60 -61 -61 -60 -60 -60 -61 -61 -59 -55 -51 -48 -45 -44 -44 -43 -43 -43 -43 -42 -40 -38 -36 -36 -36 -38 -38 -39 -39 -40 -42 -41 -39 -36 -34 -33 -32 -33 -34 -36 -39 -42 -44 -46 -47 -50 -54 -58 -61 -64 -67 -70 -72 -75 -79 -82 -82 -79 -73 -68 -65 -63 -59 -54 -51 -48 -45 -42 -37 -32 -29 -28 -29 -30 -30 -31 -32 -33 -33 -33 -33 -33 -33 -33 -34 -36 -38 -41 -43 -44 -44 -44 -44 -44 -42 -38 -33 -28 -28 -32 -40 -48 -53 -56 -59 -61 -64 -66 -66 -66 -68 -71 -75 -78 -80 -79 -78 -79 -81 -79 -78 -78 -81 -88 -94 -97 -99 -99 -97 -98 -99 -100 -101 -101 -101 -101 -100 -99 -98 -92 -82 -71 -62 -59 -62 -63 -64 -66 -64 -60 -57 -54 -51 -49 -46 -43 -41 -38 -36 -34 -32 -30 -29 -28 -28 -28 -28 -27 -26 -25 -23 -21 -19 -18 -18 -18 -18 -18 -21 -22 -23 -24 -23 -22 -23 -22 -21 -18 -13 -6 1 7 11 14 17 19 19 19 17 16 15 14 13 11 9 11 18 24 10 4 1 -2 -4 -5 -7 -9 -10 -11 -13 -15 -16 -17 -18 -19 -20 -21 -21 -20 -21 -20 -19 -21 -30 -35 -36 -35 -33 -31 -30 -29 -27 -25 -24 -20 -15 -13 -18 -21 -22 -23 -23 -22 -21 -19 -17 -16 -15 -15 -15 -17 -19 -21 -23 -25 -21 -11 2 5 7 4 -6 -22 -24 -20 -18 -15 -16 -22 -25 -25 -23 -21 -19 -17 -17 -17 -18 -19 -17 -13 -11 -13 -19 -21 -20 -17 -15 -13 -13 -16 -21 -20 -13 -11 -12 -17 -22 -27 -28 -25 -24 -28 -33 -34 -35 -36 -38 -37 -35 -34 -32 -30 -26 -20 -16 -14 -16 -17 -17 -18 -18 -17 -11 -3 4 7 5 1 -2 -4 -5 -5 -4 -3 -1 -0 1 3 3 2 -1 -2 -5 -10 -14 -18 -18 -16 -15 -13 -12 -11 -11 -9 -6 -5 -7 -9 -8 -6 -4 -6 -8 -10 -11 -11 -12 -14 -18 -22 -25 -27 -27 -28 -30 -30 -30 -31 -29 -26 -22 -19 -17 -16 -17 -21 -26 -26 -23 -20 -21 -25 -29 -32 -34 -37 -40 -44 -48 -52 -56 -58 -59 -58 -58 -58 -59 -60 -61 -60 -57 -53 -48 -45 -43 -43 -43 -43 -43 -42 -42 -41 -40 -38 -36 -36 -37 -38 -39 -40 -42 -44 -45 -44 -42 -38 -35 -33 -32 -32 -33 -36 -39 -42 -45 -46 -47 -49 -52 -56 -60 -64 -67 -69 -72 -75 -80 -83 -82 -78 -72 -67 -63 -59 -56 -51 -50 -48 -46 -43 -38 -32 -29 -28 -27 -28 -28 -29 -30 -31 -31 -31 -32 -33 -33 -33 -33 -35 -37 -40 -42 -42 -42 -42 -43 -43 -43 -42 -37 -30 -30 -32 -38 -45 -52 -56 -58 -60 -63 -65 -64 -64 -67 -71 -76 -80 -81 -80 -80 -82 -85 -84 -82 -81 -83 -89 -95 -98 -99 -99 -98 -100 -101 -101 -102 -101 -100 -99 -98 -97 -96 -91 -81 -70 -62 -60 -64 -66 -65 -64 -60 -57 -53 -50 -48 -45 -43 -40 -38 -36 -34 -32 -31 -29 -28 -28 -28 -28 -28 -28 -27 -25 -23 -21 -19 -18 -18 -18 -18 -19 -21 -22 -23 -23 -22 -21 -21 -21 -21 -20 -15 -8 0 6 9 12 15 17 18 19 19 19 18 17 17 15 13 16 25 26 10 -0 -5 -6 -7 -9 -10 -11 -12 -13 -15 -16 -17 -17 -18 -20 -21 -22 -21 -20 -21 -18 -15 -17 -30 -36 -38 -38 -37 -35 -34 -32 -30 -29 -28 -26 -24 -23 -23 -24 -25 -25 -25 -25 -25 -23 -21 -19 -19 -20 -21 -22 -23 -20 -21 -23 -17 -3 7 9 11 8 -2 -22 -25 -19 -18 -17 -18 -24 -27 -26 -24 -21 -19 -17 -16 -17 -17 -18 -16 -15 -16 -20 -23 -23 -22 -20 -20 -20 -21 -24 -27 -26 -24 -22 -20 -21 -25 -31 -32 -31 -29 -31 -34 -35 -34 -34 -34 -32 -29 -27 -24 -18 -8 -1 1 -3 -8 -10 -10 -9 -7 -3 1 3 3 2 -2 -4 -6 -8 -9 -8 -5 -2 -0 0 2 2 0 -2 -4 -6 -9 -12 -15 -15 -15 -13 -12 -11 -11 -12 -13 -11 -8 -6 -9 -12 -11 -8 -6 -8 -11 -13 -14 -15 -18 -21 -24 -27 -30 -31 -32 -32 -32 -31 -30 -27 -24 -21 -20 -20 -18 -18 -20 -24 -27 -25 -22 -21 -23 -28 -31 -34 -37 -40 -42 -46 -50 -54 -56 -55 -54 -54 -55 -58 -61 -61 -61 -59 -55 -51 -46 -43 -42 -42 -42 -42 -42 -41 -41 -40 -39 -37 -36 -36 -37 -38 -39 -41 -44 -46 -47 -46 -43 -40 -36 -34 -32 -32 -33 -36 -39 -42 -45 -45 -44 -46 -50 -55 -60 -64 -67 -69 -71 -75 -80 -83 -83 -79 -73 -67 -62 -58 -53 -49 -49 -48 -47 -43 -38 -33 -30 -28 -27 -26 -26 -27 -27 -28 -29 -30 -31 -32 -32 -32 -32 -34 -36 -38 -40 -40 -40 -41 -42 -43 -43 -43 -39 -33 -33 -34 -38 -44 -52 -56 -57 -59 -62 -64 -64 -65 -68 -72 -77 -81 -82 -82 -82 -85 -89 -87 -85 -84 -87 -92 -96 -98 -98 -99 -100 -102 -103 -103 -102 -101 -99 -98 -97 -95 -94 -90 -80 -70 -64 -64 -64 -65 -64 -61 -57 -53 -50 -47 -45 -43 -40 -37 -35 -33 -32 -31 -30 -29 -29 -28 -28 -28 -28 -28 -27 -26 -24 -22 -20 -18 -17 -17 -17 -19 -21 -22 -23 -23 -21 -20 -20 -21 -21 -21 -15 -5 4 7 9 11 13 15 17 19 20 20 19 18 17 16 14 14 20 17 5 -4 -9 -10 -11 -12 -13 -14 -14 -16 -16 -17 -17 -18 -20 -21 -22 -22 -20 -19 -22 -19 -15 -17 -31 -38 -41 -41 -40 -38 -36 -35 -34 -33 -32 -30 -29 -29 -28 -28 -28 -28 -28 -27 -27 -26 -24 -22 -22 -23 -25 -26 -23 -13 -13 -17 -13 2 7 9 11 10 1 -21 -26 -18 -19 -18 -20 -25 -27 -27 -26 -24 -22 -20 -18 -18 -18 -17 -18 -21 -25 -29 -30 -29 -29 -27 -26 -25 -26 -26 -25 -25 -26 -27 -28 -28 -29 -32 -33 -33 -33 -33 -34 -33 -29 -25 -21 -17 -14 -10 -5 1 8 9 7 3 1 -1 -2 -1 0 0 -3 -5 -7 -8 -10 -12 -13 -13 -11 -8 -4 -2 -2 -2 0 -1 -3 -5 -7 -10 -12 -11 -10 -10 -10 -10 -10 -10 -11 -14 -14 -11 -8 -9 -12 -14 -13 -11 -9 -10 -13 -16 -20 -23 -26 -29 -31 -32 -34 -35 -34 -33 -32 -30 -27 -24 -21 -20 -21 -21 -20 -20 -22 -25 -25 -22 -21 -22 -25 -30 -32 -35 -38 -41 -43 -47 -49 -50 -49 -48 -51 -54 -58 -60 -61 -61 -60 -58 -55 -50 -45 -42 -41 -41 -41 -41 -40 -40 -39 -38 -37 -36 -36 -36 -36 -37 -39 -42 -46 -48 -48 -47 -44 -41 -37 -34 -33 -32 -33 -36 -39 -43 -45 -45 -43 -45 -50 -55 -61 -65 -67 -69 -72 -77 -82 -84 -83 -78 -71 -67 -61 -56 -51 -48 -48 -48 -46 -43 -38 -35 -32 -29 -27 -26 -25 -24 -24 -25 -26 -28 -30 -31 -31 -31 -32 -33 -34 -36 -37 -38 -39 -40 -43 -44 -44 -45 -43 -39 -37 -39 -41 -46 -54 -57 -57 -59 -62 -64 -66 -67 -70 -74 -78 -82 -83 -82 -83 -87 -91 -89 -87 -86 -90 -94 -98 -99 -99 -101 -103 -104 -104 -103 -102 -100 -99 -97 -96 -94 -93 -88 -80 -72 -67 -67 -66 -64 -62 -59 -55 -51 -47 -44 -42 -40 -37 -35 -33 -31 -30 -30 -30 -30 -30 -29 -29 -29 -28 -28 -27 -26 -25 -23 -21 -19 -17 -16 -17 -18 -21 -22 -23 -23 -21 -20 -20 -20 -21 -20 -10 2 9 6 7 9 11 13 14 17 19 19 19 17 16 14 11 9 9 5 -3 -9 -14 -15 -15 -16 -17 -16 -16 -17 -17 -17 -17 -19 -21 -23 -24 -23 -23 -24 -26 -25 -21 -23 -34 -40 -42 -43 -42 -40 -38 -37 -37 -36 -35 -34 -33 -33 -33 -32 -32 -32 -31 -30 -29 -28 -27 -26 -25 -27 -28 -26 -17 -5 -3 -8 -9 2 5 8 10 10 5 -17 -26 -20 -21 -21 -22 -24 -25 -26 -26 -28 -27 -25 -23 -20 -17 -17 -22 -27 -32 -33 -33 -31 -31 -31 -30 -26 -21 -16 -15 -18 -25 -29 -31 -32 -33 -33 -31 -30 -31 -33 -34 -28 -19 -9 -4 -1 2 5 8 11 11 7 3 -1 -3 -4 -4 -4 -5 -10 -14 -16 -17 -18 -19 -20 -19 -17 -12 -7 -5 -5 -5 -2 -1 -3 -4 -5 -8 -11 -11 -8 -6 -5 -6 -8 -8 -9 -10 -12 -12 -10 -10 -11 -14 -16 -15 -14 -14 -15 -17 -21 -26 -31 -34 -34 -34 -34 -35 -35 -33 -32 -30 -29 -25 -22 -20 -20 -22 -22 -22 -22 -23 -24 -22 -20 -20 -24 -28 -31 -33 -34 -36 -39 -42 -45 -46 -46 -46 -49 -53 -57 -59 -60 -60 -60 -60 -58 -54 -49 -44 -41 -40 -40 -40 -39 -38 -37 -37 -36 -35 -35 -35 -35 -35 -37 -39 -42 -45 -47 -47 -46 -44 -41 -38 -35 -34 -34 -35 -37 -40 -44 -46 -47 -46 -47 -51 -55 -62 -65 -67 -70 -74 -78 -82 -82 -79 -74 -70 -66 -59 -53 -48 -46 -46 -46 -44 -42 -39 -37 -34 -32 -29 -27 -24 -22 -22 -22 -24 -26 -28 -29 -30 -30 -31 -32 -33 -35 -35 -36 -38 -40 -43 -44 -44 -45 -46 -46 -44 -46 -48 -51 -56 -58 -59 -61 -63 -65 -67 -69 -72 -75 -79 -81 -82 -82 -84 -88 -92 -90 -88 -88 -93 -96 -99 -100 -100 -103 -104 -105 -105 -103 -102 -100 -98 -97 -95 -94 -91 -86 -80 -75 -70 -69 -67 -64 -60 -57 -53 -49 -45 -42 -40 -38 -35 -33 -31 -31 -30 -30 -30 -30 -30 -30 -30 -29 -29 -28 -27 -26 -24 -23 -21 -19 -17 -16 -16 -18 -21 -22 -23 -23 -22 -21 -21 -21 -20 -15 -5 4 8 3 4 6 7 9 11 14 16 17 16 15 13 10 7 2 -1 -5 -10 -15 -18 -19 -20 -20 -20 -18 -17 -17 -17 -17 -19 -22 -24 -25 -26 -27 -28 -30 -32 -32 -31 -34 -39 -42 -44 -44 -43 -42 -41 -40 -39 -38 -37 -37 -36 -35 -35 -35 -35 -35 -33 -32 -31 -30 -29 -29 -28 -29 -30 -26 -12 -4 -2 -3 -3 0 3 6 8 10 8 -9 -20 -24 -26 -26 -23 -23 -22 -22 -23 -25 -28 -32 -32 -27 -19 -18 -23 -27 -29 -27 -25 -25 -27 -29 -26 -17 -12 -11 -16 -23 -26 -25 -23 -24 -27 -25 -21 -21 -25 -30 -30 -19 -5 6 7 9 11 12 12 10 4 -3 -9 -14 -15 -16 -16 -17 -19 -24 -25 -24 -23 -23 -25 -23 -20 -15 -11 -8 -8 -7 -5 -2 -2 -3 -3 -5 -8 -10 -8 -5 -4 -5 -6 -8 -8 -7 -7 -9 -9 -10 -11 -13 -15 -17 -18 -19 -22 -23 -24 -27 -32 -37 -37 -35 -34 -33 -33 -32 -30 -30 -30 -29 -25 -22 -20 -21 -22 -23 -23 -24 -24 -22 -20 -19 -22 -26 -30 -31 -32 -33 -36 -39 -43 -44 -44 -44 -46 -52 -56 -59 -59 -59 -59 -60 -59 -57 -53 -48 -43 -39 -38 -39 -38 -37 -37 -36 -36 -36 -35 -35 -34 -34 -35 -37 -39 -41 -44 -45 -46 -46 -44 -41 -38 -37 -37 -37 -37 -39 -42 -45 -48 -50 -50 -50 -51 -55 -62 -65 -68 -71 -74 -78 -79 -77 -73 -70 -68 -63 -56 -49 -45 -45 -45 -45 -43 -42 -40 -39 -37 -35 -33 -29 -25 -22 -20 -21 -22 -23 -25 -27 -29 -30 -31 -31 -32 -33 -34 -36 -38 -41 -42 -40 -40 -43 -47 -50 -51 -52 -54 -56 -58 -59 -61 -62 -64 -66 -68 -71 -73 -76 -79 -80 -79 -81 -84 -88 -92 -91 -89 -90 -95 -98 -100 -102 -102 -104 -105 -106 -105 -104 -102 -100 -98 -97 -95 -93 -90 -86 -81 -77 -73 -70 -66 -63 -59 -55 -51 -47 -44 -41 -39 -36 -34 -32 -31 -30 -30 -30 -30 -30 -30 -30 -30 -30 -29 -28 -26 -25 -24 -22 -21 -19 -18 -17 -17 -19 -21 -23 -24 -23 -23 -22 -23 -22 -20 -10 -3 0 1 -3 -1 1 3 4 6 9 11 13 13 11 8 5 1 -4 -8 -13 -17 -19 -21 -22 -22 -22 -22 -20 -18 -16 -17 -19 -22 -25 -27 -28 -29 -31 -33 -34 -36 -37 -38 -41 -44 -45 -46 -45 -45 -43 -42 -41 -39 -38 -37 -36 -36 -34 -33 -33 -33 -33 -32 -31 -31 -31 -31 -30 -31 -32 -32 -29 -16 -8 -4 -4 -5 -3 0 3 6 9 9 2 -9 -23 -26 -28 -28 -26 -25 -23 -21 -22 -26 -32 -35 -33 -27 -22 -23 -24 -24 -22 -21 -25 -28 -27 -20 -11 -11 -16 -24 -28 -23 -16 -12 -14 -21 -16 -10 -12 -20 -26 -20 -5 8 14 11 12 12 10 7 2 -5 -13 -20 -26 -29 -31 -33 -34 -35 -35 -32 -27 -25 -25 -24 -18 -13 -9 -8 -9 -10 -7 -4 -2 -3 -3 -4 -5 -6 -6 -4 -4 -6 -8 -10 -10 -8 -5 -3 -5 -7 -9 -11 -13 -16 -18 -21 -26 -30 -32 -31 -33 -37 -39 -36 -33 -31 -31 -31 -30 -29 -29 -30 -30 -26 -22 -21 -21 -22 -23 -24 -24 -23 -21 -19 -21 -25 -29 -31 -30 -31 -34 -38 -42 -43 -43 -43 -45 -49 -55 -59 -61 -60 -59 -60 -60 -59 -56 -51 -46 -41 -38 -37 -37 -37 -37 -36 -36 -36 -36 -35 -34 -33 -33 -35 -37 -39 -41 -43 -45 -45 -45 -43 -41 -39 -39 -39 -40 -40 -41 -44 -46 -48 -49 -51 -50 -51 -55 -62 -66 -69 -71 -73 -75 -74 -71 -68 -68 -65 -59 -52 -47 -44 -44 -45 -44 -43 -43 -42 -41 -40 -39 -36 -32 -28 -24 -21 -20 -20 -22 -23 -25 -27 -29 -30 -31 -32 -33 -34 -36 -39 -41 -40 -36 -36 -40 -47 -52 -54 -57 -59 -60 -60 -60 -61 -63 -65 -67 -69 -72 -74 -77 -80 -78 -78 -80 -84 -89 -92 -91 -90 -92 -96 -100 -102 -103 -104 -105 -106 -106 -106 -105 -103 -100 -98 -96 -94 -92 -89 -85 -81 -77 -73 -69 -65 -61 -58 -53 -49 -45 -42 -40 -37 -35 -33 -31 -31 -31 -30 -30 -30 -30 -30 -30 -30 -29 -29 -28 -26 -24 -22 -21 -20 -19 -18 -18 -18 -20 -23 -24 -24 -24 -24 -24 -25 -24 -21 -8 -5 -7 -8 -8 -6 -4 -2 -1 1 3 5 6 6 4 1 -3 -7 -10 -14 -18 -21 -22 -23 -23 -23 -23 -22 -21 -19 -19 -21 -24 -27 -29 -31 -32 -33 -34 -36 -37 -39 -40 -43 -45 -47 -48 -48 -47 -46 -44 -43 -40 -37 -34 -33 -32 -31 -29 -28 -27 -26 -25 -23 -23 -26 -30 -30 -31 -32 -33 -34 -33 -25 -16 -10 -8 -12 -6 -2 1 3 6 8 8 4 -17 -23 -27 -30 -31 -30 -28 -26 -27 -29 -31 -35 -36 -35 -32 -31 -29 -27 -24 -23 -27 -28 -24 -15 -8 -13 -21 -27 -24 -15 -8 -6 -11 -18 -9 -3 -7 -15 -17 -5 9 15 13 8 7 4 0 -4 -7 -13 -21 -29 -36 -40 -44 -46 -47 -45 -41 -33 -28 -26 -23 -16 -7 -3 -3 -7 -11 -11 -8 -6 -6 -6 -6 -6 -5 -5 -2 -2 -6 -9 -12 -13 -11 -7 -3 -1 -3 -6 -9 -12 -14 -16 -20 -26 -31 -35 -35 -36 -36 -36 -34 -30 -29 -30 -32 -31 -29 -30 -31 -32 -31 -27 -24 -22 -21 -23 -24 -24 -24 -22 -19 -19 -23 -28 -30 -30 -29 -32 -37 -42 -45 -43 -42 -44 -48 -53 -58 -61 -62 -61 -60 -61 -60 -58 -54 -50 -45 -40 -37 -36 -36 -37 -37 -38 -38 -37 -36 -35 -34 -34 -34 -35 -37 -39 -42 -44 -45 -45 -45 -44 -42 -42 -42 -43 -44 -44 -45 -46 -46 -47 -48 -51 -54 -56 -59 -63 -66 -68 -70 -71 -71 -68 -67 -66 -66 -62 -56 -50 -46 -45 -45 -45 -45 -44 -44 -44 -43 -42 -41 -39 -36 -32 -28 -25 -22 -21 -21 -22 -24 -26 -28 -29 -30 -31 -32 -34 -37 -39 -40 -39 -36 -37 -41 -48 -53 -56 -59 -60 -61 -61 -61 -62 -63 -65 -67 -70 -72 -75 -78 -80 -80 -81 -83 -85 -89 -92 -91 -91 -95 -99 -101 -103 -104 -105 -105 -106 -107 -107 -105 -103 -100 -97 -95 -93 -90 -87 -83 -79 -75 -71 -67 -64 -60 -56 -52 -48 -45 -42 -39 -37 -34 -33 -32 -32 -31 -31 -31 -31 -31 -31 -30 -29 -29 -28 -27 -25 -23 -21 -20 -19 -19 -18 -19 -20 -22 -24 -25 -25 -25 -26 -27 -27 -27 -22 -12 -10 -13 -13 -13 -11 -9 -8 -6 -5 -3 -2 -2 -2 -5 -8 -12 -14 -16 -19 -21 -22 -23 -23 -23 -23 -23 -22 -21 -21 -23 -26 -30 -33 -34 -35 -35 -36 -37 -39 -40 -42 -44 -47 -49 -49 -49 -49 -48 -47 -44 -41 -38 -31 -28 -27 -26 -25 -24 -23 -22 -21 -19 -17 -15 -17 -22 -22 -29 -32 -34 -35 -36 -32 -25 -19 -15 -20 -11 -5 -1 1 3 5 8 10 -16 -21 -25 -28 -29 -29 -29 -29 -30 -31 -31 -33 -35 -36 -35 -35 -35 -33 -31 -30 -31 -30 -24 -14 -9 -15 -22 -22 -13 -4 -2 -6 -13 -17 -5 0 -3 -8 -1 12 15 12 5 -2 -9 -15 -17 -17 -17 -25 -34 -42 -47 -49 -52 -52 -50 -46 -38 -30 -27 -25 -18 -7 -2 -3 -8 -14 -17 -14 -11 -10 -9 -10 -10 -9 -7 -5 -4 -6 -9 -11 -11 -11 -9 -5 -3 -2 -5 -8 -10 -11 -13 -17 -23 -29 -32 -30 -28 -29 -29 -27 -25 -26 -29 -32 -33 -33 -32 -31 -32 -33 -32 -29 -25 -23 -22 -24 -25 -25 -23 -20 -18 -21 -26 -29 -29 -29 -31 -37 -41 -44 -43 -41 -43 -47 -53 -58 -61 -62 -62 -61 -61 -60 -58 -55 -52 -48 -44 -40 -37 -37 -37 -38 -39 -40 -41 -39 -38 -37 -36 -36 -35 -36 -37 -40 -42 -44 -45 -45 -45 -44 -44 -45 -47 -48 -49 -49 -49 -47 -46 -45 -47 -50 -53 -57 -60 -62 -65 -67 -68 -68 -67 -65 -65 -64 -63 -58 -53 -49 -46 -46 -46 -46 -45 -46 -46 -45 -45 -44 -43 -42 -39 -36 -32 -28 -25 -23 -22 -22 -24 -26 -27 -29 -30 -30 -32 -35 -37 -39 -39 -40 -40 -42 -46 -51 -55 -58 -60 -61 -61 -61 -61 -62 -64 -66 -68 -71 -73 -76 -79 -82 -83 -85 -87 -89 -91 -93 -93 -94 -98 -101 -103 -104 -105 -105 -106 -106 -107 -106 -105 -102 -99 -96 -93 -91 -88 -85 -81 -77 -73 -69 -66 -62 -59 -54 -51 -47 -44 -41 -39 -37 -35 -34 -33 -33 -32 -32 -31 -31 -31 -31 -30 -29 -28 -28 -27 -25 -23 -21 -19 -18 -18 -18 -19 -21 -23 -24 -25 -25 -26 -28 -29 -29 -29 -25 -19 -17 -17 -17 -17 -16 -14 -12 -11 -9 -8 -7 -8 -9 -12 -14 -16 -18 -19 -21 -22 -23 -23 -23 -23 -23 -23 -23 -23 -25 -28 -31 -35 -37 -38 -38 -39 -40 -42 -43 -45 -47 -49 -51 -51 -51 -51 -51 -49 -47 -43 -37 -34 -26 -24 -24 -23 -23 -22 -22 -21 -21 -21 -19 -17 -16 -15 -14 -21 -28 -33 -36 -36 -33 -30 -27 -23 -25 -16 -8 -2 1 2 4 6 9 -15 -20 -22 -23 -23 -24 -26 -28 -28 -26 -26 -30 -32 -32 -33 -36 -36 -35 -35 -35 -34 -31 -25 -16 -11 -15 -17 -14 -5 2 -0 -8 -15 -14 -1 3 3 5 16 20 11 -1 -12 -21 -27 -32 -34 -36 -40 -46 -51 -54 -57 -58 -56 -51 -44 -37 -27 -23 -22 -20 -16 -12 -14 -17 -20 -23 -21 -15 -11 -10 -10 -12 -14 -14 -13 -11 -10 -11 -11 -11 -9 -5 -4 -5 -6 -9 -11 -12 -13 -14 -16 -21 -28 -31 -29 -24 -23 -26 -26 -25 -25 -28 -32 -34 -34 -34 -33 -33 -34 -34 -33 -29 -25 -23 -23 -25 -26 -24 -21 -19 -19 -23 -27 -28 -29 -31 -36 -41 -43 -43 -41 -42 -47 -53 -58 -62 -62 -62 -61 -61 -61 -59 -56 -53 -51 -48 -44 -41 -38 -38 -39 -40 -42 -43 -43 -42 -40 -39 -39 -38 -38 -38 -39 -40 -42 -44 -44 -44 -45 -45 -46 -48 -50 -52 -53 -54 -51 -48 -45 -44 -47 -50 -53 -56 -59 -62 -65 -66 -66 -65 -65 -64 -62 -61 -59 -57 -53 -50 -47 -47 -47 -47 -47 -47 -47 -47 -46 -45 -45 -44 -42 -39 -35 -32 -29 -26 -24 -24 -25 -26 -28 -28 -29 -30 -32 -35 -37 -38 -39 -40 -43 -47 -50 -53 -56 -59 -61 -61 -62 -62 -62 -63 -64 -66 -69 -72 -75 -78 -81 -84 -86 -89 -91 -92 -93 -94 -94 -96 -99 -102 -104 -105 -106 -106 -106 -106 -106 -105 -103 -100 -97 -94 -92 -89 -86 -83 -79 -74 -71 -67 -64 -61 -57 -53 -50 -47 -44 -41 -39 -37 -36 -35 -34 -34 -34 -33 -32 -32 -31 -31 -30 -29 -28 -28 -27 -25 -23 -21 -19 -18 -18 -18 -20 -21 -23 -24 -24 -24 -26 -29 -30 -31 -30 -28 -25 -23 -22 -21 -21 -20 -18 -16 -14 -13 -11 -11 -12 -13 -15 -16 -18 -18 -19 -21 -22 -23 -24 -24 -24 -24 -24 -26 -27 -30 -34 -37 -39 -40 -40 -41 -43 -45 -47 -49 -51 -53 -54 -54 -54 -53 -53 -52 -50 -46 -40 -33 -32 -28 -27 -28 -27 -26 -26 -26 -25 -26 -26 -25 -23 -20 -17 -14 -15 -20 -28 -35 -35 -29 -26 -28 -26 -25 -20 -14 -6 0 3 5 6 7 -12 -16 -19 -20 -19 -22 -24 -25 -23 -20 -23 -27 -30 -31 -33 -35 -34 -33 -34 -35 -34 -31 -25 -17 -12 -13 -13 -10 -5 -0 -2 -6 -8 -4 5 8 11 14 16 9 -3 -14 -22 -28 -32 -37 -41 -45 -48 -50 -50 -51 -53 -54 -50 -42 -32 -25 -19 -20 -22 -23 -24 -26 -28 -29 -30 -29 -22 -14 -10 -10 -12 -16 -18 -18 -17 -14 -12 -12 -12 -11 -9 -7 -6 -8 -10 -12 -12 -13 -15 -17 -21 -28 -35 -35 -29 -23 -26 -29 -28 -26 -27 -31 -34 -35 -34 -33 -34 -35 -35 -35 -32 -29 -26 -25 -25 -26 -26 -25 -22 -20 -20 -24 -27 -29 -31 -35 -40 -42 -42 -41 -42 -46 -52 -57 -61 -62 -60 -60 -61 -63 -62 -58 -55 -53 -51 -50 -46 -42 -39 -39 -41 -43 -44 -45 -45 -44 -43 -42 -41 -41 -40 -40 -40 -41 -42 -42 -43 -43 -44 -45 -47 -50 -53 -55 -56 -56 -53 -49 -46 -45 -47 -50 -53 -57 -60 -63 -65 -65 -63 -62 -62 -62 -61 -61 -60 -57 -54 -51 -48 -48 -48 -48 -48 -48 -48 -47 -47 -46 -46 -45 -43 -40 -38 -36 -33 -30 -27 -26 -26 -27 -28 -29 -30 -30 -32 -34 -36 -37 -39 -41 -45 -49 -52 -55 -58 -60 -61 -62 -62 -63 -63 -63 -65 -67 -70 -73 -76 -79 -82 -85 -88 -90 -92 -92 -93 -94 -96 -98 -100 -102 -104 -105 -106 -107 -107 -106 -105 -104 -101 -98 -95 -93 -91 -88 -85 -81 -76 -72 -69 -66 -62 -58 -55 -52 -49 -47 -44 -41 -39 -38 -36 -36 -35 -35 -35 -34 -33 -32 -31 -30 -29 -28 -28 -28 -27 -25 -23 -21 -19 -18 -18 -19 -21 -22 -23 -23 -23 -24 -26 -29 -31 -32 -31 -29 -28 -26 -26 -25 -25 -24 -23 -21 -18 -16 -14 -14 -14 -15 -15 -16 -17 -18 -19 -21 -22 -24 -25 -25 -25 -26 -28 -30 -33 -37 -39 -42 -43 -43 -44 -45 -46 -49 -52 -54 -56 -57 -58 -57 -56 -54 -54 -54 -52 -45 -38 -33 -33 -33 -33 -32 -31 -31 -31 -30 -30 -30 -30 -29 -28 -25 -22 -19 -17 -17 -21 -29 -31 -23 -18 -21 -20 -19 -20 -19 -13 -5 2 6 7 8 -11 -14 -17 -18 -19 -22 -24 -23 -22 -22 -25 -29 -32 -36 -39 -36 -33 -33 -35 -36 -34 -28 -21 -17 -20 -23 -23 -21 -18 -13 -8 -5 -3 -5 -6 -3 1 4 5 2 -5 -11 -15 -18 -21 -27 -32 -35 -36 -35 -37 -41 -45 -48 -43 -32 -23 -18 -18 -23 -28 -31 -33 -34 -35 -36 -34 -27 -16 -11 -10 -12 -14 -16 -17 -18 -17 -15 -13 -13 -13 -13 -12 -12 -13 -16 -17 -17 -16 -18 -20 -25 -30 -38 -41 -38 -32 -27 -30 -32 -31 -29 -30 -34 -36 -36 -33 -33 -35 -37 -37 -35 -32 -30 -29 -28 -29 -29 -29 -28 -26 -24 -23 -26 -28 -31 -34 -38 -41 -42 -42 -43 -46 -52 -57 -59 -60 -60 -59 -61 -64 -66 -65 -59 -54 -51 -51 -50 -47 -43 -40 -40 -43 -44 -46 -46 -47 -47 -46 -46 -45 -44 -43 -42 -41 -41 -41 -41 -41 -42 -43 -45 -48 -51 -54 -57 -57 -57 -55 -51 -48 -47 -48 -51 -55 -59 -62 -64 -64 -62 -60 -59 -60 -61 -62 -62 -60 -56 -53 -51 -49 -49 -49 -49 -49 -49 -49 -48 -48 -48 -47 -45 -43 -41 -40 -38 -36 -34 -31 -30 -29 -29 -29 -30 -31 -32 -33 -34 -35 -37 -39 -43 -47 -50 -54 -57 -59 -61 -62 -63 -64 -64 -63 -64 -65 -68 -71 -75 -78 -81 -84 -86 -88 -90 -91 -91 -92 -93 -96 -98 -101 -103 -104 -106 -107 -107 -106 -105 -103 -101 -99 -96 -93 -91 -89 -87 -83 -79 -74 -71 -67 -64 -60 -56 -52 -50 -48 -46 -43 -41 -39 -38 -37 -37 -37 -37 -36 -36 -34 -33 -32 -30 -29 -28 -28 -27 -26 -25 -23 -22 -20 -20 -20 -21 -22 -22 -22 -22 -23 -24 -26 -28 -30 -31 -31 -31 -30 -29 -28 -28 -28 -28 -27 -25 -22 -19 -17 -16 -16 -15 -15 -15 -16 -18 -19 -21 -24 -26 -27 -28 -29 -32 -34 -37 -40 -43 -45 -46 -47 -47 -48 -49 -51 -53 -56 -58 -59 -59 -59 -56 -54 -53 -55 -55 -53 -46 -38 -35 -37 -37 -37 -36 -35 -34 -34 -34 -33 -33 -33 -32 -30 -28 -26 -24 -22 -20 -20 -23 -25 -20 -13 -12 -11 -12 -16 -20 -21 -13 -4 2 4 9 -14 -16 -18 -18 -17 -20 -22 -23 -24 -27 -31 -34 -37 -40 -40 -35 -31 -29 -30 -28 -24 -19 -15 -15 -22 -29 -29 -27 -26 -26 -20 -14 -9 -9 -11 -13 -14 -14 -10 -5 -8 -13 -17 -17 -16 -18 -21 -23 -24 -26 -31 -37 -43 -47 -43 -34 -26 -22 -24 -30 -33 -34 -34 -35 -35 -33 -27 -19 -10 -8 -9 -11 -12 -13 -13 -14 -15 -14 -14 -14 -16 -17 -18 -19 -22 -24 -25 -24 -24 -26 -30 -35 -40 -44 -43 -39 -34 -30 -30 -33 -33 -33 -34 -37 -37 -35 -33 -34 -36 -38 -37 -35 -34 -34 -34 -34 -35 -35 -35 -34 -32 -29 -28 -29 -32 -35 -38 -41 -41 -42 -44 -47 -52 -57 -59 -60 -60 -60 -60 -63 -66 -67 -64 -58 -53 -51 -52 -53 -49 -45 -42 -42 -44 -46 -48 -50 -51 -51 -51 -50 -48 -47 -46 -44 -43 -41 -39 -39 -40 -41 -43 -46 -50 -53 -56 -57 -58 -58 -56 -53 -50 -49 -50 -53 -57 -62 -64 -64 -62 -59 -57 -58 -61 -62 -62 -61 -59 -56 -53 -51 -50 -50 -50 -50 -50 -50 -50 -50 -50 -49 -48 -46 -44 -43 -41 -40 -39 -37 -35 -34 -32 -31 -31 -32 -33 -34 -34 -35 -36 -38 -41 -45 -48 -52 -55 -58 -60 -62 -64 -65 -65 -65 -64 -65 -67 -70 -73 -76 -79 -81 -84 -86 -88 -89 -89 -89 -90 -92 -95 -98 -101 -103 -105 -106 -107 -107 -106 -104 -101 -98 -95 -93 -91 -89 -88 -85 -81 -77 -73 -69 -66 -61 -57 -53 -50 -48 -47 -45 -43 -40 -39 -38 -38 -38 -38 -38 -38 -37 -35 -34 -32 -31 -30 -29 -28 -27 -26 -24 -23 -22 -21 -21 -22 -23 -23 -23 -22 -22 -23 -24 -26 -28 -29 -30 -30 -31 -31 -30 -30 -30 -30 -31 -31 -29 -26 -23 -21 -19 -17 -15 -14 -15 -17 -19 -22 -24 -27 -30 -31 -33 -36 -39 -42 -44 -46 -48 -49 -50 -51 -51 -52 -53 -54 -56 -58 -59 -60 -60 -57 -50 -45 -45 -52 -55 -54 -49 -40 -39 -39 -40 -40 -40 -39 -38 -37 -37 -36 -36 -35 -33 -31 -28 -27 -26 -25 -24 -21 -21 -19 -16 -12 -10 -11 -14 -17 -20 -25 -21 -13 -7 -4 5 -21 -20 -18 -16 -14 -16 -21 -25 -28 -31 -36 -39 -40 -39 -38 -33 -26 -22 -20 -20 -21 -20 -16 -13 -14 -22 -26 -27 -28 -26 -22 -20 -18 -15 -11 -15 -21 -24 -23 -17 -16 -20 -25 -25 -21 -21 -20 -19 -19 -26 -34 -40 -45 -50 -49 -43 -36 -31 -31 -33 -32 -30 -29 -29 -28 -24 -18 -11 -7 -7 -7 -8 -8 -9 -10 -12 -14 -15 -16 -17 -20 -22 -24 -26 -28 -29 -30 -31 -32 -34 -38 -41 -43 -44 -41 -38 -35 -31 -29 -31 -34 -35 -36 -38 -37 -35 -34 -36 -38 -39 -38 -37 -38 -40 -41 -42 -43 -44 -44 -41 -39 -37 -34 -34 -36 -39 -42 -43 -43 -45 -48 -53 -58 -61 -61 -60 -60 -60 -61 -64 -66 -66 -61 -55 -52 -52 -54 -55 -51 -46 -44 -44 -47 -49 -51 -54 -55 -56 -55 -53 -52 -50 -49 -48 -46 -43 -41 -39 -40 -41 -44 -48 -52 -55 -56 -57 -57 -59 -57 -55 -53 -52 -53 -55 -59 -63 -64 -62 -59 -57 -57 -60 -63 -64 -62 -59 -58 -55 -53 -52 -51 -51 -51 -51 -52 -52 -52 -52 -52 -51 -49 -47 -46 -45 -44 -43 -42 -41 -39 -37 -36 -34 -34 -34 -35 -35 -36 -37 -39 -41 -43 -47 -50 -54 -57 -59 -61 -63 -64 -65 -66 -66 -66 -67 -69 -71 -74 -77 -79 -81 -84 -86 -87 -87 -87 -88 -89 -91 -94 -98 -101 -103 -105 -106 -106 -106 -105 -102 -99 -96 -93 -90 -88 -87 -86 -84 -80 -76 -72 -69 -64 -60 -55 -51 -47 -46 -45 -44 -42 -40 -39 -38 -39 -39 -40 -39 -38 -37 -36 -34 -33 -32 -31 -29 -28 -27 -25 -24 -23 -23 -22 -22 -23 -24 -24 -24 -23 -23 -24 -25 -27 -28 -28 -29 -30 -30 -31 -31 -31 -32 -32 -33 -33 -32 -29 -27 -25 -23 -20 -18 -17 -18 -21 -25 -28 -30 -33 -36 -38 -40 -43 -45 -48 -50 -51 -52 -53 -53 -54 -55 -55 -56 -57 -58 -59 -60 -60 -60 -57 -46 -36 -35 -43 -47 -51 -50 -42 -40 -41 -42 -42 -43 -42 -40 -39 -40 -39 -38 -36 -34 -31 -28 -26 -26 -26 -25 -21 -19 -16 -14 -12 -12 -15 -21 -25 -25 -26 -24 -21 -16 -13 -4 -28 -23 -17 -12 -12 -15 -19 -25 -30 -36 -40 -40 -38 -35 -31 -28 -26 -24 -23 -20 -21 -23 -22 -19 -17 -21 -23 -24 -25 -23 -22 -24 -25 -22 -17 -18 -23 -28 -31 -31 -30 -33 -36 -37 -34 -33 -29 -24 -20 -30 -40 -46 -49 -52 -54 -52 -46 -38 -33 -31 -26 -23 -22 -22 -20 -19 -16 -13 -10 -7 -5 -5 -6 -8 -11 -14 -17 -19 -21 -23 -25 -28 -30 -30 -31 -32 -33 -35 -35 -35 -37 -38 -39 -38 -37 -36 -34 -31 -27 -30 -34 -36 -36 -37 -36 -36 -36 -38 -40 -40 -40 -41 -44 -46 -47 -49 -51 -52 -51 -49 -46 -44 -40 -39 -40 -42 -45 -47 -47 -50 -55 -60 -62 -62 -61 -60 -60 -61 -62 -63 -64 -62 -59 -55 -53 -54 -55 -55 -51 -48 -46 -47 -50 -52 -55 -58 -59 -60 -59 -57 -55 -54 -53 -52 -50 -47 -45 -43 -43 -44 -46 -49 -53 -55 -55 -55 -56 -57 -57 -56 -55 -54 -55 -57 -59 -61 -62 -59 -57 -56 -57 -62 -66 -66 -62 -59 -58 -56 -54 -52 -51 -51 -52 -53 -53 -54 -54 -54 -53 -52 -50 -49 -49 -48 -47 -47 -46 -44 -43 -41 -39 -37 -37 -36 -37 -37 -38 -40 -42 -44 -46 -49 -53 -56 -59 -61 -62 -63 -65 -66 -67 -68 -68 -69 -71 -73 -75 -77 -79 -81 -83 -84 -85 -86 -86 -87 -88 -90 -93 -97 -101 -103 -104 -105 -106 -105 -103 -101 -97 -94 -90 -87 -86 -85 -84 -83 -80 -76 -72 -68 -64 -58 -53 -49 -46 -45 -44 -43 -42 -40 -39 -39 -40 -41 -41 -40 -39 -38 -36 -35 -34 -33 -32 -31 -29 -27 -25 -24 -23 -23 -23 -23 -24 -25 -25 -25 -25 -25 -25 -27 -28 -28 -28 -29 -29 -30 -32 -32 -33 -33 -34 -35 -36 -35 -33 -31 -29 -27 -25 -24 -25 -27 -31 -34 -37 -39 -41 -43 -45 -47 -49 -51 -53 -54 -55 -56 -56 -55 -56 -56 -57 -57 -58 -58 -59 -59 -60 -61 -57 -47 -35 -32 -35 -37 -42 -48 -45 -42 -41 -42 -43 -44 -43 -41 -41 -42 -41 -40 -37 -35 -31 -28 -25 -24 -24 -23 -18 -16 -16 -17 -17 -17 -22 -27 -30 -28 -26 -25 -23 -22 -19 -14 -32 -25 -17 -12 -12 -16 -19 -23 -29 -36 -40 -39 -36 -31 -27 -27 -29 -31 -31 -29 -27 -26 -25 -24 -23 -21 -18 -16 -16 -17 -20 -22 -23 -23 -23 -23 -26 -30 -35 -40 -43 -45 -47 -48 -47 -47 -40 -31 -24 -33 -43 -49 -52 -53 -55 -54 -49 -42 -35 -26 -19 -17 -17 -19 -21 -23 -25 -23 -18 -13 -9 -8 -9 -12 -18 -23 -25 -26 -28 -30 -31 -33 -33 -33 -32 -32 -32 -31 -29 -28 -30 -33 -34 -34 -36 -36 -34 -30 -26 -29 -33 -36 -36 -36 -36 -37 -39 -41 -42 -42 -43 -45 -47 -49 -51 -53 -56 -57 -56 -55 -52 -49 -47 -44 -44 -45 -47 -50 -52 -56 -60 -63 -63 -61 -60 -60 -61 -62 -62 -62 -62 -60 -58 -57 -57 -57 -57 -56 -52 -49 -48 -49 -52 -55 -59 -61 -62 -63 -62 -60 -58 -57 -57 -55 -53 -50 -48 -48 -47 -47 -48 -51 -53 -54 -53 -53 -54 -55 -56 -57 -56 -56 -57 -57 -58 -59 -59 -57 -56 -56 -59 -64 -68 -67 -63 -59 -58 -56 -54 -52 -51 -52 -53 -54 -55 -55 -55 -55 -54 -53 -52 -51 -51 -51 -50 -50 -49 -47 -45 -44 -42 -40 -39 -39 -39 -39 -41 -43 -45 -48 -50 -53 -56 -58 -61 -62 -63 -64 -65 -67 -69 -70 -70 -71 -72 -74 -76 -77 -79 -80 -82 -83 -84 -85 -86 -86 -87 -89 -92 -96 -100 -103 -104 -105 -104 -103 -101 -99 -96 -92 -89 -86 -84 -83 -83 -82 -79 -76 -72 -69 -64 -58 -52 -48 -45 -44 -44 -43 -42 -40 -40 -40 -41 -41 -41 -40 -39 -38 -37 -36 -36 -35 -35 -33 -31 -28 -26 -24 -22 -22 -22 -23 -23 -24 -25 -26 -26 -27 -28 -29 -30 -30 -29 -29 -30 -32 -33 -34 -35 -36 -37 -38 -39 -38 -37 -35 -34 -33 -32 -32 -34 -37 -41 -44 -46 -48 -50 -50 -52 -54 -55 -56 -57 -58 -58 -58 -58 -58 -58 -58 -57 -58 -58 -58 -59 -60 -61 -62 -59 -51 -39 -35 -34 -34 -38 -44 -52 -49 -45 -42 -42 -43 -43 -41 -41 -43 -43 -41 -39 -36 -32 -27 -23 -21 -20 -20 -16 -15 -19 -24 -25 -25 -28 -30 -30 -28 -26 -25 -24 -23 -21 -19 -34 -26 -17 -13 -15 -18 -19 -23 -28 -34 -36 -34 -29 -24 -23 -26 -30 -34 -36 -36 -31 -25 -20 -19 -18 -13 -7 -4 -5 -9 -12 -13 -14 -14 -17 -22 -26 -29 -33 -39 -44 -48 -52 -54 -54 -54 -51 -44 -37 -39 -44 -49 -52 -53 -56 -55 -51 -46 -42 -35 -29 -24 -21 -20 -19 -21 -25 -28 -26 -21 -18 -17 -18 -22 -27 -31 -33 -35 -37 -37 -35 -34 -31 -28 -27 -27 -26 -23 -19 -24 -30 -33 -32 -34 -37 -38 -35 -32 -28 -28 -32 -36 -36 -35 -37 -38 -39 -40 -42 -43 -44 -45 -48 -50 -52 -55 -57 -59 -59 -57 -55 -53 -51 -50 -49 -49 -49 -52 -56 -61 -63 -64 -61 -59 -60 -61 -60 -59 -60 -61 -61 -60 -57 -59 -60 -61 -60 -57 -53 -50 -48 -49 -53 -57 -61 -64 -65 -66 -65 -64 -62 -62 -60 -58 -54 -51 -50 -49 -49 -49 -50 -52 -53 -54 -53 -52 -52 -53 -55 -56 -56 -56 -56 -55 -55 -56 -56 -55 -55 -57 -61 -66 -69 -67 -62 -59 -58 -56 -54 -53 -51 -52 -53 -55 -56 -56 -56 -55 -54 -53 -53 -53 -53 -53 -53 -52 -51 -50 -48 -46 -45 -43 -42 -42 -42 -43 -44 -46 -48 -51 -54 -56 -58 -61 -62 -63 -64 -65 -66 -68 -70 -71 -71 -72 -73 -75 -76 -77 -78 -79 -80 -81 -83 -84 -85 -86 -87 -88 -91 -95 -99 -102 -103 -103 -103 -101 -99 -97 -94 -91 -87 -85 -83 -82 -82 -81 -79 -76 -73 -69 -63 -58 -52 -48 -45 -44 -44 -43 -42 -41 -40 -40 -41 -41 -41 -40 -38 -37 -37 -37 -38 -37 -37 -36 -33 -30 -27 -25 -23 -22 -22 -22 -23 -24 -25 -26 -27 -28 -30 -31 -32 -32 -32 -32 -32 -34 -35 -37 -38 -39 -40 -41 -42 -42 -41 -40 -40 -39 -39 -39 -41 -44 -48 -51 -54 -55 -56 -57 -58 -59 -60 -61 -61 -62 -62 -61 -61 -61 -60 -60 -60 -60 -60 -60 -60 -61 -62 -63 -62 -55 -43 -39 -37 -36 -37 -42 -56 -58 -53 -46 -42 -42 -41 -41 -42 -44 -44 -42 -40 -36 -32 -26 -21 -21 -24 -24 -23 -23 -27 -33 -33 -33 -32 -32 -30 -27 -26 -26 -26 -24 -23 -21 -34 -29 -21 -17 -18 -19 -20 -23 -28 -34 -34 -29 -22 -18 -19 -24 -29 -31 -32 -29 -21 -13 -6 -2 -2 2 5 3 -2 -8 -8 -8 -8 -8 -11 -18 -21 -24 -27 -30 -32 -36 -41 -48 -53 -57 -56 -54 -51 -52 -55 -58 -59 -59 -59 -56 -51 -48 -48 -43 -36 -28 -21 -16 -15 -18 -22 -24 -24 -25 -27 -29 -32 -36 -36 -38 -40 -41 -38 -34 -31 -29 -25 -22 -22 -23 -21 -17 -18 -26 -32 -34 -33 -34 -36 -38 -37 -34 -31 -30 -32 -35 -35 -35 -37 -39 -40 -40 -42 -44 -46 -47 -48 -50 -52 -54 -56 -58 -60 -59 -57 -55 -54 -53 -52 -52 -52 -53 -56 -60 -63 -63 -61 -61 -61 -61 -59 -59 -61 -62 -61 -59 -58 -60 -63 -64 -62 -57 -52 -49 -49 -50 -53 -58 -62 -66 -68 -69 -68 -68 -67 -66 -63 -59 -56 -53 -51 -49 -49 -49 -50 -52 -53 -53 -52 -51 -50 -51 -52 -54 -55 -55 -54 -53 -53 -55 -54 -54 -56 -60 -64 -68 -68 -65 -61 -58 -58 -57 -55 -53 -51 -52 -54 -55 -57 -57 -57 -56 -55 -54 -55 -55 -55 -56 -56 -55 -54 -52 -51 -50 -48 -46 -46 -46 -46 -47 -48 -49 -52 -55 -57 -59 -61 -62 -63 -63 -64 -66 -67 -69 -71 -72 -73 -73 -73 -74 -76 -77 -78 -78 -79 -80 -81 -83 -84 -85 -86 -87 -90 -94 -98 -100 -102 -102 -101 -99 -97 -95 -92 -90 -87 -84 -83 -82 -81 -80 -78 -76 -73 -69 -64 -58 -53 -48 -45 -44 -44 -43 -42 -40 -40 -39 -40 -40 -40 -39 -38 -37 -37 -38 -39 -40 -39 -38 -36 -33 -30 -26 -24 -23 -22 -22 -23 -24 -25 -26 -27 -29 -31 -33 -33 -34 -34 -35 -36 -37 -39 -40 -41 -42 -43 -45 -46 -47 -46 -45 -45 -45 -45 -46 -48 -50 -53 -56 -58 -60 -61 -62 -63 -64 -65 -65 -65 -65 -65 -65 -65 -64 -64 -64 -63 -63 -64 -64 -63 -63 -64 -65 -64 -59 -48 -42 -39 -38 -38 -42 -57 -63 -61 -55 -46 -41 -38 -38 -40 -43 -44 -42 -40 -35 -30 -25 -22 -25 -35 -36 -35 -35 -37 -39 -38 -37 -35 -32 -31 -28 -27 -27 -26 -25 -25 -23 -33 -31 -27 -22 -19 -18 -19 -23 -30 -37 -36 -27 -19 -15 -19 -25 -28 -27 -22 -11 2 10 12 8 5 9 8 -0 -10 -12 -9 -8 -7 -9 -17 -22 -22 -21 -22 -21 -20 -22 -28 -35 -42 -50 -55 -57 -58 -60 -63 -64 -64 -63 -61 -56 -53 -51 -50 -46 -40 -34 -26 -18 -18 -22 -23 -22 -22 -28 -35 -40 -44 -45 -42 -44 -46 -45 -38 -31 -28 -26 -22 -19 -21 -21 -19 -17 -22 -31 -35 -35 -33 -32 -33 -36 -38 -36 -33 -32 -31 -32 -33 -35 -36 -38 -40 -41 -43 -45 -47 -49 -49 -50 -52 -54 -55 -57 -59 -59 -58 -56 -54 -54 -54 -53 -52 -53 -55 -57 -59 -61 -61 -61 -61 -61 -60 -61 -62 -61 -59 -58 -60 -63 -65 -64 -59 -52 -48 -48 -49 -50 -53 -58 -63 -68 -70 -70 -72 -73 -72 -68 -63 -61 -59 -56 -53 -52 -50 -49 -49 -50 -51 -51 -51 -51 -50 -50 -51 -52 -52 -52 -51 -51 -51 -54 -53 -54 -58 -63 -67 -69 -68 -64 -61 -59 -60 -58 -56 -53 -52 -53 -54 -56 -58 -57 -57 -56 -56 -56 -56 -57 -57 -58 -58 -57 -56 -55 -54 -53 -51 -50 -50 -50 -50 -50 -51 -53 -55 -57 -59 -61 -61 -62 -63 -64 -65 -67 -68 -70 -72 -73 -73 -73 -73 -74 -76 -77 -77 -77 -78 -79 -80 -82 -83 -83 -84 -85 -89 -93 -96 -98 -99 -99 -98 -97 -95 -94 -91 -89 -86 -84 -82 -81 -81 -80 -78 -76 -73 -69 -64 -58 -53 -48 -45 -45 -44 -44 -42 -40 -39 -39 -39 -39 -38 -37 -37 -37 -38 -39 -41 -42 -41 -40 -38 -35 -32 -29 -27 -25 -24 -23 -24 -24 -25 -26 -27 -30 -32 -34 -35 -36 -36 -37 -38 -40 -42 -44 -44 -45 -46 -48 -50 -50 -50 -50 -51 -51 -52 -52 -53 -54 -57 -59 -61 -63 -64 -65 -66 -66 -67 -68 -68 -68 -69 -69 -69 -68 -68 -68 -68 -68 -68 -68 -67 -67 -67 -68 -67 -64 -55 -48 -42 -40 -41 -45 -58 -65 -66 -62 -55 -43 -35 -33 -36 -39 -41 -40 -37 -32 -28 -27 -27 -32 -44 -45 -45 -44 -43 -42 -39 -37 -35 -33 -31 -29 -28 -27 -26 -25 -24 -24 -33 -33 -28 -22 -16 -14 -16 -21 -30 -39 -38 -26 -16 -13 -19 -25 -24 -15 -3 7 15 17 14 9 7 10 4 -4 -11 -9 -5 -5 -10 -18 -27 -23 -17 -15 -17 -19 -19 -21 -24 -30 -36 -45 -53 -59 -61 -61 -60 -59 -58 -57 -55 -54 -54 -53 -52 -49 -46 -41 -35 -27 -28 -31 -30 -28 -27 -36 -44 -49 -51 -51 -49 -51 -51 -47 -37 -31 -28 -26 -23 -20 -23 -23 -22 -22 -28 -34 -35 -33 -31 -29 -31 -35 -37 -35 -33 -31 -31 -32 -34 -35 -37 -38 -40 -42 -44 -46 -48 -50 -51 -51 -51 -53 -55 -58 -59 -59 -57 -55 -54 -55 -56 -56 -54 -55 -56 -57 -58 -59 -59 -59 -59 -60 -61 -62 -62 -61 -60 -60 -63 -65 -65 -62 -56 -49 -46 -46 -47 -49 -54 -60 -65 -69 -71 -74 -77 -77 -73 -66 -64 -63 -62 -59 -57 -56 -54 -51 -49 -49 -49 -49 -50 -51 -51 -50 -50 -50 -50 -49 -48 -49 -50 -52 -52 -56 -61 -67 -70 -70 -67 -64 -62 -63 -63 -61 -57 -53 -52 -53 -55 -56 -57 -57 -56 -56 -57 -57 -58 -58 -59 -59 -60 -59 -58 -58 -57 -55 -54 -54 -53 -53 -53 -53 -54 -55 -57 -58 -60 -61 -62 -62 -63 -64 -65 -67 -69 -71 -72 -73 -73 -73 -73 -74 -75 -75 -76 -76 -77 -78 -79 -80 -81 -81 -82 -84 -87 -91 -94 -96 -97 -97 -97 -96 -95 -93 -91 -88 -86 -84 -82 -81 -80 -79 -77 -75 -72 -68 -63 -58 -53 -48 -45 -45 -45 -44 -41 -39 -38 -38 -38 -38 -37 -36 -36 -36 -38 -40 -42 -43 -43 -42 -40 -37 -35 -32 -30 -28 -26 -25 -25 -25 -25 -26 -28 -31 -33 -35 -36 -37 -38 -39 -40 -43 -45 -46 -47 -47 -48 -50 -52 -54 -54 -55 -55 -56 -57 -57 -57 -58 -60 -62 -64 -66 -67 -68 -69 -69 -70 -71 -71 -72 -72 -73 -72 -72 -73 -73 -73 -73 -73 -72 -72 -71 -70 -70 -69 -68 -64 -56 -49 -44 -44 -52 -61 -65 -66 -65 -60 -47 -35 -29 -29 -33 -35 -34 -31 -26 -27 -34 -39 -41 -49 -50 -49 -48 -46 -43 -40 -38 -36 -33 -31 -29 -28 -27 -25 -25 -24 -24 -35 -33 -26 -17 -11 -10 -13 -18 -26 -35 -41 -29 -15 -8 -11 -16 -12 -2 8 16 20 18 14 10 10 9 0 -6 -7 -4 -4 -10 -19 -26 -27 -17 -11 -13 -19 -25 -27 -28 -29 -32 -37 -45 -51 -55 -55 -52 -48 -46 -46 -46 -46 -49 -53 -55 -54 -54 -52 -50 -46 -40 -40 -41 -41 -40 -39 -47 -52 -55 -54 -55 -55 -55 -53 -46 -36 -32 -31 -29 -26 -24 -25 -25 -25 -27 -32 -35 -34 -31 -28 -27 -30 -34 -35 -34 -33 -33 -34 -35 -38 -39 -40 -42 -44 -46 -47 -48 -49 -50 -50 -50 -50 -51 -55 -59 -59 -57 -55 -55 -55 -57 -59 -60 -59 -60 -61 -60 -59 -58 -58 -58 -58 -59 -61 -61 -61 -61 -61 -62 -64 -64 -63 -59 -53 -46 -44 -44 -46 -49 -54 -59 -65 -71 -74 -74 -74 -72 -70 -66 -66 -66 -66 -63 -61 -58 -54 -50 -47 -47 -47 -48 -50 -52 -53 -51 -50 -49 -48 -47 -46 -47 -49 -52 -53 -58 -65 -71 -73 -71 -68 -66 -66 -68 -66 -62 -57 -53 -52 -53 -55 -56 -56 -55 -55 -56 -57 -58 -58 -59 -60 -60 -61 -60 -60 -59 -58 -57 -57 -56 -56 -55 -56 -56 -56 -57 -58 -59 -60 -61 -61 -62 -63 -64 -65 -67 -69 -70 -71 -73 -73 -73 -73 -73 -73 -74 -75 -75 -76 -77 -77 -78 -78 -78 -80 -82 -86 -89 -92 -94 -95 -95 -95 -95 -94 -92 -90 -88 -86 -84 -82 -81 -80 -78 -76 -73 -70 -67 -62 -57 -52 -48 -45 -44 -44 -43 -40 -39 -37 -36 -36 -37 -37 -36 -36 -36 -38 -40 -42 -44 -44 -43 -41 -39 -36 -34 -33 -31 -29 -28 -27 -26 -26 -27 -29 -32 -35 -37 -38 -39 -39 -40 -42 -44 -47 -48 -49 -49 -51 -52 -54 -56 -57 -58 -59 -60 -60 -60 -60 -61 -62 -64 -67 -69 -70 -72 -72 -73 -74 -74 -75 -75 -76 -76 -76 -76 -77 -78 -78 -77 -77 -77 -76 -75 -73 -72 -71 -70 -69 -65 -58 -52 -52 -60 -64 -65 -65 -64 -62 -52 -41 -30 -25 -27 -28 -28 -26 -24 -32 -43 -51 -51 -53 -52 -51 -49 -47 -44 -41 -38 -35 -33 -31 -29 -28 -26 -25 -24 -24 -24 -37 -36 -27 -15 -8 -10 -15 -19 -24 -33 -44 -36 -20 -8 -4 -4 -1 3 9 15 17 16 14 13 13 8 0 -3 -2 -1 -5 -14 -21 -24 -21 -13 -11 -15 -24 -32 -36 -36 -34 -33 -35 -42 -46 -46 -43 -38 -33 -32 -35 -37 -40 -46 -52 -55 -55 -57 -57 -55 -53 -50 -49 -51 -52 -52 -51 -55 -58 -58 -56 -55 -54 -53 -49 -42 -35 -34 -34 -33 -30 -28 -28 -27 -27 -29 -33 -34 -33 -30 -27 -27 -31 -33 -32 -32 -35 -38 -40 -42 -44 -45 -46 -48 -50 -50 -50 -49 -48 -47 -47 -48 -49 -51 -55 -59 -58 -56 -55 -56 -57 -59 -62 -64 -65 -66 -66 -64 -62 -60 -60 -60 -60 -60 -61 -61 -60 -60 -61 -62 -63 -62 -59 -55 -48 -42 -41 -43 -45 -48 -53 -59 -65 -70 -72 -72 -70 -68 -67 -66 -68 -69 -69 -66 -61 -55 -51 -48 -47 -46 -47 -48 -51 -54 -53 -51 -49 -48 -48 -46 -45 -46 -49 -52 -54 -61 -69 -75 -76 -72 -69 -69 -70 -70 -66 -60 -55 -52 -51 -53 -55 -55 -55 -55 -55 -56 -57 -58 -59 -60 -60 -61 -61 -61 -60 -60 -59 -59 -59 -58 -57 -57 -57 -57 -57 -58 -58 -59 -60 -61 -61 -62 -62 -64 -65 -67 -68 -70 -71 -72 -73 -73 -73 -72 -72 -73 -73 -74 -74 -75 -75 -76 -76 -76 -78 -80 -84 -87 -90 -92 -93 -94 -94 -94 -93 -91 -89 -88 -86 -85 -83 -82 -80 -78 -75 -72 -69 -65 -61 -56 -51 -47 -45 -44 -44 -43 -40 -37 -36 -35 -35 -36 -36 -37 -36 -36 -38 -40 -42 -44 -44 -44 -42 -40 -38 -37 -35 -34 -32 -31 -30 -29 -28 -28 -30 -34 -36 -38 -39 -39 -40 -41 -43 -46 -48 -50 -50 -51 -52 -54 -56 -58 -60 -61 -62 -62 -63 -63 -63 -63 -65 -67 -70 -73 -74 -75 -76 -76 -77 -78 -78 -79 -79 -79 -78 -78 -79 -81 -81 -81 -81 -81 -80 -79 -77 -75 -73 -72 -72 -70 -67 -63 -62 -65 -66 -65 -64 -63 -62 -58 -51 -40 -29 -27 -28 -28 -29 -31 -41 -51 -57 -57 -56 -54 -53 -51 -48 -44 -41 -38 -35 -33 -31 -29 -27 -26 -25 -24 -24 -23 -37 -31 -22 -14 -10 -15 -21 -22 -23 -30 -43 -44 -29 -12 0 5 4 -1 -4 -1 4 9 12 13 11 5 1 -0 -1 -3 -9 -16 -21 -21 -19 -16 -17 -22 -28 -36 -41 -40 -35 -29 -27 -34 -38 -38 -34 -27 -24 -28 -33 -38 -43 -49 -53 -55 -55 -54 -54 -55 -56 -56 -53 -56 -59 -60 -58 -58 -60 -59 -56 -49 -44 -45 -43 -40 -38 -38 -37 -35 -33 -31 -30 -29 -29 -32 -34 -35 -33 -31 -29 -29 -31 -31 -31 -33 -39 -43 -46 -47 -47 -49 -52 -53 -53 -51 -47 -44 -43 -43 -45 -47 -51 -55 -57 -57 -55 -55 -56 -58 -60 -63 -65 -67 -68 -69 -68 -66 -63 -61 -62 -63 -63 -63 -62 -61 -60 -59 -59 -59 -59 -58 -55 -50 -43 -38 -38 -40 -44 -47 -53 -59 -64 -67 -68 -69 -67 -66 -66 -68 -69 -69 -68 -63 -57 -51 -48 -47 -47 -46 -47 -49 -52 -53 -53 -52 -51 -50 -47 -45 -45 -48 -50 -51 -55 -63 -72 -78 -79 -74 -71 -70 -70 -68 -62 -57 -53 -51 -51 -53 -54 -54 -54 -55 -55 -56 -57 -58 -59 -60 -61 -61 -61 -61 -61 -60 -60 -60 -59 -58 -58 -58 -58 -58 -58 -58 -58 -59 -60 -61 -61 -62 -62 -63 -65 -66 -67 -69 -71 -72 -73 -73 -72 -72 -71 -72 -72 -73 -73 -73 -74 -74 -74 -75 -77 -79 -82 -85 -88 -90 -91 -92 -92 -93 -92 -91 -89 -88 -87 -85 -84 -82 -80 -77 -74 -70 -67 -63 -59 -55 -51 -47 -44 -43 -43 -42 -39 -36 -35 -35 -35 -36 -37 -37 -37 -37 -38 -40 -42 -44 -44 -44 -43 -42 -40 -39 -37 -36 -35 -34 -33 -31 -30 -30 -32 -35 -38 -39 -39 -40 -41 -43 -45 -47 -49 -51 -51 -52 -54 -56 -58 -60 -62 -63 -63 -64 -64 -65 -66 -67 -69 -71 -74 -77 -77 -78 -79 -79 -80 -80 -81 -81 -81 -81 -80 -80 -81 -83 -84 -84 -84 -84 -84 -82 -80 -78 -76 -75 -74 -72 -70 -68 -67 -66 -65 -64 -63 -62 -61 -61 -58 -51 -39 -35 -35 -36 -38 -41 -48 -54 -57 -58 -57 -56 -54 -51 -48 -45 -41 -38 -35 -33 -31 -29 -27 -26 -25 -24 -24 -24 -32 -21 -10 -6 -10 -22 -30 -28 -24 -25 -36 -43 -33 -16 3 13 8 -3 -14 -20 -20 -11 -1 5 4 -2 -1 -2 -5 -11 -17 -22 -25 -25 -26 -26 -27 -29 -33 -38 -43 -42 -34 -24 -21 -30 -36 -35 -29 -22 -25 -32 -40 -47 -52 -54 -54 -51 -47 -45 -47 -50 -54 -56 -56 -57 -60 -63 -64 -62 -62 -60 -55 -48 -48 -49 -48 -45 -43 -43 -40 -36 -33 -33 -33 -33 -34 -36 -36 -36 -35 -34 -32 -32 -33 -34 -36 -39 -43 -45 -46 -46 -47 -49 -52 -51 -48 -43 -40 -39 -40 -43 -47 -50 -54 -56 -55 -53 -53 -55 -58 -62 -64 -67 -68 -69 -70 -71 -69 -66 -64 -63 -64 -65 -65 -64 -63 -62 -60 -58 -56 -54 -52 -52 -50 -47 -42 -38 -36 -37 -41 -46 -53 -58 -61 -63 -65 -67 -66 -65 -65 -68 -68 -67 -65 -61 -54 -49 -47 -46 -46 -47 -49 -51 -52 -52 -53 -53 -52 -49 -47 -46 -48 -50 -51 -51 -57 -66 -75 -81 -82 -76 -70 -68 -68 -65 -60 -54 -51 -50 -51 -52 -53 -54 -54 -55 -55 -56 -56 -58 -59 -60 -61 -61 -61 -61 -61 -61 -61 -60 -59 -58 -58 -58 -58 -58 -58 -58 -59 -60 -60 -61 -61 -61 -62 -63 -64 -65 -66 -68 -70 -71 -72 -72 -72 -72 -71 -71 -72 -72 -72 -72 -72 -72 -73 -74 -76 -78 -81 -84 -86 -88 -90 -90 -91 -92 -91 -90 -89 -88 -87 -86 -85 -82 -79 -76 -73 -70 -66 -61 -57 -54 -50 -47 -44 -43 -42 -41 -38 -36 -35 -35 -36 -37 -38 -39 -38 -38 -39 -40 -42 -44 -44 -44 -44 -43 -41 -40 -39 -38 -37 -37 -36 -34 -33 -32 -34 -36 -38 -40 -39 -40 -42 -44 -47 -49 -51 -52 -52 -53 -55 -58 -60 -62 -63 -64 -64 -65 -66 -67 -69 -71 -73 -76 -79 -81 -81 -81 -81 -81 -82 -82 -82 -83 -82 -82 -82 -82 -84 -85 -86 -86 -86 -86 -86 -84 -83 -81 -79 -77 -76 -73 -71 -70 -68 -66 -64 -63 -62 -61 -60 -60 -59 -56 -49 -45 -44 -44 -46 -49 -52 -56 -57 -58 -57 -56 -55 -52 -49 -46 -42 -39 -36 -34 -31 -29 -28 -26 -25 -25 -24 -24 -29 -12 -1 -2 -12 -28 -40 -39 -32 -25 -28 -37 -28 -11 9 20 11 -1 -14 -28 -41 -38 -24 -11 -7 -10 -6 -6 -10 -17 -25 -31 -33 -33 -35 -37 -35 -33 -33 -37 -46 -48 -41 -29 -23 -35 -41 -38 -28 -21 -23 -30 -39 -47 -51 -52 -49 -44 -38 -40 -46 -49 -53 -58 -60 -60 -60 -60 -61 -65 -64 -61 -57 -54 -55 -56 -54 -51 -50 -47 -42 -37 -35 -36 -37 -37 -37 -38 -38 -38 -38 -37 -36 -36 -37 -38 -41 -44 -45 -44 -43 -43 -45 -46 -44 -41 -38 -37 -39 -41 -44 -47 -51 -54 -54 -52 -49 -49 -53 -57 -61 -65 -67 -67 -68 -69 -69 -69 -69 -67 -66 -66 -68 -68 -65 -62 -60 -59 -55 -51 -46 -44 -44 -46 -47 -46 -43 -40 -37 -36 -38 -44 -51 -56 -59 -61 -64 -65 -65 -64 -64 -66 -65 -64 -62 -59 -51 -48 -47 -46 -47 -50 -53 -54 -53 -52 -53 -53 -52 -50 -49 -50 -51 -51 -50 -50 -57 -67 -77 -84 -86 -80 -73 -69 -69 -65 -58 -53 -51 -50 -51 -52 -53 -53 -53 -54 -55 -55 -56 -58 -59 -60 -61 -61 -62 -62 -62 -62 -61 -60 -59 -58 -58 -59 -59 -58 -58 -59 -59 -60 -60 -60 -60 -60 -61 -62 -63 -64 -65 -67 -69 -70 -71 -71 -72 -71 -71 -71 -71 -71 -71 -71 -71 -71 -72 -73 -75 -78 -81 -83 -85 -87 -89 -89 -90 -90 -90 -90 -89 -88 -87 -86 -85 -82 -79 -76 -72 -69 -65 -61 -57 -54 -51 -47 -45 -43 -42 -41 -38 -36 -36 -36 -37 -38 -39 -40 -40 -40 -40 -41 -42 -43 -44 -45 -44 -43 -42 -41 -40 -40 -40 -40 -39 -37 -36 -36 -36 -38 -40 -40 -40 -41 -43 -46 -48 -50 -52 -53 -53 -54 -56 -58 -61 -63 -64 -65 -66 -67 -68 -70 -73 -75 -78 -81 -84 -84 -83 -83 -82 -82 -82 -83 -83 -83 -83 -84 -84 -85 -86 -87 -88 -88 -88 -88 -88 -86 -84 -83 -80 -79 -77 -75 -72 -70 -68 -65 -63 -61 -61 -61 -60 -59 -58 -55 -53 -50 -49 -49 -50 -52 -54 -55 -57 -58 -57 -56 -55 -53 -50 -47 -44 -41 -38 -35 -33 -31 -29 -27 -26 -26 -25 -25 -29 -12 -2 -2 -12 -29 -46 -50 -44 -34 -29 -30 -16 3 18 21 12 3 -8 -23 -41 -51 -44 -32 -22 -16 -12 -12 -14 -15 -20 -27 -32 -36 -40 -44 -39 -34 -32 -37 -45 -50 -50 -45 -38 -43 -44 -39 -30 -25 -26 -29 -34 -40 -45 -49 -48 -44 -39 -44 -49 -52 -54 -59 -62 -62 -61 -60 -60 -65 -65 -62 -59 -60 -60 -61 -60 -59 -58 -52 -46 -42 -40 -40 -39 -39 -39 -39 -41 -42 -42 -42 -40 -39 -40 -41 -43 -44 -43 -42 -42 -43 -44 -42 -37 -34 -34 -37 -42 -45 -48 -51 -54 -54 -51 -47 -44 -47 -53 -59 -63 -66 -67 -66 -66 -67 -68 -68 -69 -70 -72 -72 -72 -69 -65 -60 -56 -52 -46 -39 -36 -37 -42 -45 -47 -46 -43 -41 -39 -38 -38 -43 -51 -57 -60 -61 -63 -64 -63 -63 -63 -63 -62 -61 -60 -57 -51 -49 -47 -47 -48 -53 -56 -55 -52 -51 -52 -52 -52 -53 -54 -54 -53 -52 -50 -50 -58 -69 -80 -88 -90 -84 -78 -72 -68 -61 -55 -52 -51 -51 -51 -51 -52 -53 -53 -53 -54 -55 -56 -57 -58 -60 -61 -62 -62 -62 -62 -62 -61 -59 -58 -58 -59 -59 -59 -58 -58 -59 -59 -60 -60 -60 -59 -60 -61 -61 -62 -63 -64 -66 -67 -69 -69 -70 -71 -71 -71 -70 -70 -70 -70 -70 -70 -71 -71 -73 -75 -77 -80 -83 -85 -87 -88 -88 -89 -90 -90 -90 -90 -89 -88 -87 -84 -81 -78 -75 -72 -68 -65 -61 -58 -55 -52 -48 -45 -44 -43 -42 -40 -39 -38 -38 -38 -39 -40 -41 -41 -42 -42 -43 -43 -44 -44 -45 -45 -44 -42 -41 -41 -41 -41 -41 -41 -40 -40 -40 -40 -41 -41 -41 -41 -42 -44 -47 -50 -51 -53 -53 -54 -55 -57 -59 -61 -64 -65 -66 -67 -69 -71 -74 -77 -80 -83 -85 -86 -85 -84 -83 -83 -83 -83 -83 -83 -84 -84 -85 -86 -87 -88 -89 -89 -89 -89 -90 -89 -88 -86 -84 -82 -80 -77 -75 -73 -71 -68 -65 -62 -61 -61 -61 -61 -60 -59 -56 -54 -52 -51 -51 -51 -52 -53 -54 -55 -56 -56 -55 -54 -53 -52 -49 -47 -44 -41 -38 -36 -33 -31 -29 -28 -27 -26 -26 -29 -20 -11 -8 -12 -25 -41 -51 -52 -48 -42 -31 -8 10 18 12 6 -2 -13 -26 -40 -50 -48 -40 -31 -20 -20 -23 -23 -17 -18 -27 -37 -44 -49 -50 -44 -38 -33 -31 -31 -39 -46 -49 -48 -52 -49 -43 -36 -32 -30 -30 -32 -35 -40 -45 -47 -46 -44 -48 -53 -55 -57 -59 -60 -61 -62 -61 -58 -63 -66 -65 -62 -63 -65 -66 -67 -66 -65 -60 -54 -49 -46 -44 -43 -42 -42 -42 -44 -45 -46 -45 -44 -42 -42 -43 -43 -42 -42 -42 -43 -44 -44 -40 -34 -32 -34 -39 -44 -48 -51 -54 -54 -52 -47 -44 -43 -47 -54 -60 -63 -65 -65 -64 -65 -66 -67 -68 -71 -74 -76 -76 -74 -69 -62 -56 -49 -44 -39 -36 -35 -39 -44 -46 -45 -42 -40 -40 -41 -41 -42 -45 -52 -57 -61 -62 -64 -63 -61 -60 -60 -60 -61 -60 -59 -58 -55 -52 -50 -50 -51 -56 -56 -53 -50 -50 -51 -53 -55 -58 -60 -58 -56 -53 -49 -51 -60 -72 -84 -92 -94 -87 -79 -71 -63 -56 -52 -51 -51 -51 -50 -51 -51 -52 -52 -53 -53 -54 -55 -56 -58 -59 -61 -62 -62 -62 -62 -62 -60 -58 -58 -58 -59 -59 -59 -59 -58 -59 -59 -59 -59 -59 -59 -59 -60 -60 -61 -62 -63 -65 -66 -67 -68 -69 -70 -70 -70 -70 -70 -70 -70 -70 -70 -70 -71 -73 -75 -77 -80 -82 -84 -86 -87 -88 -89 -89 -90 -90 -90 -90 -88 -86 -83 -80 -77 -74 -71 -68 -65 -61 -59 -56 -53 -50 -47 -44 -44 -43 -42 -42 -41 -41 -40 -41 -41 -42 -43 -44 -45 -45 -45 -45 -45 -45 -45 -44 -42 -41 -41 -41 -42 -43 -43 -43 -44 -44 -44 -44 -44 -43 -43 -44 -46 -48 -51 -52 -53 -54 -55 -57 -58 -60 -62 -65 -66 -68 -70 -71 -73 -77 -80 -83 -86 -88 -87 -85 -84 -83 -83 -83 -83 -84 -84 -84 -85 -86 -87 -88 -89 -90 -90 -91 -90 -91 -90 -89 -88 -86 -83 -80 -77 -75 -73 -71 -68 -65 -63 -62 -62 -62 -62 -62 -61 -59 -57 -55 -54 -53 -52 -52 -52 -53 -54 -54 -54 -54 -53 -53 -53 -51 -49 -47 -44 -41 -39 -36 -33 -31 -30 -28 -27 -27 -28 -29 -26 -21 -17 -19 -28 -39 -49 -56 -58 -43 -25 -8 2 3 0 -5 -16 -32 -48 -56 -58 -53 -42 -26 -29 -33 -32 -26 -24 -29 -37 -45 -50 -51 -47 -42 -38 -35 -26 -27 -35 -45 -51 -54 -53 -50 -45 -40 -35 -32 -32 -33 -37 -42 -46 -48 -50 -52 -56 -58 -59 -59 -59 -62 -63 -61 -56 -63 -70 -71 -67 -66 -69 -71 -72 -72 -71 -66 -61 -55 -51 -48 -48 -47 -46 -46 -46 -47 -47 -47 -46 -45 -44 -44 -43 -41 -41 -42 -44 -45 -44 -41 -36 -35 -37 -41 -46 -49 -52 -55 -54 -48 -43 -42 -44 -50 -56 -60 -63 -65 -64 -63 -64 -66 -68 -71 -74 -77 -79 -77 -73 -66 -59 -50 -42 -38 -36 -36 -38 -42 -45 -45 -43 -40 -38 -40 -42 -44 -45 -49 -55 -60 -64 -66 -64 -60 -58 -57 -59 -60 -60 -59 -59 -60 -58 -56 -55 -54 -55 -56 -55 -52 -50 -53 -55 -58 -62 -67 -66 -62 -58 -53 -48 -52 -62 -75 -87 -95 -95 -86 -76 -66 -57 -52 -50 -50 -51 -51 -51 -50 -50 -50 -51 -52 -52 -53 -54 -55 -57 -59 -60 -61 -61 -61 -61 -60 -59 -58 -58 -58 -58 -59 -59 -58 -58 -58 -58 -58 -58 -58 -58 -58 -59 -59 -61 -62 -63 -64 -65 -66 -67 -68 -69 -70 -70 -70 -69 -69 -69 -69 -69 -70 -71 -72 -74 -76 -79 -82 -84 -85 -87 -88 -88 -89 -90 -90 -90 -90 -88 -85 -83 -80 -77 -74 -72 -68 -65 -62 -60 -58 -55 -51 -48 -46 -45 -45 -44 -44 -44 -44 -43 -43 -43 -44 -45 -46 -47 -47 -47 -47 -47 -46 -46 -45 -43 -42 -42 -42 -43 -44 -45 -45 -46 -46 -47 -47 -48 -47 -46 -47 -49 -51 -53 -54 -55 -56 -57 -59 -60 -62 -64 -66 -68 -70 -72 -73 -76 -79 -82 -85 -88 -89 -87 -84 -83 -83 -83 -83 -84 -84 -85 -86 -86 -87 -88 -88 -89 -91 -92 -92 -91 -91 -91 -90 -89 -87 -84 -80 -77 -75 -72 -70 -68 -66 -64 -64 -64 -64 -64 -65 -64 -62 -60 -58 -56 -54 -53 -52 -52 -52 -52 -53 -52 -52 -52 -53 -53 -53 -52 -50 -47 -44 -42 -39 -36 -35 -32 -30 -28 -28 -36 -42 -41 -35 -26 -16 -16 -27 -38 -45 -49 -45 -39 -33 -25 -15 -8 -9 -17 -31 -46 -57 -62 -58 -46 -32 -36 -40 -41 -35 -28 -28 -35 -43 -49 -48 -45 -43 -41 -38 -25 -20 -26 -40 -51 -54 -56 -56 -54 -48 -41 -37 -35 -35 -38 -42 -47 -51 -55 -57 -58 -59 -60 -59 -61 -65 -63 -58 -57 -66 -74 -75 -72 -70 -73 -75 -76 -76 -74 -70 -65 -60 -56 -54 -54 -52 -50 -48 -47 -48 -47 -47 -48 -48 -47 -45 -44 -42 -40 -41 -44 -45 -46 -43 -40 -40 -42 -44 -48 -52 -54 -54 -51 -44 -40 -41 -47 -53 -57 -60 -63 -65 -64 -62 -64 -68 -71 -75 -78 -80 -79 -76 -70 -63 -55 -45 -37 -35 -35 -37 -40 -42 -43 -41 -39 -37 -40 -42 -44 -46 -48 -53 -59 -63 -65 -65 -62 -58 -56 -57 -59 -59 -59 -59 -61 -61 -60 -60 -60 -59 -57 -57 -56 -55 -55 -59 -64 -69 -73 -75 -69 -64 -59 -53 -49 -55 -65 -77 -89 -96 -93 -83 -70 -59 -52 -51 -50 -51 -52 -52 -51 -50 -49 -49 -50 -50 -51 -52 -53 -54 -56 -57 -58 -59 -60 -60 -59 -59 -59 -58 -58 -58 -58 -59 -58 -58 -57 -58 -58 -58 -58 -58 -57 -57 -58 -59 -60 -61 -62 -63 -65 -66 -66 -67 -68 -69 -69 -69 -68 -68 -68 -68 -68 -69 -70 -71 -73 -76 -79 -81 -83 -85 -86 -87 -88 -89 -89 -90 -90 -89 -88 -85 -82 -80 -77 -74 -72 -69 -67 -64 -62 -60 -57 -54 -51 -48 -47 -47 -46 -46 -46 -46 -46 -46 -46 -47 -48 -49 -49 -50 -49 -49 -49 -48 -47 -46 -45 -44 -44 -43 -44 -45 -46 -47 -47 -48 -49 -50 -51 -51 -50 -51 -52 -54 -55 -56 -57 -58 -60 -62 -63 -65 -67 -68 -70 -72 -74 -76 -78 -81 -84 -87 -88 -88 -85 -83 -82 -82 -82 -83 -84 -85 -86 -87 -87 -87 -88 -88 -89 -90 -91 -92 -92 -92 -92 -91 -89 -88 -85 -82 -78 -75 -73 -71 -69 -67 -66 -65 -65 -65 -66 -67 -65 -63 -61 -60 -58 -56 -54 -53 -53 -52 -51 -51 -51 -50 -51 -53 -54 -54 -53 -52 -50 -48 -46 -43 -40 -38 -36 -33 -30 -29 -42 -45 -43 -40 -34 -25 -14 -16 -23 -30 -36 -38 -40 -41 -38 -30 -22 -18 -21 -29 -41 -54 -61 -57 -43 -31 -38 -45 -48 -43 -32 -28 -32 -40 -46 -45 -42 -39 -36 -33 -23 -17 -23 -36 -49 -53 -57 -59 -59 -55 -50 -46 -43 -42 -43 -46 -49 -54 -58 -61 -60 -60 -59 -58 -61 -64 -61 -58 -62 -72 -76 -76 -74 -74 -76 -79 -79 -77 -74 -71 -66 -63 -61 -59 -58 -56 -53 -50 -49 -48 -48 -48 -49 -50 -49 -48 -46 -44 -42 -42 -44 -47 -48 -46 -44 -44 -46 -48 -51 -53 -53 -51 -47 -42 -40 -44 -51 -56 -59 -62 -64 -64 -63 -63 -66 -70 -75 -78 -80 -80 -78 -73 -66 -59 -50 -41 -35 -34 -36 -38 -40 -40 -38 -36 -35 -36 -40 -45 -48 -50 -51 -55 -60 -63 -65 -65 -60 -57 -57 -58 -58 -58 -59 -60 -61 -61 -62 -64 -65 -64 -61 -60 -60 -61 -63 -68 -71 -73 -74 -71 -66 -65 -61 -55 -52 -58 -67 -78 -87 -94 -90 -78 -64 -54 -50 -51 -51 -51 -53 -53 -51 -49 -48 -48 -48 -49 -49 -50 -51 -52 -54 -56 -57 -58 -58 -58 -58 -58 -59 -59 -58 -58 -58 -58 -58 -57 -57 -56 -57 -57 -57 -57 -57 -57 -57 -58 -60 -61 -62 -63 -65 -65 -66 -66 -67 -68 -69 -69 -68 -67 -66 -66 -67 -68 -69 -71 -72 -75 -78 -81 -83 -85 -86 -87 -88 -89 -89 -90 -90 -89 -87 -85 -83 -81 -78 -75 -73 -71 -69 -67 -65 -63 -60 -57 -54 -52 -50 -49 -48 -48 -48 -48 -48 -49 -49 -50 -50 -51 -52 -52 -52 -51 -51 -50 -49 -48 -48 -47 -46 -44 -45 -46 -47 -48 -48 -49 -51 -53 -54 -54 -54 -54 -56 -58 -58 -59 -60 -62 -63 -65 -66 -68 -70 -71 -73 -75 -76 -78 -80 -83 -87 -90 -90 -87 -84 -83 -82 -82 -82 -83 -84 -86 -87 -88 -88 -87 -87 -88 -89 -90 -91 -92 -92 -92 -91 -90 -89 -88 -86 -83 -80 -77 -74 -71 -69 -68 -66 -66 -66 -66 -67 -67 -65 -64 -62 -61 -58 -57 -56 -55 -54 -54 -52 -51 -51 -49 -52 -54 -55 -55 -54 -54 -54 -53 -50 -47 -43 -41 -38 -37 -32 -30 -39 -41 -39 -37 -35 -33 -25 -16 -13 -17 -26 -32 -40 -44 -45 -42 -41 -38 -35 -33 -38 -52 -60 -54 -40 -30 -38 -48 -53 -50 -39 -30 -31 -37 -42 -40 -35 -30 -26 -24 -19 -17 -22 -32 -44 -53 -58 -60 -61 -60 -58 -55 -52 -50 -49 -49 -52 -56 -60 -61 -60 -61 -62 -60 -62 -63 -59 -58 -67 -75 -76 -75 -75 -77 -80 -80 -79 -75 -73 -70 -65 -62 -61 -60 -59 -58 -56 -53 -51 -50 -49 -49 -49 -49 -49 -50 -50 -50 -48 -46 -46 -47 -50 -50 -50 -50 -50 -49 -51 -52 -50 -45 -41 -41 -45 -51 -56 -58 -61 -63 -64 -63 -63 -66 -69 -73 -77 -79 -79 -77 -74 -69 -60 -52 -44 -39 -36 -36 -38 -39 -40 -38 -34 -33 -34 -37 -40 -46 -51 -54 -55 -57 -60 -63 -65 -63 -59 -58 -58 -59 -60 -60 -61 -61 -61 -60 -62 -65 -67 -65 -62 -62 -64 -67 -69 -71 -72 -71 -68 -65 -64 -63 -58 -53 -53 -60 -68 -76 -84 -92 -87 -73 -59 -51 -51 -52 -52 -53 -54 -53 -51 -49 -48 -47 -47 -47 -48 -48 -49 -51 -52 -54 -55 -56 -57 -57 -57 -58 -58 -58 -58 -58 -58 -58 -58 -56 -56 -55 -56 -57 -57 -57 -57 -57 -57 -58 -59 -61 -62 -64 -65 -65 -65 -66 -66 -67 -68 -68 -67 -66 -65 -65 -67 -68 -70 -71 -72 -75 -78 -81 -83 -85 -86 -87 -88 -89 -89 -89 -89 -88 -87 -85 -84 -82 -79 -77 -75 -73 -71 -69 -67 -65 -63 -61 -59 -57 -54 -52 -50 -49 -49 -50 -50 -51 -51 -52 -53 -54 -55 -55 -54 -54 -54 -53 -52 -51 -50 -50 -48 -47 -48 -49 -49 -49 -49 -50 -52 -55 -57 -57 -57 -58 -59 -61 -62 -63 -64 -65 -67 -68 -70 -71 -73 -75 -77 -78 -80 -82 -83 -86 -90 -91 -90 -87 -84 -83 -83 -82 -82 -83 -85 -87 -88 -89 -89 -88 -87 -87 -88 -90 -91 -92 -92 -92 -91 -90 -90 -88 -86 -84 -81 -78 -75 -72 -70 -68 -66 -65 -65 -66 -66 -65 -64 -64 -63 -61 -60 -59 -58 -57 -56 -55 -54 -53 -52 -52 -55 -56 -56 -54 -53 -55 -56 -56 -52 -49 -45 -41 -39 -39 -34 -31 -39 -41 -39 -35 -33 -34 -34 -26 -18 -16 -22 -32 -41 -47 -50 -51 -57 -59 -53 -45 -42 -52 -59 -57 -46 -36 -39 -47 -54 -55 -47 -36 -32 -32 -33 -29 -23 -20 -18 -18 -12 -11 -19 -32 -45 -53 -58 -60 -60 -59 -59 -58 -54 -50 -49 -51 -53 -57 -63 -64 -59 -59 -60 -60 -62 -59 -57 -60 -70 -77 -78 -78 -79 -81 -82 -80 -77 -75 -74 -70 -66 -63 -63 -62 -62 -62 -60 -57 -54 -51 -50 -49 -50 -50 -51 -53 -54 -55 -55 -53 -51 -49 -51 -53 -54 -55 -55 -54 -53 -50 -46 -41 -40 -44 -50 -55 -57 -58 -58 -60 -62 -64 -64 -67 -71 -74 -77 -78 -77 -74 -71 -65 -53 -44 -38 -38 -38 -38 -39 -39 -39 -36 -32 -32 -35 -41 -43 -46 -51 -55 -58 -58 -61 -64 -65 -62 -59 -59 -60 -61 -62 -62 -61 -60 -59 -59 -62 -64 -65 -63 -62 -64 -67 -69 -70 -69 -67 -64 -63 -63 -65 -62 -58 -53 -53 -56 -60 -66 -76 -85 -77 -64 -54 -52 -53 -53 -54 -55 -55 -54 -52 -50 -48 -47 -46 -46 -46 -47 -47 -49 -50 -52 -54 -55 -55 -56 -57 -57 -58 -58 -58 -58 -57 -57 -57 -56 -55 -55 -55 -57 -57 -58 -58 -58 -57 -57 -59 -60 -62 -64 -65 -66 -66 -65 -65 -66 -67 -67 -67 -66 -64 -65 -66 -68 -70 -71 -72 -75 -78 -80 -83 -85 -86 -87 -88 -88 -89 -89 -89 -88 -87 -86 -85 -84 -81 -78 -76 -74 -72 -71 -69 -67 -66 -64 -63 -61 -58 -55 -53 -51 -51 -52 -52 -53 -53 -54 -56 -57 -57 -57 -57 -57 -56 -56 -55 -54 -54 -53 -52 -51 -52 -52 -51 -51 -51 -52 -55 -57 -60 -60 -60 -61 -62 -65 -66 -67 -68 -69 -71 -72 -73 -74 -77 -79 -81 -83 -84 -86 -87 -90 -92 -92 -89 -87 -86 -85 -85 -84 -84 -84 -86 -87 -88 -90 -90 -89 -87 -86 -87 -89 -91 -92 -92 -92 -91 -90 -89 -87 -86 -84 -82 -79 -76 -73 -70 -68 -65 -64 -64 -64 -63 -63 -63 -64 -63 -62 -62 -61 -60 -58 -58 -57 -56 -56 -56 -57 -58 -57 -55 -54 -53 -55 -56 -55 -51 -48 -44 -40 -38 -39 -35 -32 -39 -39 -38 -34 -32 -32 -36 -37 -30 -25 -25 -33 -43 -50 -54 -57 -66 -72 -69 -62 -55 -56 -62 -62 -58 -53 -47 -46 -49 -53 -54 -45 -37 -30 -25 -17 -14 -17 -23 -24 -14 -14 -24 -38 -49 -55 -57 -58 -57 -56 -57 -56 -52 -49 -48 -50 -54 -60 -66 -65 -58 -54 -54 -58 -61 -58 -57 -62 -71 -77 -80 -81 -82 -83 -81 -78 -76 -75 -73 -71 -68 -65 -64 -66 -67 -66 -64 -60 -56 -53 -51 -50 -50 -52 -55 -57 -58 -59 -59 -58 -56 -53 -51 -53 -55 -57 -58 -58 -55 -51 -46 -42 -42 -46 -51 -54 -53 -52 -54 -59 -64 -68 -68 -68 -69 -72 -75 -76 -75 -72 -67 -57 -45 -38 -36 -38 -40 -39 -38 -38 -39 -38 -35 -34 -37 -43 -46 -49 -52 -55 -58 -60 -62 -64 -63 -61 -61 -62 -63 -63 -63 -62 -61 -59 -58 -58 -60 -61 -61 -60 -62 -65 -68 -68 -67 -65 -63 -62 -63 -65 -65 -62 -58 -54 -51 -46 -45 -50 -60 -69 -66 -59 -55 -54 -54 -55 -56 -57 -57 -54 -52 -50 -48 -46 -45 -45 -45 -45 -46 -47 -48 -50 -52 -53 -54 -55 -55 -56 -56 -56 -57 -57 -57 -57 -56 -55 -54 -54 -55 -57 -58 -59 -59 -58 -58 -58 -59 -60 -62 -64 -65 -66 -67 -66 -65 -64 -65 -66 -66 -65 -64 -64 -66 -68 -70 -71 -72 -74 -77 -80 -83 -85 -86 -87 -88 -88 -88 -88 -89 -88 -87 -88 -87 -86 -83 -80 -78 -76 -74 -72 -70 -69 -67 -66 -65 -63 -61 -58 -56 -54 -53 -53 -53 -54 -55 -56 -58 -60 -60 -60 -59 -59 -59 -59 -58 -58 -57 -57 -56 -56 -56 -56 -55 -53 -54 -56 -58 -60 -63 -64 -64 -65 -67 -69 -70 -71 -72 -74 -75 -76 -77 -78 -81 -83 -85 -87 -89 -91 -93 -95 -95 -92 -88 -87 -87 -87 -87 -87 -87 -86 -87 -88 -89 -90 -91 -89 -86 -85 -86 -87 -89 -91 -91 -91 -91 -90 -88 -87 -85 -84 -82 -78 -76 -73 -70 -67 -64 -62 -62 -62 -61 -61 -63 -64 -63 -62 -63 -62 -61 -59 -60 -60 -60 -60 -62 -62 -61 -58 -55 -54 -53 -54 -53 -50 -47 -46 -43 -38 -36 -37 -36 -34 -36 -35 -36 -34 -32 -32 -35 -42 -41 -38 -35 -35 -44 -51 -57 -63 -71 -73 -74 -74 -73 -69 -66 -63 -61 -61 -58 -54 -52 -51 -50 -46 -40 -34 -27 -19 -17 -24 -31 -32 -21 -21 -30 -43 -53 -58 -59 -58 -57 -56 -55 -52 -50 -48 -50 -52 -56 -62 -68 -65 -54 -50 -52 -58 -59 -60 -63 -69 -76 -80 -83 -84 -83 -80 -78 -76 -75 -74 -72 -71 -69 -66 -64 -66 -68 -67 -65 -62 -58 -55 -52 -50 -50 -53 -57 -60 -62 -63 -62 -61 -60 -57 -54 -53 -54 -57 -59 -61 -58 -54 -50 -46 -46 -48 -51 -53 -53 -53 -55 -59 -64 -67 -68 -69 -70 -72 -73 -74 -73 -69 -60 -48 -40 -36 -36 -38 -38 -37 -37 -39 -41 -40 -38 -38 -40 -44 -50 -52 -54 -56 -60 -61 -62 -62 -61 -61 -63 -63 -64 -63 -63 -64 -63 -61 -58 -57 -57 -58 -59 -60 -64 -67 -68 -66 -64 -63 -64 -65 -66 -67 -64 -62 -59 -55 -46 -33 -28 -30 -40 -56 -60 -59 -56 -54 -55 -56 -57 -58 -57 -54 -52 -50 -48 -46 -46 -45 -45 -45 -45 -46 -47 -48 -50 -51 -53 -53 -54 -54 -54 -55 -55 -55 -55 -56 -55 -54 -53 -54 -55 -57 -58 -59 -59 -58 -58 -58 -59 -60 -62 -64 -65 -67 -67 -66 -65 -63 -63 -64 -64 -64 -63 -63 -65 -68 -69 -70 -72 -74 -77 -80 -83 -85 -86 -87 -87 -87 -88 -88 -88 -89 -89 -89 -89 -87 -85 -81 -79 -77 -75 -73 -71 -69 -68 -68 -67 -66 -64 -62 -60 -58 -56 -55 -55 -56 -57 -59 -60 -61 -62 -62 -62 -61 -61 -61 -61 -61 -61 -61 -61 -61 -61 -60 -59 -59 -59 -61 -62 -64 -66 -68 -69 -70 -71 -73 -75 -76 -77 -79 -80 -81 -82 -83 -85 -87 -89 -92 -95 -97 -99 -100 -98 -91 -88 -88 -89 -89 -89 -89 -88 -88 -88 -88 -89 -90 -91 -89 -86 -85 -85 -86 -88 -89 -89 -89 -89 -88 -86 -85 -84 -83 -81 -77 -75 -72 -69 -65 -62 -61 -61 -61 -60 -60 -62 -63 -62 -63 -63 -62 -61 -60 -62 -63 -65 -67 -67 -65 -61 -58 -55 -54 -54 -52 -49 -44 -43 -45 -42 -38 -35 -37 -37 -36 -31 -32 -36 -35 -33 -32 -35 -44 -48 -49 -49 -45 -50 -56 -61 -65 -68 -65 -62 -64 -69 -70 -67 -62 -58 -56 -54 -52 -51 -48 -43 -40 -39 -37 -34 -29 -24 -28 -36 -41 -33 -28 -32 -42 -51 -57 -60 -60 -58 -57 -56 -53 -49 -48 -52 -56 -60 -65 -69 -64 -51 -47 -51 -58 -62 -65 -70 -76 -81 -85 -86 -85 -83 -80 -78 -77 -75 -74 -72 -70 -68 -65 -64 -64 -64 -63 -61 -60 -59 -56 -53 -51 -50 -53 -58 -63 -65 -66 -64 -64 -63 -62 -59 -56 -55 -56 -58 -62 -60 -58 -55 -51 -49 -51 -53 -54 -55 -57 -59 -60 -61 -60 -62 -65 -69 -72 -73 -74 -71 -63 -53 -42 -37 -36 -37 -38 -37 -36 -37 -39 -42 -42 -40 -39 -41 -45 -50 -54 -57 -58 -60 -61 -62 -63 -62 -62 -63 -64 -65 -66 -68 -68 -66 -61 -57 -57 -56 -57 -59 -63 -68 -69 -67 -66 -66 -67 -68 -68 -67 -65 -64 -62 -58 -51 -38 -26 -20 -21 -30 -50 -59 -60 -57 -54 -56 -57 -58 -58 -56 -54 -53 -52 -50 -48 -46 -46 -46 -45 -45 -45 -45 -46 -48 -50 -50 -51 -51 -51 -52 -53 -53 -54 -54 -55 -54 -53 -52 -53 -55 -57 -58 -58 -58 -58 -58 -58 -59 -60 -61 -63 -65 -66 -66 -66 -65 -65 -64 -64 -63 -62 -62 -63 -65 -67 -69 -70 -72 -74 -77 -80 -82 -84 -85 -86 -86 -87 -87 -87 -88 -88 -89 -90 -90 -88 -86 -83 -80 -78 -76 -74 -72 -70 -69 -69 -69 -68 -67 -65 -64 -61 -59 -57 -57 -57 -59 -60 -62 -63 -64 -64 -64 -63 -63 -63 -64 -64 -65 -65 -65 -65 -65 -64 -64 -64 -64 -65 -66 -68 -70 -72 -74 -74 -76 -78 -79 -80 -81 -82 -83 -85 -86 -87 -89 -90 -93 -96 -99 -102 -105 -104 -98 -90 -89 -89 -90 -90 -90 -90 -89 -88 -88 -88 -89 -89 -90 -88 -87 -86 -85 -86 -87 -87 -87 -86 -85 -84 -84 -83 -83 -82 -79 -76 -74 -71 -67 -64 -61 -60 -59 -59 -59 -59 -60 -62 -61 -62 -62 -62 -60 -61 -64 -67 -70 -71 -69 -64 -59 -57 -56 -56 -55 -53 -48 -44 -43 -45 -44 -40 -38 -37 -38 -38 -35 -38 -41 -40 -37 -34 -36 -41 -46 -52 -57 -57 -58 -57 -54 -50 -51 -54 -59 -63 -63 -61 -57 -53 -49 -47 -45 -45 -44 -42 -38 -35 -34 -34 -35 -34 -33 -37 -43 -48 -46 -39 -39 -42 -48 -53 -57 -58 -58 -58 -60 -58 -53 -49 -50 -56 -63 -68 -69 -63 -51 -47 -51 -62 -70 -74 -78 -82 -86 -88 -88 -87 -85 -84 -82 -79 -76 -74 -72 -70 -68 -65 -63 -61 -59 -57 -57 -58 -58 -56 -55 -53 -53 -55 -59 -64 -66 -67 -66 -66 -67 -66 -65 -62 -60 -58 -58 -60 -62 -62 -60 -56 -53 -55 -56 -57 -58 -61 -62 -62 -59 -56 -57 -61 -67 -71 -73 -73 -67 -57 -46 -40 -38 -38 -39 -40 -38 -37 -38 -41 -43 -44 -42 -41 -41 -45 -51 -57 -60 -61 -60 -62 -64 -64 -63 -63 -65 -65 -66 -68 -70 -68 -64 -60 -58 -58 -58 -59 -63 -70 -73 -71 -68 -68 -69 -72 -72 -69 -65 -64 -65 -64 -57 -44 -30 -26 -25 -25 -30 -49 -59 -61 -59 -56 -57 -58 -58 -58 -56 -54 -55 -55 -52 -48 -47 -46 -45 -44 -44 -44 -44 -45 -46 -47 -47 -48 -48 -49 -50 -51 -52 -53 -53 -54 -53 -53 -52 -53 -55 -56 -56 -57 -57 -57 -57 -58 -58 -60 -61 -62 -64 -66 -66 -66 -65 -65 -64 -63 -62 -61 -61 -63 -65 -67 -69 -70 -72 -75 -77 -80 -82 -84 -84 -84 -85 -85 -86 -87 -88 -89 -90 -91 -90 -89 -86 -83 -81 -79 -77 -76 -74 -71 -70 -70 -70 -70 -70 -69 -68 -65 -63 -60 -59 -59 -60 -61 -63 -64 -65 -66 -65 -65 -65 -66 -67 -68 -69 -69 -70 -69 -69 -68 -68 -69 -69 -69 -70 -72 -75 -77 -78 -78 -80 -82 -83 -84 -84 -84 -86 -88 -89 -90 -91 -93 -96 -98 -100 -104 -105 -103 -97 -90 -90 -90 -90 -91 -90 -89 -88 -87 -87 -87 -87 -88 -89 -88 -87 -86 -86 -87 -86 -86 -85 -84 -83 -81 -81 -81 -81 -80 -78 -75 -73 -69 -65 -62 -60 -59 -58 -58 -57 -57 -58 -60 -60 -61 -62 -61 -62 -65 -69 -73 -74 -71 -66 -61 -58 -57 -57 -58 -58 -56 -50 -47 -47 -47 -47 -44 -42 -40 -40 -40 -33 -33 -33 -36 -36 -36 -38 -42 -42 -45 -48 -51 -54 -52 -47 -42 -40 -47 -56 -60 -58 -55 -50 -45 -41 -39 -37 -38 -38 -36 -33 -30 -29 -30 -32 -35 -39 -43 -48 -52 -54 -50 -47 -47 -49 -51 -54 -56 -56 -56 -62 -64 -59 -50 -44 -52 -61 -67 -66 -60 -51 -49 -55 -67 -78 -83 -86 -88 -89 -88 -89 -89 -89 -88 -84 -79 -76 -74 -75 -73 -71 -67 -63 -58 -56 -55 -56 -59 -60 -59 -57 -56 -56 -58 -61 -63 -66 -67 -68 -69 -69 -70 -70 -68 -66 -64 -61 -59 -62 -63 -62 -60 -56 -57 -58 -60 -61 -63 -64 -64 -63 -60 -59 -62 -66 -70 -72 -71 -63 -52 -42 -41 -40 -41 -43 -43 -42 -40 -40 -41 -43 -45 -43 -41 -41 -45 -51 -58 -62 -64 -64 -65 -65 -64 -62 -62 -65 -66 -67 -67 -67 -66 -63 -61 -59 -60 -60 -63 -68 -73 -74 -73 -72 -73 -74 -73 -71 -68 -67 -69 -70 -66 -55 -38 -28 -30 -32 -34 -38 -51 -58 -61 -60 -58 -58 -58 -58 -58 -56 -55 -57 -56 -53 -49 -48 -47 -45 -44 -43 -43 -43 -43 -44 -45 -46 -47 -47 -47 -49 -50 -51 -52 -52 -53 -53 -53 -53 -54 -54 -55 -55 -55 -56 -56 -56 -57 -58 -59 -60 -61 -63 -65 -65 -65 -65 -65 -64 -63 -61 -61 -61 -62 -64 -66 -68 -70 -72 -74 -77 -79 -81 -82 -83 -83 -83 -84 -85 -87 -88 -90 -90 -91 -91 -89 -87 -85 -83 -81 -79 -78 -76 -73 -71 -70 -70 -71 -71 -71 -71 -69 -67 -65 -62 -61 -60 -62 -63 -65 -66 -66 -66 -66 -68 -69 -70 -72 -73 -74 -74 -73 -73 -73 -73 -73 -73 -73 -74 -76 -78 -80 -81 -82 -83 -84 -85 -85 -85 -86 -88 -89 -91 -92 -93 -95 -97 -99 -101 -103 -102 -99 -95 -92 -91 -91 -91 -91 -90 -89 -88 -87 -87 -86 -86 -87 -88 -87 -86 -87 -87 -88 -87 -86 -84 -83 -81 -80 -80 -80 -80 -79 -77 -74 -72 -68 -63 -61 -59 -58 -56 -56 -56 -56 -57 -59 -59 -60 -61 -61 -64 -68 -72 -74 -72 -66 -61 -58 -58 -59 -60 -61 -61 -59 -54 -51 -51 -50 -49 -48 -45 -42 -41 -41 -24 -25 -30 -36 -36 -35 -38 -42 -41 -44 -47 -48 -49 -48 -44 -40 -38 -46 -52 -54 -52 -50 -43 -37 -34 -33 -32 -33 -32 -30 -26 -24 -25 -28 -31 -35 -40 -45 -49 -53 -56 -55 -52 -52 -53 -54 -55 -55 -55 -54 -60 -64 -60 -51 -42 -46 -56 -62 -62 -55 -49 -50 -58 -69 -78 -84 -86 -87 -88 -89 -90 -89 -86 -82 -79 -77 -78 -79 -80 -78 -74 -68 -62 -57 -57 -58 -60 -62 -63 -62 -60 -60 -60 -61 -63 -65 -68 -70 -71 -71 -72 -73 -73 -73 -72 -71 -68 -63 -62 -63 -64 -62 -59 -57 -58 -60 -63 -64 -67 -70 -71 -70 -67 -68 -70 -72 -72 -68 -58 -47 -40 -41 -43 -45 -47 -48 -46 -43 -41 -41 -44 -45 -44 -42 -42 -46 -53 -58 -63 -67 -69 -70 -68 -65 -62 -60 -63 -65 -66 -66 -65 -64 -64 -64 -63 -63 -64 -67 -71 -74 -75 -74 -75 -77 -77 -76 -74 -73 -73 -73 -73 -69 -57 -38 -27 -31 -36 -41 -48 -55 -58 -61 -62 -60 -58 -58 -58 -58 -56 -57 -58 -56 -52 -49 -48 -47 -46 -44 -43 -43 -43 -43 -44 -46 -46 -46 -46 -47 -48 -49 -50 -51 -52 -52 -53 -54 -54 -54 -54 -53 -53 -54 -55 -55 -56 -57 -57 -58 -59 -61 -62 -64 -65 -65 -65 -64 -64 -63 -61 -60 -60 -61 -63 -66 -69 -71 -72 -74 -76 -79 -80 -81 -81 -82 -82 -83 -85 -86 -88 -89 -90 -91 -91 -91 -89 -87 -85 -83 -81 -80 -78 -75 -73 -71 -70 -71 -72 -72 -73 -72 -71 -69 -67 -64 -62 -63 -64 -66 -67 -66 -67 -68 -70 -71 -74 -76 -77 -78 -78 -77 -76 -76 -77 -77 -77 -77 -78 -80 -81 -83 -83 -84 -85 -86 -86 -86 -86 -87 -89 -90 -92 -94 -95 -97 -98 -99 -100 -100 -98 -95 -94 -94 -93 -92 -92 -91 -90 -89 -88 -87 -87 -86 -86 -87 -88 -87 -87 -87 -88 -89 -88 -87 -85 -83 -82 -81 -81 -80 -78 -77 -75 -73 -71 -68 -64 -62 -59 -57 -55 -54 -54 -55 -57 -59 -59 -60 -61 -63 -67 -71 -72 -70 -66 -62 -60 -60 -60 -62 -63 -64 -64 -63 -59 -56 -55 -54 -51 -50 -46 -43 -42 -41 -19 -22 -30 -33 -32 -32 -37 -40 -41 -44 -48 -47 -48 -48 -45 -43 -44 -48 -49 -49 -47 -43 -35 -31 -29 -30 -29 -30 -29 -25 -19 -19 -23 -28 -32 -36 -41 -45 -49 -52 -53 -53 -53 -54 -55 -55 -54 -54 -55 -55 -56 -58 -57 -52 -44 -43 -49 -55 -56 -49 -46 -51 -59 -65 -71 -77 -81 -84 -86 -88 -87 -83 -79 -77 -77 -79 -81 -82 -81 -77 -74 -69 -63 -60 -60 -61 -63 -65 -66 -65 -65 -64 -65 -65 -68 -70 -71 -72 -73 -74 -75 -75 -76 -76 -76 -76 -75 -70 -65 -64 -64 -63 -62 -61 -62 -65 -67 -70 -73 -74 -75 -74 -73 -72 -72 -72 -70 -63 -52 -44 -39 -41 -46 -50 -53 -53 -49 -44 -42 -42 -45 -45 -43 -42 -43 -48 -55 -60 -65 -69 -72 -73 -72 -69 -64 -61 -60 -62 -63 -65 -66 -66 -66 -66 -66 -66 -67 -69 -72 -73 -73 -74 -75 -77 -80 -81 -81 -80 -78 -77 -75 -71 -61 -40 -24 -20 -24 -33 -48 -55 -58 -61 -64 -61 -59 -58 -58 -58 -57 -58 -57 -55 -51 -49 -49 -48 -47 -45 -44 -44 -44 -44 -45 -47 -47 -46 -46 -46 -47 -49 -51 -52 -51 -52 -53 -54 -54 -54 -53 -52 -52 -54 -55 -55 -56 -56 -57 -58 -59 -60 -62 -63 -64 -64 -64 -65 -65 -64 -63 -61 -59 -61 -63 -67 -69 -70 -72 -74 -76 -78 -79 -80 -81 -81 -82 -83 -84 -85 -86 -88 -90 -91 -92 -92 -91 -89 -87 -85 -83 -82 -79 -77 -74 -72 -71 -71 -72 -73 -74 -75 -75 -74 -71 -68 -65 -65 -66 -67 -67 -67 -68 -69 -72 -74 -77 -79 -80 -81 -80 -80 -79 -79 -79 -79 -80 -81 -82 -83 -84 -85 -86 -86 -86 -86 -86 -86 -87 -88 -90 -92 -94 -96 -97 -99 -99 -98 -98 -97 -95 -93 -93 -94 -94 -93 -92 -91 -90 -89 -88 -87 -87 -86 -87 -88 -89 -88 -88 -88 -89 -91 -90 -88 -87 -85 -84 -82 -81 -80 -78 -76 -74 -72 -71 -69 -65 -62 -60 -57 -55 -54 -54 -56 -58 -59 -59 -60 -63 -66 -70 -71 -69 -66 -63 -62 -63 -64 -65 -66 -67 -67 -67 -66 -63 -61 -59 -56 -54 -52 -47 -44 -42 -40 -16 -20 -26 -26 -25 -28 -35 -35 -38 -43 -46 -46 -48 -47 -45 -45 -47 -46 -45 -44 -43 -38 -29 -26 -27 -29 -30 -30 -27 -23 -20 -22 -26 -29 -32 -36 -40 -45 -48 -51 -50 -49 -50 -52 -53 -53 -52 -53 -55 -57 -56 -55 -54 -52 -48 -45 -48 -53 -57 -55 -56 -62 -67 -71 -72 -74 -76 -77 -80 -84 -84 -81 -78 -78 -79 -81 -81 -80 -78 -76 -75 -71 -66 -64 -65 -66 -67 -68 -69 -69 -69 -69 -69 -70 -72 -73 -75 -75 -76 -77 -78 -78 -78 -78 -79 -79 -79 -75 -69 -65 -64 -64 -65 -66 -68 -71 -75 -76 -76 -76 -75 -72 -70 -70 -70 -69 -63 -53 -46 -43 -43 -45 -50 -55 -57 -54 -49 -45 -43 -44 -46 -45 -43 -42 -43 -49 -58 -65 -69 -71 -73 -75 -75 -73 -70 -65 -62 -60 -60 -63 -67 -68 -68 -67 -67 -68 -69 -70 -72 -72 -72 -72 -74 -77 -81 -85 -86 -84 -81 -81 -79 -75 -63 -40 -25 -22 -27 -36 -50 -57 -60 -63 -66 -64 -60 -58 -57 -57 -59 -58 -57 -54 -51 -51 -50 -49 -48 -46 -45 -46 -46 -46 -47 -47 -47 -47 -47 -47 -49 -51 -53 -52 -51 -51 -52 -53 -53 -52 -51 -51 -52 -54 -55 -56 -56 -56 -56 -57 -58 -60 -62 -63 -63 -64 -64 -65 -65 -65 -64 -62 -60 -61 -64 -67 -69 -70 -72 -74 -76 -77 -78 -79 -80 -80 -81 -82 -82 -83 -85 -87 -89 -91 -93 -93 -93 -91 -89 -88 -86 -83 -81 -79 -76 -73 -72 -72 -72 -73 -75 -76 -76 -76 -75 -72 -70 -69 -69 -69 -68 -68 -69 -72 -74 -77 -80 -81 -82 -82 -82 -81 -81 -81 -81 -81 -82 -84 -85 -86 -87 -88 -88 -89 -89 -88 -87 -87 -88 -90 -92 -94 -96 -99 -101 -101 -100 -97 -95 -94 -93 -93 -93 -94 -95 -95 -93 -91 -91 -89 -88 -87 -87 -87 -88 -89 -90 -89 -89 -89 -90 -91 -90 -89 -87 -86 -85 -83 -82 -80 -78 -76 -74 -71 -70 -68 -66 -63 -60 -57 -55 -55 -55 -56 -58 -58 -59 -61 -65 -69 -71 -69 -66 -63 -63 -64 -65 -67 -68 -69 -69 -70 -69 -68 -67 -64 -61 -58 -56 -54 -50 -46 -43 -40 -15 -17 -19 -20 -21 -24 -28 -27 -30 -36 -40 -41 -41 -40 -39 -40 -41 -39 -38 -39 -39 -34 -26 -23 -23 -25 -28 -27 -23 -20 -20 -24 -26 -29 -33 -38 -42 -46 -49 -50 -48 -47 -49 -51 -52 -52 -53 -55 -58 -60 -59 -57 -56 -53 -50 -43 -43 -48 -54 -59 -64 -68 -72 -76 -79 -80 -79 -78 -78 -82 -82 -79 -76 -76 -78 -78 -77 -76 -75 -76 -76 -73 -69 -67 -68 -69 -70 -72 -73 -73 -73 -74 -74 -75 -76 -77 -78 -77 -77 -78 -79 -80 -80 -80 -80 -81 -80 -78 -74 -69 -66 -65 -69 -72 -74 -77 -80 -79 -75 -73 -71 -70 -69 -69 -67 -63 -54 -46 -43 -44 -46 -49 -52 -56 -57 -55 -50 -47 -45 -45 -46 -45 -43 -41 -44 -52 -62 -69 -72 -73 -75 -76 -76 -75 -75 -71 -66 -62 -59 -59 -64 -67 -68 -67 -67 -68 -69 -70 -71 -71 -71 -71 -73 -77 -82 -86 -86 -84 -81 -82 -81 -75 -62 -40 -29 -32 -40 -48 -55 -58 -61 -64 -67 -65 -62 -59 -57 -57 -59 -58 -56 -53 -51 -52 -51 -50 -49 -49 -48 -48 -47 -47 -48 -48 -48 -48 -48 -50 -52 -54 -54 -51 -50 -49 -50 -50 -50 -49 -49 -50 -51 -54 -56 -56 -56 -56 -56 -56 -58 -60 -61 -62 -63 -63 -64 -65 -66 -66 -65 -64 -62 -62 -64 -67 -69 -70 -72 -74 -76 -77 -77 -78 -79 -79 -80 -80 -81 -82 -84 -86 -88 -90 -92 -93 -93 -93 -91 -90 -88 -86 -83 -81 -78 -76 -75 -74 -75 -75 -75 -76 -76 -76 -76 -75 -74 -73 -72 -71 -70 -70 -72 -74 -76 -78 -80 -82 -83 -83 -83 -83 -83 -83 -83 -84 -85 -87 -88 -89 -91 -92 -92 -92 -92 -91 -90 -89 -89 -90 -92 -95 -97 -101 -104 -104 -101 -96 -94 -93 -92 -92 -92 -93 -95 -96 -93 -92 -91 -90 -88 -87 -88 -88 -88 -89 -90 -89 -89 -90 -91 -92 -91 -89 -87 -86 -85 -83 -82 -81 -78 -76 -73 -71 -70 -67 -65 -62 -59 -57 -56 -55 -56 -57 -58 -59 -60 -63 -68 -71 -70 -68 -65 -63 -65 -65 -66 -67 -69 -70 -71 -72 -72 -71 -69 -66 -63 -59 -58 -56 -53 -49 -45 -41 -18 -17 -17 -17 -18 -19 -20 -18 -20 -24 -29 -32 -31 -30 -30 -32 -34 -32 -35 -38 -40 -34 -22 -17 -16 -16 -21 -24 -24 -23 -22 -23 -25 -28 -33 -38 -43 -48 -50 -49 -47 -48 -50 -53 -54 -53 -54 -58 -61 -64 -64 -61 -58 -55 -51 -42 -41 -45 -53 -60 -67 -71 -74 -77 -81 -83 -83 -81 -79 -80 -77 -74 -71 -72 -74 -74 -73 -73 -74 -76 -76 -75 -73 -70 -71 -72 -74 -74 -75 -76 -76 -77 -78 -79 -79 -80 -80 -80 -79 -79 -79 -80 -81 -80 -80 -81 -80 -81 -80 -76 -71 -68 -73 -77 -79 -79 -80 -77 -73 -69 -67 -66 -67 -67 -64 -58 -48 -43 -42 -44 -46 -50 -54 -58 -59 -57 -53 -49 -48 -47 -47 -45 -42 -41 -43 -52 -63 -71 -75 -75 -76 -77 -77 -76 -76 -75 -71 -65 -58 -53 -55 -61 -66 -69 -70 -69 -69 -70 -69 -70 -71 -72 -74 -77 -81 -85 -86 -83 -80 -81 -79 -71 -57 -41 -37 -42 -50 -56 -58 -58 -61 -64 -66 -65 -63 -60 -58 -57 -58 -58 -56 -54 -52 -52 -52 -52 -51 -52 -51 -50 -49 -49 -49 -49 -49 -50 -50 -52 -54 -54 -53 -51 -49 -47 -46 -46 -45 -45 -46 -47 -49 -53 -56 -57 -56 -55 -56 -57 -59 -60 -61 -61 -62 -62 -63 -65 -66 -66 -66 -66 -64 -64 -65 -67 -69 -71 -72 -74 -75 -77 -77 -78 -78 -78 -79 -80 -81 -82 -84 -86 -87 -89 -92 -93 -93 -93 -93 -92 -90 -88 -86 -83 -81 -79 -78 -78 -78 -78 -78 -77 -77 -76 -77 -76 -76 -75 -74 -73 -72 -73 -74 -76 -77 -78 -80 -81 -82 -83 -84 -84 -85 -85 -86 -88 -90 -91 -94 -95 -96 -96 -96 -96 -95 -94 -93 -91 -90 -90 -92 -95 -98 -103 -105 -103 -97 -96 -95 -93 -92 -92 -92 -93 -95 -97 -94 -93 -92 -91 -88 -87 -88 -89 -88 -88 -90 -89 -89 -90 -92 -92 -91 -89 -86 -85 -84 -83 -82 -81 -78 -75 -73 -71 -69 -66 -63 -60 -58 -57 -56 -56 -57 -59 -59 -60 -62 -66 -70 -71 -70 -67 -65 -65 -67 -67 -67 -68 -69 -71 -72 -74 -74 -73 -71 -68 -64 -61 -60 -59 -56 -53 -48 -43 -29 -27 -25 -22 -21 -19 -18 -17 -16 -16 -18 -22 -22 -21 -24 -26 -27 -24 -29 -36 -40 -34 -20 -15 -16 -20 -24 -26 -26 -25 -22 -22 -25 -29 -35 -40 -44 -50 -51 -50 -48 -50 -53 -56 -56 -54 -57 -61 -65 -68 -67 -62 -58 -56 -54 -47 -44 -46 -52 -60 -67 -72 -75 -77 -78 -79 -78 -77 -74 -72 -70 -67 -66 -68 -68 -69 -70 -71 -72 -73 -73 -74 -74 -73 -74 -75 -75 -75 -76 -77 -79 -79 -80 -81 -82 -82 -82 -82 -82 -80 -79 -80 -80 -80 -80 -80 -81 -82 -83 -83 -80 -76 -78 -81 -81 -78 -75 -72 -69 -67 -65 -64 -65 -64 -60 -53 -44 -41 -42 -45 -47 -51 -57 -61 -61 -58 -54 -50 -47 -46 -47 -44 -41 -40 -43 -52 -64 -72 -76 -77 -78 -78 -78 -78 -77 -75 -72 -68 -63 -57 -54 -57 -63 -69 -72 -72 -72 -71 -69 -69 -71 -72 -74 -76 -80 -84 -85 -83 -79 -80 -76 -67 -54 -45 -44 -48 -54 -59 -58 -58 -61 -65 -65 -65 -64 -62 -59 -58 -58 -57 -57 -57 -55 -54 -54 -54 -55 -55 -54 -53 -52 -52 -51 -51 -52 -52 -52 -52 -53 -53 -52 -50 -47 -44 -42 -42 -43 -43 -43 -44 -45 -50 -54 -55 -55 -55 -57 -59 -60 -61 -60 -60 -61 -62 -63 -64 -66 -67 -67 -67 -66 -66 -67 -69 -70 -71 -72 -73 -75 -77 -77 -78 -78 -78 -79 -80 -80 -81 -83 -84 -86 -89 -91 -93 -94 -94 -94 -94 -92 -90 -88 -86 -85 -83 -83 -82 -82 -82 -81 -79 -78 -78 -77 -77 -77 -76 -75 -74 -74 -75 -76 -77 -77 -78 -80 -81 -82 -84 -85 -86 -87 -88 -90 -92 -95 -97 -99 -99 -99 -98 -98 -98 -98 -98 -96 -94 -92 -91 -93 -96 -100 -104 -103 -98 -93 -95 -95 -93 -91 -91 -91 -93 -97 -99 -95 -94 -93 -91 -89 -88 -89 -89 -88 -88 -89 -88 -88 -89 -92 -93 -91 -88 -86 -84 -82 -82 -81 -80 -77 -75 -73 -71 -69 -65 -61 -59 -58 -57 -57 -58 -59 -61 -61 -62 -65 -68 -70 -70 -69 -68 -68 -68 -69 -68 -67 -68 -69 -71 -74 -75 -75 -73 -71 -69 -65 -63 -62 -61 -59 -57 -52 -45 -39 -40 -39 -36 -32 -28 -24 -23 -21 -21 -22 -25 -26 -27 -30 -31 -26 -19 -24 -31 -35 -29 -13 -8 -13 -21 -25 -25 -24 -21 -18 -19 -25 -32 -38 -44 -49 -53 -54 -53 -51 -52 -55 -57 -57 -57 -61 -66 -70 -71 -68 -61 -57 -57 -57 -53 -50 -49 -52 -59 -67 -73 -76 -77 -74 -71 -69 -66 -64 -62 -61 -61 -63 -64 -64 -66 -68 -69 -68 -67 -68 -72 -76 -78 -76 -75 -74 -75 -76 -78 -80 -81 -82 -83 -83 -83 -83 -84 -83 -81 -79 -79 -80 -81 -81 -81 -82 -84 -85 -86 -86 -84 -82 -82 -79 -74 -69 -67 -66 -66 -66 -66 -64 -60 -55 -48 -42 -41 -42 -45 -48 -52 -59 -62 -62 -58 -51 -46 -44 -45 -47 -44 -40 -38 -42 -52 -63 -71 -77 -79 -79 -79 -79 -79 -78 -76 -73 -69 -65 -63 -59 -59 -61 -66 -71 -73 -74 -73 -71 -70 -72 -74 -75 -75 -78 -80 -82 -82 -78 -77 -74 -66 -55 -46 -46 -51 -56 -59 -58 -58 -61 -64 -63 -64 -65 -64 -61 -58 -58 -58 -59 -59 -58 -56 -56 -56 -57 -56 -56 -54 -53 -50 -50 -51 -52 -51 -50 -50 -50 -50 -50 -48 -44 -42 -41 -42 -43 -43 -42 -41 -41 -45 -50 -53 -54 -56 -59 -60 -60 -59 -59 -59 -60 -61 -62 -64 -66 -67 -67 -66 -67 -68 -68 -69 -70 -71 -71 -73 -75 -77 -78 -78 -79 -79 -80 -80 -81 -81 -82 -83 -85 -87 -90 -92 -93 -94 -95 -95 -94 -92 -91 -89 -88 -88 -87 -87 -87 -86 -84 -83 -81 -81 -80 -79 -78 -77 -76 -76 -76 -77 -78 -77 -78 -79 -80 -81 -83 -85 -87 -88 -89 -90 -92 -95 -97 -100 -100 -100 -99 -98 -97 -98 -99 -99 -98 -96 -94 -94 -96 -99 -102 -102 -98 -93 -91 -93 -94 -93 -90 -90 -91 -94 -98 -99 -96 -94 -93 -91 -89 -89 -89 -90 -89 -87 -88 -88 -88 -89 -92 -92 -91 -88 -85 -82 -80 -80 -80 -79 -76 -73 -71 -69 -67 -63 -60 -58 -58 -58 -58 -60 -62 -63 -64 -65 -67 -70 -69 -69 -69 -69 -70 -70 -70 -69 -68 -68 -69 -72 -75 -77 -76 -73 -71 -69 -67 -64 -64 -63 -62 -59 -54 -49 -36 -38 -39 -40 -41 -41 -39 -39 -39 -39 -39 -38 -33 -33 -38 -39 -32 -22 -23 -28 -30 -24 -8 -2 -6 -14 -16 -18 -19 -18 -17 -18 -25 -35 -44 -51 -56 -58 -58 -57 -54 -55 -57 -58 -59 -61 -64 -69 -73 -73 -68 -60 -56 -56 -57 -55 -52 -51 -53 -59 -66 -71 -74 -76 -74 -71 -68 -65 -61 -56 -56 -59 -63 -65 -63 -67 -69 -68 -63 -64 -67 -72 -78 -81 -78 -75 -74 -74 -76 -78 -80 -82 -83 -84 -84 -84 -83 -82 -81 -79 -77 -77 -79 -81 -83 -84 -84 -85 -86 -87 -88 -87 -83 -79 -75 -70 -66 -64 -65 -67 -69 -69 -63 -57 -50 -44 -42 -42 -44 -47 -51 -55 -60 -62 -60 -54 -47 -43 -43 -45 -46 -41 -38 -38 -42 -51 -61 -69 -75 -79 -80 -81 -81 -80 -79 -77 -74 -71 -68 -67 -64 -62 -62 -64 -68 -71 -73 -73 -72 -72 -73 -74 -75 -74 -76 -79 -82 -83 -77 -67 -59 -54 -50 -46 -47 -52 -57 -59 -58 -59 -60 -61 -61 -64 -65 -64 -61 -58 -58 -59 -61 -61 -59 -57 -56 -57 -57 -55 -54 -54 -52 -48 -48 -49 -49 -49 -49 -50 -50 -50 -51 -49 -47 -45 -44 -44 -45 -45 -44 -41 -40 -42 -46 -50 -53 -56 -58 -59 -58 -57 -58 -59 -60 -61 -62 -63 -66 -67 -67 -65 -66 -67 -68 -69 -69 -68 -68 -70 -74 -77 -78 -79 -79 -79 -80 -80 -81 -81 -82 -82 -83 -85 -88 -90 -93 -94 -95 -95 -95 -93 -92 -91 -92 -92 -92 -92 -92 -90 -89 -87 -85 -84 -84 -82 -80 -78 -77 -78 -78 -78 -78 -78 -79 -79 -81 -83 -85 -86 -88 -88 -89 -90 -92 -94 -96 -97 -97 -96 -96 -96 -96 -97 -98 -98 -98 -97 -96 -97 -99 -102 -103 -99 -93 -89 -90 -92 -93 -92 -89 -90 -92 -95 -97 -98 -97 -94 -91 -90 -89 -90 -90 -90 -89 -88 -88 -88 -88 -89 -92 -91 -89 -87 -84 -80 -79 -79 -78 -76 -73 -71 -69 -67 -65 -61 -58 -57 -57 -58 -60 -62 -64 -66 -67 -68 -69 -70 -68 -68 -68 -70 -71 -71 -69 -68 -68 -68 -71 -75 -78 -78 -74 -71 -70 -69 -68 -66 -66 -65 -65 -61 -56 -51 -23 -27 -30 -35 -42 -47 -51 -54 -55 -57 -58 -56 -47 -41 -43 -45 -43 -32 -28 -28 -27 -21 -5 2 2 -1 -4 -11 -17 -21 -22 -21 -27 -37 -49 -58 -63 -63 -61 -59 -57 -60 -62 -62 -61 -65 -66 -68 -72 -76 -71 -62 -57 -54 -55 -55 -54 -54 -55 -57 -62 -69 -75 -79 -80 -79 -78 -75 -68 -59 -57 -61 -66 -68 -68 -72 -73 -70 -66 -67 -70 -74 -78 -80 -78 -76 -74 -73 -74 -77 -79 -81 -83 -85 -85 -83 -80 -77 -76 -75 -75 -77 -80 -83 -84 -84 -85 -86 -86 -86 -86 -84 -80 -76 -72 -69 -66 -66 -69 -71 -71 -67 -60 -52 -47 -44 -44 -45 -46 -48 -53 -57 -60 -60 -55 -48 -43 -42 -44 -46 -44 -39 -37 -39 -44 -52 -60 -67 -73 -78 -81 -83 -83 -82 -79 -77 -75 -73 -71 -70 -69 -67 -65 -65 -67 -69 -70 -70 -71 -72 -73 -74 -74 -73 -73 -75 -79 -82 -82 -74 -63 -53 -48 -47 -49 -53 -57 -57 -58 -58 -59 -60 -60 -63 -64 -64 -61 -60 -60 -60 -62 -62 -59 -57 -56 -56 -55 -53 -52 -52 -51 -48 -46 -47 -49 -51 -51 -52 -53 -54 -55 -54 -52 -50 -48 -47 -47 -47 -46 -45 -43 -43 -44 -47 -51 -54 -55 -55 -56 -56 -58 -59 -60 -61 -63 -64 -67 -69 -67 -64 -64 -66 -68 -69 -68 -67 -67 -69 -73 -77 -79 -79 -79 -79 -79 -80 -81 -81 -81 -81 -82 -84 -87 -89 -92 -94 -95 -95 -94 -93 -92 -93 -94 -95 -95 -95 -96 -95 -93 -91 -90 -89 -88 -86 -83 -81 -79 -79 -79 -79 -79 -79 -80 -81 -82 -85 -86 -87 -87 -86 -85 -86 -87 -88 -89 -89 -90 -91 -92 -93 -93 -94 -95 -96 -97 -97 -97 -99 -101 -104 -102 -96 -91 -89 -91 -92 -93 -92 -89 -89 -91 -94 -95 -95 -95 -94 -91 -89 -89 -90 -90 -89 -89 -88 -88 -88 -88 -90 -91 -89 -86 -84 -81 -78 -77 -77 -75 -72 -70 -68 -66 -64 -63 -60 -58 -57 -57 -58 -60 -63 -65 -67 -68 -69 -69 -69 -67 -67 -68 -69 -71 -70 -68 -68 -69 -71 -76 -80 -81 -76 -71 -69 -69 -69 -68 -67 -67 -67 -66 -62 -56 -52 -13 -18 -24 -31 -40 -48 -53 -57 -59 -62 -66 -67 -61 -53 -49 -49 -50 -44 -36 -31 -26 -19 -4 4 7 6 4 -8 -19 -28 -32 -31 -33 -40 -50 -60 -66 -65 -64 -63 -63 -63 -63 -64 -65 -69 -70 -70 -73 -77 -77 -66 -57 -53 -53 -54 -56 -58 -60 -60 -62 -66 -72 -76 -78 -80 -82 -83 -81 -72 -64 -64 -68 -71 -71 -74 -76 -76 -74 -70 -70 -73 -75 -77 -76 -75 -73 -72 -73 -75 -77 -79 -82 -85 -84 -81 -76 -73 -73 -75 -77 -80 -83 -84 -85 -84 -85 -85 -84 -85 -84 -82 -78 -76 -73 -71 -69 -71 -73 -73 -70 -65 -57 -51 -48 -47 -46 -46 -46 -48 -52 -57 -57 -54 -48 -44 -44 -45 -45 -45 -41 -38 -39 -43 -48 -53 -59 -65 -72 -78 -83 -84 -83 -81 -79 -77 -75 -74 -73 -73 -72 -71 -69 -67 -67 -68 -68 -68 -69 -71 -72 -72 -71 -68 -69 -72 -76 -79 -77 -71 -62 -55 -51 -49 -50 -53 -55 -56 -57 -58 -58 -59 -61 -62 -63 -63 -62 -62 -61 -61 -60 -60 -59 -57 -55 -55 -54 -51 -51 -51 -52 -49 -45 -46 -50 -54 -55 -56 -56 -57 -58 -56 -54 -53 -51 -49 -48 -47 -47 -47 -47 -47 -47 -47 -49 -50 -51 -53 -54 -56 -58 -60 -62 -63 -64 -66 -68 -69 -66 -62 -62 -64 -67 -69 -69 -68 -68 -69 -73 -76 -78 -78 -78 -78 -79 -80 -81 -81 -80 -81 -82 -84 -86 -88 -91 -92 -93 -93 -92 -92 -93 -94 -95 -96 -97 -98 -99 -98 -97 -96 -95 -96 -95 -92 -88 -84 -82 -81 -81 -80 -80 -80 -81 -83 -84 -86 -86 -85 -84 -82 -81 -79 -78 -78 -79 -80 -82 -84 -86 -88 -89 -90 -91 -93 -95 -97 -98 -100 -102 -105 -102 -97 -92 -92 -92 -93 -93 -92 -89 -90 -91 -92 -93 -93 -93 -93 -91 -90 -89 -90 -90 -89 -89 -88 -87 -88 -89 -92 -90 -87 -83 -81 -79 -76 -75 -74 -71 -69 -67 -66 -64 -63 -62 -60 -58 -57 -57 -59 -61 -63 -65 -67 -67 -68 -68 -68 -66 -66 -67 -68 -69 -68 -68 -69 -72 -76 -81 -82 -78 -70 -67 -67 -67 -68 -68 -68 -67 -66 -65 -62 -56 -52 -10 -16 -24 -33 -41 -47 -49 -50 -50 -54 -60 -66 -67 -65 -59 -54 -53 -52 -45 -37 -28 -19 -5 2 5 5 3 -7 -20 -32 -42 -44 -43 -46 -51 -58 -64 -65 -65 -64 -63 -63 -64 -66 -68 -70 -72 -74 -76 -78 -76 -69 -62 -57 -53 -53 -56 -60 -65 -67 -65 -65 -68 -74 -78 -79 -81 -82 -83 -80 -72 -70 -71 -74 -74 -76 -78 -79 -79 -76 -74 -73 -74 -75 -74 -73 -73 -72 -72 -73 -75 -78 -81 -83 -82 -78 -74 -71 -73 -77 -81 -84 -86 -86 -85 -84 -84 -84 -83 -82 -82 -80 -78 -78 -77 -75 -74 -76 -76 -73 -69 -63 -56 -53 -51 -50 -48 -47 -46 -48 -53 -54 -52 -48 -45 -44 -46 -48 -49 -47 -43 -41 -43 -46 -50 -54 -59 -65 -71 -78 -83 -83 -82 -80 -79 -77 -75 -74 -74 -74 -73 -73 -71 -68 -68 -68 -68 -69 -70 -71 -70 -69 -66 -63 -67 -71 -73 -71 -66 -62 -60 -58 -55 -52 -52 -54 -56 -57 -56 -57 -58 -60 -61 -62 -62 -62 -62 -63 -63 -61 -58 -57 -58 -58 -57 -55 -54 -51 -50 -51 -53 -52 -46 -45 -50 -56 -58 -60 -60 -61 -60 -58 -56 -54 -52 -49 -49 -49 -50 -50 -50 -50 -49 -49 -49 -49 -50 -51 -53 -56 -59 -62 -64 -65 -64 -66 -67 -66 -63 -59 -59 -62 -65 -69 -70 -70 -69 -69 -72 -75 -77 -77 -78 -79 -80 -80 -81 -80 -80 -81 -82 -83 -85 -87 -89 -90 -91 -91 -91 -91 -92 -94 -95 -97 -98 -99 -100 -101 -100 -101 -101 -102 -100 -96 -91 -87 -85 -84 -83 -82 -82 -82 -83 -85 -86 -87 -85 -83 -80 -77 -74 -71 -69 -68 -68 -69 -72 -75 -78 -81 -82 -84 -86 -89 -92 -95 -98 -100 -104 -107 -105 -101 -96 -94 -93 -95 -95 -93 -91 -91 -91 -91 -92 -91 -92 -92 -90 -88 -88 -89 -89 -88 -87 -87 -87 -88 -90 -92 -89 -85 -81 -79 -76 -75 -73 -72 -69 -67 -66 -65 -63 -62 -61 -60 -59 -58 -58 -59 -61 -63 -65 -66 -65 -65 -66 -67 -66 -66 -67 -67 -68 -67 -68 -70 -75 -80 -82 -78 -70 -65 -65 -66 -66 -67 -67 -66 -65 -64 -63 -60 -55 -51 -12 -18 -28 -37 -43 -46 -45 -41 -39 -44 -51 -57 -62 -68 -67 -64 -61 -55 -50 -44 -38 -28 -15 -9 -5 -3 -4 -11 -22 -33 -40 -43 -47 -52 -57 -61 -66 -68 -68 -67 -66 -66 -65 -66 -67 -69 -71 -74 -77 -79 -74 -68 -64 -61 -58 -57 -60 -63 -66 -69 -69 -67 -66 -68 -73 -75 -77 -79 -80 -81 -78 -77 -77 -79 -79 -81 -81 -81 -82 -83 -81 -78 -75 -75 -75 -74 -73 -72 -72 -73 -74 -76 -78 -80 -78 -75 -72 -71 -75 -80 -84 -87 -88 -87 -85 -84 -84 -83 -81 -81 -81 -80 -80 -80 -80 -79 -79 -79 -77 -73 -68 -62 -57 -55 -54 -53 -52 -50 -49 -51 -54 -53 -49 -48 -48 -49 -52 -54 -54 -52 -46 -46 -47 -50 -53 -57 -61 -66 -72 -78 -81 -80 -80 -79 -79 -76 -74 -74 -73 -72 -73 -73 -72 -69 -67 -68 -69 -71 -72 -71 -68 -64 -61 -62 -69 -73 -71 -64 -58 -57 -59 -60 -58 -54 -54 -55 -57 -56 -54 -55 -58 -61 -62 -61 -60 -60 -61 -62 -62 -61 -58 -56 -57 -57 -57 -56 -55 -53 -53 -53 -54 -52 -47 -46 -48 -55 -59 -61 -63 -63 -61 -58 -55 -53 -49 -47 -49 -50 -52 -52 -53 -53 -52 -50 -50 -50 -50 -51 -53 -55 -59 -62 -63 -64 -64 -63 -63 -63 -60 -56 -56 -59 -63 -68 -70 -71 -71 -70 -71 -74 -77 -78 -79 -80 -80 -81 -80 -80 -80 -81 -81 -82 -83 -85 -86 -88 -88 -89 -89 -90 -91 -93 -95 -97 -99 -100 -101 -102 -102 -103 -103 -102 -100 -96 -92 -89 -88 -87 -86 -85 -84 -85 -86 -87 -87 -85 -82 -79 -75 -71 -68 -65 -63 -62 -62 -63 -64 -67 -70 -72 -75 -78 -81 -84 -89 -93 -97 -100 -105 -110 -109 -104 -99 -96 -96 -97 -98 -96 -93 -92 -91 -91 -91 -90 -90 -90 -89 -87 -86 -87 -87 -87 -86 -85 -86 -89 -90 -89 -86 -83 -80 -77 -75 -73 -71 -70 -68 -67 -66 -65 -64 -63 -61 -60 -60 -59 -59 -60 -60 -62 -64 -64 -62 -61 -65 -67 -66 -65 -65 -66 -66 -66 -68 -71 -75 -79 -77 -70 -62 -61 -63 -64 -64 -65 -65 -64 -63 -61 -61 -58 -53 -50 -16 -21 -29 -34 -40 -42 -40 -33 -32 -38 -44 -48 -52 -59 -66 -69 -68 -62 -56 -51 -46 -39 -27 -20 -14 -10 -10 -18 -27 -35 -40 -41 -46 -54 -59 -64 -67 -70 -72 -73 -72 -72 -70 -69 -69 -68 -71 -74 -77 -78 -72 -66 -64 -63 -63 -64 -67 -68 -69 -70 -70 -69 -66 -65 -66 -69 -73 -76 -76 -77 -79 -80 -82 -83 -84 -85 -84 -83 -84 -86 -86 -83 -80 -79 -78 -76 -74 -72 -71 -72 -73 -75 -75 -74 -72 -70 -70 -72 -77 -82 -87 -89 -90 -88 -87 -85 -84 -82 -81 -81 -82 -82 -83 -83 -82 -81 -82 -80 -77 -72 -67 -63 -59 -57 -56 -56 -55 -54 -53 -53 -54 -52 -51 -52 -54 -55 -58 -60 -59 -55 -48 -47 -50 -53 -56 -60 -63 -68 -72 -76 -77 -77 -77 -77 -77 -76 -75 -73 -72 -72 -73 -73 -72 -69 -67 -69 -71 -73 -74 -69 -64 -61 -62 -66 -72 -73 -70 -62 -58 -59 -61 -62 -58 -55 -55 -56 -57 -55 -54 -56 -59 -63 -62 -60 -59 -58 -59 -61 -60 -59 -58 -57 -56 -56 -56 -56 -56 -56 -55 -54 -53 -52 -49 -47 -48 -52 -56 -59 -61 -62 -60 -57 -53 -49 -46 -45 -47 -48 -49 -51 -54 -54 -53 -52 -52 -52 -52 -52 -52 -54 -58 -60 -62 -62 -60 -59 -59 -59 -57 -53 -53 -56 -61 -66 -69 -71 -71 -69 -70 -73 -77 -79 -80 -80 -80 -80 -80 -81 -81 -81 -80 -81 -82 -83 -84 -86 -86 -87 -87 -88 -89 -91 -94 -96 -98 -100 -102 -102 -102 -102 -101 -100 -99 -97 -96 -93 -92 -91 -91 -90 -89 -89 -88 -86 -83 -79 -76 -73 -70 -67 -64 -62 -61 -61 -61 -61 -62 -64 -65 -67 -70 -74 -77 -81 -86 -91 -95 -100 -107 -112 -111 -106 -100 -98 -98 -100 -100 -98 -95 -93 -92 -91 -91 -90 -89 -89 -88 -85 -85 -85 -85 -86 -85 -85 -87 -88 -87 -84 -83 -82 -79 -77 -74 -72 -69 -69 -68 -67 -66 -65 -64 -63 -61 -59 -61 -60 -60 -60 -60 -61 -62 -60 -58 -58 -64 -68 -66 -64 -63 -63 -63 -64 -67 -70 -71 -72 -69 -62 -59 -59 -61 -62 -62 -63 -63 -63 -61 -59 -60 -56 -51 -48 -18 -19 -23 -29 -34 -35 -32 -28 -29 -34 -38 -42 -46 -52 -57 -59 -59 -56 -54 -50 -46 -41 -34 -31 -26 -21 -18 -22 -30 -36 -40 -42 -46 -53 -59 -64 -66 -70 -73 -76 -78 -77 -76 -76 -75 -71 -71 -74 -76 -76 -70 -64 -62 -63 -65 -69 -73 -75 -75 -74 -72 -70 -69 -67 -65 -66 -70 -73 -73 -72 -76 -80 -82 -83 -83 -85 -85 -84 -83 -85 -85 -85 -84 -84 -82 -79 -76 -72 -71 -72 -73 -73 -71 -67 -66 -67 -69 -74 -80 -85 -88 -90 -90 -89 -88 -87 -85 -84 -84 -84 -85 -86 -85 -84 -83 -81 -81 -80 -76 -71 -67 -66 -63 -61 -59 -58 -56 -57 -57 -56 -55 -54 -55 -57 -60 -61 -62 -62 -60 -55 -48 -47 -50 -54 -59 -63 -66 -69 -72 -73 -74 -74 -75 -76 -77 -76 -74 -72 -71 -72 -73 -72 -70 -68 -69 -72 -74 -75 -73 -68 -64 -64 -66 -70 -73 -72 -69 -64 -62 -63 -64 -62 -57 -55 -56 -57 -58 -57 -57 -58 -60 -62 -61 -58 -57 -56 -57 -58 -58 -57 -57 -56 -55 -55 -55 -56 -56 -56 -55 -54 -51 -49 -49 -50 -51 -54 -56 -59 -60 -61 -58 -53 -48 -45 -44 -45 -45 -44 -43 -46 -51 -53 -54 -55 -55 -55 -54 -53 -52 -54 -57 -59 -60 -60 -58 -57 -57 -58 -55 -50 -49 -52 -59 -65 -68 -70 -71 -68 -68 -71 -74 -77 -79 -79 -80 -80 -80 -81 -81 -80 -80 -81 -81 -82 -83 -84 -85 -86 -86 -87 -88 -90 -92 -95 -98 -100 -101 -102 -102 -101 -99 -99 -100 -100 -99 -97 -97 -97 -97 -97 -95 -92 -87 -82 -76 -72 -69 -68 -66 -65 -64 -63 -63 -63 -63 -64 -65 -65 -66 -67 -70 -72 -75 -79 -84 -89 -94 -100 -108 -113 -111 -106 -100 -100 -100 -101 -101 -99 -97 -95 -93 -92 -91 -90 -90 -89 -88 -85 -84 -84 -84 -85 -85 -86 -87 -87 -83 -81 -81 -80 -78 -77 -74 -72 -69 -68 -68 -67 -66 -64 -63 -62 -60 -59 -60 -59 -59 -59 -58 -58 -57 -56 -55 -56 -63 -67 -66 -62 -59 -59 -59 -60 -63 -64 -65 -65 -62 -57 -57 -58 -59 -60 -59 -61 -61 -60 -60 -61 -60 -54 -48 -46 -20 -19 -21 -24 -26 -28 -29 -31 -32 -33 -34 -36 -40 -45 -48 -48 -46 -42 -39 -35 -31 -29 -30 -33 -34 -32 -29 -28 -31 -36 -40 -43 -47 -52 -57 -61 -64 -67 -71 -75 -79 -81 -80 -81 -82 -79 -73 -72 -73 -72 -67 -63 -62 -64 -67 -72 -76 -80 -82 -83 -79 -76 -74 -74 -71 -69 -71 -73 -72 -71 -76 -79 -80 -79 -80 -83 -83 -81 -81 -82 -82 -82 -81 -82 -81 -78 -75 -73 -72 -74 -74 -70 -65 -61 -61 -64 -69 -76 -81 -86 -89 -90 -91 -90 -89 -88 -87 -87 -88 -89 -89 -88 -87 -84 -82 -80 -80 -79 -74 -70 -67 -69 -67 -64 -61 -59 -57 -58 -59 -60 -61 -60 -60 -62 -65 -66 -65 -63 -59 -52 -47 -46 -50 -56 -61 -65 -68 -71 -72 -72 -72 -73 -74 -75 -76 -75 -74 -73 -73 -73 -72 -71 -69 -68 -70 -74 -76 -75 -71 -67 -66 -67 -68 -70 -71 -71 -70 -69 -65 -64 -63 -60 -56 -56 -57 -59 -60 -61 -61 -60 -59 -59 -58 -56 -55 -55 -55 -55 -55 -55 -55 -55 -55 -56 -56 -56 -56 -56 -55 -53 -50 -49 -49 -51 -53 -54 -55 -56 -56 -55 -53 -49 -46 -45 -45 -46 -46 -44 -41 -42 -46 -50 -54 -57 -57 -58 -56 -54 -53 -55 -56 -58 -59 -59 -58 -57 -57 -58 -55 -49 -45 -47 -55 -62 -67 -70 -70 -69 -68 -68 -70 -73 -77 -78 -79 -79 -80 -80 -80 -80 -80 -80 -81 -82 -83 -84 -85 -85 -86 -86 -87 -89 -91 -94 -96 -99 -100 -101 -101 -100 -100 -101 -102 -102 -101 -101 -102 -104 -105 -104 -99 -92 -83 -75 -68 -65 -64 -65 -66 -66 -66 -67 -67 -67 -66 -67 -68 -69 -69 -70 -72 -74 -76 -78 -82 -86 -91 -98 -107 -111 -110 -104 -101 -101 -101 -102 -101 -99 -97 -96 -94 -93 -92 -91 -91 -91 -89 -86 -85 -84 -84 -84 -85 -86 -87 -85 -81 -80 -79 -78 -76 -75 -74 -72 -70 -68 -67 -66 -65 -62 -61 -60 -59 -58 -59 -57 -57 -56 -56 -54 -53 -52 -52 -55 -60 -63 -61 -57 -54 -54 -54 -55 -56 -58 -58 -58 -56 -54 -56 -57 -57 -58 -58 -59 -58 -58 -58 -59 -56 -50 -45 -44 -21 -18 -20 -25 -26 -26 -28 -32 -37 -37 -35 -35 -38 -42 -43 -42 -38 -33 -28 -22 -17 -17 -21 -27 -34 -40 -42 -37 -36 -37 -41 -45 -50 -54 -56 -56 -59 -64 -67 -71 -75 -81 -82 -83 -85 -87 -77 -71 -68 -66 -62 -63 -64 -66 -70 -75 -78 -82 -86 -90 -91 -88 -87 -85 -83 -79 -77 -76 -73 -70 -76 -79 -78 -75 -76 -77 -77 -77 -77 -77 -78 -79 -81 -82 -81 -78 -74 -73 -73 -74 -73 -68 -60 -56 -58 -63 -69 -76 -81 -85 -89 -91 -91 -92 -91 -89 -89 -91 -92 -93 -93 -91 -88 -84 -82 -81 -80 -77 -72 -68 -66 -68 -69 -67 -64 -61 -58 -57 -58 -62 -66 -66 -67 -68 -70 -70 -68 -64 -57 -49 -46 -47 -52 -59 -64 -67 -69 -71 -72 -72 -73 -73 -74 -74 -75 -75 -74 -74 -75 -74 -73 -71 -69 -69 -72 -75 -75 -73 -69 -68 -69 -69 -68 -68 -69 -69 -68 -68 -65 -64 -63 -61 -57 -57 -59 -60 -61 -61 -59 -58 -57 -57 -56 -56 -55 -54 -54 -54 -54 -54 -54 -55 -56 -57 -56 -55 -55 -55 -55 -54 -54 -53 -53 -53 -54 -53 -54 -54 -53 -52 -52 -50 -47 -46 -46 -45 -43 -42 -41 -41 -44 -49 -53 -56 -58 -59 -58 -56 -56 -57 -57 -58 -60 -60 -59 -58 -58 -58 -55 -48 -43 -43 -50 -59 -65 -68 -69 -70 -69 -68 -68 -71 -75 -77 -79 -79 -78 -78 -78 -79 -79 -80 -80 -81 -82 -84 -85 -85 -86 -86 -87 -89 -91 -93 -95 -98 -99 -100 -100 -101 -101 -101 -102 -102 -102 -102 -104 -107 -108 -105 -97 -87 -76 -67 -62 -60 -62 -64 -66 -67 -68 -70 -71 -71 -70 -71 -71 -72 -72 -73 -75 -76 -77 -78 -81 -84 -90 -97 -105 -107 -106 -103 -102 -102 -102 -102 -100 -98 -97 -96 -95 -95 -94 -94 -94 -94 -92 -90 -87 -85 -85 -84 -85 -86 -86 -82 -79 -79 -78 -76 -74 -73 -73 -72 -71 -68 -67 -65 -63 -61 -60 -58 -58 -57 -57 -55 -54 -54 -53 -51 -50 -50 -51 -55 -55 -54 -53 -53 -50 -50 -49 -49 -50 -52 -51 -51 -51 -51 -53 -55 -56 -56 -57 -57 -56 -55 -54 -52 -48 -44 -42 -42 -26 -23 -23 -27 -29 -27 -27 -31 -38 -41 -40 -38 -38 -42 -42 -40 -37 -33 -28 -21 -17 -16 -20 -25 -33 -43 -52 -50 -46 -44 -44 -45 -52 -59 -58 -54 -54 -60 -62 -65 -70 -79 -82 -82 -81 -83 -78 -70 -64 -62 -61 -62 -63 -64 -69 -77 -82 -86 -90 -93 -93 -92 -91 -91 -90 -85 -81 -78 -75 -72 -75 -77 -78 -77 -77 -76 -75 -74 -75 -76 -77 -78 -78 -77 -75 -73 -73 -73 -73 -73 -71 -66 -59 -54 -57 -63 -69 -75 -80 -84 -88 -91 -92 -92 -91 -91 -91 -94 -96 -96 -95 -92 -88 -84 -81 -81 -80 -76 -71 -67 -65 -67 -69 -68 -66 -63 -63 -61 -60 -63 -66 -69 -71 -72 -72 -72 -70 -65 -57 -48 -50 -50 -53 -60 -68 -68 -70 -71 -73 -74 -75 -75 -75 -75 -75 -75 -76 -76 -77 -76 -73 -71 -70 -70 -72 -73 -73 -70 -67 -68 -68 -67 -66 -70 -71 -70 -67 -66 -65 -64 -63 -61 -57 -58 -60 -60 -59 -58 -57 -57 -58 -59 -59 -57 -56 -55 -55 -55 -56 -56 -56 -56 -56 -55 -54 -52 -52 -53 -55 -58 -60 -59 -58 -57 -56 -55 -55 -55 -53 -52 -51 -48 -45 -43 -42 -41 -42 -42 -41 -41 -43 -46 -50 -53 -55 -57 -58 -58 -59 -59 -59 -60 -62 -62 -60 -59 -58 -56 -51 -44 -39 -41 -49 -58 -65 -67 -67 -68 -70 -70 -69 -70 -74 -78 -79 -78 -77 -77 -77 -78 -79 -80 -80 -81 -82 -83 -84 -85 -86 -87 -88 -89 -91 -93 -96 -99 -99 -100 -101 -103 -103 -101 -100 -100 -100 -100 -102 -104 -104 -100 -91 -80 -69 -62 -58 -58 -60 -62 -64 -66 -69 -72 -73 -74 -74 -74 -75 -75 -75 -76 -77 -77 -78 -79 -80 -84 -89 -95 -101 -102 -102 -103 -104 -104 -103 -102 -100 -98 -97 -96 -96 -96 -95 -95 -96 -96 -94 -91 -89 -87 -86 -85 -85 -86 -84 -80 -78 -78 -77 -75 -72 -71 -70 -70 -70 -68 -66 -64 -62 -60 -58 -57 -57 -57 -56 -54 -52 -51 -51 -49 -48 -50 -52 -54 -49 -46 -46 -49 -48 -47 -46 -45 -46 -48 -48 -48 -48 -49 -50 -52 -54 -54 -56 -56 -55 -54 -52 -47 -43 -41 -42 -42 -31 -30 -30 -32 -33 -31 -29 -31 -38 -44 -45 -44 -42 -42 -41 -39 -37 -34 -30 -27 -26 -27 -29 -33 -38 -46 -56 -62 -62 -59 -52 -46 -52 -65 -67 -59 -50 -56 -58 -60 -65 -73 -80 -82 -79 -74 -69 -63 -58 -56 -55 -56 -57 -61 -69 -77 -81 -85 -90 -93 -94 -92 -92 -91 -90 -84 -79 -76 -76 -74 -75 -76 -77 -77 -78 -76 -75 -74 -74 -74 -74 -73 -72 -71 -70 -70 -70 -70 -69 -69 -68 -65 -59 -55 -58 -63 -69 -74 -78 -82 -86 -90 -92 -92 -93 -93 -94 -96 -98 -97 -96 -92 -87 -84 -82 -81 -80 -75 -70 -66 -63 -65 -68 -69 -67 -65 -64 -65 -66 -66 -67 -69 -71 -73 -74 -74 -70 -63 -55 -50 -49 -51 -55 -59 -68 -70 -71 -72 -75 -77 -78 -78 -77 -76 -76 -76 -77 -78 -78 -76 -74 -72 -72 -72 -72 -71 -69 -66 -65 -65 -65 -64 -66 -72 -73 -70 -67 -66 -66 -66 -64 -62 -59 -59 -60 -60 -58 -57 -57 -59 -60 -61 -60 -58 -56 -54 -55 -56 -56 -56 -54 -53 -51 -51 -51 -51 -51 -53 -57 -61 -63 -61 -60 -59 -59 -59 -58 -57 -56 -54 -50 -45 -41 -40 -39 -40 -43 -45 -44 -44 -46 -47 -49 -52 -54 -55 -55 -56 -58 -58 -59 -61 -62 -62 -60 -58 -55 -52 -43 -35 -33 -37 -48 -58 -64 -66 -66 -66 -69 -71 -71 -71 -74 -77 -77 -76 -75 -76 -77 -78 -80 -80 -80 -81 -82 -83 -84 -85 -86 -87 -88 -89 -92 -95 -98 -100 -101 -102 -104 -105 -103 -101 -100 -98 -97 -96 -95 -94 -91 -87 -79 -71 -63 -58 -57 -58 -59 -60 -61 -64 -68 -71 -74 -76 -77 -78 -78 -78 -78 -78 -78 -78 -79 -79 -81 -83 -87 -92 -97 -99 -101 -103 -104 -104 -103 -102 -100 -98 -97 -97 -97 -95 -95 -95 -96 -97 -94 -92 -90 -88 -86 -86 -86 -85 -82 -78 -77 -76 -76 -74 -71 -69 -69 -68 -68 -67 -65 -63 -60 -59 -57 -57 -56 -56 -56 -53 -52 -50 -49 -48 -48 -50 -52 -51 -47 -44 -45 -47 -47 -46 -44 -43 -44 -46 -48 -48 -48 -48 -48 -50 -51 -52 -54 -56 -56 -55 -51 -46 -42 -41 -43 -41 -32 -36 -38 -39 -41 -39 -36 -35 -39 -45 -49 -48 -45 -40 -37 -35 -34 -31 -26 -23 -24 -29 -35 -39 -44 -50 -55 -57 -65 -69 -64 -52 -49 -62 -68 -64 -54 -57 -59 -59 -60 -65 -74 -79 -76 -67 -59 -55 -53 -53 -53 -54 -57 -63 -70 -76 -81 -84 -87 -90 -92 -92 -90 -89 -87 -81 -76 -74 -74 -75 -76 -77 -78 -77 -78 -77 -75 -73 -72 -71 -69 -67 -66 -66 -67 -67 -67 -67 -67 -66 -65 -63 -60 -56 -58 -63 -68 -73 -77 -81 -85 -88 -91 -93 -94 -95 -96 -98 -98 -97 -94 -91 -86 -84 -83 -82 -79 -75 -70 -65 -62 -62 -65 -68 -69 -68 -66 -65 -67 -69 -69 -70 -73 -75 -74 -73 -70 -64 -57 -53 -52 -55 -59 -65 -71 -72 -73 -74 -76 -79 -80 -80 -80 -78 -78 -79 -79 -78 -77 -76 -74 -72 -72 -72 -71 -70 -66 -62 -61 -61 -61 -63 -69 -73 -72 -69 -67 -66 -67 -67 -65 -62 -60 -61 -61 -60 -58 -57 -58 -59 -60 -59 -58 -56 -55 -54 -54 -54 -54 -52 -49 -49 -48 -49 -50 -51 -50 -53 -57 -61 -61 -59 -59 -59 -60 -62 -61 -60 -58 -54 -48 -42 -39 -39 -39 -42 -45 -46 -45 -45 -46 -47 -48 -51 -53 -53 -52 -51 -51 -52 -55 -58 -58 -56 -56 -54 -50 -45 -34 -27 -26 -33 -46 -57 -63 -65 -65 -66 -68 -70 -71 -72 -74 -74 -75 -75 -75 -77 -79 -81 -82 -82 -82 -83 -84 -84 -84 -84 -85 -86 -87 -90 -93 -96 -99 -101 -103 -105 -106 -107 -105 -103 -101 -98 -95 -90 -85 -79 -73 -70 -67 -62 -58 -57 -58 -58 -59 -59 -61 -64 -67 -70 -72 -75 -78 -80 -81 -81 -80 -80 -79 -79 -80 -80 -81 -83 -86 -89 -93 -97 -100 -103 -105 -104 -102 -101 -100 -99 -98 -97 -96 -94 -94 -94 -96 -96 -94 -92 -90 -89 -87 -85 -84 -82 -79 -77 -76 -75 -74 -72 -69 -68 -67 -66 -66 -65 -63 -62 -59 -57 -56 -56 -56 -55 -54 -53 -52 -50 -49 -48 -49 -50 -52 -48 -45 -45 -46 -47 -47 -46 -44 -44 -45 -47 -48 -49 -48 -47 -47 -48 -49 -50 -52 -55 -55 -54 -49 -44 -42 -41 -41 -37 -29 -35 -40 -45 -48 -48 -45 -41 -39 -42 -45 -45 -42 -35 -31 -29 -28 -24 -19 -19 -20 -24 -27 -35 -43 -48 -51 -51 -57 -67 -72 -67 -55 -59 -65 -67 -59 -59 -62 -62 -59 -57 -65 -71 -70 -60 -52 -50 -49 -51 -52 -54 -59 -65 -70 -74 -78 -82 -84 -86 -88 -88 -88 -86 -84 -79 -75 -74 -74 -74 -75 -77 -78 -79 -80 -79 -76 -73 -71 -68 -65 -63 -63 -63 -64 -64 -64 -64 -65 -63 -63 -62 -60 -58 -59 -63 -68 -73 -77 -80 -83 -87 -90 -93 -95 -96 -97 -97 -97 -95 -92 -88 -85 -85 -84 -82 -79 -75 -71 -66 -62 -61 -63 -66 -69 -70 -68 -68 -70 -71 -72 -73 -74 -74 -72 -72 -70 -65 -59 -56 -55 -56 -60 -65 -71 -72 -74 -74 -75 -77 -79 -80 -81 -80 -79 -79 -79 -79 -79 -77 -75 -73 -71 -71 -70 -67 -63 -58 -56 -57 -59 -64 -70 -72 -71 -68 -67 -67 -68 -68 -66 -62 -61 -62 -62 -60 -57 -56 -58 -59 -60 -59 -58 -57 -57 -56 -55 -53 -52 -51 -49 -48 -48 -49 -50 -51 -52 -54 -57 -59 -58 -57 -57 -59 -62 -63 -62 -60 -57 -51 -44 -40 -39 -41 -42 -44 -46 -46 -45 -46 -45 -46 -46 -48 -49 -50 -50 -50 -48 -47 -48 -51 -56 -55 -53 -50 -46 -41 -29 -23 -24 -31 -42 -53 -60 -64 -65 -66 -68 -69 -71 -72 -73 -73 -73 -74 -76 -78 -81 -83 -83 -84 -84 -85 -86 -85 -85 -84 -85 -85 -86 -89 -92 -96 -100 -103 -105 -106 -107 -108 -108 -106 -103 -99 -92 -83 -73 -63 -58 -60 -59 -57 -56 -57 -58 -59 -59 -61 -63 -65 -67 -69 -70 -74 -77 -80 -82 -83 -82 -81 -80 -80 -81 -81 -81 -82 -84 -87 -91 -95 -99 -102 -104 -104 -103 -102 -102 -100 -98 -96 -94 -92 -93 -94 -95 -95 -92 -90 -89 -88 -86 -84 -81 -79 -76 -75 -74 -73 -71 -69 -67 -65 -64 -63 -63 -62 -61 -59 -58 -56 -55 -55 -55 -53 -53 -53 -52 -51 -50 -50 -50 -51 -51 -48 -46 -46 -46 -46 -47 -47 -46 -46 -46 -47 -48 -49 -47 -46 -46 -47 -48 -49 -50 -52 -51 -48 -43 -41 -40 -38 -36 -33 -26 -32 -38 -44 -49 -48 -44 -38 -35 -35 -37 -38 -36 -28 -23 -22 -23 -21 -19 -19 -20 -21 -24 -34 -41 -46 -49 -51 -53 -61 -70 -76 -68 -65 -67 -68 -64 -62 -63 -64 -61 -56 -59 -62 -62 -54 -47 -45 -46 -48 -51 -53 -59 -66 -71 -73 -76 -80 -82 -84 -83 -83 -84 -84 -80 -76 -76 -76 -77 -77 -75 -76 -78 -80 -82 -81 -78 -76 -73 -68 -65 -63 -62 -62 -61 -61 -61 -63 -63 -61 -61 -62 -61 -60 -61 -66 -71 -76 -79 -82 -84 -86 -88 -91 -95 -97 -97 -95 -94 -92 -90 -86 -85 -85 -85 -84 -80 -77 -74 -70 -65 -61 -62 -66 -69 -70 -69 -71 -73 -73 -75 -75 -74 -72 -71 -71 -69 -65 -61 -59 -57 -58 -60 -64 -68 -70 -72 -74 -73 -74 -76 -78 -79 -80 -79 -78 -78 -79 -80 -78 -75 -71 -69 -68 -68 -65 -60 -54 -54 -56 -60 -64 -70 -70 -69 -68 -68 -69 -68 -67 -65 -62 -62 -64 -63 -60 -56 -55 -58 -60 -61 -61 -61 -60 -59 -59 -56 -53 -51 -51 -50 -50 -49 -49 -49 -51 -52 -54 -56 -58 -58 -58 -59 -61 -62 -60 -58 -55 -52 -46 -42 -41 -42 -43 -44 -46 -46 -45 -44 -46 -46 -45 -45 -46 -46 -47 -48 -48 -47 -46 -45 -46 -50 -52 -49 -46 -43 -38 -28 -25 -28 -34 -41 -50 -57 -62 -63 -65 -68 -69 -70 -71 -72 -72 -73 -74 -76 -78 -80 -81 -83 -84 -84 -85 -86 -85 -85 -85 -84 -85 -85 -87 -91 -95 -99 -103 -105 -106 -106 -107 -108 -107 -104 -99 -89 -76 -65 -57 -58 -60 -59 -57 -57 -58 -58 -59 -61 -63 -65 -66 -67 -68 -69 -73 -76 -79 -81 -82 -81 -81 -81 -81 -81 -81 -81 -81 -82 -85 -89 -92 -96 -100 -102 -104 -105 -105 -104 -102 -99 -96 -94 -93 -95 -96 -95 -91 -89 -87 -87 -86 -85 -82 -79 -77 -75 -73 -72 -71 -70 -67 -65 -63 -61 -60 -60 -60 -58 -57 -56 -55 -54 -54 -54 -53 -53 -53 -52 -51 -51 -51 -52 -52 -50 -48 -47 -47 -47 -46 -47 -47 -47 -47 -46 -47 -48 -48 -46 -45 -46 -47 -47 -48 -49 -48 -46 -43 -38 -35 -35 -34 -32 -30 -30 -34 -37 -39 -40 -39 -35 -32 -29 -30 -31 -33 -31 -22 -16 -15 -16 -17 -19 -23 -25 -26 -26 -31 -37 -44 -49 -54 -55 -58 -66 -75 -76 -73 -71 -71 -68 -65 -64 -64 -63 -59 -56 -55 -53 -48 -43 -41 -43 -46 -49 -52 -58 -65 -71 -73 -76 -79 -81 -82 -81 -80 -81 -80 -75 -73 -76 -80 -82 -83 -80 -78 -78 -79 -81 -81 -80 -78 -76 -71 -68 -65 -64 -61 -60 -61 -62 -63 -62 -60 -60 -61 -63 -63 -66 -71 -76 -80 -82 -84 -85 -86 -86 -89 -92 -95 -94 -92 -91 -90 -88 -86 -85 -85 -86 -85 -82 -79 -78 -76 -71 -64 -63 -66 -68 -69 -70 -72 -74 -75 -76 -76 -75 -73 -72 -71 -68 -65 -63 -62 -58 -58 -60 -63 -67 -68 -70 -71 -70 -71 -74 -77 -78 -78 -76 -75 -76 -78 -79 -77 -74 -70 -68 -66 -64 -61 -56 -52 -53 -56 -60 -65 -70 -71 -69 -68 -70 -72 -70 -67 -64 -64 -65 -64 -61 -58 -56 -58 -60 -61 -63 -64 -63 -62 -61 -60 -56 -52 -50 -50 -51 -51 -50 -50 -49 -49 -51 -53 -55 -57 -59 -61 -62 -63 -63 -60 -56 -52 -47 -41 -43 -46 -48 -47 -47 -47 -46 -44 -44 -45 -46 -45 -45 -45 -46 -46 -46 -45 -45 -45 -44 -44 -45 -48 -48 -44 -38 -31 -26 -26 -32 -42 -46 -51 -56 -60 -62 -63 -67 -69 -70 -70 -71 -72 -74 -75 -75 -76 -77 -78 -80 -81 -81 -82 -82 -82 -82 -82 -83 -83 -84 -86 -89 -93 -97 -100 -102 -104 -105 -106 -107 -106 -104 -97 -85 -72 -63 -60 -63 -62 -60 -58 -58 -59 -59 -61 -63 -65 -66 -67 -67 -67 -69 -72 -75 -78 -79 -80 -81 -82 -82 -82 -81 -80 -79 -79 -81 -84 -87 -90 -92 -96 -100 -103 -105 -107 -106 -103 -100 -97 -96 -96 -95 -94 -91 -87 -85 -85 -85 -84 -83 -80 -78 -76 -74 -72 -71 -69 -69 -66 -63 -60 -58 -58 -58 -57 -57 -56 -55 -54 -54 -54 -53 -53 -53 -53 -52 -52 -53 -53 -53 -52 -50 -49 -49 -48 -47 -47 -47 -47 -48 -47 -46 -46 -47 -47 -46 -46 -46 -48 -48 -47 -46 -45 -44 -42 -38 -34 -33 -31 -28 -26 -32 -34 -34 -33 -29 -28 -27 -25 -21 -21 -26 -27 -24 -15 -11 -10 -11 -14 -20 -27 -32 -34 -33 -32 -35 -41 -48 -55 -58 -60 -63 -69 -75 -75 -74 -72 -69 -65 -62 -61 -61 -60 -55 -50 -45 -42 -40 -38 -39 -43 -48 -52 -58 -64 -68 -71 -75 -78 -80 -81 -81 -80 -79 -75 -70 -69 -75 -81 -84 -87 -86 -84 -82 -80 -78 -75 -74 -76 -76 -75 -72 -68 -65 -63 -64 -63 -63 -62 -63 -62 -61 -61 -63 -66 -71 -76 -80 -82 -84 -86 -87 -88 -87 -86 -88 -90 -90 -88 -87 -87 -87 -86 -86 -87 -87 -86 -84 -81 -81 -81 -78 -70 -66 -65 -65 -68 -72 -73 -74 -75 -76 -77 -77 -75 -73 -70 -67 -65 -64 -64 -60 -59 -61 -63 -66 -68 -69 -70 -69 -70 -73 -76 -77 -74 -72 -71 -73 -76 -78 -76 -72 -69 -67 -64 -60 -56 -53 -51 -52 -56 -61 -66 -71 -71 -69 -68 -71 -73 -71 -68 -66 -66 -66 -63 -60 -59 -60 -62 -63 -64 -64 -63 -63 -62 -60 -57 -54 -51 -49 -49 -50 -51 -52 -51 -50 -49 -50 -52 -55 -58 -61 -64 -65 -65 -63 -60 -55 -50 -46 -44 -46 -49 -52 -52 -51 -49 -46 -44 -44 -45 -45 -45 -45 -45 -46 -46 -46 -45 -45 -45 -44 -43 -44 -48 -46 -39 -30 -26 -23 -23 -29 -41 -48 -53 -57 -60 -62 -63 -66 -69 -70 -70 -71 -73 -74 -74 -74 -74 -74 -75 -76 -77 -77 -78 -78 -79 -80 -81 -82 -82 -83 -84 -86 -90 -93 -96 -99 -102 -104 -105 -105 -105 -102 -94 -81 -71 -65 -66 -67 -65 -62 -59 -60 -61 -62 -64 -66 -67 -67 -67 -66 -67 -68 -71 -73 -76 -78 -80 -81 -82 -82 -81 -79 -78 -77 -78 -80 -83 -86 -88 -90 -93 -97 -100 -103 -105 -104 -102 -99 -97 -95 -93 -90 -88 -86 -84 -83 -83 -83 -83 -81 -79 -77 -76 -74 -72 -70 -68 -66 -63 -61 -59 -57 -57 -56 -56 -57 -56 -55 -55 -55 -54 -53 -53 -54 -54 -54 -55 -55 -55 -53 -52 -50 -50 -50 -49 -48 -47 -47 -47 -48 -46 -45 -44 -44 -43 -43 -45 -47 -48 -48 -46 -43 -41 -41 -41 -39 -37 -35 -32 -27 -24 -27 -29 -30 -28 -24 -25 -26 -24 -18 -15 -19 -20 -17 -11 -9 -8 -8 -11 -20 -31 -38 -41 -40 -38 -37 -40 -45 -52 -59 -63 -64 -66 -70 -72 -72 -69 -65 -62 -59 -57 -55 -55 -52 -46 -41 -38 -37 -36 -37 -40 -46 -51 -55 -59 -62 -63 -67 -70 -73 -75 -78 -77 -75 -71 -66 -67 -74 -80 -84 -86 -86 -84 -82 -78 -74 -69 -69 -71 -74 -72 -71 -70 -68 -66 -66 -65 -63 -62 -63 -63 -62 -62 -63 -67 -73 -77 -80 -82 -84 -85 -87 -89 -90 -89 -87 -86 -86 -85 -85 -85 -86 -86 -88 -89 -89 -87 -84 -83 -83 -85 -84 -78 -71 -65 -63 -64 -70 -72 -74 -76 -75 -76 -77 -75 -73 -70 -67 -66 -65 -66 -65 -63 -62 -64 -66 -69 -72 -73 -71 -72 -75 -76 -74 -70 -68 -69 -72 -75 -77 -75 -72 -68 -66 -62 -56 -53 -52 -52 -53 -57 -62 -68 -71 -70 -68 -69 -72 -73 -72 -70 -69 -69 -68 -64 -62 -63 -65 -67 -66 -65 -64 -63 -62 -61 -60 -55 -54 -52 -50 -48 -50 -52 -53 -52 -51 -50 -50 -52 -55 -59 -63 -65 -66 -64 -62 -59 -55 -52 -51 -50 -50 -50 -52 -53 -51 -48 -46 -45 -46 -47 -46 -45 -45 -44 -45 -46 -48 -48 -48 -46 -45 -43 -46 -48 -44 -35 -26 -23 -20 -20 -23 -33 -44 -52 -58 -60 -62 -64 -66 -69 -72 -72 -72 -73 -73 -73 -72 -73 -73 -74 -75 -75 -76 -77 -77 -78 -80 -80 -81 -81 -82 -82 -84 -87 -90 -93 -95 -98 -102 -104 -104 -102 -98 -88 -78 -71 -69 -71 -71 -67 -64 -62 -63 -64 -67 -68 -69 -68 -66 -66 -65 -66 -68 -70 -72 -74 -77 -80 -81 -82 -82 -81 -79 -77 -75 -76 -79 -81 -84 -87 -89 -91 -94 -97 -100 -101 -99 -96 -94 -92 -89 -87 -86 -85 -84 -83 -83 -82 -82 -82 -80 -77 -76 -76 -74 -71 -68 -66 -63 -61 -59 -58 -57 -57 -57 -57 -58 -58 -56 -56 -56 -55 -54 -54 -54 -55 -56 -57 -57 -55 -53 -53 -52 -51 -50 -49 -48 -48 -48 -48 -47 -45 -44 -43 -42 -41 -42 -44 -46 -47 -49 -46 -41 -37 -39 -40 -40 -39 -37 -33 -28 -25 -23 -29 -33 -32 -28 -30 -31 -28 -22 -16 -16 -15 -14 -11 -9 -7 -7 -11 -21 -34 -43 -45 -43 -44 -45 -46 -47 -51 -57 -62 -65 -66 -66 -67 -66 -64 -62 -59 -57 -54 -52 -51 -48 -42 -38 -36 -36 -36 -37 -41 -49 -56 -57 -57 -57 -56 -58 -61 -65 -68 -71 -70 -68 -66 -67 -69 -74 -78 -81 -84 -84 -82 -78 -72 -68 -66 -66 -68 -70 -71 -70 -68 -67 -67 -67 -65 -63 -62 -62 -60 -60 -62 -65 -68 -73 -76 -79 -81 -82 -84 -85 -87 -89 -89 -88 -86 -86 -86 -86 -85 -84 -85 -88 -91 -91 -88 -84 -82 -83 -84 -84 -80 -75 -70 -65 -62 -67 -71 -73 -72 -73 -75 -75 -73 -71 -71 -68 -66 -65 -67 -68 -67 -66 -67 -71 -72 -74 -75 -74 -74 -78 -78 -72 -67 -67 -69 -73 -76 -77 -75 -71 -68 -65 -60 -54 -51 -51 -53 -55 -59 -64 -69 -70 -68 -68 -70 -74 -74 -72 -71 -72 -72 -70 -67 -66 -67 -69 -69 -67 -65 -62 -61 -61 -60 -58 -54 -53 -53 -52 -51 -51 -52 -54 -54 -53 -52 -52 -53 -56 -60 -64 -65 -64 -62 -61 -59 -57 -55 -56 -56 -54 -52 -52 -53 -51 -47 -45 -45 -47 -49 -48 -46 -44 -46 -48 -50 -51 -51 -50 -48 -46 -45 -47 -46 -40 -32 -26 -23 -21 -18 -18 -25 -36 -47 -56 -60 -60 -63 -66 -67 -70 -71 -71 -71 -71 -71 -73 -74 -74 -75 -76 -77 -78 -78 -79 -79 -80 -80 -81 -82 -81 -81 -82 -85 -88 -91 -94 -96 -99 -101 -101 -98 -92 -82 -75 -72 -72 -74 -72 -68 -65 -64 -65 -68 -70 -71 -70 -67 -65 -64 -64 -65 -66 -68 -70 -73 -77 -79 -80 -81 -81 -81 -79 -78 -76 -76 -78 -80 -82 -85 -87 -89 -91 -94 -98 -98 -94 -89 -86 -86 -85 -85 -85 -85 -84 -83 -83 -83 -82 -80 -78 -75 -75 -75 -73 -69 -66 -63 -60 -58 -58 -57 -58 -59 -59 -59 -59 -59 -57 -57 -57 -56 -55 -55 -55 -56 -57 -58 -57 -55 -54 -54 -52 -51 -51 -49 -48 -48 -48 -48 -47 -45 -44 -42 -42 -42 -43 -44 -46 -47 -48 -45 -39 -36 -37 -38 -39 -39 -38 -35 -31 -28 -25 -35 -41 -42 -36 -37 -37 -35 -30 -23 -19 -17 -16 -12 -9 -8 -9 -13 -21 -35 -46 -50 -45 -42 -49 -54 -55 -54 -54 -58 -62 -65 -64 -64 -63 -61 -59 -56 -55 -53 -51 -47 -45 -41 -36 -33 -35 -36 -39 -43 -51 -58 -59 -57 -54 -53 -53 -56 -60 -64 -68 -66 -63 -63 -68 -74 -76 -78 -79 -80 -80 -77 -71 -65 -63 -65 -67 -69 -69 -70 -69 -68 -65 -64 -64 -63 -62 -61 -60 -58 -59 -61 -65 -68 -72 -75 -77 -79 -79 -80 -82 -84 -86 -87 -86 -85 -83 -84 -84 -83 -81 -82 -86 -89 -91 -89 -84 -81 -80 -80 -83 -79 -76 -72 -68 -64 -66 -68 -68 -68 -70 -71 -71 -71 -70 -71 -68 -65 -64 -67 -69 -68 -68 -68 -75 -78 -80 -80 -79 -80 -81 -77 -71 -69 -70 -73 -77 -78 -76 -72 -69 -67 -66 -62 -55 -51 -50 -54 -58 -62 -65 -68 -66 -65 -67 -72 -76 -76 -74 -73 -73 -74 -72 -71 -70 -70 -69 -66 -64 -62 -61 -61 -61 -59 -55 -52 -51 -52 -54 -55 -53 -54 -55 -56 -55 -55 -55 -57 -58 -59 -62 -63 -63 -61 -60 -60 -59 -57 -58 -59 -57 -56 -55 -55 -52 -48 -45 -44 -47 -49 -48 -46 -46 -47 -48 -49 -50 -50 -48 -46 -45 -46 -47 -44 -38 -30 -27 -26 -24 -21 -18 -21 -30 -42 -53 -60 -60 -63 -65 -67 -68 -70 -71 -72 -72 -73 -74 -75 -76 -76 -77 -78 -79 -80 -80 -79 -80 -80 -81 -82 -81 -80 -81 -83 -87 -90 -92 -94 -97 -98 -97 -93 -86 -78 -74 -72 -72 -73 -70 -67 -64 -64 -66 -69 -71 -71 -69 -66 -64 -63 -64 -65 -66 -68 -70 -73 -75 -77 -78 -79 -80 -81 -80 -79 -78 -77 -78 -79 -80 -83 -85 -86 -88 -91 -96 -96 -92 -87 -85 -84 -84 -86 -87 -87 -85 -85 -84 -83 -81 -78 -76 -75 -76 -75 -71 -66 -63 -61 -59 -58 -57 -57 -59 -59 -60 -60 -60 -60 -58 -57 -57 -57 -57 -57 -57 -58 -59 -57 -56 -55 -55 -54 -53 -52 -51 -50 -49 -48 -48 -48 -47 -45 -44 -43 -43 -43 -44 -44 -45 -47 -47 -44 -39 -36 -36 -36 -37 -38 -37 -35 -33 -30 -32 -43 -50 -51 -45 -43 -43 -43 -41 -35 -28 -23 -20 -15 -11 -10 -11 -15 -22 -34 -47 -53 -48 -38 -44 -53 -58 -57 -53 -54 -58 -62 -61 -59 -59 -58 -54 -51 -51 -49 -46 -42 -41 -38 -35 -32 -33 -36 -40 -44 -51 -56 -57 -56 -53 -50 -51 -54 -58 -64 -67 -64 -62 -63 -70 -76 -79 -79 -78 -77 -77 -73 -67 -61 -60 -65 -68 -70 -70 -69 -69 -68 -66 -64 -62 -61 -61 -60 -58 -58 -59 -62 -65 -68 -72 -74 -75 -77 -77 -78 -79 -81 -83 -85 -85 -84 -82 -82 -81 -79 -77 -77 -82 -87 -89 -87 -82 -79 -77 -76 -78 -78 -76 -74 -71 -69 -68 -67 -65 -65 -66 -68 -69 -70 -71 -70 -67 -65 -64 -67 -68 -69 -70 -73 -77 -80 -82 -82 -81 -82 -81 -78 -73 -72 -75 -77 -76 -75 -74 -72 -70 -70 -71 -66 -58 -53 -51 -55 -60 -63 -65 -65 -63 -64 -68 -73 -77 -77 -75 -75 -76 -76 -74 -73 -72 -70 -66 -63 -61 -60 -60 -61 -60 -58 -54 -50 -50 -51 -53 -56 -56 -56 -57 -58 -58 -58 -59 -60 -60 -60 -62 -63 -63 -61 -60 -61 -61 -59 -57 -58 -59 -59 -59 -59 -55 -50 -46 -44 -45 -46 -47 -47 -47 -48 -48 -48 -48 -48 -47 -46 -45 -45 -46 -43 -37 -30 -27 -27 -28 -27 -24 -22 -27 -36 -48 -58 -60 -62 -64 -67 -68 -69 -71 -72 -73 -74 -74 -75 -75 -75 -76 -78 -79 -79 -79 -79 -79 -80 -82 -82 -81 -79 -79 -81 -84 -86 -89 -91 -94 -95 -93 -89 -83 -77 -74 -72 -72 -70 -67 -65 -62 -61 -64 -66 -68 -68 -67 -65 -64 -64 -64 -66 -68 -70 -71 -73 -74 -76 -76 -77 -79 -80 -81 -81 -80 -79 -78 -79 -80 -81 -81 -82 -84 -88 -93 -94 -92 -88 -84 -84 -86 -88 -90 -89 -88 -86 -84 -81 -78 -76 -74 -73 -74 -70 -66 -63 -61 -60 -59 -58 -58 -58 -59 -60 -60 -60 -60 -60 -60 -59 -58 -58 -58 -59 -59 -59 -59 -56 -55 -55 -55 -55 -54 -53 -52 -50 -49 -48 -48 -48 -48 -46 -45 -44 -44 -44 -43 -43 -45 -46 -45 -43 -39 -37 -36 -35 -35 -36 -35 -34 -33 -30 -40 -49 -55 -57 -53 -50 -50 -52 -53 -49 -41 -34 -29 -23 -17 -14 -14 -19 -25 -34 -46 -53 -51 -40 -41 -49 -56 -58 -54 -53 -55 -58 -59 -56 -56 -55 -51 -45 -45 -45 -43 -38 -36 -35 -33 -32 -34 -39 -43 -48 -52 -54 -54 -53 -51 -49 -50 -54 -59 -65 -67 -62 -60 -64 -72 -78 -80 -80 -78 -76 -75 -72 -67 -61 -60 -64 -68 -70 -70 -69 -68 -68 -68 -66 -62 -61 -60 -59 -58 -60 -63 -65 -66 -69 -72 -74 -75 -75 -76 -76 -77 -79 -80 -82 -83 -83 -82 -82 -79 -75 -72 -71 -78 -84 -87 -86 -81 -77 -74 -72 -73 -75 -75 -75 -74 -74 -71 -68 -65 -63 -65 -67 -69 -70 -71 -70 -67 -64 -65 -70 -72 -72 -73 -76 -77 -79 -81 -81 -80 -81 -79 -78 -77 -77 -76 -75 -74 -74 -74 -73 -74 -75 -74 -65 -58 -53 -54 -59 -62 -63 -63 -62 -62 -65 -69 -73 -77 -77 -78 -78 -80 -78 -76 -73 -70 -68 -64 -62 -60 -60 -60 -61 -60 -56 -52 -50 -50 -51 -53 -56 -57 -58 -59 -59 -60 -60 -61 -62 -63 -63 -64 -64 -63 -61 -63 -65 -63 -59 -56 -57 -59 -61 -63 -63 -59 -53 -48 -45 -44 -44 -45 -47 -49 -50 -49 -49 -48 -47 -47 -47 -47 -46 -45 -42 -38 -33 -30 -30 -31 -33 -32 -26 -26 -31 -42 -54 -59 -61 -64 -67 -69 -70 -71 -72 -73 -75 -75 -75 -75 -76 -76 -77 -78 -79 -79 -79 -80 -81 -83 -82 -81 -79 -79 -79 -81 -83 -86 -88 -91 -91 -90 -86 -81 -76 -74 -73 -71 -68 -65 -62 -60 -58 -60 -62 -64 -65 -64 -64 -64 -65 -66 -68 -70 -72 -73 -74 -74 -75 -75 -76 -77 -79 -80 -80 -80 -79 -79 -79 -79 -79 -79 -80 -82 -86 -88 -88 -88 -88 -87 -86 -87 -90 -91 -90 -88 -85 -81 -77 -74 -72 -71 -70 -69 -66 -62 -58 -58 -59 -59 -58 -58 -59 -59 -60 -61 -61 -60 -60 -60 -60 -60 -59 -60 -60 -61 -60 -58 -56 -55 -56 -55 -55 -55 -54 -53 -52 -50 -49 -49 -49 -49 -48 -46 -45 -45 -44 -43 -43 -44 -44 -43 -42 -40 -38 -36 -34 -34 -34 -33 -32 -30 -27 -44 -52 -59 -63 -64 -64 -63 -60 -56 -49 -43 -39 -37 -34 -27 -21 -19 -22 -28 -36 -46 -52 -53 -42 -40 -45 -53 -57 -56 -54 -54 -55 -57 -55 -53 -52 -49 -42 -40 -39 -38 -34 -33 -32 -33 -34 -37 -42 -47 -51 -52 -52 -51 -49 -48 -48 -51 -55 -60 -65 -67 -60 -58 -63 -73 -78 -80 -80 -79 -78 -75 -72 -68 -65 -64 -66 -68 -69 -69 -68 -68 -67 -67 -68 -63 -60 -59 -59 -61 -64 -67 -69 -70 -70 -71 -73 -75 -75 -75 -76 -76 -76 -76 -76 -76 -77 -80 -81 -76 -70 -66 -66 -74 -82 -87 -86 -82 -77 -72 -69 -68 -71 -72 -73 -75 -76 -75 -71 -66 -64 -66 -69 -70 -71 -72 -69 -66 -64 -64 -71 -74 -75 -75 -76 -78 -78 -79 -79 -80 -80 -78 -77 -76 -75 -74 -73 -74 -75 -76 -76 -76 -75 -71 -60 -53 -50 -54 -58 -61 -63 -64 -65 -67 -69 -72 -75 -78 -80 -80 -79 -79 -77 -74 -70 -67 -65 -64 -63 -62 -62 -64 -64 -59 -53 -49 -49 -50 -51 -53 -56 -59 -60 -61 -60 -60 -63 -65 -66 -66 -66 -66 -65 -64 -63 -64 -66 -65 -58 -53 -55 -58 -62 -66 -66 -61 -54 -49 -47 -44 -43 -44 -48 -51 -52 -51 -50 -48 -46 -44 -44 -45 -45 -44 -40 -36 -33 -32 -33 -36 -38 -37 -32 -27 -26 -33 -48 -56 -60 -63 -68 -70 -70 -70 -70 -72 -74 -74 -74 -75 -77 -77 -78 -79 -80 -79 -79 -80 -82 -83 -82 -81 -80 -79 -79 -79 -81 -83 -85 -87 -88 -86 -83 -79 -76 -74 -73 -71 -67 -63 -60 -57 -55 -57 -59 -61 -63 -63 -64 -65 -67 -69 -70 -72 -73 -74 -74 -75 -75 -75 -75 -77 -78 -78 -78 -78 -78 -78 -78 -77 -77 -78 -80 -83 -85 -85 -85 -85 -86 -87 -88 -89 -90 -90 -87 -83 -79 -75 -72 -70 -69 -67 -66 -65 -62 -58 -54 -54 -56 -57 -57 -58 -59 -60 -61 -62 -62 -61 -61 -61 -61 -61 -61 -61 -62 -62 -61 -59 -57 -57 -57 -56 -56 -56 -55 -55 -53 -52 -50 -50 -49 -48 -47 -46 -47 -46 -44 -43 -44 -43 -41 -40 -40 -40 -39 -36 -33 -33 -32 -30 -28 -27 -25 -47 -54 -62 -68 -69 -68 -65 -60 -52 -43 -38 -37 -38 -39 -36 -29 -25 -26 -31 -39 -47 -53 -54 -45 -42 -45 -50 -55 -57 -56 -54 -54 -54 -54 -51 -49 -47 -42 -38 -34 -32 -31 -31 -32 -34 -37 -41 -45 -48 -49 -49 -49 -48 -47 -47 -49 -52 -55 -60 -64 -65 -58 -58 -63 -73 -78 -79 -79 -79 -78 -74 -71 -70 -72 -73 -71 -70 -69 -68 -67 -65 -65 -65 -65 -61 -59 -59 -61 -65 -69 -72 -74 -74 -73 -72 -73 -75 -76 -75 -75 -74 -72 -70 -68 -69 -70 -74 -75 -70 -63 -60 -62 -71 -80 -86 -87 -84 -78 -72 -68 -64 -66 -67 -70 -73 -74 -76 -74 -69 -67 -68 -71 -72 -72 -72 -69 -65 -64 -65 -69 -72 -74 -75 -75 -77 -77 -78 -79 -78 -78 -78 -77 -76 -74 -74 -74 -76 -77 -77 -75 -74 -71 -65 -56 -51 -50 -54 -58 -61 -63 -65 -67 -70 -73 -77 -81 -84 -84 -81 -76 -72 -71 -70 -70 -69 -69 -69 -69 -69 -70 -69 -66 -58 -51 -46 -48 -49 -51 -54 -58 -61 -63 -63 -62 -61 -64 -67 -69 -70 -69 -68 -67 -66 -65 -64 -65 -64 -60 -55 -56 -58 -61 -63 -61 -58 -54 -51 -48 -45 -44 -45 -48 -51 -52 -51 -49 -46 -43 -40 -39 -39 -42 -42 -39 -35 -32 -31 -34 -37 -40 -40 -36 -32 -29 -28 -38 -48 -55 -61 -67 -69 -70 -69 -69 -71 -72 -72 -72 -73 -76 -77 -79 -80 -81 -79 -79 -80 -83 -84 -84 -82 -81 -80 -79 -79 -79 -81 -83 -84 -83 -82 -79 -77 -75 -74 -72 -70 -67 -63 -60 -57 -56 -57 -60 -63 -65 -64 -64 -65 -67 -69 -71 -73 -74 -74 -75 -75 -75 -75 -76 -77 -77 -76 -75 -75 -76 -77 -77 -76 -77 -79 -81 -84 -85 -85 -84 -83 -83 -84 -84 -85 -84 -82 -78 -76 -74 -73 -71 -68 -67 -65 -64 -62 -59 -55 -52 -51 -54 -56 -58 -58 -58 -60 -62 -64 -63 -63 -62 -62 -62 -62 -62 -62 -63 -64 -62 -61 -60 -59 -59 -58 -57 -57 -56 -55 -54 -53 -52 -51 -49 -48 -47 -47 -47 -46 -45 -45 -46 -43 -40 -38 -38 -39 -38 -35 -32 -31 -29 -28 -27 -26 -25 -53 -55 -61 -66 -67 -65 -61 -55 -48 -40 -36 -35 -37 -40 -40 -38 -33 -30 -34 -41 -47 -52 -55 -49 -46 -48 -51 -54 -56 -55 -54 -52 -52 -52 -48 -45 -44 -44 -38 -33 -30 -30 -32 -33 -35 -40 -47 -50 -49 -46 -43 -44 -45 -46 -47 -49 -53 -58 -63 -64 -60 -55 -57 -63 -72 -77 -79 -79 -78 -76 -74 -73 -74 -78 -80 -78 -75 -71 -67 -63 -61 -62 -64 -62 -58 -57 -59 -63 -68 -72 -75 -77 -78 -78 -77 -76 -75 -74 -75 -75 -73 -69 -65 -63 -64 -67 -70 -67 -61 -55 -53 -58 -69 -79 -86 -88 -85 -79 -73 -68 -65 -65 -65 -67 -71 -74 -75 -74 -71 -67 -69 -70 -71 -72 -72 -69 -65 -64 -66 -68 -68 -72 -75 -75 -74 -75 -77 -78 -77 -76 -77 -78 -79 -78 -77 -78 -77 -76 -75 -73 -71 -68 -61 -53 -50 -51 -56 -59 -61 -63 -65 -67 -72 -78 -82 -85 -86 -85 -81 -76 -70 -69 -70 -71 -72 -72 -73 -74 -74 -72 -69 -63 -56 -49 -44 -46 -49 -52 -57 -61 -63 -65 -66 -65 -63 -64 -67 -69 -70 -69 -68 -68 -67 -64 -63 -62 -61 -60 -58 -57 -58 -60 -61 -59 -56 -54 -52 -49 -46 -45 -45 -46 -47 -48 -47 -44 -42 -40 -38 -37 -37 -41 -40 -38 -36 -34 -32 -33 -36 -39 -40 -39 -36 -34 -32 -36 -42 -50 -58 -64 -67 -69 -70 -71 -71 -70 -70 -69 -71 -74 -77 -80 -81 -78 -77 -78 -81 -85 -85 -86 -85 -84 -82 -80 -78 -77 -78 -79 -79 -78 -77 -75 -75 -74 -73 -71 -69 -66 -64 -61 -59 -58 -60 -63 -66 -66 -64 -63 -63 -66 -68 -70 -71 -73 -74 -75 -75 -76 -77 -77 -77 -76 -75 -73 -73 -74 -75 -76 -75 -77 -79 -81 -84 -85 -85 -84 -83 -82 -81 -81 -81 -80 -78 -75 -74 -73 -73 -71 -68 -65 -64 -63 -60 -57 -54 -51 -51 -53 -56 -57 -57 -58 -61 -64 -66 -65 -64 -63 -63 -63 -63 -63 -63 -64 -65 -64 -63 -63 -62 -60 -59 -58 -57 -56 -56 -55 -55 -54 -52 -50 -49 -48 -47 -47 -47 -46 -45 -45 -43 -40 -38 -36 -37 -36 -33 -31 -30 -28 -27 -27 -27 -28 -57 -56 -57 -59 -60 -56 -52 -47 -44 -40 -37 -35 -36 -38 -42 -44 -40 -36 -35 -40 -44 -49 -54 -53 -50 -51 -53 -54 -54 -52 -50 -49 -47 -46 -43 -41 -41 -44 -41 -36 -33 -32 -33 -34 -37 -43 -51 -55 -55 -52 -49 -47 -46 -46 -46 -48 -55 -61 -65 -65 -60 -55 -57 -62 -69 -72 -75 -75 -75 -72 -72 -75 -79 -83 -85 -81 -77 -72 -65 -57 -56 -58 -60 -59 -55 -54 -58 -63 -68 -73 -76 -78 -79 -80 -81 -80 -77 -74 -73 -72 -71 -67 -64 -62 -62 -65 -65 -58 -50 -45 -45 -53 -64 -76 -85 -89 -85 -81 -76 -70 -65 -65 -65 -67 -71 -74 -75 -74 -72 -70 -71 -71 -72 -72 -71 -68 -65 -64 -65 -70 -70 -71 -72 -72 -71 -72 -74 -76 -74 -74 -76 -79 -81 -82 -82 -80 -76 -73 -72 -72 -70 -66 -58 -50 -48 -50 -56 -58 -61 -63 -65 -67 -75 -81 -85 -86 -85 -82 -79 -77 -75 -73 -72 -71 -70 -71 -73 -74 -73 -70 -65 -58 -53 -50 -46 -46 -50 -55 -61 -65 -65 -65 -65 -65 -64 -64 -65 -66 -65 -66 -67 -67 -66 -63 -61 -60 -58 -57 -57 -58 -59 -60 -61 -60 -57 -53 -52 -50 -48 -46 -44 -43 -42 -42 -41 -41 -40 -40 -40 -41 -42 -43 -40 -38 -38 -38 -37 -35 -34 -36 -40 -41 -40 -39 -37 -38 -43 -51 -60 -66 -67 -68 -70 -72 -72 -71 -70 -70 -71 -74 -77 -80 -81 -76 -75 -77 -80 -83 -86 -87 -86 -84 -82 -79 -77 -75 -74 -74 -74 -75 -74 -73 -73 -72 -71 -69 -68 -66 -64 -62 -61 -60 -61 -62 -63 -60 -58 -58 -60 -63 -65 -67 -69 -71 -72 -74 -75 -77 -78 -79 -79 -77 -75 -74 -74 -75 -76 -76 -76 -77 -78 -80 -82 -83 -84 -83 -82 -82 -81 -80 -79 -78 -77 -75 -73 -73 -73 -71 -67 -64 -62 -61 -58 -56 -53 -51 -51 -53 -55 -55 -55 -58 -61 -64 -66 -65 -65 -65 -65 -65 -65 -65 -64 -64 -65 -65 -65 -64 -64 -62 -61 -60 -58 -57 -56 -56 -55 -54 -52 -50 -50 -49 -47 -47 -47 -46 -45 -44 -42 -40 -37 -35 -35 -34 -32 -31 -30 -29 -29 -29 -30 -31 -57 -55 -53 -52 -50 -45 -41 -39 -39 -39 -38 -36 -36 -38 -44 -47 -45 -39 -33 -34 -39 -45 -52 -56 -54 -53 -51 -51 -49 -47 -46 -45 -44 -42 -40 -39 -40 -43 -44 -41 -37 -35 -36 -37 -37 -39 -46 -52 -55 -54 -52 -48 -44 -43 -45 -50 -59 -64 -66 -66 -65 -63 -62 -62 -65 -66 -67 -68 -68 -69 -73 -78 -82 -85 -86 -83 -77 -70 -61 -54 -53 -55 -56 -54 -52 -53 -57 -62 -67 -71 -75 -78 -80 -81 -81 -81 -79 -74 -71 -69 -68 -67 -64 -63 -64 -64 -61 -49 -40 -36 -39 -50 -62 -73 -82 -87 -86 -83 -78 -71 -65 -65 -67 -71 -74 -77 -76 -74 -72 -71 -72 -72 -71 -69 -69 -68 -67 -66 -67 -70 -70 -69 -69 -69 -68 -68 -69 -73 -75 -75 -77 -79 -82 -83 -81 -77 -71 -69 -73 -74 -71 -64 -57 -50 -47 -49 -54 -56 -60 -64 -67 -71 -78 -83 -85 -85 -81 -78 -77 -78 -79 -78 -75 -73 -70 -70 -72 -72 -70 -67 -60 -54 -51 -50 -48 -49 -53 -58 -62 -64 -63 -63 -62 -61 -59 -58 -58 -58 -60 -62 -63 -64 -64 -62 -60 -59 -57 -54 -55 -57 -59 -60 -61 -62 -58 -53 -51 -51 -49 -47 -44 -42 -41 -40 -41 -43 -43 -44 -45 -44 -45 -43 -40 -38 -38 -41 -41 -39 -35 -34 -38 -42 -43 -42 -40 -41 -46 -52 -59 -64 -64 -64 -65 -70 -71 -69 -68 -67 -70 -74 -78 -80 -80 -77 -76 -76 -78 -80 -84 -86 -85 -83 -80 -78 -76 -74 -70 -68 -69 -71 -72 -71 -71 -71 -70 -69 -67 -64 -62 -61 -61 -60 -60 -60 -58 -53 -51 -53 -57 -60 -63 -65 -67 -69 -71 -73 -76 -78 -79 -80 -80 -79 -77 -75 -75 -76 -77 -77 -77 -77 -78 -79 -80 -81 -81 -82 -82 -82 -81 -80 -79 -78 -77 -75 -73 -72 -71 -69 -66 -63 -60 -58 -57 -55 -54 -52 -51 -51 -53 -54 -54 -57 -60 -63 -65 -65 -66 -67 -67 -67 -66 -65 -65 -64 -65 -66 -65 -65 -64 -64 -63 -61 -60 -57 -56 -56 -56 -54 -52 -52 -51 -49 -47 -47 -47 -47 -45 -44 -42 -39 -36 -35 -34 -32 -31 -32 -32 -32 -32 -32 -32 -32 -50 -48 -46 -44 -41 -35 -33 -34 -37 -38 -37 -37 -39 -43 -48 -48 -43 -35 -27 -27 -36 -45 -52 -56 -56 -53 -50 -47 -44 -42 -42 -42 -42 -41 -42 -42 -41 -42 -41 -40 -40 -39 -41 -42 -40 -38 -39 -47 -52 -52 -48 -41 -38 -39 -45 -53 -61 -63 -63 -64 -67 -69 -68 -65 -62 -60 -61 -63 -66 -70 -76 -80 -83 -84 -84 -80 -74 -66 -59 -54 -53 -53 -53 -52 -52 -53 -57 -61 -65 -68 -72 -75 -78 -79 -80 -80 -79 -75 -70 -67 -67 -67 -66 -66 -66 -64 -57 -44 -35 -33 -38 -49 -61 -71 -80 -86 -87 -85 -79 -72 -64 -65 -68 -72 -77 -79 -79 -76 -74 -72 -72 -71 -69 -68 -69 -68 -68 -68 -68 -68 -67 -67 -68 -68 -68 -69 -70 -72 -73 -73 -75 -77 -79 -80 -77 -72 -69 -71 -76 -77 -72 -64 -57 -52 -50 -50 -54 -57 -62 -67 -71 -77 -81 -84 -85 -83 -78 -75 -75 -78 -81 -80 -78 -75 -71 -69 -70 -70 -68 -63 -56 -52 -51 -51 -52 -53 -55 -57 -59 -60 -59 -57 -54 -52 -52 -53 -53 -54 -56 -57 -59 -60 -62 -61 -61 -60 -58 -53 -53 -55 -58 -59 -60 -60 -58 -55 -52 -52 -51 -49 -45 -42 -41 -42 -44 -47 -47 -46 -45 -45 -48 -44 -39 -35 -35 -39 -41 -39 -35 -33 -36 -40 -43 -44 -43 -44 -49 -54 -58 -60 -59 -58 -58 -61 -61 -62 -65 -70 -73 -77 -79 -81 -80 -78 -77 -76 -77 -77 -79 -81 -82 -80 -79 -76 -74 -72 -69 -66 -66 -68 -69 -70 -71 -71 -71 -69 -66 -62 -59 -58 -58 -58 -59 -58 -56 -50 -48 -49 -52 -57 -61 -64 -67 -68 -71 -73 -75 -78 -79 -80 -81 -80 -78 -77 -77 -78 -78 -78 -78 -78 -78 -76 -75 -77 -79 -80 -81 -81 -80 -80 -79 -78 -77 -75 -73 -71 -70 -68 -65 -62 -58 -56 -56 -55 -54 -51 -49 -49 -50 -52 -54 -56 -58 -60 -62 -65 -67 -68 -68 -67 -66 -66 -66 -66 -66 -66 -65 -65 -64 -64 -63 -62 -61 -58 -56 -56 -56 -54 -53 -52 -51 -49 -49 -48 -47 -47 -46 -45 -42 -39 -35 -34 -33 -32 -33 -34 -35 -35 -35 -34 -34 -33 -38 -35 -33 -32 -31 -30 -32 -35 -36 -35 -35 -39 -42 -45 -48 -47 -42 -32 -23 -22 -32 -44 -54 -57 -53 -49 -47 -45 -40 -38 -39 -40 -41 -41 -44 -44 -42 -41 -39 -39 -41 -43 -47 -50 -48 -41 -36 -42 -46 -45 -38 -32 -33 -39 -47 -54 -58 -58 -58 -60 -66 -72 -72 -68 -63 -60 -61 -65 -69 -74 -78 -81 -83 -82 -79 -74 -69 -63 -59 -57 -55 -54 -53 -53 -53 -54 -56 -59 -63 -66 -69 -72 -74 -77 -78 -79 -79 -77 -71 -67 -66 -68 -69 -68 -66 -62 -53 -41 -34 -34 -40 -49 -60 -70 -78 -85 -88 -87 -81 -73 -65 -64 -68 -73 -79 -82 -81 -79 -75 -72 -70 -68 -67 -68 -71 -70 -70 -69 -68 -63 -62 -64 -66 -65 -65 -68 -70 -69 -69 -70 -72 -74 -76 -78 -76 -73 -72 -77 -81 -80 -73 -63 -54 -51 -50 -52 -58 -61 -65 -69 -76 -82 -85 -86 -85 -83 -77 -74 -74 -76 -80 -81 -80 -78 -73 -69 -69 -68 -66 -61 -55 -52 -51 -52 -54 -55 -54 -54 -54 -53 -51 -49 -48 -48 -49 -49 -50 -52 -54 -54 -56 -58 -61 -61 -61 -61 -60 -56 -53 -54 -56 -57 -57 -57 -57 -56 -55 -53 -53 -51 -47 -45 -43 -45 -47 -49 -47 -46 -44 -45 -45 -41 -38 -36 -33 -33 -32 -31 -29 -28 -30 -34 -39 -42 -45 -47 -51 -55 -58 -58 -58 -57 -55 -54 -53 -55 -62 -72 -77 -80 -81 -81 -80 -79 -77 -77 -78 -78 -76 -76 -77 -77 -76 -73 -70 -68 -69 -68 -68 -69 -69 -71 -72 -72 -71 -68 -64 -60 -57 -55 -54 -55 -56 -56 -54 -52 -50 -47 -48 -53 -59 -63 -66 -68 -70 -73 -75 -77 -78 -80 -80 -80 -79 -78 -78 -78 -78 -78 -79 -79 -78 -75 -72 -74 -77 -80 -81 -80 -79 -78 -78 -77 -76 -75 -73 -71 -69 -67 -64 -61 -57 -55 -54 -53 -51 -49 -48 -48 -50 -51 -53 -56 -57 -58 -60 -63 -66 -68 -68 -67 -67 -66 -66 -67 -67 -67 -66 -65 -64 -64 -64 -63 -61 -59 -57 -56 -56 -54 -54 -53 -52 -50 -50 -48 -46 -45 -46 -46 -43 -39 -36 -34 -33 -33 -34 -36 -37 -37 -37 -36 -34 -32 -27 -20 -17 -19 -24 -31 -34 -35 -35 -36 -38 -41 -44 -46 -46 -44 -40 -34 -26 -22 -31 -43 -53 -56 -50 -46 -43 -41 -36 -34 -36 -38 -40 -41 -42 -43 -42 -41 -39 -39 -41 -45 -49 -54 -51 -44 -36 -38 -40 -36 -29 -25 -32 -41 -48 -52 -53 -53 -54 -58 -66 -72 -73 -71 -67 -64 -67 -70 -74 -77 -81 -83 -82 -79 -73 -68 -63 -61 -61 -60 -58 -56 -55 -54 -54 -54 -56 -58 -60 -63 -66 -68 -71 -74 -77 -79 -79 -78 -73 -69 -67 -70 -71 -69 -65 -60 -51 -41 -36 -37 -43 -51 -59 -68 -76 -83 -87 -86 -80 -72 -65 -65 -69 -75 -83 -85 -83 -79 -75 -71 -68 -67 -68 -70 -73 -73 -71 -67 -63 -57 -58 -61 -62 -59 -61 -65 -67 -66 -67 -68 -70 -74 -78 -79 -77 -76 -77 -81 -83 -80 -72 -62 -53 -51 -52 -55 -57 -61 -64 -68 -76 -80 -84 -85 -84 -83 -79 -77 -75 -75 -78 -80 -81 -79 -75 -70 -68 -68 -67 -62 -56 -53 -51 -52 -54 -54 -53 -51 -50 -48 -46 -45 -46 -48 -48 -47 -48 -51 -51 -52 -54 -56 -58 -59 -62 -65 -65 -61 -56 -53 -53 -54 -54 -55 -55 -55 -56 -56 -55 -54 -51 -49 -48 -47 -47 -47 -45 -45 -45 -45 -41 -38 -37 -37 -37 -35 -31 -26 -22 -19 -20 -23 -28 -35 -42 -49 -54 -57 -58 -57 -57 -57 -57 -54 -51 -50 -56 -68 -76 -79 -80 -79 -78 -78 -78 -79 -81 -82 -81 -78 -76 -74 -72 -68 -63 -60 -64 -68 -71 -72 -72 -73 -73 -71 -69 -66 -63 -60 -56 -54 -53 -53 -53 -53 -54 -55 -54 -50 -46 -49 -55 -61 -65 -68 -70 -72 -74 -75 -77 -77 -78 -78 -78 -78 -78 -78 -78 -78 -79 -79 -78 -76 -73 -74 -76 -79 -81 -81 -80 -77 -76 -76 -75 -74 -73 -71 -69 -67 -64 -60 -56 -54 -52 -50 -49 -48 -47 -48 -50 -51 -53 -56 -57 -56 -59 -62 -64 -67 -68 -68 -67 -67 -67 -67 -67 -67 -66 -66 -65 -64 -64 -63 -61 -59 -58 -57 -56 -55 -55 -53 -52 -50 -50 -48 -46 -45 -46 -45 -44 -41 -38 -35 -34 -33 -35 -37 -38 -38 -37 -36 -33 -31 -16 -11 -10 -15 -24 -34 -36 -37 -38 -38 -41 -44 -46 -45 -42 -40 -39 -36 -30 -25 -33 -43 -51 -53 -49 -44 -41 -38 -34 -33 -34 -36 -37 -38 -39 -40 -40 -41 -39 -39 -41 -45 -47 -50 -48 -41 -34 -34 -33 -28 -23 -25 -36 -43 -47 -49 -51 -52 -54 -59 -67 -71 -72 -72 -70 -70 -72 -75 -77 -80 -84 -84 -80 -73 -66 -62 -60 -61 -63 -61 -60 -58 -56 -54 -53 -54 -54 -56 -58 -61 -63 -65 -68 -72 -75 -77 -78 -77 -74 -71 -69 -71 -73 -70 -66 -60 -53 -44 -40 -41 -45 -51 -57 -65 -73 -80 -83 -80 -74 -67 -63 -65 -70 -77 -85 -85 -81 -77 -72 -69 -67 -68 -69 -72 -74 -73 -69 -62 -55 -52 -56 -59 -58 -54 -57 -61 -64 -65 -67 -69 -73 -77 -82 -82 -80 -78 -79 -81 -81 -78 -70 -58 -52 -51 -53 -54 -55 -57 -61 -68 -76 -81 -84 -86 -86 -82 -80 -80 -81 -80 -77 -77 -79 -82 -79 -72 -69 -68 -67 -63 -58 -54 -51 -51 -51 -51 -50 -49 -47 -46 -45 -45 -46 -48 -47 -47 -47 -50 -50 -51 -53 -55 -56 -60 -64 -68 -68 -66 -61 -56 -53 -51 -53 -55 -56 -55 -55 -57 -58 -57 -55 -54 -51 -48 -45 -43 -43 -45 -46 -43 -38 -34 -34 -36 -39 -39 -37 -33 -28 -23 -19 -19 -21 -27 -36 -46 -54 -57 -58 -56 -56 -58 -59 -59 -55 -51 -52 -61 -69 -75 -78 -78 -77 -77 -78 -80 -82 -84 -83 -81 -78 -74 -72 -68 -60 -51 -55 -63 -70 -74 -74 -74 -73 -71 -68 -66 -64 -61 -57 -54 -53 -52 -51 -52 -55 -58 -58 -55 -49 -49 -54 -59 -65 -68 -70 -72 -73 -74 -74 -75 -75 -76 -77 -77 -77 -77 -76 -78 -79 -79 -78 -77 -76 -76 -77 -79 -81 -82 -80 -77 -75 -75 -74 -74 -74 -72 -70 -67 -63 -60 -56 -54 -51 -49 -48 -48 -47 -48 -49 -51 -54 -56 -57 -57 -60 -62 -64 -66 -68 -68 -68 -68 -68 -67 -67 -67 -67 -66 -65 -64 -63 -62 -61 -59 -58 -58 -57 -56 -55 -54 -52 -50 -50 -50 -49 -47 -45 -44 -44 -42 -40 -37 -35 -34 -36 -37 -38 -38 -37 -35 -33 -31 -7 -6 -8 -15 -26 -37 -40 -41 -42 -42 -44 -45 -46 -44 -39 -38 -39 -38 -34 -31 -36 -43 -48 -48 -47 -43 -40 -37 -33 -32 -34 -35 -34 -35 -36 -37 -39 -40 -39 -38 -39 -43 -45 -43 -39 -34 -30 -28 -25 -23 -24 -31 -38 -42 -45 -49 -54 -57 -59 -62 -66 -71 -72 -72 -73 -75 -76 -77 -78 -82 -84 -83 -77 -67 -56 -55 -58 -62 -64 -62 -60 -58 -56 -54 -52 -53 -54 -56 -57 -58 -60 -62 -66 -69 -73 -75 -76 -76 -74 -73 -73 -73 -73 -71 -68 -63 -56 -49 -47 -48 -50 -54 -58 -63 -70 -76 -77 -73 -68 -64 -65 -69 -74 -78 -83 -81 -76 -72 -69 -68 -69 -70 -70 -70 -72 -68 -61 -53 -49 -51 -56 -57 -55 -53 -56 -60 -63 -68 -72 -75 -78 -82 -86 -82 -79 -78 -79 -79 -79 -75 -68 -58 -53 -53 -54 -54 -54 -55 -61 -70 -78 -82 -83 -85 -85 -83 -85 -87 -86 -82 -78 -78 -79 -78 -73 -69 -68 -68 -67 -62 -58 -54 -51 -48 -47 -49 -50 -48 -47 -47 -47 -47 -47 -48 -47 -47 -48 -50 -50 -50 -52 -54 -59 -64 -69 -71 -71 -69 -63 -57 -52 -51 -53 -54 -54 -53 -53 -56 -58 -58 -56 -54 -51 -47 -44 -41 -43 -45 -46 -40 -35 -32 -32 -33 -37 -41 -42 -40 -36 -31 -26 -23 -23 -27 -35 -43 -50 -55 -56 -56 -58 -61 -64 -64 -60 -57 -55 -58 -64 -69 -73 -76 -77 -78 -79 -80 -82 -84 -84 -82 -78 -74 -72 -69 -63 -54 -54 -59 -66 -72 -74 -73 -72 -71 -70 -68 -65 -61 -58 -54 -53 -52 -52 -53 -56 -58 -58 -57 -56 -55 -57 -60 -65 -68 -70 -71 -72 -72 -72 -73 -73 -75 -75 -76 -76 -76 -76 -78 -79 -79 -79 -78 -78 -79 -79 -79 -81 -81 -79 -77 -75 -74 -74 -73 -74 -73 -70 -66 -62 -59 -57 -54 -51 -49 -48 -47 -47 -47 -49 -51 -53 -54 -56 -57 -60 -63 -66 -68 -68 -68 -69 -69 -68 -68 -68 -67 -67 -67 -67 -65 -64 -61 -60 -59 -58 -58 -57 -56 -55 -53 -52 -50 -51 -52 -52 -49 -45 -43 -43 -42 -41 -38 -36 -35 -36 -38 -38 -39 -38 -35 -33 -33 -2 -5 -10 -19 -29 -39 -43 -45 -45 -45 -46 -46 -44 -41 -37 -37 -39 -40 -39 -37 -38 -41 -44 -45 -44 -42 -40 -37 -33 -32 -33 -33 -31 -32 -33 -35 -38 -40 -40 -39 -38 -39 -42 -38 -33 -29 -27 -24 -21 -21 -25 -32 -38 -44 -48 -51 -56 -62 -65 -68 -71 -75 -75 -75 -76 -76 -76 -77 -78 -80 -81 -78 -72 -62 -53 -55 -59 -62 -63 -61 -59 -57 -54 -52 -51 -51 -52 -53 -55 -56 -58 -60 -64 -68 -71 -73 -74 -74 -76 -77 -76 -75 -73 -71 -69 -65 -59 -51 -48 -49 -53 -57 -59 -62 -66 -71 -71 -67 -64 -64 -67 -71 -74 -76 -76 -75 -69 -67 -67 -68 -69 -68 -65 -62 -61 -55 -50 -48 -48 -53 -56 -57 -56 -57 -60 -63 -67 -74 -78 -81 -83 -84 -84 -79 -77 -77 -79 -80 -78 -74 -68 -59 -55 -54 -54 -56 -57 -57 -63 -72 -79 -81 -82 -82 -83 -84 -89 -90 -86 -79 -77 -78 -78 -75 -68 -66 -67 -68 -66 -62 -58 -54 -50 -47 -46 -49 -50 -48 -48 -49 -49 -49 -49 -48 -47 -47 -50 -51 -50 -50 -52 -56 -63 -69 -72 -73 -71 -68 -63 -58 -54 -51 -52 -52 -52 -51 -53 -57 -59 -58 -55 -52 -49 -45 -42 -41 -42 -44 -44 -38 -35 -34 -33 -32 -34 -39 -41 -42 -41 -37 -33 -30 -29 -31 -37 -43 -49 -53 -57 -58 -60 -62 -65 -65 -64 -63 -63 -63 -64 -66 -70 -74 -77 -78 -79 -80 -81 -82 -83 -81 -79 -75 -72 -69 -64 -58 -58 -61 -65 -69 -72 -72 -72 -72 -73 -69 -63 -58 -56 -54 -53 -52 -53 -55 -57 -57 -58 -59 -60 -60 -61 -62 -65 -67 -69 -70 -71 -71 -71 -72 -73 -74 -74 -75 -76 -77 -77 -77 -78 -78 -79 -79 -79 -80 -81 -80 -80 -79 -78 -76 -75 -74 -73 -73 -74 -73 -70 -65 -60 -57 -56 -54 -52 -50 -48 -47 -47 -47 -48 -50 -52 -53 -55 -57 -60 -63 -66 -68 -68 -68 -69 -70 -69 -69 -68 -68 -68 -68 -68 -66 -64 -62 -60 -59 -58 -57 -56 -55 -54 -53 -52 -51 -53 -55 -53 -50 -46 -43 -42 -41 -41 -38 -35 -35 -36 -37 -38 -39 -38 -36 -35 -35 -2 -7 -14 -23 -32 -41 -46 -47 -48 -47 -48 -47 -43 -39 -35 -37 -39 -42 -43 -40 -38 -40 -42 -43 -43 -41 -38 -35 -31 -29 -30 -30 -30 -30 -32 -35 -38 -39 -40 -41 -40 -38 -37 -35 -32 -29 -27 -24 -22 -23 -28 -34 -40 -45 -50 -55 -61 -67 -71 -74 -76 -78 -78 -77 -76 -76 -75 -75 -76 -77 -77 -73 -66 -58 -53 -55 -57 -59 -59 -57 -54 -51 -48 -46 -47 -48 -50 -52 -53 -55 -57 -59 -63 -67 -69 -72 -74 -77 -79 -79 -78 -75 -73 -72 -70 -66 -59 -52 -50 -52 -55 -57 -58 -59 -62 -65 -65 -63 -63 -65 -69 -73 -74 -73 -71 -69 -64 -62 -64 -68 -63 -56 -51 -48 -48 -46 -45 -47 -49 -54 -58 -58 -57 -59 -62 -67 -72 -77 -80 -81 -82 -81 -78 -75 -77 -80 -83 -82 -78 -72 -65 -59 -58 -56 -56 -57 -60 -62 -67 -73 -79 -81 -81 -81 -81 -83 -89 -89 -84 -76 -74 -76 -77 -74 -67 -65 -66 -68 -67 -63 -59 -54 -49 -46 -48 -50 -48 -44 -43 -49 -51 -50 -49 -49 -47 -48 -50 -53 -52 -51 -53 -58 -66 -69 -70 -69 -67 -65 -63 -61 -57 -53 -52 -51 -52 -53 -54 -55 -55 -54 -51 -48 -45 -42 -41 -40 -41 -43 -42 -38 -35 -35 -35 -35 -35 -36 -38 -39 -40 -40 -38 -36 -35 -35 -40 -43 -46 -47 -52 -56 -59 -61 -62 -62 -63 -65 -68 -70 -69 -69 -70 -73 -76 -77 -78 -79 -80 -81 -81 -80 -79 -76 -74 -69 -64 -58 -59 -62 -65 -69 -71 -72 -72 -73 -72 -67 -60 -54 -52 -53 -53 -52 -53 -55 -57 -57 -58 -60 -62 -64 -66 -68 -68 -67 -68 -69 -70 -69 -70 -71 -73 -74 -74 -75 -76 -77 -77 -77 -77 -77 -77 -78 -79 -80 -80 -80 -79 -77 -76 -76 -75 -74 -73 -74 -75 -73 -70 -65 -60 -56 -54 -54 -53 -51 -48 -47 -46 -47 -49 -50 -52 -53 -55 -57 -60 -63 -66 -67 -68 -69 -70 -71 -70 -70 -70 -69 -69 -69 -68 -67 -65 -62 -60 -59 -59 -58 -57 -56 -54 -53 -53 -53 -55 -56 -54 -50 -47 -44 -42 -41 -40 -37 -35 -36 -35 -36 -37 -39 -38 -37 -37 -38 -3 -9 -18 -27 -36 -43 -48 -49 -50 -49 -49 -46 -42 -38 -36 -37 -40 -44 -46 -42 -39 -39 -40 -42 -43 -41 -40 -38 -31 -25 -26 -27 -29 -30 -32 -36 -38 -36 -36 -40 -42 -41 -36 -34 -34 -33 -29 -25 -24 -25 -30 -36 -43 -48 -54 -60 -66 -71 -75 -78 -80 -80 -79 -77 -75 -74 -73 -73 -74 -75 -73 -69 -63 -58 -54 -53 -52 -52 -51 -51 -49 -47 -45 -43 -44 -47 -50 -53 -55 -56 -57 -60 -63 -65 -68 -72 -76 -79 -80 -79 -77 -74 -72 -71 -70 -66 -59 -52 -51 -54 -58 -57 -55 -56 -58 -62 -62 -62 -63 -66 -69 -71 -70 -68 -66 -63 -58 -56 -56 -58 -52 -46 -43 -43 -42 -43 -46 -50 -53 -55 -57 -59 -61 -64 -66 -68 -70 -72 -76 -79 -80 -78 -76 -77 -80 -83 -85 -83 -77 -69 -60 -55 -57 -58 -59 -60 -63 -67 -72 -77 -79 -81 -81 -81 -81 -83 -87 -87 -82 -74 -71 -74 -75 -73 -68 -66 -67 -69 -68 -64 -59 -53 -49 -47 -49 -50 -48 -42 -37 -41 -46 -49 -50 -49 -47 -48 -51 -54 -55 -56 -58 -60 -64 -65 -64 -62 -61 -62 -63 -63 -61 -55 -53 -53 -54 -56 -55 -54 -52 -50 -48 -46 -44 -43 -42 -41 -42 -43 -43 -39 -35 -34 -35 -39 -39 -39 -38 -37 -37 -39 -40 -40 -38 -37 -40 -42 -43 -41 -43 -48 -55 -60 -61 -60 -61 -64 -69 -71 -72 -71 -71 -73 -75 -76 -77 -77 -79 -79 -80 -79 -78 -77 -74 -71 -66 -59 -59 -62 -67 -71 -72 -71 -69 -69 -68 -65 -59 -53 -49 -50 -51 -51 -52 -53 -56 -58 -60 -61 -63 -66 -69 -71 -71 -70 -69 -69 -69 -68 -69 -70 -72 -72 -73 -75 -76 -78 -78 -76 -75 -75 -75 -76 -77 -77 -78 -78 -76 -75 -74 -75 -75 -73 -72 -74 -76 -74 -69 -65 -60 -56 -54 -53 -52 -51 -50 -48 -47 -47 -50 -51 -53 -54 -56 -58 -61 -63 -66 -67 -68 -69 -70 -71 -71 -71 -72 -71 -70 -70 -68 -67 -65 -62 -60 -60 -59 -59 -58 -57 -55 -54 -53 -54 -55 -56 -54 -51 -48 -45 -43 -41 -39 -37 -36 -36 -35 -35 -37 -38 -38 -38 -39 -39 -6 -12 -21 -31 -40 -46 -50 -52 -53 -52 -50 -45 -39 -35 -35 -38 -43 -47 -49 -47 -41 -38 -39 -41 -43 -42 -42 -39 -32 -28 -28 -28 -30 -32 -34 -37 -37 -33 -31 -36 -41 -42 -37 -36 -38 -37 -33 -27 -26 -28 -33 -39 -46 -52 -57 -63 -69 -73 -77 -80 -81 -81 -79 -77 -74 -72 -70 -70 -71 -72 -70 -65 -61 -58 -56 -52 -49 -47 -47 -48 -49 -48 -46 -43 -45 -49 -53 -55 -57 -58 -60 -62 -64 -66 -69 -72 -76 -79 -79 -77 -75 -71 -70 -70 -69 -66 -61 -55 -53 -55 -58 -57 -53 -52 -55 -59 -60 -61 -63 -65 -67 -67 -66 -64 -61 -55 -50 -46 -46 -49 -47 -44 -43 -42 -42 -45 -50 -55 -55 -54 -56 -58 -60 -64 -65 -66 -68 -73 -79 -82 -81 -78 -77 -78 -82 -84 -85 -81 -74 -67 -60 -56 -57 -58 -60 -62 -66 -73 -80 -86 -85 -82 -81 -82 -85 -87 -87 -84 -78 -73 -70 -71 -71 -71 -72 -70 -70 -70 -70 -64 -57 -50 -46 -47 -50 -51 -50 -45 -37 -36 -39 -44 -49 -50 -50 -50 -52 -54 -56 -59 -62 -63 -64 -63 -60 -58 -59 -61 -63 -63 -61 -57 -55 -55 -55 -56 -55 -54 -52 -50 -48 -46 -45 -45 -44 -43 -44 -45 -45 -40 -35 -34 -35 -39 -42 -43 -42 -39 -37 -38 -40 -40 -39 -37 -37 -39 -40 -38 -35 -38 -47 -58 -60 -59 -60 -62 -65 -69 -71 -73 -73 -74 -74 -75 -75 -76 -76 -77 -78 -79 -78 -76 -74 -72 -69 -63 -60 -60 -65 -70 -70 -70 -69 -69 -68 -64 -59 -54 -51 -50 -49 -48 -49 -51 -54 -58 -61 -62 -64 -67 -70 -72 -72 -72 -71 -70 -68 -68 -69 -69 -70 -71 -73 -75 -76 -77 -77 -75 -74 -73 -74 -74 -74 -75 -75 -76 -74 -71 -70 -73 -74 -73 -72 -74 -75 -72 -68 -64 -61 -57 -54 -53 -51 -51 -50 -49 -48 -48 -50 -52 -54 -55 -58 -59 -61 -63 -66 -67 -68 -69 -69 -70 -70 -71 -72 -72 -71 -70 -69 -67 -64 -61 -60 -60 -60 -60 -60 -58 -56 -55 -54 -54 -54 -55 -54 -52 -49 -46 -44 -42 -39 -37 -37 -36 -35 -35 -35 -37 -39 -40 -41 -40 -8 -16 -25 -33 -41 -48 -53 -56 -55 -53 -49 -43 -36 -33 -34 -40 -45 -48 -49 -48 -42 -38 -37 -40 -43 -42 -41 -39 -35 -33 -33 -33 -32 -32 -34 -37 -37 -34 -28 -31 -37 -41 -38 -37 -40 -40 -37 -30 -28 -31 -36 -43 -48 -54 -60 -65 -70 -74 -77 -80 -81 -79 -78 -76 -74 -71 -69 -68 -68 -67 -64 -60 -57 -56 -57 -56 -54 -52 -50 -52 -54 -54 -51 -47 -50 -54 -57 -57 -57 -60 -63 -66 -67 -69 -70 -73 -75 -76 -76 -75 -72 -69 -67 -68 -68 -67 -64 -61 -58 -57 -56 -55 -50 -50 -52 -56 -56 -57 -59 -62 -64 -63 -62 -60 -55 -45 -38 -37 -41 -48 -50 -48 -46 -45 -45 -49 -55 -60 -58 -54 -54 -56 -61 -64 -65 -66 -69 -75 -81 -82 -80 -78 -78 -81 -84 -85 -83 -79 -73 -67 -62 -57 -56 -58 -62 -65 -70 -77 -83 -87 -88 -84 -83 -84 -87 -89 -87 -82 -77 -72 -69 -68 -69 -71 -75 -73 -71 -70 -69 -63 -54 -46 -42 -45 -49 -53 -53 -50 -43 -39 -38 -41 -47 -51 -52 -52 -53 -57 -61 -65 -67 -67 -65 -61 -57 -55 -57 -60 -61 -60 -58 -57 -57 -57 -55 -53 -52 -52 -52 -51 -49 -47 -45 -44 -44 -44 -45 -47 -48 -42 -38 -36 -37 -41 -45 -45 -44 -42 -41 -40 -40 -40 -39 -36 -34 -35 -36 -37 -32 -32 -39 -52 -56 -57 -57 -58 -59 -63 -67 -70 -72 -73 -72 -73 -74 -74 -74 -75 -77 -79 -77 -75 -73 -73 -71 -68 -63 -60 -62 -66 -68 -69 -69 -69 -67 -62 -57 -52 -51 -52 -51 -50 -46 -48 -52 -56 -60 -62 -64 -66 -69 -71 -73 -74 -73 -71 -69 -69 -69 -69 -69 -70 -72 -75 -76 -75 -74 -73 -73 -72 -73 -73 -72 -72 -72 -73 -72 -71 -70 -72 -73 -72 -71 -72 -73 -70 -67 -65 -62 -58 -54 -52 -51 -50 -49 -48 -46 -47 -49 -51 -53 -55 -57 -59 -60 -61 -64 -66 -67 -68 -68 -69 -70 -71 -72 -72 -72 -71 -69 -67 -63 -60 -59 -59 -60 -60 -60 -59 -57 -56 -55 -54 -54 -55 -54 -53 -51 -48 -46 -42 -39 -37 -37 -36 -35 -35 -36 -38 -40 -41 -42 -41 -13 -20 -26 -33 -41 -49 -54 -56 -56 -53 -50 -44 -36 -32 -34 -43 -48 -49 -48 -46 -41 -37 -36 -38 -40 -40 -40 -38 -36 -35 -35 -36 -35 -32 -33 -36 -38 -36 -28 -28 -34 -41 -41 -40 -40 -40 -38 -34 -31 -33 -39 -46 -50 -55 -61 -67 -72 -74 -77 -78 -79 -76 -75 -74 -72 -69 -67 -66 -64 -61 -55 -50 -49 -52 -57 -62 -63 -63 -61 -61 -61 -60 -58 -55 -56 -59 -60 -58 -56 -60 -64 -67 -68 -70 -72 -73 -74 -73 -73 -72 -69 -65 -65 -67 -68 -69 -69 -69 -65 -60 -54 -51 -48 -47 -48 -50 -49 -50 -53 -56 -58 -57 -56 -53 -46 -33 -28 -32 -43 -53 -56 -54 -51 -49 -48 -52 -57 -61 -61 -56 -54 -55 -61 -65 -66 -67 -70 -75 -79 -80 -78 -77 -79 -83 -84 -83 -80 -77 -73 -69 -63 -57 -55 -60 -67 -73 -77 -82 -85 -86 -84 -86 -87 -89 -92 -92 -86 -80 -76 -74 -67 -67 -70 -72 -73 -70 -69 -68 -68 -62 -51 -42 -38 -42 -48 -52 -54 -53 -51 -47 -42 -41 -46 -52 -54 -55 -55 -60 -65 -68 -68 -65 -62 -59 -58 -57 -58 -58 -58 -59 -60 -61 -61 -59 -56 -51 -49 -48 -49 -50 -49 -46 -44 -43 -43 -43 -45 -48 -49 -44 -40 -39 -40 -44 -46 -46 -44 -42 -42 -41 -40 -40 -38 -37 -36 -35 -35 -36 -32 -31 -34 -43 -50 -51 -52 -53 -54 -57 -61 -65 -69 -69 -69 -70 -72 -72 -73 -74 -75 -77 -75 -73 -72 -72 -71 -68 -65 -62 -61 -64 -67 -68 -69 -68 -66 -61 -55 -50 -49 -51 -53 -53 -51 -49 -50 -54 -58 -61 -64 -66 -69 -71 -74 -73 -72 -71 -72 -72 -71 -69 -69 -71 -73 -74 -74 -73 -72 -71 -72 -72 -72 -72 -71 -71 -70 -70 -71 -72 -73 -74 -73 -71 -69 -70 -71 -70 -68 -67 -62 -57 -54 -51 -49 -47 -46 -45 -45 -47 -48 -49 -50 -53 -56 -58 -60 -61 -62 -64 -65 -66 -67 -69 -70 -71 -71 -72 -72 -72 -71 -67 -62 -59 -58 -58 -58 -59 -60 -59 -57 -56 -56 -55 -55 -55 -54 -53 -51 -49 -46 -43 -39 -38 -37 -36 -35 -36 -37 -39 -41 -42 -43 -42 -17 -23 -29 -37 -45 -52 -57 -58 -57 -54 -50 -46 -39 -35 -36 -45 -50 -51 -48 -44 -42 -38 -36 -36 -37 -37 -37 -37 -35 -34 -35 -35 -35 -32 -33 -36 -38 -38 -32 -29 -33 -40 -45 -43 -41 -40 -40 -39 -36 -39 -44 -49 -52 -56 -61 -67 -73 -75 -77 -78 -78 -75 -73 -70 -68 -66 -63 -61 -58 -52 -41 -37 -40 -48 -57 -63 -65 -66 -66 -64 -65 -65 -65 -63 -63 -63 -63 -60 -57 -61 -64 -67 -69 -71 -72 -73 -73 -70 -69 -67 -65 -62 -62 -65 -68 -72 -75 -75 -70 -62 -53 -47 -44 -43 -42 -39 -39 -42 -46 -51 -53 -50 -46 -41 -35 -28 -28 -36 -47 -55 -58 -58 -56 -52 -50 -53 -56 -60 -62 -58 -55 -55 -58 -65 -68 -69 -69 -71 -74 -76 -76 -75 -78 -81 -82 -80 -77 -75 -74 -71 -66 -59 -57 -62 -71 -78 -82 -86 -88 -89 -89 -90 -90 -91 -92 -90 -84 -80 -78 -77 -71 -67 -65 -64 -66 -66 -67 -69 -71 -64 -52 -41 -36 -40 -46 -50 -53 -55 -57 -55 -50 -46 -47 -52 -55 -57 -58 -61 -64 -65 -63 -59 -57 -57 -58 -60 -60 -58 -57 -60 -63 -63 -63 -62 -58 -51 -46 -43 -44 -46 -47 -46 -44 -43 -43 -44 -46 -48 -47 -42 -41 -41 -43 -46 -48 -47 -44 -41 -41 -41 -39 -37 -35 -35 -36 -37 -37 -38 -36 -32 -29 -34 -43 -46 -48 -49 -51 -53 -56 -60 -63 -64 -65 -66 -68 -70 -71 -72 -73 -74 -74 -72 -71 -69 -67 -65 -63 -62 -62 -64 -66 -67 -67 -67 -64 -61 -55 -49 -47 -48 -52 -54 -54 -53 -53 -54 -57 -60 -64 -67 -70 -73 -73 -71 -69 -71 -74 -75 -73 -70 -70 -72 -73 -73 -71 -70 -69 -70 -71 -72 -72 -71 -71 -70 -69 -69 -70 -71 -73 -74 -73 -71 -69 -71 -72 -71 -69 -66 -60 -56 -53 -50 -47 -45 -43 -43 -45 -47 -47 -47 -47 -50 -52 -54 -57 -61 -63 -64 -65 -66 -67 -68 -70 -70 -71 -71 -72 -72 -72 -68 -64 -60 -57 -56 -57 -58 -59 -59 -56 -56 -56 -57 -57 -57 -55 -53 -51 -49 -46 -43 -40 -38 -37 -36 -36 -36 -38 -40 -41 -42 -44 -45 -19 -25 -32 -40 -48 -54 -58 -59 -58 -56 -53 -50 -45 -41 -40 -47 -52 -54 -51 -47 -46 -43 -40 -36 -35 -33 -34 -35 -35 -34 -32 -32 -32 -32 -34 -36 -38 -39 -37 -33 -35 -41 -47 -45 -44 -44 -45 -47 -48 -49 -50 -50 -52 -57 -63 -69 -74 -77 -77 -77 -78 -75 -73 -70 -66 -62 -59 -57 -52 -44 -36 -36 -41 -49 -58 -61 -60 -59 -60 -61 -63 -64 -63 -62 -65 -66 -64 -60 -61 -63 -64 -66 -68 -69 -70 -70 -68 -65 -65 -64 -63 -60 -59 -63 -68 -74 -78 -76 -71 -63 -53 -45 -40 -35 -30 -26 -29 -36 -43 -48 -49 -45 -38 -33 -33 -30 -32 -37 -45 -53 -57 -59 -59 -56 -51 -51 -54 -58 -61 -58 -56 -55 -57 -61 -66 -69 -68 -65 -69 -72 -74 -75 -77 -79 -78 -76 -74 -75 -75 -73 -68 -62 -62 -68 -76 -81 -84 -86 -88 -90 -92 -94 -93 -91 -88 -86 -82 -79 -78 -80 -74 -69 -66 -65 -65 -66 -71 -76 -75 -65 -54 -45 -39 -40 -43 -47 -51 -57 -61 -60 -56 -51 -50 -52 -55 -57 -58 -59 -60 -60 -58 -54 -55 -56 -59 -61 -61 -60 -60 -61 -62 -61 -60 -59 -56 -51 -45 -39 -36 -37 -41 -44 -46 -45 -44 -44 -46 -47 -44 -41 -41 -43 -46 -48 -49 -48 -45 -41 -40 -40 -39 -36 -34 -34 -35 -36 -37 -38 -37 -34 -29 -28 -36 -42 -46 -46 -48 -51 -53 -56 -58 -59 -60 -61 -64 -67 -68 -69 -70 -71 -72 -71 -69 -66 -63 -62 -61 -61 -61 -63 -65 -66 -66 -66 -63 -61 -57 -51 -46 -46 -49 -53 -54 -55 -55 -56 -57 -59 -62 -66 -70 -72 -70 -68 -67 -70 -75 -76 -74 -71 -71 -73 -73 -72 -70 -68 -68 -69 -70 -71 -71 -71 -71 -70 -69 -68 -68 -68 -70 -72 -72 -72 -71 -72 -71 -69 -66 -61 -58 -55 -52 -48 -45 -43 -42 -42 -44 -46 -46 -45 -46 -48 -49 -49 -51 -56 -60 -63 -65 -66 -67 -68 -69 -69 -70 -70 -71 -72 -72 -68 -64 -60 -56 -56 -57 -58 -59 -58 -56 -55 -55 -57 -58 -58 -56 -54 -52 -50 -47 -44 -41 -39 -37 -36 -36 -37 -39 -40 -41 -43 -44 -46 -20 -26 -34 -41 -47 -53 -57 -57 -57 -57 -56 -54 -51 -49 -47 -49 -55 -58 -58 -56 -55 -52 -47 -42 -37 -32 -32 -34 -36 -35 -33 -30 -28 -27 -33 -35 -36 -35 -37 -36 -37 -40 -43 -44 -46 -48 -50 -54 -58 -60 -60 -56 -55 -58 -63 -68 -75 -79 -79 -79 -77 -74 -70 -67 -64 -60 -56 -51 -46 -41 -40 -45 -50 -57 -63 -66 -65 -63 -62 -63 -63 -62 -61 -62 -65 -65 -63 -61 -62 -63 -64 -64 -66 -67 -68 -67 -64 -60 -61 -61 -61 -60 -60 -62 -66 -72 -76 -73 -68 -60 -51 -41 -31 -22 -16 -17 -25 -34 -42 -47 -48 -45 -40 -37 -37 -34 -33 -35 -40 -48 -54 -58 -60 -60 -53 -49 -50 -55 -59 -58 -57 -56 -55 -57 -62 -66 -66 -63 -66 -70 -73 -73 -73 -74 -74 -73 -73 -76 -77 -74 -69 -63 -66 -73 -81 -85 -85 -87 -88 -90 -92 -93 -92 -87 -83 -82 -80 -78 -76 -80 -75 -70 -67 -67 -67 -72 -78 -80 -75 -67 -57 -47 -42 -45 -47 -50 -54 -58 -61 -61 -59 -54 -50 -52 -54 -56 -56 -56 -57 -58 -58 -55 -55 -56 -58 -62 -62 -62 -61 -61 -59 -57 -57 -57 -56 -52 -46 -39 -33 -31 -35 -40 -45 -47 -46 -46 -47 -46 -43 -41 -42 -45 -48 -50 -50 -49 -46 -42 -40 -39 -38 -36 -35 -33 -32 -32 -35 -36 -36 -34 -30 -25 -28 -34 -41 -44 -49 -52 -53 -53 -54 -55 -56 -57 -59 -64 -66 -67 -68 -69 -71 -70 -68 -65 -62 -61 -61 -62 -62 -63 -65 -66 -67 -66 -64 -61 -58 -53 -48 -46 -47 -50 -53 -55 -56 -57 -56 -57 -60 -64 -68 -68 -67 -66 -67 -70 -73 -74 -73 -71 -71 -72 -73 -72 -69 -68 -68 -68 -69 -70 -70 -70 -70 -69 -69 -68 -67 -66 -66 -68 -69 -70 -70 -69 -67 -65 -63 -60 -56 -53 -49 -46 -45 -44 -44 -42 -43 -44 -44 -43 -44 -47 -47 -46 -47 -52 -56 -59 -62 -63 -65 -66 -68 -68 -67 -69 -71 -72 -72 -68 -64 -60 -57 -57 -57 -58 -59 -58 -55 -54 -54 -56 -58 -58 -58 -56 -54 -52 -49 -46 -43 -40 -38 -36 -36 -37 -39 -41 -42 -43 -45 -47 -21 -31 -38 -43 -47 -51 -56 -55 -56 -57 -59 -57 -56 -56 -55 -53 -57 -61 -63 -63 -63 -59 -52 -46 -42 -37 -35 -35 -36 -35 -34 -32 -28 -26 -31 -35 -35 -34 -36 -39 -41 -43 -44 -45 -47 -49 -52 -59 -64 -66 -66 -62 -60 -62 -65 -70 -76 -79 -79 -77 -74 -70 -67 -63 -60 -57 -52 -46 -41 -41 -46 -52 -56 -60 -63 -65 -67 -67 -66 -65 -64 -62 -61 -63 -64 -63 -61 -59 -60 -62 -64 -66 -67 -67 -66 -64 -61 -58 -59 -59 -60 -61 -62 -63 -66 -69 -73 -68 -62 -53 -44 -32 -22 -15 -13 -17 -25 -32 -38 -42 -44 -43 -40 -37 -37 -36 -35 -34 -37 -46 -52 -56 -58 -57 -52 -49 -49 -53 -56 -55 -55 -55 -54 -54 -56 -60 -63 -64 -66 -68 -70 -70 -70 -69 -70 -72 -74 -77 -78 -74 -69 -63 -65 -73 -82 -89 -89 -90 -90 -91 -91 -90 -85 -80 -79 -79 -79 -78 -77 -80 -76 -71 -68 -69 -74 -81 -84 -82 -76 -69 -60 -52 -45 -46 -48 -52 -57 -58 -57 -57 -57 -54 -50 -51 -53 -55 -55 -56 -57 -59 -59 -59 -58 -57 -57 -62 -63 -63 -62 -60 -57 -56 -56 -57 -57 -53 -48 -42 -36 -33 -35 -38 -41 -44 -45 -46 -45 -42 -39 -39 -42 -45 -48 -50 -50 -49 -47 -44 -40 -38 -36 -35 -34 -32 -29 -28 -30 -33 -35 -35 -31 -27 -27 -30 -35 -38 -43 -48 -51 -50 -51 -53 -54 -54 -55 -59 -62 -64 -66 -69 -70 -70 -69 -66 -62 -60 -59 -61 -63 -64 -64 -65 -66 -65 -63 -60 -57 -53 -49 -47 -46 -49 -52 -54 -55 -55 -55 -56 -59 -63 -67 -67 -67 -66 -68 -71 -72 -72 -70 -67 -67 -71 -73 -74 -70 -68 -68 -68 -69 -69 -69 -69 -69 -69 -68 -67 -66 -66 -65 -65 -65 -66 -66 -65 -63 -62 -61 -59 -56 -53 -49 -46 -46 -45 -44 -42 -41 -41 -41 -41 -42 -46 -46 -46 -46 -50 -53 -56 -57 -59 -62 -65 -66 -65 -65 -67 -69 -71 -70 -67 -63 -60 -59 -59 -59 -58 -58 -57 -54 -53 -53 -55 -57 -59 -59 -58 -56 -54 -52 -49 -47 -43 -39 -37 -36 -37 -39 -41 -42 -45 -46 -48 -25 -39 -46 -48 -50 -52 -56 -56 -56 -58 -62 -62 -62 -63 -63 -61 -61 -63 -64 -63 -62 -58 -53 -47 -43 -40 -38 -35 -34 -35 -36 -35 -32 -27 -31 -36 -37 -35 -36 -41 -44 -46 -47 -47 -48 -51 -57 -63 -67 -68 -68 -65 -65 -67 -70 -74 -77 -78 -76 -72 -68 -65 -62 -59 -57 -54 -48 -42 -40 -42 -48 -53 -55 -57 -57 -59 -63 -66 -66 -62 -60 -60 -62 -64 -64 -61 -58 -56 -58 -63 -67 -69 -70 -69 -66 -63 -60 -59 -59 -60 -61 -62 -65 -66 -66 -66 -67 -61 -53 -43 -33 -23 -17 -16 -17 -19 -24 -30 -35 -39 -41 -39 -37 -35 -36 -38 -37 -36 -35 -43 -49 -52 -52 -51 -49 -48 -49 -51 -52 -52 -52 -53 -53 -52 -53 -56 -60 -64 -67 -67 -67 -66 -66 -66 -67 -71 -75 -78 -78 -75 -69 -63 -66 -75 -84 -87 -88 -89 -91 -92 -91 -85 -78 -73 -76 -77 -77 -77 -79 -81 -78 -74 -72 -75 -81 -85 -85 -80 -75 -70 -63 -55 -48 -45 -47 -52 -58 -58 -53 -51 -50 -49 -47 -49 -52 -54 -56 -59 -63 -65 -65 -64 -61 -59 -59 -60 -63 -64 -63 -60 -58 -57 -57 -58 -58 -55 -50 -45 -41 -38 -37 -37 -39 -42 -46 -45 -42 -38 -38 -40 -42 -44 -47 -49 -50 -48 -45 -43 -40 -37 -35 -34 -33 -31 -28 -27 -27 -30 -33 -33 -32 -30 -30 -33 -36 -38 -41 -44 -47 -48 -50 -52 -53 -51 -48 -50 -55 -60 -64 -68 -70 -71 -69 -66 -62 -58 -55 -57 -61 -63 -61 -60 -60 -60 -60 -58 -57 -53 -49 -47 -47 -49 -51 -52 -53 -53 -53 -54 -58 -62 -66 -67 -67 -67 -68 -70 -71 -71 -70 -66 -65 -69 -73 -74 -72 -70 -69 -68 -68 -68 -67 -67 -67 -68 -67 -67 -66 -65 -64 -63 -63 -63 -63 -62 -61 -60 -60 -58 -56 -54 -51 -48 -46 -45 -44 -42 -40 -40 -40 -40 -40 -44 -46 -46 -47 -51 -53 -53 -53 -55 -58 -62 -65 -64 -63 -65 -67 -69 -68 -65 -62 -60 -60 -60 -60 -59 -57 -55 -54 -53 -53 -54 -56 -59 -60 -60 -58 -56 -54 -52 -50 -45 -41 -39 -37 -38 -38 -40 -42 -45 -48 -50 -29 -44 -50 -51 -51 -53 -58 -61 -62 -63 -64 -66 -67 -66 -66 -66 -65 -63 -62 -60 -59 -56 -50 -45 -42 -42 -38 -34 -32 -34 -36 -36 -35 -32 -35 -38 -39 -37 -38 -43 -46 -48 -50 -50 -52 -55 -60 -66 -68 -68 -68 -67 -67 -69 -73 -76 -77 -77 -73 -67 -62 -59 -58 -56 -54 -52 -47 -45 -44 -44 -47 -49 -50 -51 -51 -55 -61 -64 -61 -55 -54 -58 -63 -66 -62 -58 -54 -53 -58 -66 -71 -73 -73 -70 -66 -63 -61 -60 -61 -62 -63 -65 -68 -67 -63 -59 -56 -49 -41 -33 -26 -21 -21 -23 -24 -23 -24 -28 -34 -39 -39 -37 -35 -35 -36 -38 -39 -38 -35 -41 -46 -48 -47 -45 -43 -43 -44 -45 -47 -49 -49 -49 -50 -50 -51 -55 -60 -64 -65 -64 -62 -62 -63 -65 -67 -70 -74 -77 -78 -76 -71 -68 -72 -78 -84 -85 -86 -89 -91 -93 -90 -81 -72 -69 -78 -75 -73 -73 -78 -81 -80 -79 -79 -82 -85 -83 -80 -75 -71 -67 -62 -56 -49 -45 -46 -49 -54 -53 -49 -45 -42 -43 -45 -49 -52 -55 -58 -60 -62 -63 -64 -63 -63 -62 -62 -62 -64 -64 -63 -61 -61 -59 -58 -57 -57 -56 -52 -47 -43 -40 -38 -37 -39 -43 -45 -43 -39 -36 -38 -40 -42 -44 -46 -48 -48 -47 -44 -41 -39 -37 -36 -35 -32 -30 -29 -28 -29 -30 -31 -32 -32 -32 -34 -36 -38 -40 -42 -44 -46 -47 -50 -54 -55 -52 -44 -42 -47 -56 -62 -66 -69 -70 -69 -66 -61 -56 -52 -52 -56 -58 -56 -54 -56 -57 -57 -57 -55 -52 -49 -46 -47 -49 -50 -51 -51 -51 -52 -54 -58 -63 -65 -67 -67 -67 -68 -69 -69 -68 -66 -63 -62 -66 -70 -74 -72 -70 -68 -67 -66 -66 -66 -66 -66 -66 -67 -67 -66 -65 -64 -63 -62 -62 -62 -60 -59 -59 -59 -58 -57 -55 -53 -50 -46 -44 -42 -41 -40 -40 -40 -38 -38 -41 -44 -45 -47 -51 -53 -52 -50 -52 -56 -59 -61 -60 -62 -64 -66 -67 -66 -64 -62 -60 -61 -61 -61 -59 -57 -55 -54 -53 -53 -53 -53 -55 -57 -59 -58 -57 -55 -54 -51 -47 -44 -40 -37 -38 -38 -40 -43 -46 -49 -52 -29 -39 -43 -48 -53 -57 -61 -64 -67 -68 -68 -66 -65 -64 -64 -63 -63 -62 -61 -60 -59 -55 -49 -44 -42 -42 -39 -35 -32 -32 -33 -35 -37 -39 -43 -45 -44 -41 -40 -43 -47 -50 -51 -54 -56 -59 -62 -66 -67 -67 -67 -66 -66 -69 -72 -75 -77 -76 -71 -64 -56 -53 -54 -55 -56 -55 -53 -54 -54 -51 -47 -46 -46 -49 -53 -59 -64 -63 -55 -48 -51 -59 -67 -68 -60 -55 -52 -55 -61 -68 -72 -74 -74 -70 -67 -65 -65 -63 -64 -65 -67 -67 -68 -63 -56 -47 -40 -35 -31 -28 -27 -29 -31 -33 -32 -28 -25 -28 -33 -39 -40 -39 -38 -38 -38 -38 -39 -39 -37 -42 -46 -47 -44 -40 -37 -35 -36 -38 -42 -46 -48 -48 -48 -49 -51 -55 -60 -64 -63 -61 -58 -56 -60 -64 -68 -71 -74 -76 -76 -75 -73 -74 -77 -80 -83 -86 -89 -92 -93 -93 -88 -78 -70 -67 -76 -75 -71 -69 -74 -80 -82 -83 -83 -82 -81 -78 -73 -68 -64 -62 -60 -55 -48 -43 -43 -46 -49 -49 -47 -44 -42 -40 -43 -48 -52 -56 -59 -60 -60 -60 -61 -61 -62 -63 -64 -64 -63 -62 -62 -60 -59 -58 -57 -55 -54 -52 -49 -44 -41 -38 -37 -37 -40 -43 -43 -40 -38 -37 -38 -40 -42 -44 -45 -46 -46 -45 -42 -40 -39 -37 -34 -33 -30 -29 -29 -30 -31 -32 -32 -31 -32 -33 -35 -37 -39 -42 -44 -46 -48 -48 -49 -52 -54 -54 -47 -42 -45 -55 -63 -67 -69 -68 -66 -63 -60 -57 -54 -50 -51 -51 -52 -52 -54 -55 -55 -54 -53 -51 -48 -46 -45 -48 -50 -51 -50 -50 -52 -55 -59 -63 -65 -66 -67 -68 -68 -69 -68 -65 -63 -63 -63 -63 -65 -67 -68 -68 -66 -65 -64 -64 -64 -64 -64 -65 -66 -66 -66 -65 -64 -63 -62 -61 -60 -58 -56 -57 -58 -58 -57 -55 -53 -50 -47 -44 -42 -40 -40 -39 -39 -37 -37 -39 -41 -42 -46 -51 -53 -52 -50 -52 -55 -57 -58 -58 -61 -63 -65 -65 -64 -62 -60 -60 -61 -62 -62 -60 -58 -55 -54 -53 -52 -52 -52 -52 -52 -52 -53 -54 -54 -53 -51 -49 -45 -41 -39 -39 -39 -41 -44 -48 -51 -54 -26 -34 -39 -48 -55 -60 -63 -66 -68 -70 -70 -68 -65 -63 -62 -60 -58 -58 -58 -58 -56 -54 -50 -46 -44 -43 -40 -37 -33 -31 -30 -32 -38 -45 -53 -55 -52 -46 -41 -43 -47 -51 -53 -56 -59 -62 -63 -65 -66 -66 -64 -62 -63 -66 -70 -74 -78 -76 -68 -59 -52 -51 -54 -58 -61 -61 -61 -62 -64 -64 -60 -54 -51 -52 -57 -63 -63 -59 -52 -51 -60 -69 -73 -68 -60 -56 -56 -59 -63 -67 -70 -73 -73 -72 -70 -69 -69 -67 -67 -68 -69 -69 -65 -55 -42 -30 -24 -25 -27 -29 -32 -36 -39 -39 -37 -33 -30 -30 -32 -36 -41 -43 -44 -43 -40 -38 -38 -39 -40 -44 -47 -47 -44 -38 -33 -29 -29 -32 -37 -43 -47 -49 -49 -50 -52 -56 -60 -62 -61 -57 -52 -51 -57 -64 -68 -71 -73 -75 -75 -74 -73 -75 -78 -81 -85 -90 -93 -94 -93 -92 -87 -78 -69 -66 -74 -78 -77 -73 -71 -79 -84 -85 -81 -78 -74 -69 -65 -63 -62 -60 -58 -53 -45 -38 -37 -42 -48 -50 -51 -51 -48 -42 -43 -48 -53 -57 -60 -60 -60 -60 -60 -60 -61 -63 -64 -63 -62 -59 -57 -55 -54 -53 -52 -52 -50 -48 -44 -41 -39 -39 -39 -40 -41 -42 -41 -40 -39 -39 -39 -41 -42 -43 -42 -42 -42 -42 -41 -40 -38 -37 -34 -30 -28 -28 -29 -32 -33 -32 -31 -31 -32 -34 -35 -37 -39 -42 -46 -48 -50 -49 -48 -49 -53 -57 -51 -44 -44 -52 -63 -68 -70 -68 -63 -60 -59 -57 -56 -52 -49 -48 -50 -53 -55 -54 -53 -52 -51 -50 -49 -47 -44 -47 -49 -51 -51 -51 -53 -57 -60 -63 -64 -65 -66 -67 -68 -68 -65 -62 -61 -63 -64 -64 -64 -65 -65 -65 -64 -63 -62 -62 -62 -63 -64 -65 -66 -66 -66 -65 -64 -63 -62 -61 -59 -57 -54 -55 -57 -58 -56 -54 -52 -50 -48 -45 -42 -40 -39 -38 -38 -37 -37 -38 -39 -41 -45 -49 -52 -52 -50 -52 -54 -57 -56 -57 -59 -61 -63 -63 -62 -60 -59 -60 -62 -63 -63 -61 -59 -56 -55 -54 -52 -52 -52 -51 -50 -48 -48 -50 -51 -52 -51 -50 -47 -43 -41 -40 -41 -43 -45 -49 -53 -57 -25 -32 -38 -46 -53 -59 -63 -66 -67 -69 -69 -68 -65 -63 -61 -58 -56 -57 -57 -55 -53 -51 -50 -48 -46 -45 -43 -40 -36 -32 -28 -30 -37 -48 -58 -62 -61 -54 -46 -45 -47 -51 -53 -57 -60 -63 -64 -65 -66 -65 -61 -58 -58 -62 -68 -75 -79 -73 -65 -56 -51 -52 -57 -62 -65 -67 -66 -67 -68 -71 -70 -64 -58 -53 -53 -55 -56 -56 -58 -64 -73 -77 -75 -67 -60 -59 -60 -63 -66 -69 -72 -72 -70 -71 -71 -70 -69 -67 -68 -70 -71 -69 -62 -48 -32 -18 -14 -17 -20 -24 -29 -34 -36 -37 -37 -36 -34 -31 -31 -34 -40 -44 -46 -46 -45 -41 -40 -41 -46 -50 -50 -47 -42 -34 -28 -25 -26 -30 -37 -42 -45 -46 -48 -51 -54 -58 -60 -59 -56 -52 -47 -46 -54 -62 -67 -68 -72 -74 -73 -71 -70 -71 -76 -82 -89 -93 -95 -95 -94 -92 -86 -77 -69 -67 -72 -77 -79 -78 -75 -80 -84 -84 -80 -74 -66 -61 -60 -63 -62 -60 -56 -51 -46 -40 -37 -37 -42 -49 -53 -56 -55 -47 -46 -50 -55 -59 -62 -61 -61 -60 -60 -61 -61 -62 -63 -62 -59 -57 -54 -52 -51 -51 -51 -50 -48 -47 -44 -42 -41 -41 -41 -42 -43 -45 -44 -42 -40 -40 -41 -42 -42 -41 -39 -39 -39 -40 -39 -39 -39 -38 -35 -31 -28 -27 -28 -30 -31 -31 -30 -30 -31 -33 -35 -37 -39 -42 -46 -48 -48 -48 -46 -48 -53 -58 -54 -46 -43 -50 -62 -68 -69 -66 -61 -57 -55 -55 -54 -52 -51 -51 -54 -56 -55 -53 -51 -50 -49 -50 -49 -47 -44 -45 -47 -50 -52 -53 -55 -58 -60 -62 -64 -65 -65 -64 -65 -64 -62 -60 -60 -63 -64 -65 -64 -64 -64 -63 -63 -61 -61 -61 -61 -62 -63 -64 -65 -66 -66 -65 -65 -64 -63 -61 -60 -58 -55 -53 -54 -55 -55 -53 -51 -50 -48 -46 -43 -40 -38 -38 -37 -38 -38 -39 -41 -43 -46 -48 -50 -49 -48 -50 -52 -54 -54 -56 -58 -59 -60 -62 -61 -60 -59 -61 -63 -64 -64 -62 -60 -57 -56 -55 -53 -52 -52 -51 -51 -48 -47 -47 -49 -51 -51 -49 -48 -45 -44 -43 -43 -45 -48 -52 -56 -59 -27 -34 -41 -44 -49 -55 -61 -64 -66 -67 -67 -65 -61 -60 -60 -60 -60 -61 -60 -56 -51 -49 -48 -48 -47 -47 -47 -45 -43 -39 -33 -31 -35 -44 -55 -62 -65 -63 -58 -55 -53 -53 -55 -60 -63 -64 -65 -66 -67 -63 -59 -56 -57 -62 -68 -73 -74 -68 -62 -58 -56 -58 -60 -62 -65 -67 -70 -72 -74 -75 -75 -71 -67 -63 -60 -59 -60 -63 -68 -74 -79 -78 -72 -65 -60 -59 -60 -63 -67 -71 -73 -71 -67 -67 -68 -67 -66 -66 -68 -70 -72 -72 -63 -44 -24 -8 -6 -9 -14 -20 -26 -29 -31 -32 -34 -35 -34 -31 -29 -30 -35 -38 -39 -40 -42 -43 -43 -43 -47 -50 -48 -42 -36 -30 -27 -26 -27 -30 -37 -41 -43 -44 -44 -47 -53 -58 -60 -56 -52 -47 -43 -42 -51 -60 -66 -67 -69 -71 -71 -69 -68 -69 -75 -84 -92 -94 -94 -94 -95 -94 -85 -75 -68 -68 -72 -79 -82 -82 -78 -81 -83 -83 -78 -68 -60 -58 -60 -64 -65 -60 -54 -50 -51 -52 -47 -40 -37 -43 -49 -53 -52 -46 -46 -51 -57 -61 -62 -61 -60 -60 -61 -62 -62 -62 -61 -60 -58 -56 -54 -52 -51 -50 -49 -47 -47 -46 -44 -43 -43 -44 -44 -45 -45 -46 -46 -45 -43 -41 -42 -42 -41 -39 -38 -38 -38 -38 -38 -39 -40 -39 -37 -33 -29 -27 -27 -27 -28 -29 -29 -29 -30 -32 -34 -36 -38 -40 -43 -44 -43 -43 -44 -48 -54 -58 -55 -48 -44 -50 -62 -67 -67 -64 -59 -56 -54 -53 -52 -51 -52 -54 -56 -55 -54 -52 -50 -48 -49 -50 -49 -48 -46 -45 -46 -49 -53 -55 -57 -58 -59 -59 -60 -63 -64 -64 -62 -61 -59 -58 -60 -63 -64 -64 -64 -64 -64 -63 -62 -61 -60 -60 -60 -61 -62 -64 -65 -65 -66 -65 -65 -64 -63 -62 -61 -59 -57 -54 -53 -53 -53 -54 -52 -50 -49 -47 -43 -40 -38 -38 -38 -38 -39 -40 -41 -43 -47 -49 -49 -47 -46 -48 -49 -50 -52 -54 -56 -57 -58 -60 -60 -60 -60 -62 -63 -64 -64 -63 -61 -59 -57 -56 -55 -53 -52 -52 -52 -50 -48 -47 -47 -49 -50 -51 -51 -49 -47 -46 -47 -48 -50 -54 -58 -61 -33 -37 -43 -46 -48 -52 -57 -63 -64 -65 -65 -63 -58 -57 -59 -63 -64 -64 -63 -59 -55 -51 -49 -48 -48 -49 -50 -52 -53 -52 -48 -44 -44 -47 -51 -55 -59 -60 -60 -60 -61 -61 -61 -63 -66 -67 -67 -67 -65 -62 -58 -54 -54 -59 -65 -68 -67 -63 -60 -60 -62 -64 -66 -67 -69 -71 -72 -72 -72 -73 -76 -76 -75 -73 -71 -69 -70 -72 -76 -79 -78 -75 -71 -67 -62 -60 -60 -63 -68 -72 -74 -72 -66 -63 -62 -62 -63 -66 -67 -68 -70 -72 -64 -42 -18 -2 -0 -6 -12 -18 -23 -25 -27 -28 -31 -32 -30 -27 -27 -29 -33 -34 -34 -36 -39 -44 -46 -45 -44 -44 -41 -36 -32 -30 -29 -31 -33 -36 -41 -44 -45 -43 -41 -43 -49 -55 -57 -53 -48 -44 -40 -39 -50 -61 -67 -66 -65 -66 -66 -64 -65 -70 -78 -85 -90 -91 -91 -92 -95 -95 -85 -73 -66 -67 -73 -81 -84 -84 -80 -82 -84 -83 -77 -65 -57 -57 -62 -67 -68 -61 -53 -49 -55 -58 -53 -44 -38 -43 -48 -52 -52 -51 -50 -51 -55 -58 -61 -61 -61 -62 -63 -63 -62 -61 -60 -59 -57 -56 -54 -54 -53 -50 -47 -44 -44 -44 -44 -43 -44 -46 -46 -45 -45 -45 -44 -43 -43 -42 -41 -40 -39 -37 -38 -38 -38 -37 -38 -40 -41 -40 -38 -35 -31 -27 -25 -25 -25 -26 -26 -27 -29 -31 -32 -34 -35 -37 -39 -42 -43 -44 -46 -49 -53 -58 -56 -50 -47 -52 -62 -66 -65 -62 -58 -55 -54 -53 -52 -50 -52 -55 -57 -55 -52 -50 -48 -48 -49 -50 -50 -50 -49 -47 -46 -48 -51 -54 -56 -57 -57 -56 -59 -62 -63 -62 -59 -57 -56 -57 -59 -62 -63 -63 -63 -63 -63 -63 -63 -62 -61 -60 -60 -60 -61 -63 -64 -65 -65 -64 -64 -63 -63 -63 -62 -61 -59 -56 -54 -52 -52 -52 -52 -51 -48 -44 -41 -39 -38 -38 -38 -38 -38 -38 -38 -41 -44 -46 -46 -46 -47 -49 -50 -52 -53 -54 -54 -55 -56 -58 -59 -60 -61 -63 -63 -64 -63 -63 -63 -62 -60 -58 -57 -55 -54 -53 -53 -51 -49 -48 -48 -49 -50 -52 -53 -51 -51 -51 -51 -51 -53 -56 -59 -61 -42 -42 -46 -49 -50 -51 -55 -63 -65 -63 -62 -62 -62 -62 -63 -66 -67 -64 -61 -58 -56 -53 -50 -50 -50 -52 -54 -56 -58 -60 -59 -58 -58 -57 -54 -54 -55 -57 -60 -62 -64 -66 -67 -68 -68 -68 -67 -66 -64 -61 -58 -54 -51 -55 -59 -61 -61 -61 -61 -62 -64 -66 -68 -70 -71 -71 -70 -70 -71 -73 -74 -76 -77 -78 -78 -78 -78 -78 -78 -76 -75 -73 -72 -69 -66 -64 -64 -66 -72 -76 -76 -72 -65 -61 -59 -60 -63 -68 -68 -66 -66 -69 -60 -37 -14 3 3 -6 -13 -18 -21 -22 -23 -25 -27 -26 -23 -22 -24 -28 -32 -33 -34 -37 -41 -46 -46 -43 -39 -38 -38 -36 -34 -32 -33 -35 -37 -41 -45 -47 -46 -44 -43 -46 -50 -54 -56 -52 -46 -40 -36 -37 -48 -60 -66 -65 -62 -62 -63 -63 -64 -70 -77 -82 -84 -85 -88 -92 -96 -96 -84 -72 -66 -69 -74 -81 -84 -84 -82 -85 -85 -83 -77 -66 -59 -59 -64 -69 -69 -61 -52 -48 -55 -58 -54 -46 -39 -42 -46 -49 -50 -52 -53 -54 -57 -60 -61 -61 -59 -58 -59 -62 -63 -63 -60 -58 -56 -54 -55 -55 -54 -52 -48 -44 -42 -42 -43 -44 -44 -44 -43 -43 -43 -43 -42 -41 -40 -39 -38 -36 -35 -35 -37 -38 -38 -37 -38 -41 -41 -40 -38 -35 -31 -27 -24 -23 -23 -24 -25 -27 -29 -29 -30 -30 -31 -33 -36 -40 -43 -44 -46 -49 -53 -57 -57 -53 -49 -54 -61 -64 -63 -60 -56 -55 -55 -55 -54 -52 -52 -55 -58 -55 -52 -50 -49 -50 -51 -50 -50 -51 -52 -51 -49 -48 -50 -52 -54 -55 -56 -56 -59 -61 -62 -59 -57 -56 -56 -57 -59 -60 -62 -63 -63 -63 -62 -62 -63 -62 -61 -60 -59 -59 -60 -61 -62 -63 -63 -63 -63 -62 -62 -62 -62 -61 -60 -58 -56 -54 -52 -50 -51 -50 -48 -45 -42 -40 -38 -37 -36 -36 -35 -34 -34 -36 -38 -39 -40 -43 -47 -49 -49 -51 -53 -54 -54 -54 -54 -55 -57 -60 -62 -62 -62 -62 -62 -64 -65 -66 -65 -62 -61 -59 -57 -56 -55 -53 -51 -50 -49 -49 -50 -51 -53 -53 -53 -54 -55 -54 -55 -57 -59 -61 -50 -52 -52 -54 -55 -57 -58 -61 -59 -57 -59 -67 -69 -69 -68 -68 -65 -60 -57 -56 -55 -53 -53 -53 -54 -56 -58 -60 -61 -62 -62 -63 -63 -61 -57 -55 -55 -57 -60 -64 -67 -70 -71 -70 -69 -68 -67 -66 -63 -59 -56 -52 -48 -50 -53 -56 -59 -63 -66 -67 -68 -68 -70 -71 -70 -68 -68 -69 -70 -71 -70 -71 -73 -76 -79 -81 -81 -78 -75 -72 -72 -72 -71 -69 -67 -66 -68 -72 -77 -78 -76 -71 -64 -60 -59 -62 -66 -71 -69 -64 -61 -61 -51 -31 -9 5 4 -7 -14 -18 -20 -19 -21 -23 -24 -21 -17 -18 -22 -26 -29 -32 -35 -39 -43 -44 -42 -37 -34 -38 -41 -42 -39 -37 -37 -38 -41 -44 -47 -47 -46 -46 -47 -49 -52 -55 -57 -52 -45 -38 -35 -37 -48 -58 -65 -65 -62 -61 -61 -62 -67 -72 -77 -82 -83 -86 -90 -93 -95 -94 -85 -76 -70 -69 -72 -79 -84 -86 -88 -90 -87 -81 -75 -66 -62 -63 -67 -71 -68 -61 -52 -47 -52 -55 -54 -48 -43 -41 -41 -43 -45 -47 -50 -53 -56 -57 -57 -56 -56 -56 -56 -58 -60 -61 -60 -58 -56 -54 -53 -54 -54 -53 -51 -47 -44 -42 -43 -43 -42 -40 -39 -39 -39 -40 -40 -40 -38 -36 -35 -33 -33 -34 -37 -38 -39 -39 -39 -39 -39 -39 -38 -35 -32 -28 -24 -23 -23 -23 -25 -27 -29 -29 -30 -30 -30 -30 -33 -37 -41 -44 -47 -50 -53 -56 -55 -53 -51 -56 -61 -62 -60 -56 -54 -54 -55 -57 -57 -55 -54 -55 -58 -56 -54 -52 -51 -51 -50 -50 -50 -52 -53 -53 -52 -51 -52 -53 -53 -54 -56 -58 -60 -60 -59 -56 -55 -55 -55 -56 -56 -58 -60 -61 -62 -61 -60 -61 -62 -62 -62 -61 -59 -58 -59 -60 -61 -62 -62 -62 -62 -62 -62 -62 -61 -61 -60 -59 -57 -55 -53 -49 -48 -48 -47 -45 -43 -42 -41 -41 -40 -39 -38 -36 -34 -34 -33 -33 -33 -38 -43 -46 -47 -48 -49 -50 -50 -49 -49 -51 -53 -57 -60 -60 -59 -59 -61 -64 -67 -69 -69 -67 -65 -64 -61 -60 -58 -55 -53 -52 -52 -51 -51 -51 -53 -54 -55 -56 -57 -57 -58 -59 -60 -61 -53 -59 -59 -56 -54 -54 -54 -55 -55 -56 -59 -66 -69 -68 -67 -66 -63 -58 -55 -53 -51 -50 -54 -57 -59 -60 -63 -65 -65 -64 -64 -65 -65 -62 -59 -58 -58 -59 -62 -66 -70 -72 -72 -71 -70 -69 -68 -66 -61 -56 -51 -47 -44 -46 -49 -54 -60 -67 -71 -73 -73 -73 -73 -70 -67 -66 -68 -67 -66 -64 -63 -65 -68 -71 -74 -77 -76 -73 -70 -71 -70 -67 -64 -62 -63 -66 -69 -73 -75 -74 -71 -68 -65 -63 -64 -67 -71 -74 -68 -60 -52 -48 -39 -23 -6 6 4 -7 -14 -17 -18 -18 -20 -21 -20 -17 -15 -16 -19 -23 -25 -29 -34 -39 -41 -39 -35 -32 -34 -42 -48 -50 -46 -43 -41 -41 -42 -44 -45 -46 -46 -48 -50 -52 -54 -57 -57 -51 -44 -38 -37 -39 -48 -58 -65 -66 -65 -64 -63 -64 -67 -73 -78 -82 -84 -87 -91 -94 -95 -93 -86 -79 -74 -73 -77 -80 -83 -85 -90 -92 -88 -81 -74 -66 -64 -66 -70 -72 -69 -61 -53 -46 -49 -52 -52 -50 -48 -43 -40 -40 -42 -44 -47 -50 -53 -53 -52 -53 -53 -53 -54 -55 -56 -57 -56 -54 -52 -50 -50 -50 -51 -52 -52 -50 -46 -43 -41 -40 -38 -36 -36 -37 -38 -38 -38 -38 -37 -34 -32 -32 -32 -33 -35 -38 -39 -39 -37 -36 -35 -35 -36 -35 -33 -30 -26 -24 -23 -23 -25 -26 -28 -30 -31 -32 -30 -29 -30 -34 -39 -44 -46 -49 -52 -54 -54 -53 -54 -57 -58 -58 -56 -55 -53 -51 -53 -57 -59 -58 -57 -58 -59 -58 -56 -54 -52 -51 -51 -51 -51 -53 -53 -53 -53 -53 -55 -56 -56 -55 -57 -59 -59 -58 -56 -55 -54 -54 -54 -54 -54 -56 -58 -61 -60 -59 -58 -59 -61 -62 -61 -61 -60 -59 -58 -59 -60 -60 -61 -62 -62 -62 -61 -61 -60 -59 -59 -59 -58 -56 -54 -50 -47 -46 -46 -45 -44 -43 -43 -42 -42 -41 -41 -41 -40 -39 -38 -36 -33 -35 -39 -43 -45 -46 -47 -47 -47 -46 -47 -49 -51 -54 -56 -57 -57 -57 -58 -62 -66 -70 -71 -69 -68 -66 -65 -63 -60 -57 -55 -54 -54 -54 -54 -54 -54 -55 -55 -57 -59 -60 -61 -61 -61 -61 -47 -51 -51 -48 -46 -46 -48 -53 -59 -61 -62 -64 -64 -63 -63 -63 -62 -58 -54 -51 -49 -48 -53 -58 -62 -63 -66 -68 -69 -68 -68 -68 -66 -63 -61 -60 -61 -63 -65 -69 -71 -72 -72 -73 -71 -68 -66 -65 -61 -54 -47 -41 -38 -41 -47 -54 -62 -69 -73 -74 -74 -74 -72 -69 -66 -66 -66 -63 -59 -55 -53 -57 -62 -67 -71 -71 -69 -68 -67 -66 -62 -57 -54 -57 -61 -65 -69 -72 -70 -67 -66 -67 -69 -70 -71 -73 -74 -73 -61 -48 -39 -35 -29 -16 -3 7 3 -8 -14 -17 -17 -18 -18 -18 -18 -18 -16 -15 -15 -16 -20 -26 -32 -35 -36 -32 -30 -30 -37 -48 -55 -56 -54 -49 -45 -42 -41 -42 -43 -45 -47 -50 -52 -54 -57 -59 -58 -51 -45 -42 -42 -44 -52 -62 -69 -70 -68 -66 -63 -62 -65 -71 -77 -82 -85 -89 -92 -94 -95 -95 -91 -85 -81 -80 -80 -78 -78 -82 -90 -93 -90 -84 -76 -67 -64 -67 -72 -73 -68 -60 -52 -47 -48 -50 -51 -51 -51 -47 -44 -43 -44 -44 -46 -49 -51 -51 -51 -51 -52 -52 -52 -52 -53 -53 -53 -51 -50 -48 -47 -46 -46 -47 -48 -47 -45 -42 -39 -35 -34 -35 -36 -37 -38 -38 -38 -37 -35 -33 -32 -32 -33 -34 -35 -37 -39 -38 -36 -34 -32 -32 -32 -32 -31 -29 -27 -25 -24 -25 -25 -25 -26 -29 -31 -33 -31 -29 -29 -32 -39 -43 -46 -48 -50 -52 -52 -52 -54 -56 -55 -54 -53 -56 -53 -49 -49 -54 -59 -60 -60 -60 -60 -59 -57 -55 -53 -52 -52 -52 -52 -53 -53 -53 -53 -53 -54 -56 -58 -59 -61 -60 -58 -55 -53 -53 -54 -54 -53 -52 -52 -54 -57 -60 -59 -58 -56 -57 -59 -60 -61 -61 -60 -59 -58 -58 -59 -59 -60 -61 -62 -62 -61 -60 -59 -58 -58 -58 -58 -57 -55 -52 -48 -46 -46 -46 -45 -43 -41 -41 -41 -42 -42 -42 -42 -42 -42 -43 -42 -39 -38 -39 -42 -44 -46 -47 -47 -46 -46 -48 -51 -53 -53 -54 -55 -55 -56 -59 -63 -67 -69 -68 -67 -66 -66 -65 -63 -60 -58 -57 -57 -56 -57 -58 -57 -56 -56 -57 -60 -62 -64 -64 -63 -63 -38 -39 -40 -41 -41 -42 -46 -54 -62 -66 -65 -62 -61 -61 -61 -61 -60 -56 -54 -51 -50 -50 -54 -60 -64 -66 -68 -71 -73 -73 -72 -69 -66 -63 -62 -62 -63 -65 -68 -69 -70 -72 -74 -73 -69 -66 -65 -65 -62 -55 -45 -36 -32 -38 -47 -57 -67 -72 -72 -73 -74 -73 -69 -65 -63 -64 -63 -59 -52 -46 -46 -54 -61 -65 -65 -60 -57 -56 -57 -57 -53 -51 -52 -55 -60 -65 -69 -71 -72 -71 -70 -70 -73 -76 -75 -73 -70 -61 -45 -33 -27 -27 -24 -13 -1 6 -1 -10 -15 -18 -18 -17 -17 -18 -20 -21 -19 -15 -12 -11 -15 -21 -27 -30 -30 -29 -31 -35 -42 -51 -56 -58 -57 -52 -45 -40 -38 -40 -44 -46 -48 -50 -51 -55 -58 -60 -58 -53 -50 -48 -48 -49 -58 -67 -73 -75 -70 -65 -62 -62 -64 -69 -75 -80 -83 -91 -95 -98 -98 -97 -92 -88 -84 -82 -83 -82 -81 -83 -90 -92 -90 -84 -77 -71 -68 -68 -71 -72 -67 -60 -52 -47 -48 -50 -52 -52 -51 -49 -47 -47 -47 -46 -48 -51 -52 -52 -52 -51 -51 -51 -50 -51 -51 -52 -51 -50 -49 -47 -45 -44 -43 -44 -45 -45 -43 -40 -36 -32 -34 -36 -37 -38 -38 -38 -37 -35 -33 -33 -32 -33 -34 -35 -35 -36 -37 -36 -34 -32 -31 -30 -29 -29 -29 -28 -26 -25 -25 -25 -25 -25 -26 -28 -31 -32 -30 -29 -29 -33 -38 -43 -47 -49 -49 -50 -50 -52 -54 -55 -53 -51 -52 -56 -54 -50 -48 -53 -60 -62 -62 -61 -60 -58 -56 -55 -54 -54 -54 -54 -53 -52 -52 -53 -53 -52 -54 -57 -59 -60 -61 -60 -56 -53 -52 -53 -53 -53 -51 -50 -51 -54 -56 -58 -58 -56 -55 -55 -56 -59 -60 -60 -60 -59 -58 -58 -58 -59 -60 -61 -62 -62 -61 -59 -58 -57 -56 -56 -56 -56 -56 -53 -50 -47 -47 -47 -45 -42 -38 -37 -38 -39 -40 -40 -41 -41 -42 -44 -45 -45 -43 -41 -41 -44 -46 -47 -47 -46 -46 -47 -50 -52 -51 -51 -51 -51 -53 -55 -59 -62 -64 -64 -64 -64 -65 -65 -64 -63 -61 -59 -58 -58 -60 -62 -61 -60 -58 -58 -60 -64 -66 -67 -66 -65 -30 -31 -34 -40 -42 -43 -47 -56 -64 -67 -66 -61 -60 -62 -61 -58 -56 -54 -53 -53 -54 -55 -58 -63 -67 -70 -71 -73 -74 -75 -73 -69 -65 -61 -59 -60 -61 -64 -67 -68 -70 -72 -74 -74 -68 -65 -63 -63 -61 -57 -48 -38 -31 -38 -50 -62 -70 -72 -72 -73 -75 -73 -66 -62 -61 -62 -61 -55 -49 -47 -51 -56 -58 -57 -52 -49 -49 -54 -59 -60 -55 -54 -56 -60 -64 -68 -72 -75 -75 -75 -76 -78 -79 -78 -73 -66 -57 -43 -29 -23 -23 -26 -21 -11 -0 4 -4 -13 -18 -20 -19 -16 -17 -19 -23 -24 -23 -20 -16 -12 -14 -19 -23 -27 -28 -32 -36 -40 -45 -50 -53 -54 -52 -47 -41 -37 -38 -41 -43 -45 -46 -47 -49 -54 -59 -61 -59 -56 -55 -54 -53 -52 -61 -68 -73 -75 -68 -62 -60 -63 -65 -69 -74 -78 -82 -91 -98 -102 -101 -97 -92 -87 -83 -81 -84 -85 -85 -86 -90 -92 -90 -84 -76 -71 -70 -70 -72 -70 -66 -59 -52 -47 -46 -48 -52 -53 -52 -48 -46 -46 -47 -49 -51 -53 -54 -56 -54 -52 -51 -49 -48 -49 -50 -51 -51 -49 -48 -46 -44 -42 -42 -42 -43 -43 -42 -39 -35 -33 -34 -36 -38 -38 -38 -37 -35 -33 -32 -33 -33 -35 -36 -36 -36 -35 -34 -34 -32 -31 -30 -29 -27 -26 -26 -26 -25 -25 -25 -25 -24 -23 -25 -28 -31 -31 -29 -29 -32 -36 -40 -45 -48 -50 -49 -49 -49 -51 -55 -56 -53 -50 -50 -55 -55 -53 -50 -52 -58 -61 -61 -58 -57 -56 -56 -56 -56 -57 -57 -56 -53 -52 -52 -53 -53 -52 -54 -57 -60 -60 -58 -57 -55 -52 -52 -52 -51 -50 -49 -49 -51 -53 -56 -57 -56 -55 -53 -53 -54 -57 -59 -59 -58 -57 -58 -59 -59 -60 -61 -62 -62 -62 -60 -59 -58 -56 -55 -54 -54 -55 -54 -53 -51 -49 -48 -46 -45 -43 -39 -34 -33 -33 -35 -36 -38 -39 -41 -45 -46 -46 -45 -44 -41 -42 -44 -46 -47 -46 -45 -46 -49 -50 -50 -49 -49 -48 -49 -52 -54 -56 -59 -60 -60 -60 -62 -63 -64 -64 -63 -62 -61 -61 -62 -64 -64 -63 -62 -60 -61 -65 -68 -70 -69 -68 -24 -27 -33 -42 -47 -49 -51 -57 -64 -66 -64 -59 -60 -62 -60 -55 -52 -52 -54 -56 -57 -59 -63 -68 -71 -74 -74 -73 -72 -71 -70 -69 -67 -66 -65 -65 -66 -68 -69 -71 -73 -75 -75 -72 -67 -64 -62 -61 -59 -55 -48 -39 -32 -40 -52 -63 -68 -69 -69 -71 -73 -72 -64 -59 -57 -59 -58 -54 -52 -52 -54 -54 -51 -48 -46 -46 -50 -56 -62 -63 -60 -60 -62 -66 -70 -73 -75 -78 -78 -78 -81 -83 -82 -75 -65 -54 -42 -30 -23 -21 -23 -25 -20 -10 -2 0 -9 -16 -19 -19 -17 -16 -17 -21 -25 -28 -28 -27 -24 -20 -19 -20 -23 -27 -30 -35 -41 -46 -49 -49 -48 -47 -43 -38 -35 -35 -37 -39 -41 -43 -45 -48 -52 -58 -62 -64 -62 -58 -56 -55 -55 -54 -59 -65 -69 -71 -67 -62 -60 -63 -68 -72 -76 -79 -84 -91 -97 -100 -100 -98 -92 -86 -80 -77 -79 -83 -86 -88 -90 -90 -87 -82 -76 -71 -69 -70 -71 -70 -66 -60 -53 -47 -45 -47 -50 -51 -50 -47 -46 -45 -47 -50 -51 -51 -52 -54 -54 -53 -50 -47 -46 -46 -48 -51 -51 -49 -48 -46 -45 -42 -41 -40 -42 -42 -40 -38 -37 -36 -36 -37 -38 -38 -37 -36 -34 -32 -32 -33 -35 -37 -38 -38 -37 -35 -33 -31 -29 -29 -29 -28 -27 -25 -24 -24 -23 -23 -24 -24 -23 -23 -25 -28 -30 -29 -28 -30 -34 -39 -43 -47 -50 -51 -50 -49 -49 -52 -56 -57 -53 -49 -48 -53 -56 -56 -54 -52 -54 -56 -58 -57 -56 -56 -57 -59 -60 -60 -58 -56 -53 -52 -53 -53 -53 -52 -54 -58 -61 -60 -56 -54 -54 -53 -53 -52 -51 -49 -48 -49 -50 -52 -54 -55 -55 -54 -52 -51 -52 -55 -57 -58 -57 -56 -57 -58 -60 -61 -62 -62 -62 -61 -61 -60 -58 -56 -54 -53 -52 -53 -53 -52 -51 -50 -48 -46 -45 -46 -44 -37 -31 -29 -29 -31 -33 -36 -39 -43 -44 -44 -44 -45 -44 -43 -43 -43 -44 -45 -45 -46 -48 -48 -49 -48 -47 -45 -46 -49 -52 -54 -54 -55 -56 -57 -58 -60 -62 -63 -64 -63 -63 -63 -64 -66 -66 -66 -65 -64 -64 -66 -69 -71 -72 -72 -22 -27 -35 -45 -53 -55 -55 -57 -61 -62 -60 -56 -56 -57 -55 -52 -51 -52 -55 -58 -59 -62 -67 -73 -77 -79 -76 -73 -70 -68 -68 -69 -71 -73 -74 -73 -73 -73 -75 -76 -76 -75 -72 -69 -66 -63 -60 -58 -57 -53 -46 -38 -33 -41 -50 -59 -63 -66 -67 -69 -71 -68 -60 -55 -53 -56 -59 -58 -58 -58 -55 -50 -47 -47 -49 -52 -56 -61 -64 -65 -64 -65 -67 -71 -73 -75 -76 -78 -80 -80 -81 -82 -77 -66 -53 -42 -33 -26 -23 -23 -24 -25 -20 -11 -4 -3 -10 -15 -17 -17 -15 -17 -20 -25 -29 -32 -31 -29 -27 -27 -27 -27 -27 -28 -32 -38 -45 -50 -52 -48 -43 -39 -35 -34 -34 -35 -36 -38 -40 -43 -48 -53 -58 -61 -64 -65 -62 -59 -56 -55 -53 -52 -56 -61 -66 -67 -67 -65 -65 -68 -72 -76 -79 -81 -86 -91 -94 -96 -98 -98 -94 -86 -77 -71 -73 -79 -85 -88 -87 -85 -83 -82 -77 -71 -68 -67 -69 -68 -65 -60 -53 -47 -46 -47 -48 -48 -47 -47 -47 -48 -49 -51 -51 -50 -49 -48 -49 -50 -50 -49 -46 -45 -46 -49 -50 -50 -49 -48 -46 -43 -41 -40 -41 -41 -40 -39 -38 -38 -38 -38 -37 -36 -35 -34 -34 -34 -35 -35 -36 -38 -39 -38 -37 -36 -34 -31 -28 -27 -28 -29 -28 -27 -25 -23 -21 -21 -22 -23 -23 -22 -24 -26 -28 -28 -29 -31 -34 -39 -45 -49 -51 -50 -49 -48 -49 -52 -56 -56 -52 -48 -47 -52 -56 -57 -56 -52 -50 -51 -55 -57 -56 -57 -59 -62 -62 -60 -57 -55 -54 -54 -54 -54 -53 -53 -55 -58 -61 -59 -55 -54 -53 -53 -53 -53 -52 -50 -49 -49 -49 -51 -53 -54 -54 -53 -51 -51 -52 -54 -56 -57 -56 -55 -55 -57 -59 -61 -62 -62 -61 -61 -61 -60 -59 -56 -54 -52 -51 -51 -51 -51 -50 -50 -48 -46 -45 -46 -46 -43 -38 -31 -27 -26 -29 -33 -38 -41 -42 -43 -44 -45 -46 -45 -44 -43 -43 -44 -44 -45 -46 -47 -47 -47 -45 -42 -42 -45 -50 -52 -52 -52 -53 -54 -55 -56 -58 -60 -62 -62 -63 -64 -66 -67 -68 -67 -67 -67 -66 -66 -66 -70 -73 -75 -22 -31 -43 -53 -56 -56 -56 -56 -59 -60 -57 -52 -49 -49 -49 -50 -55 -58 -59 -59 -59 -64 -73 -78 -80 -80 -78 -75 -72 -70 -70 -71 -73 -75 -75 -73 -74 -75 -77 -76 -74 -72 -70 -67 -65 -61 -57 -54 -54 -52 -47 -40 -35 -40 -47 -53 -58 -62 -65 -68 -69 -64 -55 -51 -51 -56 -61 -65 -66 -63 -56 -49 -48 -51 -56 -59 -62 -65 -66 -66 -66 -67 -70 -73 -74 -73 -73 -75 -79 -78 -77 -74 -67 -54 -44 -36 -32 -28 -25 -26 -27 -28 -24 -16 -8 -5 -8 -11 -12 -13 -15 -20 -25 -30 -35 -35 -31 -29 -28 -31 -34 -35 -35 -35 -36 -42 -47 -51 -50 -43 -37 -32 -32 -34 -35 -36 -37 -38 -41 -45 -50 -57 -62 -63 -65 -65 -62 -59 -58 -57 -57 -57 -56 -57 -61 -64 -66 -68 -71 -76 -79 -80 -82 -84 -88 -91 -93 -95 -98 -101 -97 -90 -81 -74 -74 -79 -84 -85 -83 -82 -83 -83 -79 -72 -67 -65 -66 -66 -64 -59 -53 -48 -47 -47 -48 -48 -48 -48 -49 -49 -50 -51 -52 -52 -50 -47 -46 -46 -48 -49 -48 -46 -45 -46 -49 -50 -49 -47 -45 -44 -42 -41 -41 -41 -41 -41 -39 -39 -38 -37 -36 -34 -34 -34 -34 -36 -37 -37 -38 -38 -40 -39 -38 -36 -34 -31 -29 -28 -28 -30 -30 -29 -28 -25 -21 -20 -20 -22 -22 -23 -24 -25 -26 -27 -30 -33 -37 -40 -45 -50 -52 -50 -48 -48 -50 -53 -55 -54 -51 -47 -46 -50 -54 -56 -56 -52 -49 -49 -53 -57 -57 -58 -60 -62 -61 -60 -59 -58 -57 -56 -54 -53 -53 -55 -57 -58 -59 -58 -55 -54 -53 -53 -53 -53 -53 -51 -50 -49 -49 -50 -52 -53 -52 -52 -50 -50 -51 -53 -55 -56 -54 -53 -53 -55 -57 -59 -60 -61 -61 -61 -61 -61 -59 -57 -55 -52 -51 -49 -49 -49 -48 -48 -47 -45 -44 -45 -46 -46 -43 -39 -32 -27 -26 -29 -36 -39 -41 -43 -44 -45 -45 -44 -42 -40 -41 -43 -44 -45 -45 -46 -46 -45 -44 -40 -39 -40 -45 -49 -50 -50 -51 -51 -51 -52 -54 -56 -58 -60 -61 -63 -65 -67 -68 -68 -68 -69 -69 -68 -66 -67 -71 -76 -28 -40 -53 -59 -62 -63 -62 -61 -60 -57 -53 -49 -45 -41 -42 -48 -58 -62 -63 -61 -60 -66 -76 -81 -83 -81 -79 -76 -75 -74 -74 -75 -75 -74 -72 -71 -72 -74 -75 -74 -72 -70 -68 -65 -62 -58 -54 -51 -53 -52 -48 -42 -38 -40 -46 -52 -56 -59 -64 -67 -67 -60 -52 -51 -53 -58 -64 -71 -73 -69 -61 -56 -55 -58 -63 -65 -67 -67 -66 -67 -68 -69 -71 -73 -73 -71 -70 -71 -73 -72 -70 -65 -56 -46 -40 -37 -34 -30 -28 -29 -32 -32 -30 -23 -15 -9 -8 -8 -9 -12 -19 -25 -30 -35 -38 -37 -34 -32 -33 -36 -38 -40 -42 -44 -44 -46 -47 -46 -41 -35 -31 -30 -33 -37 -40 -40 -40 -40 -43 -47 -52 -58 -62 -64 -64 -62 -59 -59 -59 -59 -60 -59 -59 -59 -60 -62 -65 -70 -75 -79 -83 -85 -86 -88 -90 -92 -93 -95 -99 -102 -99 -93 -88 -84 -82 -83 -84 -82 -81 -83 -85 -84 -78 -71 -66 -65 -66 -64 -62 -59 -55 -50 -49 -48 -49 -50 -51 -51 -49 -48 -49 -50 -51 -52 -52 -50 -46 -44 -44 -47 -48 -47 -46 -46 -47 -48 -48 -47 -44 -43 -42 -42 -41 -42 -42 -42 -40 -38 -37 -36 -34 -34 -35 -35 -36 -37 -39 -39 -39 -39 -39 -38 -37 -35 -32 -31 -30 -30 -30 -30 -31 -31 -30 -27 -23 -21 -21 -22 -23 -23 -24 -25 -25 -26 -30 -34 -38 -41 -46 -51 -53 -50 -48 -49 -52 -55 -57 -56 -52 -46 -43 -45 -48 -51 -54 -54 -52 -51 -53 -57 -58 -59 -59 -60 -61 -61 -61 -60 -58 -56 -54 -53 -54 -55 -57 -57 -57 -55 -54 -54 -53 -52 -53 -54 -53 -52 -50 -50 -50 -50 -51 -52 -52 -51 -50 -50 -51 -52 -54 -54 -53 -52 -51 -53 -55 -58 -59 -60 -61 -61 -61 -61 -60 -58 -56 -54 -52 -50 -49 -47 -46 -46 -45 -44 -43 -45 -46 -46 -45 -44 -41 -34 -29 -27 -33 -37 -40 -42 -45 -45 -43 -42 -40 -38 -38 -40 -42 -44 -45 -45 -44 -43 -43 -41 -38 -37 -39 -45 -48 -49 -48 -47 -47 -48 -50 -53 -54 -57 -60 -62 -64 -66 -67 -67 -68 -69 -70 -69 -68 -68 -71 -75 -35 -47 -57 -62 -64 -65 -65 -63 -63 -58 -53 -48 -46 -40 -39 -45 -55 -63 -67 -66 -63 -65 -73 -79 -81 -79 -77 -76 -76 -76 -76 -76 -75 -72 -69 -70 -71 -73 -73 -73 -71 -69 -66 -63 -58 -54 -51 -50 -52 -52 -48 -43 -40 -46 -53 -58 -60 -61 -64 -65 -62 -54 -52 -54 -58 -63 -67 -71 -74 -74 -69 -67 -67 -69 -72 -72 -71 -68 -65 -66 -66 -67 -68 -69 -71 -70 -68 -68 -69 -67 -63 -58 -50 -45 -42 -39 -36 -33 -33 -35 -37 -38 -36 -33 -28 -22 -13 -9 -11 -17 -25 -30 -35 -38 -39 -39 -41 -43 -44 -44 -43 -43 -45 -48 -48 -46 -42 -37 -32 -29 -28 -30 -37 -42 -45 -45 -44 -44 -46 -48 -52 -57 -61 -63 -61 -58 -56 -58 -59 -60 -60 -59 -58 -58 -58 -60 -64 -69 -75 -80 -85 -89 -91 -93 -93 -94 -96 -100 -103 -103 -98 -91 -87 -86 -86 -86 -86 -83 -81 -82 -84 -83 -77 -71 -66 -64 -64 -63 -61 -60 -58 -54 -52 -51 -52 -53 -53 -52 -49 -47 -46 -48 -50 -51 -52 -50 -47 -43 -41 -44 -47 -49 -49 -49 -48 -47 -45 -42 -40 -40 -42 -42 -43 -43 -43 -43 -40 -38 -36 -34 -33 -34 -36 -38 -39 -39 -39 -39 -39 -38 -37 -36 -34 -33 -31 -30 -30 -30 -31 -31 -32 -33 -32 -28 -24 -22 -22 -23 -24 -24 -24 -25 -25 -26 -30 -34 -37 -42 -48 -52 -54 -51 -48 -49 -52 -56 -57 -57 -54 -48 -41 -38 -39 -43 -49 -54 -56 -55 -55 -57 -59 -59 -60 -61 -62 -63 -63 -61 -58 -56 -55 -55 -55 -56 -57 -56 -54 -54 -54 -54 -53 -52 -53 -53 -53 -51 -50 -50 -50 -50 -51 -51 -52 -52 -51 -50 -50 -51 -53 -53 -52 -50 -49 -51 -54 -56 -58 -60 -60 -61 -61 -61 -60 -59 -57 -56 -55 -52 -49 -47 -44 -43 -42 -42 -41 -43 -45 -46 -46 -45 -45 -41 -35 -29 -31 -36 -39 -41 -43 -43 -43 -42 -40 -38 -37 -38 -40 -43 -45 -45 -44 -42 -42 -42 -39 -36 -36 -41 -46 -48 -46 -45 -45 -46 -47 -49 -52 -55 -58 -60 -62 -64 -65 -66 -67 -68 -70 -70 -69 -68 -70 -74 -37 -48 -55 -58 -62 -65 -66 -65 -65 -62 -55 -50 -49 -47 -43 -42 -48 -61 -70 -71 -67 -64 -68 -72 -75 -74 -73 -73 -74 -75 -75 -73 -71 -68 -66 -68 -71 -74 -75 -74 -71 -68 -65 -60 -55 -51 -48 -47 -51 -52 -48 -43 -42 -50 -56 -61 -63 -66 -66 -61 -55 -49 -53 -59 -64 -66 -68 -71 -74 -75 -75 -77 -78 -78 -77 -74 -70 -68 -66 -65 -63 -63 -63 -63 -65 -67 -67 -65 -62 -61 -59 -55 -50 -47 -44 -40 -36 -36 -39 -41 -42 -43 -41 -37 -33 -30 -26 -22 -22 -26 -31 -33 -34 -35 -38 -45 -51 -53 -52 -49 -47 -46 -45 -43 -39 -36 -33 -31 -29 -29 -31 -34 -38 -44 -48 -48 -46 -45 -46 -48 -50 -55 -59 -59 -57 -54 -53 -56 -59 -60 -59 -58 -57 -57 -58 -61 -64 -69 -75 -82 -87 -91 -93 -94 -94 -95 -99 -104 -107 -103 -96 -88 -83 -84 -86 -87 -87 -84 -81 -81 -81 -80 -75 -72 -69 -65 -64 -64 -64 -64 -64 -60 -58 -57 -57 -55 -52 -50 -49 -47 -44 -46 -48 -51 -50 -49 -47 -44 -41 -43 -47 -50 -50 -50 -49 -47 -44 -41 -39 -40 -41 -43 -44 -44 -44 -43 -41 -38 -35 -33 -34 -36 -38 -39 -40 -39 -38 -38 -38 -37 -35 -34 -34 -33 -32 -31 -31 -32 -32 -33 -34 -35 -34 -31 -26 -22 -22 -24 -26 -26 -25 -25 -26 -27 -31 -35 -38 -42 -47 -52 -54 -52 -49 -49 -51 -54 -55 -56 -55 -50 -42 -35 -33 -36 -43 -51 -56 -59 -59 -58 -58 -60 -62 -64 -65 -65 -63 -61 -58 -57 -56 -56 -56 -56 -56 -56 -54 -54 -54 -53 -52 -52 -52 -53 -52 -50 -49 -49 -49 -50 -50 -51 -51 -52 -52 -51 -50 -51 -51 -51 -50 -49 -48 -50 -52 -55 -57 -59 -59 -59 -59 -59 -59 -59 -59 -58 -57 -54 -51 -48 -44 -42 -40 -39 -39 -40 -43 -45 -46 -46 -46 -44 -39 -31 -30 -34 -38 -40 -40 -41 -43 -43 -42 -40 -38 -38 -39 -41 -42 -43 -43 -42 -42 -42 -39 -35 -33 -37 -42 -46 -46 -44 -44 -44 -45 -46 -48 -51 -53 -56 -59 -62 -63 -64 -65 -68 -70 -71 -69 -69 -71 -73 -34 -42 -49 -53 -58 -63 -65 -66 -67 -66 -62 -57 -54 -57 -54 -48 -46 -56 -68 -72 -70 -63 -63 -66 -69 -70 -69 -69 -71 -73 -74 -71 -66 -63 -61 -67 -73 -77 -79 -77 -72 -68 -64 -59 -55 -50 -45 -42 -47 -49 -46 -41 -40 -46 -50 -54 -59 -61 -59 -55 -52 -51 -55 -61 -66 -69 -70 -72 -74 -76 -76 -76 -76 -75 -74 -71 -69 -67 -65 -64 -63 -62 -61 -60 -61 -63 -62 -59 -57 -58 -59 -57 -52 -47 -43 -39 -37 -39 -42 -44 -44 -44 -42 -38 -34 -32 -31 -30 -29 -28 -26 -26 -29 -35 -43 -52 -58 -60 -59 -55 -52 -48 -42 -36 -34 -33 -33 -35 -37 -37 -37 -38 -40 -44 -47 -47 -46 -45 -46 -47 -49 -53 -56 -55 -53 -50 -51 -54 -57 -58 -57 -56 -58 -60 -63 -65 -66 -71 -78 -86 -90 -92 -93 -94 -94 -96 -101 -107 -109 -103 -93 -84 -80 -82 -85 -86 -86 -83 -81 -79 -79 -79 -76 -75 -73 -70 -67 -66 -67 -68 -67 -63 -61 -61 -60 -57 -52 -48 -46 -47 -45 -45 -47 -50 -50 -50 -49 -48 -45 -45 -47 -49 -49 -48 -48 -47 -46 -44 -42 -41 -42 -43 -44 -44 -44 -44 -41 -37 -34 -33 -35 -38 -40 -40 -39 -38 -37 -36 -36 -35 -35 -35 -35 -34 -34 -34 -34 -34 -34 -35 -35 -36 -36 -33 -27 -24 -23 -26 -27 -28 -28 -27 -27 -27 -30 -36 -42 -44 -46 -49 -52 -52 -49 -48 -49 -51 -52 -53 -53 -52 -46 -39 -35 -36 -42 -48 -53 -57 -58 -58 -59 -62 -64 -66 -66 -64 -62 -60 -58 -57 -57 -56 -54 -54 -54 -55 -53 -52 -52 -52 -52 -52 -52 -53 -52 -50 -49 -48 -49 -49 -49 -50 -51 -52 -52 -52 -51 -51 -51 -50 -49 -49 -48 -50 -52 -54 -56 -57 -57 -57 -57 -57 -58 -59 -59 -59 -58 -56 -53 -50 -47 -43 -40 -37 -36 -37 -40 -43 -45 -44 -45 -45 -42 -35 -30 -31 -35 -40 -39 -40 -41 -44 -44 -42 -41 -40 -39 -39 -40 -41 -42 -42 -42 -41 -39 -36 -32 -33 -38 -44 -46 -45 -44 -44 -45 -45 -46 -48 -50 -51 -53 -56 -58 -59 -62 -66 -69 -70 -69 -70 -71 -73 -32 -36 -41 -47 -53 -60 -64 -66 -67 -70 -72 -70 -65 -68 -69 -63 -51 -51 -60 -67 -67 -61 -59 -61 -66 -70 -69 -67 -68 -71 -76 -73 -67 -60 -56 -61 -69 -74 -78 -78 -75 -71 -65 -58 -57 -53 -47 -41 -42 -44 -41 -36 -34 -38 -45 -51 -55 -53 -52 -54 -58 -61 -63 -64 -65 -65 -67 -70 -73 -75 -73 -72 -72 -73 -73 -71 -67 -64 -63 -64 -63 -62 -61 -59 -58 -56 -55 -54 -56 -60 -61 -58 -51 -44 -39 -37 -38 -40 -43 -45 -45 -44 -41 -37 -32 -29 -29 -29 -27 -22 -18 -23 -30 -39 -50 -59 -65 -67 -66 -61 -55 -46 -38 -32 -34 -38 -41 -44 -45 -45 -45 -45 -46 -47 -47 -47 -45 -44 -45 -47 -50 -53 -53 -50 -48 -49 -52 -54 -56 -56 -55 -54 -55 -59 -64 -68 -71 -76 -83 -89 -91 -91 -92 -93 -95 -98 -103 -107 -108 -101 -92 -83 -79 -83 -84 -85 -85 -83 -81 -81 -81 -82 -80 -78 -76 -74 -70 -70 -70 -71 -69 -63 -61 -61 -62 -60 -54 -50 -46 -44 -42 -41 -44 -48 -49 -50 -51 -51 -50 -48 -48 -48 -48 -48 -48 -48 -48 -47 -45 -44 -43 -43 -43 -43 -44 -44 -40 -35 -33 -33 -36 -39 -41 -41 -40 -39 -38 -36 -35 -36 -36 -37 -36 -36 -36 -36 -36 -36 -36 -36 -36 -36 -35 -33 -28 -25 -25 -28 -29 -30 -30 -30 -30 -29 -31 -35 -39 -43 -47 -49 -50 -49 -47 -45 -47 -49 -50 -50 -51 -52 -49 -43 -39 -39 -44 -48 -51 -54 -56 -58 -61 -63 -64 -64 -63 -61 -59 -58 -58 -58 -57 -55 -52 -52 -53 -53 -52 -50 -50 -51 -51 -51 -52 -52 -52 -51 -49 -48 -48 -48 -49 -50 -50 -51 -51 -51 -51 -52 -51 -50 -49 -48 -48 -49 -51 -53 -55 -55 -55 -55 -55 -56 -57 -58 -59 -59 -58 -57 -55 -53 -50 -46 -42 -38 -35 -35 -38 -41 -43 -42 -43 -44 -43 -39 -32 -30 -32 -39 -42 -41 -40 -41 -44 -43 -42 -41 -39 -38 -39 -40 -41 -41 -41 -40 -39 -37 -34 -33 -35 -39 -43 -44 -44 -43 -44 -44 -45 -45 -46 -47 -48 -50 -53 -55 -58 -62 -67 -70 -70 -70 -70 -72 -33 -33 -35 -41 -49 -57 -63 -67 -68 -72 -80 -85 -80 -77 -79 -76 -64 -53 -55 -59 -61 -57 -54 -56 -61 -67 -70 -69 -69 -71 -75 -76 -74 -67 -60 -59 -64 -69 -73 -74 -73 -70 -66 -61 -61 -57 -49 -40 -38 -38 -35 -33 -33 -37 -43 -47 -50 -48 -49 -54 -61 -66 -68 -66 -65 -64 -66 -71 -73 -72 -68 -68 -70 -72 -74 -71 -65 -62 -62 -65 -64 -62 -60 -57 -55 -52 -51 -53 -58 -61 -60 -56 -49 -40 -36 -35 -38 -41 -44 -45 -45 -44 -41 -35 -30 -27 -26 -25 -20 -16 -15 -23 -34 -45 -56 -65 -70 -70 -67 -62 -55 -45 -37 -33 -39 -45 -50 -52 -53 -52 -51 -50 -51 -50 -47 -45 -45 -47 -49 -51 -53 -54 -51 -48 -48 -49 -51 -52 -52 -52 -54 -54 -55 -59 -65 -70 -75 -80 -85 -88 -90 -90 -91 -93 -95 -98 -102 -105 -105 -101 -94 -87 -83 -86 -86 -85 -84 -84 -84 -85 -85 -86 -84 -81 -79 -77 -74 -73 -74 -75 -72 -65 -60 -60 -62 -60 -56 -52 -50 -47 -43 -40 -40 -43 -47 -48 -50 -52 -52 -51 -51 -51 -51 -51 -50 -49 -47 -46 -45 -44 -43 -42 -41 -42 -42 -41 -38 -34 -33 -35 -38 -40 -41 -42 -42 -41 -40 -39 -38 -37 -37 -36 -35 -35 -35 -36 -37 -37 -37 -36 -36 -35 -33 -31 -28 -26 -26 -29 -31 -32 -33 -33 -32 -32 -33 -35 -37 -40 -44 -47 -48 -48 -45 -43 -44 -46 -47 -48 -50 -51 -49 -46 -41 -40 -44 -47 -50 -52 -54 -57 -59 -60 -60 -59 -57 -57 -57 -59 -59 -58 -56 -54 -53 -52 -53 -52 -51 -50 -49 -49 -50 -50 -50 -51 -52 -51 -50 -49 -48 -48 -48 -49 -50 -49 -49 -49 -50 -52 -52 -51 -50 -49 -48 -49 -50 -52 -54 -55 -54 -54 -54 -55 -56 -56 -57 -57 -57 -57 -56 -54 -52 -49 -45 -40 -36 -34 -35 -38 -41 -41 -42 -42 -43 -41 -35 -31 -29 -35 -40 -41 -40 -39 -41 -42 -42 -39 -39 -39 -40 -40 -40 -40 -40 -39 -38 -37 -36 -35 -34 -36 -40 -42 -44 -43 -43 -43 -43 -42 -43 -43 -45 -48 -51 -52 -54 -58 -64 -69 -70 -71 -71 -72 -34 -33 -34 -40 -48 -56 -61 -65 -68 -72 -83 -92 -92 -85 -84 -81 -72 -59 -53 -54 -57 -53 -47 -48 -55 -63 -70 -73 -73 -72 -72 -75 -78 -76 -70 -63 -63 -66 -68 -69 -69 -67 -65 -66 -70 -66 -57 -46 -40 -38 -36 -37 -41 -42 -42 -44 -47 -50 -54 -58 -62 -65 -67 -66 -65 -65 -68 -70 -69 -66 -64 -67 -70 -73 -72 -67 -62 -61 -64 -68 -67 -65 -61 -58 -53 -49 -48 -52 -58 -59 -56 -51 -46 -37 -33 -34 -39 -44 -45 -45 -44 -43 -39 -34 -29 -26 -24 -19 -13 -11 -15 -27 -39 -50 -60 -67 -70 -69 -65 -60 -54 -45 -38 -36 -43 -50 -55 -56 -56 -55 -53 -53 -52 -50 -47 -46 -49 -52 -55 -56 -56 -55 -50 -47 -46 -48 -50 -50 -50 -50 -51 -52 -57 -64 -70 -74 -77 -79 -81 -83 -86 -89 -92 -95 -98 -99 -101 -103 -104 -103 -98 -91 -86 -89 -89 -88 -86 -87 -89 -90 -89 -89 -85 -81 -80 -80 -78 -77 -78 -79 -76 -69 -63 -60 -61 -59 -56 -53 -52 -51 -49 -46 -43 -43 -46 -48 -49 -50 -52 -53 -54 -55 -55 -53 -50 -48 -46 -45 -43 -41 -40 -39 -39 -39 -39 -38 -36 -35 -36 -38 -40 -40 -40 -41 -41 -41 -40 -39 -38 -35 -33 -32 -32 -34 -36 -37 -38 -38 -37 -36 -35 -33 -31 -30 -27 -26 -26 -29 -31 -33 -34 -34 -34 -34 -34 -35 -37 -38 -40 -44 -47 -47 -44 -41 -40 -43 -45 -47 -48 -50 -48 -45 -42 -40 -42 -45 -48 -50 -52 -53 -54 -54 -55 -56 -55 -55 -55 -58 -59 -59 -57 -55 -54 -54 -54 -52 -51 -50 -49 -48 -49 -50 -50 -50 -51 -50 -50 -48 -48 -48 -49 -49 -50 -48 -46 -46 -47 -50 -52 -52 -51 -50 -49 -49 -50 -52 -54 -56 -56 -56 -55 -55 -54 -55 -55 -55 -55 -56 -55 -55 -54 -51 -48 -43 -38 -33 -31 -32 -39 -40 -41 -42 -42 -41 -39 -34 -30 -30 -36 -40 -40 -38 -38 -38 -38 -37 -38 -40 -41 -41 -41 -40 -39 -38 -38 -37 -37 -36 -34 -34 -37 -40 -43 -43 -42 -42 -41 -40 -40 -40 -42 -46 -50 -51 -53 -55 -61 -66 -69 -70 -70 -72 -32 -31 -32 -37 -44 -53 -61 -68 -73 -77 -85 -93 -95 -90 -87 -83 -77 -67 -57 -53 -53 -50 -45 -44 -48 -57 -65 -69 -70 -70 -71 -74 -78 -78 -75 -67 -64 -63 -63 -65 -65 -64 -64 -69 -78 -77 -70 -60 -54 -46 -43 -45 -51 -49 -44 -43 -47 -56 -63 -66 -66 -64 -64 -63 -64 -65 -67 -65 -63 -61 -63 -68 -71 -70 -67 -62 -61 -64 -68 -71 -71 -68 -64 -59 -51 -45 -44 -49 -55 -54 -50 -45 -41 -33 -30 -34 -41 -46 -46 -45 -43 -39 -34 -31 -28 -25 -20 -12 -6 -8 -18 -32 -44 -54 -61 -66 -67 -65 -62 -59 -55 -49 -43 -41 -46 -52 -56 -57 -56 -55 -54 -54 -52 -48 -48 -50 -55 -60 -62 -61 -58 -53 -49 -46 -45 -46 -48 -49 -49 -49 -49 -50 -56 -63 -71 -73 -75 -77 -80 -83 -87 -90 -94 -96 -98 -99 -100 -102 -104 -103 -98 -91 -88 -90 -91 -91 -90 -91 -91 -91 -91 -90 -84 -80 -79 -81 -81 -81 -81 -81 -78 -73 -67 -62 -59 -56 -54 -53 -54 -55 -54 -52 -49 -47 -48 -48 -49 -50 -50 -51 -52 -53 -52 -52 -51 -49 -46 -41 -38 -37 -36 -36 -36 -36 -36 -36 -37 -38 -38 -40 -41 -40 -39 -39 -38 -38 -38 -37 -35 -32 -30 -30 -32 -35 -37 -38 -39 -39 -38 -37 -35 -33 -31 -30 -28 -26 -27 -29 -31 -32 -34 -34 -35 -35 -35 -35 -37 -38 -39 -41 -45 -45 -42 -37 -36 -41 -44 -46 -46 -46 -46 -45 -43 -41 -40 -41 -45 -49 -50 -50 -49 -50 -53 -54 -55 -54 -54 -55 -55 -55 -55 -56 -56 -56 -55 -52 -50 -49 -49 -49 -49 -49 -49 -49 -50 -50 -49 -48 -47 -48 -48 -49 -50 -48 -46 -44 -45 -48 -50 -51 -51 -51 -50 -49 -50 -52 -54 -56 -58 -58 -57 -56 -55 -54 -53 -53 -54 -54 -55 -55 -54 -52 -50 -46 -41 -34 -29 -27 -34 -39 -41 -41 -40 -39 -39 -37 -34 -30 -32 -36 -38 -38 -37 -36 -36 -36 -38 -39 -41 -41 -41 -39 -37 -37 -38 -38 -38 -36 -34 -34 -36 -39 -41 -41 -40 -40 -39 -39 -39 -39 -40 -43 -48 -50 -52 -54 -59 -64 -67 -68 -69 -71 -32 -30 -30 -33 -39 -49 -59 -69 -76 -83 -90 -94 -95 -94 -90 -86 -81 -74 -63 -55 -51 -50 -46 -43 -44 -51 -59 -63 -65 -67 -70 -72 -73 -73 -71 -65 -60 -58 -60 -63 -63 -63 -64 -70 -81 -84 -83 -78 -73 -60 -53 -53 -59 -56 -48 -44 -48 -58 -67 -70 -70 -66 -63 -60 -59 -60 -60 -58 -58 -60 -64 -68 -67 -65 -61 -62 -66 -69 -72 -73 -72 -67 -61 -55 -47 -42 -42 -47 -51 -48 -44 -39 -35 -29 -30 -35 -43 -45 -43 -41 -37 -32 -29 -27 -25 -22 -14 -4 -1 -8 -22 -34 -44 -52 -57 -61 -63 -63 -61 -60 -59 -57 -52 -48 -50 -53 -56 -57 -55 -55 -55 -54 -50 -48 -51 -56 -63 -67 -67 -63 -57 -50 -48 -47 -47 -45 -45 -47 -48 -47 -46 -48 -54 -62 -69 -72 -74 -77 -81 -85 -88 -93 -97 -99 -99 -99 -100 -102 -103 -101 -98 -95 -93 -91 -91 -92 -92 -91 -91 -91 -92 -91 -84 -79 -78 -80 -80 -80 -81 -81 -79 -76 -71 -66 -60 -55 -53 -54 -56 -57 -57 -55 -53 -50 -48 -48 -48 -49 -50 -51 -52 -52 -50 -49 -48 -46 -43 -38 -34 -33 -34 -34 -34 -34 -35 -37 -40 -40 -40 -41 -42 -41 -39 -38 -36 -35 -34 -33 -31 -30 -30 -31 -33 -35 -37 -38 -39 -39 -38 -37 -36 -36 -35 -32 -29 -27 -28 -30 -31 -32 -33 -33 -34 -35 -35 -33 -36 -37 -38 -39 -42 -42 -39 -34 -33 -38 -43 -45 -44 -44 -44 -44 -44 -42 -41 -41 -44 -48 -49 -49 -48 -50 -52 -53 -54 -54 -54 -51 -49 -49 -50 -52 -54 -54 -53 -50 -48 -48 -48 -48 -49 -49 -49 -48 -49 -49 -48 -47 -47 -47 -48 -49 -49 -48 -47 -45 -45 -47 -49 -50 -51 -51 -50 -49 -50 -51 -54 -56 -58 -58 -58 -57 -56 -54 -53 -53 -53 -53 -53 -54 -54 -52 -50 -47 -43 -36 -29 -24 -30 -36 -40 -40 -38 -37 -37 -38 -37 -32 -30 -32 -35 -36 -36 -35 -34 -35 -37 -39 -39 -39 -38 -37 -36 -37 -39 -39 -38 -36 -34 -35 -38 -40 -40 -39 -39 -39 -39 -38 -39 -39 -40 -41 -45 -48 -50 -53 -57 -60 -63 -65 -67 -70 -34 -31 -30 -31 -36 -45 -56 -66 -75 -82 -89 -93 -94 -97 -95 -91 -87 -81 -69 -57 -50 -51 -49 -43 -43 -49 -57 -60 -61 -63 -66 -67 -66 -64 -62 -57 -53 -54 -57 -61 -62 -63 -65 -71 -81 -88 -91 -90 -87 -77 -70 -67 -67 -60 -51 -45 -44 -49 -58 -64 -66 -63 -56 -53 -54 -56 -55 -53 -54 -58 -62 -63 -64 -64 -65 -68 -72 -74 -73 -71 -67 -61 -55 -47 -38 -35 -37 -43 -46 -42 -37 -32 -30 -27 -30 -35 -38 -38 -37 -34 -32 -29 -27 -26 -24 -20 -8 1 0 -9 -22 -34 -42 -48 -51 -57 -61 -63 -63 -63 -65 -65 -63 -57 -53 -55 -58 -60 -58 -57 -56 -54 -51 -51 -56 -63 -70 -71 -66 -59 -53 -48 -48 -49 -49 -46 -44 -45 -46 -46 -44 -47 -53 -61 -68 -71 -74 -78 -83 -87 -91 -95 -99 -102 -101 -100 -100 -100 -100 -98 -97 -97 -94 -91 -91 -93 -93 -93 -93 -93 -93 -90 -83 -78 -76 -77 -80 -80 -79 -78 -78 -78 -75 -70 -65 -59 -56 -56 -58 -59 -57 -54 -51 -50 -48 -47 -47 -48 -49 -50 -50 -49 -47 -46 -44 -42 -41 -37 -34 -32 -33 -32 -32 -33 -36 -39 -42 -43 -44 -43 -44 -43 -41 -38 -36 -34 -32 -31 -31 -31 -32 -32 -33 -34 -36 -37 -39 -39 -37 -37 -38 -39 -38 -36 -33 -30 -29 -28 -29 -31 -32 -32 -33 -33 -33 -33 -34 -36 -37 -37 -39 -40 -38 -34 -31 -35 -40 -44 -43 -43 -43 -43 -43 -42 -41 -42 -45 -48 -49 -49 -50 -51 -51 -51 -53 -54 -54 -49 -46 -44 -46 -48 -51 -52 -51 -48 -46 -45 -46 -46 -47 -48 -48 -47 -48 -48 -47 -46 -47 -47 -48 -48 -48 -47 -47 -47 -47 -47 -48 -50 -50 -50 -49 -49 -49 -50 -53 -54 -56 -57 -57 -57 -56 -55 -54 -53 -53 -53 -53 -53 -53 -52 -50 -48 -45 -39 -32 -24 -25 -30 -35 -38 -37 -36 -35 -36 -37 -34 -31 -29 -31 -33 -32 -32 -32 -34 -36 -37 -37 -36 -35 -35 -35 -38 -40 -40 -40 -38 -36 -37 -40 -41 -39 -38 -38 -39 -40 -39 -40 -40 -41 -41 -42 -45 -48 -50 -53 -56 -58 -61 -65 -68 -37 -32 -31 -32 -35 -42 -53 -64 -73 -78 -85 -90 -91 -93 -96 -96 -93 -86 -75 -60 -51 -51 -51 -43 -42 -48 -58 -61 -61 -60 -59 -59 -57 -55 -53 -50 -50 -52 -56 -59 -61 -64 -67 -69 -75 -87 -95 -96 -95 -89 -83 -79 -76 -68 -59 -53 -50 -50 -50 -51 -51 -49 -46 -46 -48 -48 -47 -49 -52 -57 -61 -62 -63 -64 -66 -71 -72 -71 -67 -64 -58 -53 -47 -41 -33 -31 -34 -39 -39 -34 -31 -28 -28 -28 -31 -35 -37 -36 -34 -33 -31 -29 -27 -27 -27 -24 -11 -2 -2 -10 -21 -30 -36 -42 -49 -56 -61 -64 -65 -67 -69 -71 -71 -66 -60 -58 -59 -61 -63 -62 -60 -57 -53 -55 -61 -68 -74 -70 -61 -53 -49 -49 -49 -50 -50 -48 -45 -45 -45 -45 -45 -47 -53 -61 -68 -74 -78 -83 -87 -91 -94 -98 -101 -103 -103 -101 -99 -97 -96 -96 -97 -99 -96 -94 -93 -94 -95 -95 -94 -93 -92 -90 -83 -78 -76 -79 -83 -84 -82 -79 -78 -77 -75 -72 -69 -66 -63 -61 -59 -57 -53 -50 -48 -48 -47 -47 -47 -47 -47 -47 -46 -45 -44 -42 -40 -39 -40 -38 -35 -34 -34 -33 -32 -34 -37 -42 -44 -45 -45 -45 -44 -43 -42 -40 -37 -34 -33 -32 -33 -33 -33 -33 -33 -33 -34 -36 -38 -38 -38 -38 -39 -40 -40 -39 -36 -33 -31 -29 -29 -29 -30 -30 -31 -31 -32 -32 -32 -33 -35 -35 -36 -38 -38 -36 -33 -34 -37 -42 -42 -42 -42 -42 -42 -43 -42 -42 -44 -47 -50 -51 -51 -49 -48 -48 -50 -53 -53 -50 -47 -45 -45 -46 -47 -48 -47 -45 -44 -44 -44 -44 -45 -45 -46 -47 -47 -47 -46 -46 -46 -46 -46 -46 -46 -46 -47 -47 -48 -48 -48 -49 -49 -50 -49 -48 -47 -48 -50 -52 -53 -54 -55 -56 -56 -56 -55 -55 -54 -53 -53 -52 -51 -50 -49 -47 -46 -42 -36 -28 -23 -25 -30 -36 -37 -36 -35 -34 -34 -33 -31 -28 -28 -29 -29 -29 -29 -30 -33 -35 -35 -33 -33 -33 -34 -36 -39 -41 -41 -40 -37 -38 -39 -40 -39 -37 -37 -37 -39 -40 -40 -41 -42 -43 -43 -43 -45 -47 -49 -51 -53 -58 -62 -66 -38 -34 -33 -34 -36 -40 -50 -63 -73 -76 -82 -86 -86 -84 -90 -95 -96 -90 -80 -66 -56 -52 -52 -44 -41 -46 -57 -63 -63 -58 -52 -51 -48 -46 -45 -48 -50 -51 -52 -57 -64 -69 -72 -73 -71 -79 -89 -96 -94 -88 -80 -75 -73 -68 -61 -57 -55 -54 -49 -44 -40 -38 -41 -45 -47 -47 -46 -49 -52 -56 -58 -58 -59 -62 -65 -68 -68 -65 -59 -53 -46 -43 -40 -36 -30 -30 -33 -35 -34 -31 -29 -28 -29 -33 -38 -41 -41 -40 -37 -34 -31 -29 -28 -29 -30 -28 -19 -10 -7 -9 -16 -23 -30 -39 -50 -58 -62 -65 -68 -70 -73 -75 -77 -75 -67 -62 -60 -63 -67 -66 -62 -57 -54 -58 -66 -72 -72 -65 -56 -50 -47 -49 -51 -51 -50 -50 -48 -48 -48 -49 -48 -50 -55 -63 -71 -79 -84 -88 -92 -96 -98 -101 -103 -104 -102 -100 -97 -94 -94 -95 -98 -100 -99 -98 -97 -98 -97 -95 -94 -94 -94 -92 -84 -79 -77 -80 -84 -85 -84 -80 -78 -76 -75 -73 -70 -67 -64 -60 -56 -50 -47 -47 -48 -47 -46 -46 -47 -47 -47 -46 -44 -42 -42 -40 -39 -39 -41 -39 -37 -35 -36 -35 -35 -37 -40 -42 -44 -46 -46 -46 -44 -42 -40 -38 -36 -35 -34 -35 -35 -34 -33 -32 -32 -32 -34 -36 -37 -38 -38 -39 -40 -41 -41 -40 -39 -37 -35 -32 -30 -29 -29 -29 -29 -29 -31 -31 -31 -32 -32 -32 -33 -36 -39 -40 -37 -36 -37 -40 -41 -41 -40 -40 -42 -43 -43 -43 -44 -48 -49 -49 -47 -41 -38 -39 -45 -52 -54 -53 -51 -49 -48 -47 -46 -45 -44 -43 -43 -43 -43 -43 -43 -44 -44 -45 -46 -45 -45 -44 -45 -45 -44 -43 -43 -44 -46 -47 -48 -49 -49 -49 -50 -51 -49 -47 -45 -46 -48 -50 -51 -52 -53 -54 -55 -56 -56 -55 -55 -54 -52 -51 -50 -49 -48 -48 -47 -45 -41 -33 -26 -23 -26 -34 -36 -36 -35 -34 -33 -32 -31 -28 -26 -26 -27 -27 -26 -27 -29 -32 -32 -32 -32 -33 -33 -34 -36 -39 -41 -40 -37 -36 -37 -39 -39 -37 -36 -35 -37 -39 -40 -41 -42 -41 -41 -41 -43 -45 -46 -48 -51 -55 -59 -63 -39 -36 -35 -36 -36 -39 -47 -60 -75 -79 -82 -83 -82 -76 -81 -88 -93 -92 -85 -75 -65 -57 -53 -45 -42 -46 -56 -65 -65 -59 -48 -43 -39 -39 -41 -44 -46 -47 -49 -57 -65 -72 -77 -78 -73 -76 -82 -88 -86 -82 -77 -72 -68 -63 -59 -57 -56 -54 -49 -42 -37 -34 -41 -48 -51 -50 -48 -49 -52 -54 -54 -54 -54 -57 -60 -62 -60 -55 -48 -40 -35 -34 -34 -33 -30 -32 -35 -37 -36 -34 -32 -31 -33 -40 -45 -48 -48 -45 -42 -37 -32 -29 -29 -30 -31 -30 -25 -16 -9 -8 -13 -20 -30 -41 -52 -59 -63 -65 -69 -73 -78 -80 -80 -79 -73 -68 -66 -67 -70 -69 -63 -57 -54 -59 -66 -70 -68 -61 -53 -48 -46 -49 -53 -54 -54 -53 -52 -52 -54 -56 -55 -56 -61 -70 -79 -86 -91 -93 -94 -97 -100 -103 -105 -105 -102 -99 -97 -96 -96 -97 -99 -101 -101 -101 -101 -101 -97 -93 -94 -96 -97 -94 -87 -82 -79 -79 -84 -86 -86 -83 -80 -77 -75 -72 -69 -67 -64 -61 -56 -51 -48 -48 -48 -48 -46 -46 -46 -47 -48 -46 -44 -43 -42 -39 -39 -41 -43 -41 -38 -36 -36 -36 -38 -40 -41 -42 -44 -45 -45 -46 -44 -41 -38 -36 -35 -34 -34 -34 -34 -33 -33 -33 -33 -33 -34 -35 -36 -37 -38 -39 -40 -40 -41 -41 -41 -40 -38 -34 -31 -30 -29 -28 -27 -28 -29 -29 -28 -29 -29 -29 -30 -34 -39 -42 -40 -39 -38 -40 -40 -40 -40 -41 -42 -43 -45 -47 -48 -50 -50 -49 -46 -39 -32 -31 -37 -47 -52 -53 -52 -51 -50 -49 -47 -45 -45 -44 -43 -42 -42 -43 -43 -43 -43 -44 -44 -44 -44 -44 -44 -43 -42 -41 -42 -44 -45 -47 -48 -49 -49 -50 -51 -52 -51 -48 -45 -44 -46 -48 -50 -52 -53 -54 -55 -56 -56 -56 -55 -54 -52 -51 -50 -49 -47 -46 -45 -44 -42 -38 -31 -26 -25 -32 -35 -36 -35 -34 -33 -32 -31 -29 -26 -25 -25 -26 -25 -24 -26 -28 -29 -30 -32 -34 -34 -33 -34 -37 -39 -39 -34 -32 -32 -35 -38 -38 -37 -36 -35 -37 -38 -40 -39 -39 -39 -40 -41 -42 -43 -45 -47 -52 -56 -59 -41 -39 -37 -36 -36 -38 -45 -56 -71 -82 -85 -84 -81 -75 -77 -81 -85 -87 -86 -82 -76 -70 -61 -52 -48 -48 -54 -64 -67 -62 -49 -39 -35 -35 -35 -37 -39 -42 -46 -52 -64 -73 -79 -84 -80 -79 -80 -81 -77 -75 -73 -71 -68 -62 -59 -56 -55 -53 -49 -43 -38 -35 -41 -49 -55 -57 -54 -52 -51 -49 -48 -48 -49 -51 -54 -54 -50 -43 -35 -28 -27 -30 -33 -34 -35 -38 -41 -43 -42 -40 -37 -35 -37 -45 -50 -52 -52 -48 -45 -40 -35 -31 -30 -31 -32 -32 -28 -19 -11 -9 -14 -23 -34 -45 -53 -58 -60 -64 -70 -77 -82 -84 -83 -79 -76 -73 -71 -72 -72 -68 -62 -55 -53 -60 -64 -65 -62 -56 -51 -47 -46 -51 -54 -57 -58 -58 -58 -59 -61 -64 -65 -67 -71 -76 -83 -89 -93 -95 -95 -97 -101 -104 -105 -104 -101 -100 -99 -99 -99 -101 -102 -101 -99 -101 -104 -104 -96 -93 -96 -100 -102 -97 -90 -85 -81 -80 -84 -87 -87 -84 -80 -77 -74 -72 -69 -67 -64 -61 -58 -53 -50 -49 -50 -50 -48 -47 -48 -50 -49 -47 -45 -45 -43 -40 -40 -43 -45 -43 -40 -38 -37 -38 -40 -42 -42 -43 -43 -44 -44 -44 -42 -39 -37 -36 -36 -34 -32 -30 -29 -30 -31 -33 -34 -35 -35 -35 -35 -35 -36 -37 -38 -38 -39 -40 -41 -42 -40 -36 -33 -30 -28 -27 -26 -27 -27 -26 -24 -24 -26 -28 -29 -31 -34 -41 -42 -41 -40 -41 -41 -41 -41 -42 -43 -45 -47 -50 -52 -52 -52 -50 -47 -40 -32 -28 -30 -40 -47 -50 -51 -49 -48 -47 -47 -48 -48 -46 -43 -41 -41 -42 -43 -43 -43 -43 -43 -43 -43 -43 -43 -41 -40 -40 -41 -43 -45 -46 -48 -48 -49 -50 -52 -53 -53 -51 -47 -46 -47 -49 -50 -52 -54 -55 -56 -56 -57 -57 -56 -54 -52 -50 -49 -47 -45 -44 -43 -43 -42 -40 -36 -29 -24 -29 -33 -35 -35 -35 -34 -34 -33 -31 -27 -24 -21 -20 -21 -22 -23 -24 -25 -26 -29 -33 -35 -34 -34 -36 -38 -37 -33 -30 -28 -29 -32 -35 -37 -36 -33 -33 -35 -36 -36 -36 -36 -37 -38 -39 -40 -41 -43 -47 -51 -55 -44 -41 -38 -36 -37 -39 -43 -52 -66 -82 -88 -88 -86 -84 -83 -81 -80 -82 -85 -85 -83 -80 -76 -70 -63 -57 -55 -63 -67 -62 -50 -40 -36 -34 -32 -30 -32 -35 -40 -47 -61 -73 -82 -88 -89 -87 -84 -79 -72 -70 -70 -69 -69 -64 -60 -57 -55 -53 -49 -46 -43 -39 -41 -48 -56 -60 -59 -56 -51 -45 -41 -41 -43 -46 -49 -48 -41 -33 -25 -19 -22 -28 -35 -40 -43 -46 -49 -50 -49 -46 -42 -39 -40 -48 -52 -53 -51 -47 -44 -41 -38 -34 -32 -31 -33 -35 -32 -23 -16 -13 -19 -28 -38 -47 -52 -55 -60 -66 -74 -81 -85 -86 -85 -81 -77 -76 -75 -73 -69 -65 -59 -54 -52 -59 -62 -60 -55 -50 -47 -46 -47 -53 -57 -60 -63 -64 -64 -65 -67 -71 -74 -76 -78 -81 -86 -89 -93 -95 -96 -99 -102 -105 -106 -105 -103 -101 -99 -100 -102 -105 -105 -101 -98 -100 -105 -107 -102 -95 -96 -101 -103 -97 -90 -86 -84 -84 -84 -85 -84 -81 -78 -75 -73 -72 -70 -68 -65 -62 -59 -56 -53 -52 -54 -54 -52 -51 -51 -52 -51 -51 -50 -49 -46 -44 -43 -45 -46 -45 -43 -42 -40 -41 -43 -44 -44 -44 -44 -44 -43 -41 -39 -36 -35 -35 -35 -32 -30 -28 -28 -29 -31 -33 -35 -36 -36 -35 -34 -34 -35 -36 -38 -38 -38 -39 -41 -43 -41 -38 -34 -30 -28 -26 -25 -26 -25 -24 -23 -23 -25 -27 -27 -28 -30 -37 -41 -42 -41 -40 -41 -41 -41 -43 -45 -47 -48 -50 -52 -53 -53 -51 -49 -43 -37 -33 -31 -34 -39 -42 -46 -48 -48 -48 -49 -50 -50 -47 -44 -41 -40 -41 -42 -43 -44 -43 -42 -42 -42 -42 -42 -40 -39 -38 -40 -42 -44 -45 -47 -48 -49 -50 -52 -54 -55 -53 -51 -49 -48 -49 -51 -53 -55 -57 -57 -57 -57 -56 -55 -54 -52 -50 -48 -46 -44 -42 -42 -41 -41 -41 -38 -34 -27 -26 -27 -30 -33 -34 -35 -35 -34 -33 -31 -27 -23 -17 -15 -15 -18 -21 -22 -24 -26 -30 -33 -34 -34 -35 -36 -35 -33 -31 -27 -25 -27 -29 -32 -32 -30 -30 -31 -33 -33 -33 -34 -35 -35 -36 -37 -39 -40 -42 -47 -51 -47 -43 -40 -37 -37 -39 -41 -48 -63 -81 -90 -92 -91 -90 -92 -88 -83 -80 -82 -84 -86 -86 -85 -84 -78 -70 -62 -64 -64 -59 -49 -41 -38 -35 -31 -26 -27 -30 -35 -41 -54 -67 -77 -84 -88 -90 -87 -80 -73 -69 -68 -68 -68 -64 -59 -55 -53 -53 -51 -50 -49 -46 -45 -48 -53 -57 -60 -57 -52 -46 -41 -39 -39 -42 -46 -45 -36 -26 -17 -13 -18 -28 -39 -48 -51 -52 -53 -55 -54 -52 -49 -45 -45 -49 -52 -51 -48 -44 -42 -41 -40 -36 -33 -32 -35 -38 -37 -29 -22 -19 -24 -32 -39 -45 -49 -56 -64 -72 -79 -84 -87 -88 -86 -82 -80 -78 -76 -71 -64 -60 -56 -53 -51 -57 -59 -56 -50 -46 -44 -45 -48 -55 -60 -65 -68 -71 -70 -70 -71 -75 -78 -80 -82 -85 -89 -91 -94 -97 -98 -100 -103 -106 -107 -106 -104 -102 -99 -99 -101 -104 -105 -103 -101 -103 -107 -110 -106 -100 -98 -100 -103 -98 -92 -87 -87 -86 -83 -80 -79 -77 -76 -75 -74 -73 -72 -69 -66 -63 -62 -60 -58 -57 -59 -59 -56 -53 -52 -55 -56 -56 -56 -55 -52 -50 -50 -51 -50 -48 -47 -46 -46 -47 -47 -47 -46 -46 -45 -44 -41 -39 -37 -35 -34 -33 -32 -30 -28 -28 -29 -31 -33 -35 -36 -37 -36 -35 -34 -34 -35 -36 -38 -38 -39 -39 -41 -42 -41 -40 -37 -32 -28 -25 -24 -24 -23 -23 -23 -23 -23 -24 -26 -28 -31 -35 -40 -42 -41 -40 -39 -39 -39 -41 -44 -47 -48 -48 -49 -51 -52 -52 -50 -47 -44 -41 -38 -37 -37 -37 -39 -41 -43 -45 -46 -46 -46 -45 -43 -41 -40 -40 -41 -42 -44 -43 -41 -40 -41 -41 -41 -39 -38 -38 -39 -41 -43 -44 -46 -47 -48 -50 -52 -54 -55 -55 -54 -51 -50 -50 -52 -54 -55 -57 -57 -57 -56 -55 -54 -53 -51 -49 -47 -45 -43 -42 -40 -40 -40 -39 -39 -37 -32 -26 -22 -22 -26 -31 -33 -34 -34 -34 -33 -31 -27 -21 -15 -13 -13 -15 -18 -22 -24 -27 -29 -30 -31 -32 -33 -33 -32 -31 -28 -25 -23 -24 -27 -30 -31 -30 -29 -29 -30 -31 -32 -33 -33 -33 -35 -37 -36 -37 -41 -47 -48 -45 -41 -38 -37 -36 -37 -43 -56 -72 -83 -88 -90 -91 -95 -94 -89 -84 -80 -83 -86 -89 -90 -92 -90 -84 -75 -67 -61 -54 -47 -42 -41 -37 -31 -24 -23 -26 -30 -36 -43 -53 -61 -67 -74 -82 -84 -82 -74 -69 -66 -65 -65 -63 -52 -44 -43 -52 -56 -57 -55 -53 -51 -50 -51 -53 -54 -53 -50 -46 -42 -41 -41 -44 -46 -42 -31 -20 -11 -9 -18 -31 -45 -55 -59 -59 -59 -60 -60 -59 -55 -52 -50 -51 -50 -48 -46 -43 -41 -40 -40 -37 -35 -34 -36 -39 -40 -36 -29 -24 -26 -32 -39 -47 -55 -64 -71 -77 -82 -86 -88 -88 -86 -84 -82 -80 -75 -67 -59 -56 -54 -51 -50 -54 -55 -51 -46 -44 -43 -45 -50 -57 -64 -70 -74 -76 -75 -75 -75 -77 -78 -80 -83 -87 -92 -94 -97 -99 -102 -103 -105 -107 -108 -107 -105 -103 -101 -100 -102 -105 -106 -106 -104 -105 -106 -108 -106 -102 -100 -98 -98 -95 -92 -89 -87 -85 -83 -80 -78 -77 -77 -76 -75 -73 -72 -70 -69 -66 -65 -64 -64 -63 -64 -63 -60 -56 -54 -56 -58 -58 -58 -57 -56 -56 -55 -54 -52 -51 -50 -51 -51 -50 -50 -49 -47 -46 -46 -44 -42 -40 -39 -36 -34 -31 -29 -29 -29 -32 -34 -35 -37 -37 -38 -37 -36 -35 -34 -35 -35 -35 -37 -39 -39 -39 -40 -40 -41 -42 -40 -34 -28 -24 -22 -22 -22 -22 -23 -24 -22 -22 -24 -29 -33 -36 -40 -42 -42 -40 -39 -37 -36 -37 -41 -45 -48 -48 -46 -48 -51 -53 -52 -49 -47 -45 -44 -42 -41 -40 -39 -38 -39 -40 -41 -39 -39 -39 -39 -39 -39 -39 -40 -41 -43 -42 -41 -39 -40 -41 -40 -38 -37 -37 -38 -40 -42 -44 -45 -47 -48 -49 -51 -53 -55 -56 -55 -53 -51 -51 -52 -54 -55 -56 -56 -55 -54 -53 -52 -51 -49 -47 -45 -44 -43 -41 -39 -39 -38 -38 -37 -37 -35 -30 -24 -19 -17 -20 -23 -26 -30 -33 -34 -33 -30 -27 -21 -16 -13 -12 -15 -19 -22 -25 -27 -28 -28 -30 -31 -31 -30 -30 -28 -25 -23 -23 -24 -27 -29 -30 -30 -29 -28 -28 -29 -30 -30 -32 -33 -35 -33 -33 -36 -42 -52 -47 -41 -37 -34 -33 -33 -38 -49 -65 -77 -83 -84 -84 -91 -95 -94 -89 -82 -84 -87 -90 -92 -96 -96 -93 -85 -74 -61 -51 -45 -43 -42 -38 -31 -23 -19 -22 -28 -34 -36 -40 -47 -56 -64 -69 -73 -74 -71 -67 -63 -61 -62 -62 -51 -39 -33 -44 -57 -60 -60 -59 -58 -55 -53 -54 -55 -52 -48 -44 -40 -40 -41 -42 -42 -37 -25 -14 -7 -7 -19 -33 -46 -55 -60 -64 -67 -68 -66 -62 -58 -54 -51 -50 -48 -45 -43 -41 -40 -40 -39 -37 -37 -38 -39 -41 -42 -41 -36 -30 -29 -36 -46 -55 -64 -69 -72 -74 -77 -80 -83 -86 -87 -86 -84 -80 -72 -62 -56 -53 -51 -49 -48 -50 -49 -46 -43 -42 -44 -47 -52 -60 -68 -74 -77 -78 -77 -77 -78 -79 -79 -81 -84 -89 -95 -97 -98 -100 -104 -105 -106 -107 -108 -108 -106 -105 -104 -103 -104 -106 -108 -108 -107 -105 -104 -103 -103 -102 -100 -97 -96 -95 -93 -90 -87 -86 -84 -82 -80 -78 -79 -78 -76 -73 -73 -73 -73 -72 -71 -70 -69 -69 -68 -67 -64 -60 -56 -54 -54 -54 -55 -56 -57 -58 -57 -55 -53 -52 -53 -53 -52 -51 -50 -49 -48 -46 -45 -44 -44 -43 -41 -38 -35 -31 -29 -30 -33 -37 -39 -39 -39 -38 -38 -36 -35 -34 -34 -34 -34 -35 -36 -38 -37 -37 -37 -38 -41 -42 -40 -33 -26 -22 -20 -23 -23 -22 -22 -24 -23 -22 -24 -29 -32 -36 -39 -41 -41 -39 -39 -38 -37 -36 -38 -43 -47 -47 -44 -45 -48 -50 -49 -47 -45 -44 -44 -46 -46 -45 -43 -40 -39 -38 -37 -35 -35 -36 -37 -38 -39 -39 -39 -39 -40 -41 -40 -40 -39 -40 -39 -37 -36 -37 -38 -40 -42 -43 -44 -46 -47 -48 -50 -52 -54 -54 -54 -53 -52 -51 -52 -53 -54 -54 -55 -54 -53 -51 -49 -48 -47 -45 -44 -43 -42 -41 -39 -38 -36 -35 -35 -34 -34 -32 -28 -22 -17 -15 -14 -15 -19 -26 -30 -32 -30 -29 -26 -22 -17 -14 -15 -17 -20 -23 -25 -26 -27 -28 -29 -29 -29 -28 -27 -25 -24 -24 -24 -25 -27 -28 -29 -29 -28 -27 -27 -27 -28 -29 -31 -33 -32 -31 -32 -36